PDFium Delphi Component Docs

TextInRectangle Methode

Komponente: TPdf  ·  Unit: PDFium
Extrahiert Text innerhalb einer rechteckigen Begrenzung auf der Seite

Syntax

function TextInRectangle(Left, Top, Right, Bottom: Double): WString;

 

function TextInRectangle(Rectangle: TPdfRectangle): WString;

RectangleTPdfRectangle. Ein Record, der das Begrenzungsrechteck in PDF-Benutzerkoordinaten angibt (Ursprung unten links, Y nimmt nach oben zu)

Return Value

Ein WString (Unicode-String), der alle Zeichen enthält, deren Begrenzungsboxen das angegebene Rechteck schneiden. Gibt eine leere Zeichenkette zurück, wenn im Bereich kein Text gefunden wird

Description

TextInRectangle extrahiert den Unicode-Textinhalt, der in einen gegebenen rechteckigen Bereich auf der aktuellen Seite fällt. Dies ist nützlich, um Text aus einem bestimmten Bereich wie einer Kopf- oder Fußzeile, einer Tabellenzelle oder einer Feldbeschriftung zu lesen, ohne die gesamte Seite zu verarbeiten

Es werden zwei Überladungen bereitgestellt. Die Form mit vier Parametern akzeptiert einzelne Werte für Left, Top, Right und Bottom. Die Form mit einem Parameter akzeptiert einen TPdfRectangle-Record, was praktisch ist, wenn der Bereich bereits als Rechteckstruktur berechnet wurde

Koordinaten verwenden den PDF-Benutzerraum: Der Ursprung liegt an der unteren linken Ecke der Seite und Y nimmt nach oben zu. Beachten Sie, dass Bottom daher bei einem normal ausgerichteten Rechteck ein kleinerer Wert als Top ist. Zeichen werden in das Ergebnis aufgenommen, wenn ihre Begrenzungsboxen den angegebenen Bereich überlappen

Wie Text liest diese Methode aus der logischen Textebene der Seite und arbeitet mit einer geladenen PDF-Seite

Example

// Text aus dem oberen Kopfbereich einer A4-Seite extrahieren
// A4: 595 x 842 pt; Kopfzeile = oberes 60-pt-Band
Pdf1.LoadFromFile('C:\Docs\report.pdf');
Pdf1.PageIndex := 0;
var HeaderText: WString;
begin
  HeaderText := Pdf1.TextInRectangle(0, 782, 595, 842);
  ShowMessage(HeaderText);
end;

// Überladung mit TPdfRectangle verwenden
var
  Rect: TPdfRectangle;
  CellText: WString;
begin
  Rect.Left := 72; Rect.Bottom := 600;
  Rect.Right := 250; Rect.Top := 640;
  CellText := Pdf1.TextInRectangle(Rect);
end;

See Also

Text, CharacterCount, FindFirst