كيفية الحصول على عرض فرعي لخط LCD (ClearType على Windows) على Linux؟

StackOverflow https://stackoverflow.com/questions/1494934

سؤال

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

حاليا أسأل Glyph في FreeType معينة، أعطني FreeType مخزن مؤقت لذاكرة واحدة مع قيم Alpha، مع أنه ليس من الممكن تقديم فرعي. ما لدي هو خط عادي antialiazed. كما هو الحال في Subpixel - التقديم اليسار معظم البكسل من الخط المضاد للأشياء الحمراء والأقصى اليمنى مع الأزرق (شاشة افتراضية RGB).

هل هناك أي طرق يمكن أن تعطيني FreeType معلومات مفادها أن بكسل الحالي يترك أو يمين أو مركز؟

شكرا، مشمس.

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

المحلول

FreeType. تستطيع ان تفعل ذلك

نصائح أخرى

كما تشير إلى الخروج، فإن بيئة سطح المكتب التي تستخدمها (جنوم، KDE، أيا كان) قد تنفذ هذا. الإعداد لأنه يختلف عن طريق البيئة.

فيما يتعلق بكيفية القيام بذلك في التعليمات البرمجية الخاصة بك، يمكنك استخدام نفس الإجراءات التي يقوم بها إدارة النافذة (GTK + على Gnome، QT على KDE، وما إلى ذلك)، أو يمكنك استخدام مكتبة منفصلة مثل FreeType. أو SDL_TTF.. وبعد Analiasing - المصطلح العام لهذا، كما cleartype هو خوارزمية حاصلة على براءة اختراع خاصة ب Microsoft - عادة ما تكون اختيارية في هذه المكتبات، معطل افتراضيا للسرعة.

أعتقد أن Libcairo في أسفل معظم تطبيقات GTK في أوبونتو التي تقوم بالتحف. أعتقد أنه ما إذا كان عرض فرعي يتم تحديده على وجه التحديد لشاشة LCD هو شيء يختار المستخدم، وليس مؤلف التطبيق. يتحكم المستخدم في علامة تبويب "الخطوط" الخاصة ب "تفضيلات المظهر" في النظام -> التفضيلات -> المظهر (الذي يمكن تشغيله يدويا ك "خصائص مظهر" ثنائي ") والنقر فوق" تجانس الفرع الفردي (LCD) " اختيار.

ربما هناك طريقة يمكن للتطبيق تجاوز هذا الإعداد لأنفسهم؟ لست متأكدا من السبب في أنهم يريدون، على الرغم من أنه نظرا لأن التطبيق لا يتحكم في نوع العرض الذي يستخدمه المستخدم.

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