PDFium Component Docs

ApplyOcrSearchLayer método

Componente: TPdf  ·  Unidad: PDFium
Agrega una capa de texto de búsqueda invisible a las páginas escaneadas mediante un proveedor de OCR de la aplicación

Syntax

function ApplyOcrSearchLayer(
  const Provider: IPdfOcrProvider;
  const Options: TPdfOcrOptions;
  out Report: TPdfOcrReport;
  const CancellationToken: IPdfCancellationToken = nil): Boolean;

Provider contract

La biblioteca renderiza cada página seleccionada a través de PDFium y pasa una imagen compacta popfBgra32 de arriba hacia abajo a IPdfOcrProvider.RecognizePage

El proveedor devuelve valores TPdfOcrWord cuyas coordenadas Quad usan unidades de píxel con el origen en la esquina superior izquierda de la imagen

La confianza del texto debe estar en el rango de 0 a 1 y los puntos del cuadrilátero deben permanecer dentro de la imagen suministrada

Output behaviour

Options and budgets

FirstPage y LastPage seleccionan un rango inclusivo, mientras que cero selecciona el límite del documento

SkipPagesWithText evita duplicar una capa de búsqueda existente y ContinueOnError controla la recuperación a nivel de página

Los presupuestos que se aplican de forma restrictiva (fail-closed) antes de mutar la página cubren MaxPixelsPerPage y MaxTotalPixels píxeles, MaxWordsPerPage y MaxTotalWords palabras, MaxWordCharacters caracteres por palabra, además de la confianza y los DPI

Example

var
  Options: TPdfOcrOptions;
  Report: TPdfOcrReport;
begin
  Options := TPdfOcrOptions.Default;
  Options.Dpi := 300;
  Options.MinConfidence := 0.75;
  if Pdf1.ApplyOcrSearchLayer(OcrProvider, Options, Report) then
    Pdf1.SaveAs('searchable.pdf');
end;

See Also

DetectPageSkew, GetStructuredText, Text