function ExtractDocumentTables(
const Options: TPdfTableExtractionOptions): TPdfTables;
该方法按文档顺序访问页面,应用 ExtractTables,在完整扫描中共享配置的单元格和表格预算,并恢复调用之前活动的页面
启用 DetectContinuations 时,连续两页上的两个表格在以下情况形成一条链:每个列边界都在容差内匹配,且两个片段要么都位于其页面边缘的 ContinuationMargin 范围内,要么第一个片段之下、第二个片段之上没有其他文本;位于边距内的重复页眉和页脚会被忽略。首行是横跨全宽的单个单元格的片段带有标题,并且总是开启一个新表格
行数少于 MinRows 的标尺线片段在文档扫描期间会被保留——当它们被确认是在延续上一页的网格时,这样跨页溢出的单行就不会丢失
TPdfTableExtractionOptions 用 DetectRuledTables 和 DetectWhitespaceTables 控制两种策略的启用,用 MinRows、MinColumns 和 HeaderRowCount 约束接受条件,并用容差字段(包括用于链匹配的 ContinuationMargin)调整几何参数
ptcNone 标识独立表格ptcStart 标识链中的第一个表格ptcMiddle 标识链中的中间表格ptcEnd 标识链中的最后一个表格ContinuationGroup 链接同一链的每个成员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;