Länge und Höhe eines Textes (String)
31. Okt 2003, 09:24
Da es anscheinend öfters benötigt wird, denke ich mal es wird hier gut rein passen.
Delphi-Quellcode:
function TextLaenge(Font: TFont; Text: String): Integer;
var
B: TBitMap;
begin
B := TBitMap.Create;
B.Canvas.Font := Font;
Result := B.Canvas.TextWidth(Text);
B.Free;
end;
function TextHoehe(Font: TFont; Text: String): Integer;
var
B: TBitMap;
begin
B := TBitMap.Create;
B.Canvas.Font := Font;
Result := B.Canvas.TextHeight(Text);
B.Free;
end;
(* Beispiel für einen Aufruf der Funktion(en) *)
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
(* Wichtig: *
* Es muß der Font übergegeben werden, *
* der auch für die Darstellung des *
* entsprechenden Textes verwendet wird. *)
I := TextLaenge(Edit1.Font, Edit1.Text);
Label1.Caption := IntToStr(I);
end;
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
[edit=fkerber]Neu abgespeichert wg. Code-Highlighting. Mfg, fkerber[/edit]
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|