PDFium Component Docs

TextInRectangle Methode

Deze API-entry behoudt identifiers, signatures, codeblokken en PDF-termen in hun oorspronkelijke vorm.
Component: TPdf  ·  Unit: PDFium
Tekst binnen een rechthoekige begrenzing op de pagina extraheren

Syntaxis

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

 

function TextInRectangle(Rectangle: TPdfRectangle): WString;

RectangleTPdfRectangle. Een record dat de begrenzingsrechthoek in PDF-user-space-coördinaten opgeeft (oorsprong linksonder, Y loopt omhoog)

Return Value

Een WString (Unicode string) met alle tekens waarvan de bounding boxes de opgegeven rechthoek snijden. Geeft een lege tekenreeks terug als er binnen het gebied geen tekst wordt gevonden

Beschrijving

TextInRectangle haalt de Unicode-tekstinhoud op die binnen een gegeven rechthoekig gebied op de huidige pagina valt. Dit is handig om tekst uit een specifiek gebied te lezen, zoals een koptekst, voettekst, tabelcel of veldlabel, zonder de hele pagina te verwerken

Er zijn twee overloads beschikbaar. De vorm met vier parameters accepteert afzonderlijke waarden voor Left, Top, Right en Bottom. De vorm met één parameter accepteert een TPdfRectangle-record, wat handig is wanneer het gebied al als rechthoekstructuur is berekend

De coördinaten gebruiken PDF user space: de oorsprong ligt in de linkeronderhoek van de pagina en Y loopt omhoog. Merk op dat Bottom daarom een kleinere waarde is dan Top voor een normaal georiënteerde rechthoek. Tekens worden in het resultaat opgenomen als hun bounding boxes het opgegeven gebied overlappen

Net als Text leest deze methode uit de logische tekstlaag van de pagina en werkt ze op een geladen PDF-pagina

Voorbeeld

// Tekst uit het bovenste kopgebied van een A4-pagina extraheren
// A4: 595 x 842 pt; header = bovenste band van 60 pt
Pdf1.LoadFromFile('C:\Docs\report.pdf');
Pdf1.PageIndex := 0;
var HeaderText: WString;
begin
  HeaderText := Pdf1.TextInRectangle(0, 782, 595, 842);
  ShowMessage(HeaderText);
end;

// De TPdfRectangle-overload gebruiken
var
  Rect: TPdfRectangle;
  CellText: WString;
begin
  Rect.Left := 72; Rect.Bottom := 600;
  Rect.Right := 250; Rect.Top := 640;
  CellText := Pdf1.TextInRectangle(Rect);
end;

Zie ook

Text, CharacterCount, FindFirst