PDFium Delphi Component Docs

FPdfMeasure-enhet

Unit: FPdfMeasure
Hjälpare för textmätning i TPdf innan innehåll läggs till på sidan

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;

Public Methods

MemberDescription
TPdf.MeasureTextReturnerar textens bredd och höjd i PDF-användarenheter för valt typsnitt och vald storlek
TPdf.MeasureTextWidthReturnerar endast textbredden i PDF-användarenheter
TPdf.WrapTextBevarar explicita radbrytningar, bryter token till MaxWidth och kan dela för stora token vid Unicode-skalärgränser

Description

FPdfMeasure lägger till en klasshjälpare på TPdf så att text kan mätas i PDF-användarenheter innan den ritas

Använd MeasureText och MeasureTextWidth för layoutberäkningar samt WrapText för att dela text i rader som passar en vald bredd

Den ursprungliga WrapText-overloaden behåller en för stor token intakt av kompatibilitetsskäl; skicka BreakLongWords=True för att dela CJK-text eller annan text utan mellanslag samtidigt som UTF-16-surrogatpar bevaras

Example

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;

See Also

TPdf.AddText, TPdf.AddShapedText