PDFium Delphi Component Docs

FPdfMeasure Unit

Unit: FPdfMeasure
Textmess-Helfer für TPdf, bevor Inhalte zur Seite hinzugefügt werden

Syntax

TPdfMeasureHelper = class helper for TPdf
  procedure MeasureText(const Text, Font: WString; FontSize: Single; out Width, Height: Double);
  function MeasureTextWidth(const Text, Font: WString; FontSize: Single): Double;
  function WrapText(const Text, Font: WString; FontSize: Single; MaxWidth: Double): TArray<WString>;
  function WrapText(const Text, Font: WString; FontSize: Single; MaxWidth: Double; BreakLongWords: Boolean): TArray<WString>;
end;

Öffentliche Methoden

MemberBeschreibung
TPdf.MeasureTextGibt Textbreite und -höhe in PDF-Benutzereinheiten für die ausgewählte Schrift und Größe zurück
TPdf.MeasureTextWidthGibt nur die Textbreite in PDF-Benutzereinheiten zurück
TPdf.WrapTextBewahrt explizite Zeilenumbrüche, bricht Tokens auf MaxWidth um und kann übergroße Tokens an Unicode-Scalar-Grenzen teilen

Beschreibung

FPdfMeasure ergänzt TPdf um einen Klassen-Helfer, damit Text bereits vor dem Zeichnen in PDF-Benutzereinheiten gemessen werden kann

Verwenden Sie MeasureText und MeasureTextWidth für Layoutberechnungen und WrapText, um Text in Zeilen zu teilen, die eine gewählte Breite einhalten

Die ursprüngliche WrapText-Überladung lässt ein übergroßes Token der Kompatibilität wegen unangetastet; übergeben Sie BreakLongWords=True, um CJK- oder anderen Text ohne Leerzeichen zu teilen und dabei UTF-16-Surrogatpaare zu bewahren

Beispiel

var
  Width, Height: Double;
  Lines: TArray<WString>;
begin
  Pdf.MeasureText('Invoice total', 'Arial', 12, Width, Height);
  Lines := Pdf.WrapText(LongText, 'Arial', 10, 240, True);
end;

Siehe auch

TPdf.AddText, TPdf.AddShapedText