Thema: Delphi Fehler in DrawText ?

Einzelnen Beitrag anzeigen

Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#1

Fehler in DrawText ?

  Alt 20. Jan 2005, 16:18
Wenn ich die breite eines Textes ermittle, bekomme ich bei wenn ich die Schriftart "MS Sans Serif" in BOLD einstelle falsche Ergebnisse.
Andere Schriftarten in Bold oder "MS Sans Serif" ohne Bold funktionieren.

Hat jemand eine Ahnung warum und wie ich den DrawText dazu bringe, das der funktioniert ?

DrawText gibt bei "MS Sans Serif" in Bold immer einen 1 Pixel breiteren Wert zurück

Delphi-Quellcode:
    S1 := 'Test';

    Canvas.Font.Style := [fsBold];
// Canvas.Font.Style := [];
    Canvas.Font.Name := 'Ms Sans Serif';
// Canvas.Font.Name := 'Arial';
    Canvas.Font.Size := 11;
    Memo1.Lines.Add('TW : '+IntToStr(Canvas.TextWidth(S1)));

    DrawText(Canvas.Handle, PChar(S1), Length(S1), R, DT_LEFT or DT_SINGLELINE or DT_TOP or DT_CALCRECT);
    Memo1.Lines.Add('TW : '+IntToStr(R.Right - R.Left));
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat