![]() |
Text Höhe in Pixel umrechnen ( VCL vs. FMX)
unter VCL hat uns diese Funktion gute Dienste erwiesen .... wie sieht denn die FMX Variante aus ?
Delphi-Quellcode:
function GetTextHeightInPixels(Text: string; Font: TFont): Integer;
var PxHeight: Integer; TmpBmp: TBitmap; begin TmpBmp := TBitmap.Create; try TmpBmp.Canvas.Font := Font; /// geht nicht unter FMX PxHeight := TmpBmp.Canvas.TextHeight(Text); /// geht nicht unter FMX finally FreeAndNil(TmpBmp); end; Result := PxHeight; end; |
AW: Text Höhe in Pixel umrechnen ( VCL vs. FMX)
Auch nicht zu vergessen, dass eventuell noch mehrere Ebenen an Scale und Rotation verschachtelt drüber liegen können.
![]() Also so, wie es aussieht, würde ich das TTextLayout an der passenden Stelle im FMX einfügen und dann ma schauen was es da für Werte liefert. |
AW: Text Höhe in Pixel umrechnen ( VCL vs. FMX)
TCanvas.MeasureText() liefert ein entsprechendes TRect. Ich gehe allerdings stark davon aus, dass Skalierungen des Forms hier nicht berücksichtigt werden. Was ich zunächst auch für richtig halte, da die Werte dann direkt im selben Kontext benutzt werden können. Wenn du tatsächliche Größe auf dem Bildschirm willst, müsstest du die Skalierung selbst noch draufrechnen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:31 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