PDFium Delphi Component Docs

FontAscent Eigenschaft

Komponente: TPdf  ·  Unit: PDFium
Gibt den Ascent der Schrift eines Seitenobjekts zurück (Abstand von der Grundlinie bis zum höchsten Oberlängenzeichen), angegeben in PDF-Punkten und skaliert auf eine vom Aufrufer angegebene Schriftgröße

Syntax

property FontAscent[Index: Integer; FontSize: Single]: Single; // read only

Description

FontAscent meldet die Ascent-Metrik der Schrift, auf die das Seitenobjekt am gegebenen Index verweist. Ascent ist der vertikale Abstand von der Grundlinie bis zum höchsten Punkt, den die größten Zeichen der Schrift erreichen (Versalien, Akzente, Oberlängen wie bei 'l', 'h' oder 'k'). Das Ergebnis ist in PDF-Benutzerraum-Punkten ausgedrückt und bereits auf das übergebene FontSize skaliert

Der Index-Indexer ist der 0-basierte Seitenobjekt-Index (0..ObjectCount - 1). Der zweite Indexer, FontSize, ist die Größe in PDF-Punkten, für die die Metrik berechnet werden soll. Übergeben Sie die Größe, in der Sie rendern wollen, oder spiegeln Sie mit CharacterFontSize[n] die Größe eines vorhandenen Textlaufs. Beim Lesen der Eigenschaft muss eine Seite aktiv sein

Zusammen mit FontDescent ergibt sich daraus die Gesamthöhe der Zeile der Schrift: LineHeight := FontAscent - FontDescent (Descent ist typischerweise negativ). PDFium liefert 0, wenn der Font die Metrik nicht mitbringt oder das indizierte Objekt kein Text ist

Parameters

Index0-basierter Seitenobjekt-Index im Bereich 0..ObjectCount - 1
FontSizeSchriftgröße in PDF-Punkten, auf die die Metrik skaliert wird. Typischerweise die Größe, in der die Schrift gerendert wird (z. B. 10.0, 12.0)

Remarks

Example

var
  I: Integer;
  Asc: Single;
begin
  Pdf1.PageNumber := 1;
  for I := 0 to Pdf1.ObjectCount - 1 do
  begin
    Asc := Pdf1.FontAscent[I, 12.0];
    if Asc > 0 then
      Memo1.Lines.Add(Format('Object %d: ascent = %.2f pt', [I, Asc]));
  end;
end;

See Also

FontDescent, FontSize, FontHandle, FontFamilyName