2017-11-16 3 views
0

Ich habe ein Problem, dass die Akzenttaste Unterstreichungen auf allen Steuerelementen in einer Firemonkey-Anwendung auf Windows-Systemen mit höheren DPI-Einstellungen nicht korrekt gerendert werden (zu weit unten im Text) .I habe einen Screenshot angehängt, um das Problem zu demonstrieren. Kann jemand das beheben? Ich verwende Delphi 10.2 mit Update 1.Falsche Beschleuniger Unterstreichung auf Steuerelemente auf hoher DPI

Wrong rendering

+4

Reichen Sie einen Fehlerbericht an den Entwickler ein –

Antwort

-1

ein fand mich zu beheben.

In FMX.Objects.pas ersetzen (Linie 4472)

LBaseline := TFontGlyphManager.Current.GetBaseline(ALayout.Font, ACanvas.Scale); 

mit

LBaseline := TFontGlyphManager.Current.GetBaseline(ALayout.Font, 1); 

und (Linien 4483, 4484)

FUnderlineBeginPoint.Y := Ceil(FUnderlineBeginPoint.Y) + 1.5; 
FUnderlineEndPoint.Y := Ceil(FUnderlineEndPoint.Y) + 1.5; 

mit

FUnderlineBeginPoint.Y := Ceil(FUnderlineBeginPoint.Y) + 1.5 * ACanvas.Scale; 
FUnderlineEndPoint.Y := Ceil(FUnderlineEndPoint.Y) + 1.5 * ACanvas.Scale; 
Verwandte Themen