function TextInRectangle(Left, Top, Right, Bottom: Double): WString;
function TextInRectangle(Rectangle: TPdfRectangle): WString;
| Rectangle | TPdfRectangle. Ein Record, der das Begrenzungsrechteck in PDF-Benutzerkoordinaten angibt (Ursprung unten links, Y nimmt nach oben zu) |
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 wirdTextInRectangle 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
// 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;