هل من الممكن رسم نص مضاد للتنقيح على نقطية 8bpp في Win32؟

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

سؤال

لقد حددت صورة نقطية 8bpp في مركز السيطرة على الأمراض ، واستخدمت :: textout () لرسم النص. جودة الخط مضادة للحيوية ، لكن النص يخرج في أحادية اللون ؛ لا بكسل رمادي وحواف خشنة.

تم استخلاص صورة نقطية 8BPP من صورة نقطية 24bpp التي كانت بالفعل نصًا مضادًا لها ، وهذا النص على ما يرام. (كلا النوعين من النصوص في نفس صورة نقطية.)

بالطبع يمكنني الاستفادة من 24bpp والتحويل ، ولكن هذا أكثر تعقيدًا وبطيئة. (يتغير النص اللاحق ، ويتكرر عدة مرات.) هل من الممكن الحصول على نص مضاد للتطبيق مباشرة في صورة نقطية 8bpp؟ شكرًا!

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

المحلول

لا ، لا تعمل مكافحة الإنقاذ مع 8-BPP. إذا كنت بحاجة إلى تحديثات أسرع ، ففكر في القيام برسمك بشيء مثل OpenGL بدلاً من عبر GDI. مع OpenGL ، سيتم عادةً الرسم بالكامل بواسطة أجهزة الرسومات ، لذلك حتى في 32-BPP ، سيكون الرسم عادة أسرع من GDI الذي يقوم به 8-BPP.

تجدر الإشارة أيضًا إلى أنك ربما تكون أفضل حالًا مع 32-BPP من 8 أو 24-BPP في أي حال. يمكن لـ GDI استخدام (بعض) تسريع الأجهزة ، ولكنه عادة ما يكون في أفضل حالاتها مع 32-BPP.

نصائح أخرى

لا ، لا يقوم GDI بإخراج مضادات التنسيق إلى صورة نقطية مملوءة ، وهذا بالضبط ماهية نقطات الرمادي.

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