Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Wie viele Pixel liegen unter der BASELINE? (https://www.delphipraxis.net/84231-wie-viele-pixel-liegen-unter-der-baseline.html)

Kroko1999 13. Jan 2007 17:22


Wie viele Pixel liegen unter der BASELINE?
 
Hi,
zur Zeit gebe ich auf einem Canvas den Text wie folgt aus und möchte in ARect das gefüllte Rechteck zurückgegeben haben:
Delphi-Quellcode:
procedure PrintText (const Ax,Ay: Integer; const ATxt: String; var ARect: TRect);
var
  HL: Integer;
  Hr: TRect
begin
  SetTextAlign (FCanvas.Handle,TA_BaseLine);
  SetRectEmpty(Hr);
  HL := Length (ATxt);
  Windows.DrawText(FCanvas.Handle,PChar(ATxt),Hl,Hr,DT_CALCRECT);        
  Windows.TextOut(FCanvas.Handle,Ax,Ay,PChar(ATxt),Length(ATxt));
  with ARect do
  begin
    Left := Ax;
    Bottom := Ay; // ???
    Right := Ax+Hr.Right-Hr.Left;
    Top := Bottom+Hr.Bottom-Hr.Top;
  end;
end;
Nun, wie bekomme ich heraus, wie viel von der Höhe (je nach Schriftgröße mehr ioder weniger) unter der Baseline liegt, damit ich Bottom richtig setzen kann?

Link zu dsdt.info
Link ins Delphi-Forum

marabu 13. Jan 2007 18:02

Re: Wie viele Pixel liegen unter der BASELINE?
 
Hi Kroko,

GetTextMetrics() sollte dir die gewünschte Information liefern: klick

Grüße vom marabu

Kroko1999 13. Jan 2007 21:22

Re: Wie viele Pixel liegen unter der BASELINE?
 
Danke! Das wars :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 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 by Thomas Breitkreuz