PDFium Delphi Component Docs

ExtractDocumentTables Método

Componente: TPdf  ·  Unidad: PDFium
Extrae tablas en todas las páginas y marca las continuaciones entre páginas coincidentes

Syntax

function ExtractDocumentTables(
  const Options: TPdfTableExtractionOptions): TPdfTables;

Description

El método visita las páginas en orden de documento, aplica ExtractTables, comparte los presupuestos de celda y de tabla configurados a lo largo del escaneo completo y restaura la página que estaba activa antes de la llamada

Cuando DetectContinuations está habilitado, dos tablas en páginas consecutivas forman una cadena cuando cada límite de columna coincide dentro de la tolerancia y ambos fragmentos se sitúan dentro de ContinuationMargin de sus bordes de página o no hay otro texto por debajo del primer fragmento y por encima del segundo; los encabezados y pies de página que estén dentro del margen se ignoran. Un fragmento cuya primera fila es una sola celda que abarca todo el ancho lleva un título y siempre empieza una tabla nueva

Los fragmentos con líneas que tienen menos filas que MinRows se conservan durante un escaneo del documento cuando resulta que continúan la rejilla de la página anterior, de modo que una fila suelta que se pasó a la página siguiente no se pierde

TPdfTableExtractionOptions activa las dos estrategias con DetectRuledTables y DetectWhitespaceTables, acota la aceptación con MinRows, MinColumns y HeaderRowCount, y ajusta la geometría con los campos de tolerancia, incluido ContinuationMargin para el emparejamiento de cadenas

Continuation values

Example

var
  Options: TPdfTableExtractionOptions;
  Tables: TPdfTables;
  I: Integer;
begin
  Options := TPdfTableExtractionOptions.Default;
  Tables := Pdf1.ExtractDocumentTables(Options);
  for I := 0 to High(Tables) do
    Memo1.Lines.Add(Tables[I].ToJson);
end;

See Also

ExtractTables, GetStructuredText