Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Canvas.Textwidth mit Zeilenumbruch (https://www.delphipraxis.net/206806-canvas-textwidth-mit-zeilenumbruch.html)

NoGAD 31. Jan 2021 16:20

Canvas.Textwidth mit Zeilenumbruch
 
Hallo,

wie ist es möglich, zwei Strings in der Höhe und Breite zu vergleichen, auch wenn einer der beiden Strings #13#10 beinhaltet?

Delphi-Quellcode:
var
string1,string2:String;
begin
string1:='';
string2:='' + #13#10 + '';
if Canvas.TextWidth(string1) > Canvas.TextWidth(string2) then

...

Oder anders gefragt, wie berechne ich die Länge/Höhe mit Zeilenumbruch?

LG Mathias

stahli 31. Jan 2021 16:52

AW: Canvas.Textwidth mit Zeilenumbruch
 
Schau mal, ob TextExtent passt.

himitsu 31. Jan 2021 16:59

AW: Canvas.Textwidth mit Zeilenumbruch
 
Oder TextHeight :stupid:

NoGAD 31. Jan 2021 20:12

AW: Canvas.Textwidth mit Zeilenumbruch
 
Zitat:

Zitat von himitsu (Beitrag 1481870)
Oder TextHeight :stupid:

Das war doch nur ein Beispielcode. :lol:


Es geht mir einzig darum, dass ein LineBreak in einem String als komplette Zeile, aber OHNE Umbruch bei der Auswertung mittels TextWidth / TextHeight herangezogen wird.

TextWidth wäre ja dann auch zu lang. Und die Höhe wird als Einzeilig interpretiert.



Edit: Habe es gefunden.

Ein DT_CALCRECT hilft bei der Berechnung ( https://www.delphipraxis.net/203343-...tgroessen.html )

Danke euch :-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz