function ExtractDocumentTables(
const Options: TPdfTableExtractionOptions): TPdfTables;
Metoden går igenom sidorna i dokumentordning, tillämpar ExtractTables, delar de konfigurerade cell- och tabellbudgeterna över hela genomsökningen och återställer sidan som var aktiv före anropet
När DetectContinuations är aktiverat bildar två tabeller på efterföljande sidor en kedja när varje kolumngräns matchar inom toleransen och antingen båda fragmenten ligger inom ContinuationMargin från sina sidkanter eller ingen annan text ligger under det första fragmentet och över det andra; löpande sidhuvuden och sidfötter inom marginalen ignoreras. Ett fragment vars första rad är en enda cell som spänner över hela bredden bär en rubrik och börjar alltid en ny tabell
Linjerade fragment med färre rader än MinRows behålls under en dokumentgenomsökning när de visar sig fortsätta rutnätet från föregående sida, så att en ensam rad som spillde över ett sidbrytning inte går förlorad
TPdfTableExtractionOptions styr de två strategierna med DetectRuledTables och DetectWhitespaceTables, avgränsar acceptansen med MinRows, MinColumns och HeaderRowCount och finjusterar geometrin med tolerantfälten, inklusive ContinuationMargin för kedjematchning
ptcNone identifierar en oberoende tabellptcStart identifierar den första tabellen i en kedjaptcMiddle identifierar en inre tabell i en kedjaptcEnd identifierar den sista tabellen i en kedjaContinuationGroup länkar samman alla medlemmar i samma kedjavar
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;