Smoothing deaktivieren
-
Hallo!
Ist es möglich, in einer MFC-Anwendung (also nicht systemweit) das "Smoothing" via ClearType zu deaktivieren?Danke im Voraus.
Edit: Die Schrift wird in einer RC-Datei geladen und in der RC-Datei werden alle Oberflächen erstellt, also wäre der Umweg über CreateFont zwar möglich, aber umstänlich, weil SetFont.
-
Meinem Wissen nach lässt sich Cleartype nur systemweit ausschalten!
-
Du könntest mal CreateFont mit NONANTIALIASED_QUALITY probieren.
-
hustbaer schrieb:
Du könntest mal CreateFont mit NONANTIALIASED_QUALITY probieren.
Dann müsste ich für jedes einzelne Dialog-Element SetFont machen...
-
Naj ja. Nicht ganz. Wenn man es schafft den Fonbt des Dialoges zu setzen "bevor" die Child Controls erzeugt werden, dann kann hat man was man will ohne die Controls einzeln zu setzen.
Ich weiß nihct genau wann der Font ermittelt wird. Vermutlich nach WM_CREATE und bevor aus WM_CREATE die WM_INITDIALOG Nachricht versendet wird...
Ansonsten kann man auch den Font im Dialog-Template auf einen nicht Trueype Font ändern. Auch dann wäre Fontsmoothing deaktiviert.
-
Martin Richter schrieb:
Wenn man es schafft den Fonbt des Dialoges zu setzen "bevor" die Child Controls erzeugt werden, dann kann hat man was man will ohne die Controls einzeln zu setzen.
Der Effekt ist bei mirnicht eingetreten. Das Problemhab ich trotzdem gelöst, mit Hilfe von EnumChildWindows. Quelle: http://www.codeproject.com/Articles/129/How-to-set-a-font-for-all-child-windows
-
Warum nehmen alle Leute immer EnumChildWindows anstatt GetWindow?
So ein Umstand.