PDFium Delphi Component Docs

TextInRectangle Método

Componente: TPdf  ·  Unidade: PDFium
Extrai texto dentro de um limite retangular na página

Syntax

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

 

function TextInRectangle(Rectangle: TPdfRectangle): WString;

RectangleTPdfRectangle. Um record que especifica o retângulo delimitador em coordenadas do espaço de usuário do PDF (origem no canto inferior esquerdo, Y aumenta para cima)

Return Value

Um WString (string Unicode) contendo todos os caracteres cujas caixas delimitadoras intersectam o retângulo especificado. Retorna uma string vazia se nenhum texto for encontrado na região

Description

TextInRectangle extrai o conteúdo de texto Unicode que está dentro de uma determinada região retangular na página atual. Isso é útil para ler texto de uma área específica, como um cabeçalho, rodapé, célula de tabela ou rótulo de campo, sem processar a página inteira

Duas sobrecargas são fornecidas. A forma com quatro parâmetros aceita valores individuais de Left, Top, Right e Bottom. A forma com um único parâmetro aceita um record TPdfRectangle, o que é conveniente quando a região já está computada como uma estrutura de retângulo

As coordenadas usam o espaço de usuário do PDF: a origem está no canto inferior esquerdo da página e Y aumenta para cima. Observe que Bottom é, portanto, um valor menor que Top para um retângulo normalmente orientado. Os caracteres são incluídos no resultado se suas caixas delimitadoras se sobrepõem à região especificada

Como Text, este método lê da camada de texto lógica da página e opera em uma página PDF carregada

Example

// 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;

See Also

Text, CharacterCount, FindFirst