function ExtractDocumentTables(
const Options: TPdfTableExtractionOptions): TPdfTables;
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
ptcNone identifica una tabla independienteptcStart identifica la primera tabla de una cadenaptcMiddle identifica una tabla intermedia de una cadenaptcEnd identifica la tabla final de una cadenaContinuationGroup vincula a todos los miembros de la misma cadenavar
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;