سؤال

منذ بضع سنوات مضت، كان لدينا مصمم جرافيك لتجديد موقعنا.بدت نتائجه رائعة، لكنه لسوء الحظ قدم خطًا جديدًا غير مدعوم بواسطة متصفح الويب.

في البداية قلت: "ماذا!؟!"...نظرًا لأن معظم المحتوى الخاص بنا ديناميكي ولم تكن هناك طريقة حقيقية لإنشاء جميع الصور مسبقًا.كانت هناك أيضًا مسألة تعدد اللغات (نظرًا لأننا عرفنا أن اللغة الإسبانية كانت تلوح في الأفق).

على أية حال، قررت إنشاء بعض الفئات لإنشاء الصور تلقائيًا عبر GDI+ وتخزينها مؤقتًا برمجيًا حسب الحاجة.هذا حل معظم مشاكلنا الأولية.ومع ذلك، الآن بعد أن زاد التحميل لدينا بشكل كبير، حدث استنزاف لخادم واجهة المستخدم لدينا.

والآن إلى السؤال...إنني أتطلع إلى استبدال معظم صور GDI+ الديناميكية بخط متصفح ويب قياسي.أفكر في الاحتفاظ ببعض صور GDI+ المعروضة ووضعها في ملف resx، ولكني أخطط لاستبدال معظمها بخطوط Tahoma أو Arial عبر asp:Labels.

ما الذي وجدته كحل أفضل للصور المترجمة؟

  • تضمين الصور في resx
  • فقط قم بإضافة عنوان url للصورة إلى ملف resx
  • بعض الحلول الأخرى

شاغلي الرئيسي هو الحد من المعالجة على خادم واجهة المستخدم.إذا كان الأمر كذلك، فهل ستكون إضافة عنوان url للصورة إلى resx حلاً أفضل مقارنة بتضمين الصورة فعليًا في resx؟

هل كانت مفيدة؟

المحلول

يجب أن تحتاج فقط إلى إنشاء كل صورة مرة واحدة، ثم حفظها على القرص الصلب.لا ينبغي أن يؤدي الحمل على موقعك إلى زيادة مقدار المعالجة التي يتعين عليك القيام بها.ومع ذلك، يبدو تقريبًا أنك تستخدم الصور لأشياء لا ينبغي أن تستخدمها.إذا كان هناك الكثير من الصور المختلفة التي لا يمكنك مواكبة إنشائها، فقد حان الوقت للتخلي عن صورك الفاخرة والأشياء التي لا ينبغي أن تكون صورًا، والعودة إلى النص المستقيم.إذا لم يكن الخط المحدد مثبتًا لدى المستخدم، فيجب عليه الرجوع إلى خط مشابه المظهر.لدى CSS دعم جيد لهذا الغرض.

نصائح أخرى

انظر ردي هنا

يمكن القيام بذلك يدويًا أو باستخدام نوع من النظام الآلي (CMS).

تتمثل الطريقة الأساسية في تخزين صورك مؤقتًا في بنية دليل خاصة باللغة ثم كتابة معالج HTTP الذي يزيل طبقة الدليل الإضافية بشكل فعال.على سبيل المثال:

/images/
    /en/
        header1.gif
    /es/
        header1.gif

في الترميز أو CSS، يمكنك فقط الرجوع إلى /images/header1.gif.يستخدم معالج http الجلسة (إذا كانت اللغة خاصة بالمستخدم)، أو التكوين (إذا كان الموقع محددًا) لاختيار الدليل الذي سيتم عرض الصورة منه.

وهذا يوفر خطًا نظيفًا بين التعليمات البرمجية والمحتوى، ويسمح بالتخزين المؤقت من جانب العميل.يعد Resx رائعًا للسلاسل الصغيرة ولكني أفضل نظامًا مثل هذا للصور والمحتوى الأكبر حجمًا.خاصة على الويب حيث يكون من السهل عادةً تبديل الصور.

لقد واجهت نفس المشكلة قبل بضع سنوات وقام فريق الواجهة لدينا بتوجيهنا إلى SIFr. http://wiki.novemberborn.net/sifr/

يمكنك تضمين الخط الخاص بك في فيلم Flash ثم استخدام SIFr JavaScript لتحويل النص ديناميكيًا إلى الخط الخاص بك.نظرًا لأنه من جانب العميل، لا يوجد أي تأثير من جانب الخادم.

إذا لم يكن Flash أو JavaScript مثبتًا لدى المستخدم، فسيحصل على أقرب خط مناسب للويب.

كمكافأة إضافية:نظرًا لأن المحتوى الخاص بك لا يزال نصًا - يمكن لـ Google البحث في المحتوى وفهرسته - وهو تحسين كبير لتحسين محركات البحث.

بسبب التخزين المؤقت، أفضل إضافة عنوان url للصورة فقط إلى ملف resx.يعد التخزين المؤقت أفضل بكثير للمحتوى الثابت (أي الملفات العادية) مقارنة بالمحتوى الذي تم إنشاؤه.

سأكون جداً كن حذرًا بشأن وضع النص في الصور على الإطلاق، فمن المحتمل أن يكون CSS مع التراجع المناسب لمجموعة الخطوط هو الاستجابة الصحيحة فيما يتعلق بإمكانية الوصول وأسباب MVC الجيدة.

حيث الجيل مطلوب حقا على ما أعتقد كيبلي و جاي آر الخطوط العريضة للحلول الجيدة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top