PDFium Delphi Component Docs

FPdfMeasure jednotka

Jednotka: FPdfMeasure
Pomocníci pro měření textu v TPdf dřív, než se obsah přidá na stránku

Syntaxe

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;

Veřejné metody

MemberDescription
TPdf.MeasureTextVrací šířku a výšku textu v uživatelských jednotkách PDF pro vybrané písmo a velikost
TPdf.MeasureTextWidthVrací jen šířku textu v uživatelských jednotkách PDF
TPdf.WrapTextZachovává explicitní konce řádků, zalamuje tokeny na MaxWidth a umí rozdělit předimenzované tokeny na hranicích Unicode skalárů

Popis

FPdfMeasure přidá k TPdf class helper, takže text lze změřit v uživatelských jednotkách PDF před vykreslením

Pro výpočty rozložení použijte MeasureText a MeasureTextWidth a WrapText k rozdělení textu na řádky odpovídající zvolené šířce

Původní přetížení WrapText nechá pro kompatibilitu předimenzovaný token v celku; předejte BreakLongWords=True k rozdělení textu CJK nebo jiného textu bez mezer při zachování náhradních párů UTF-16

Příklad

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;

Viz také

TPdf.AddText, TPdf.AddShapedText