![]() |
Text-Rendering-Qualität: VCL vs. FMX
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo zusammen,
das Thema wurde hier wahrscheinlich schon einmal besprochen und ist für Euch vielleicht auch ein alter Hut, ich habe jedoch keinen aussagekräftigen Thread gefunden. Deshalb meine Frage: Kann es sein, dass die Text-Rendering-Qualität und FMX schlechter ist als unter VCL? Im Anhang 2 Beispiele: Labels unter FMX und VCL und (besonders krasser Unterschied) Text in einem StringGrid unter FMX (rechts) und VCL (links). FMX ist für mich relativ neu, möglicherweise liegt der Fehler daher auch auf meiner Seite. Kann man da irgendetwas machen oder muss man sich damit abfinden? Danke, Bernhard |
AW: Text-Rendering-Qualität: VCL vs. FMX
FMX ist eine 3D-Engine ... die Rendern nunmal ungern pixelgenau.
Ich hatte es anfangs mal, dass ich Labels um ein halbes Pixel verschieben mußte, damit der Text nicht zwischen den Pixeln landet und damit schärfer wird .... mir war aber so, dass die das mal verbessert hatten. |
AW: Text-Rendering-Qualität: VCL vs. FMX
Danke für die Antwort. Dann bleibe ich erstmal bei VCL. Es wäre schön, wenn es Embarcadero gelänge, da noch was rauszuholen - wenn ich sehe, wie schön Text in einem Browser gerendert werden kann, dann muss das irgendwie doch auch in Anwendungen möglich sein. Wäre ein Quantensprung, optisch gesehen.
Wenn ich mich nicht irre, benutzt Chrome ja scheinbar Skia, aber mit Skia4Delphi waren meine Ergebnisse auch nicht viel anders. Gruß, Bernhard |
AW: Text-Rendering-Qualität: VCL vs. FMX
Im Delphi 12 ist Skia nun auch mit drin.
In wie weit es auf Firemonkey eine Wirkung hat, kann ich nicht sagen. Du hast nicht zufällig eine Skalierung im Windows eingestellt? (z.B. 125% und so, womit ja alles um ein viertel/halbes/dreiviertel Pixel verrutschen kann, während es in der VCL einfach auf's nächstliegende ganzzahlige Pixel rutscht) |
AW: Text-Rendering-Qualität: VCL vs. FMX
Ich hab's gerade nochmal überprüft, die Skalierung unter Windows ist bei mir 100 %, das kann es also nicht sein.
Schon die Cleartype-Engine von Windows ist ja nicht unbedingt das Gelbe vom Ei. Da ist es schade, das FMX dahinter noch zurückbleibt. Ein Schriftbild wie unter MacOS (Quartz-Engine) wäre optimal - bei Microsoft liegt der Fokus aber augenscheinlich auf Bildschirmlesbarkeit. Mal sehen, was die Weiterentwicklung von FMX so bringt... |
AW: Text-Rendering-Qualität: VCL vs. FMX
Wenn man die Unit FMX.Types in die .dpr aufnimmt, kann man mit
Code:
das unter VCL gewohnte Textrendering erreichen. Außerdem startet die Anwendung etwas schneller.
GlobalUseDirect2D := false
Ich gehe aber davon aus, dass damit einige Möglichkeiten von FMX wegfallen. |
AW: Text-Rendering-Qualität: VCL vs. FMX
Liste der Anhänge anzeigen (Anzahl: 1)
Ja, das bringt was. Vielleicht weicht das Bild noch ein wenig ab, bin nicht ganz sicher. Das Rendering/Antialiasing erfolgt jetzt wieder wie unter VCL unter Verwendung von "Farben", die von der eigentlichen Textfarbe abweichen, was sich optisch positiv auswirkt. FMX arbeitet beim Antialiasing nur mit einer Farbe und variiert deren Transparenz, mit dem bekannten nicht so berauschenden Ergebnis.
|
AW: Text-Rendering-Qualität: VCL vs. FMX
Halt doch mal einen Breakpoint in TTextLayoutD2D.DoDrawLayout in der Unit FMX.Canvas.D2D rein (Debug-DCUs einschalten!) und lass dir Target.GetTextAntialiasMode ausgeben (Evaluate/Modify -> Ctrl + F7)
|
AW: Text-Rendering-Qualität: VCL vs. FMX
![]() Beachte die Punkte 1 und 2 in der Aufzählung, vielleicht hilfts. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz