function TextInRectangle(Left, Top, Right, Bottom: Double): WString;
function TextInRectangle(Rectangle: TPdfRectangle): WString;
| Rectangle | TPdfRectangle. A record specifying the bounding rectangle in PDF user-space coordinates (origin at lower-left, Y increases upward). |
WString (chaîne Unicode) contenant tous les caractères dont les boîtes englobantes intersectent le rectangle spécifié. Renvoie une chaîne vide si aucun texte n'est trouvé dans la régionTextInRectangle extrait le contenu textuel Unicode qui se trouve à l'intérieur d'une région rectangulaire donnée sur la page courante. C'est utile pour lire le texte d'une zone spécifique comme un en-tête, un pied de page, une cellule de tableau ou une étiquette de champ sans traiter toute la page
Deux surcharges sont fournies. La forme à quatre paramètres accepte les valeurs individuelles Left, Haut, Right et Bottom. La forme à un paramètre accepte un record TPdfRectangle, ce qui est pratique lorsque la région est déjà calculée sous forme de structure rectangulaire
Les coordonnées utilisent l'espace utilisateur PDF : l'origine se situe dans le coin inférieur gauche de la page et Y augmente vers le haut. Notez que Bottom est donc une valeur plus petite que Haut pour un rectangle normalement orienté. Les caractères sont inclus dans le résultat si leurs boîtes englobantes chevauchent la région spécifiée
Comme Text, cette méthode lit la couche de texte logique de la page et fonctionne sur une page PDF chargée
// Extract text from the top header area of an A4 page
// A4: 595 x 842 pt; header = top 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;
// Using TPdfRectangle overload
var
Rect: TPdfRectangle;
CellText: WString;
begin
Rect.Left := 72; Rect.Bottom := 600;
Rect.Right := 250; Rect.Top := 640;
CellText := Pdf1.TextInRectangle(Rect);
end;