Table Recognition
Overview
Table Recognition reconstructs the internal structure of tables detected during layout analysis, including rows, columns, merged cells, and cell boundaries, so that the converted document preserves the original tabular semantics instead of producing a flat grid of text fragments.
It is controlled by the independent option enableAiTableRecognition, which is exposed on ConvertOption. The table model is only invoked for table regions reported by layout analysis whose detection confidence is below the trusted threshold; high-confidence native PDF tables bypass the model to save inference time.
Typical scenarios that benefit from Table Recognition:
- Borderless or partially bordered tables, where ruling lines alone cannot describe the structure.
- Tables with merged header cells, multi-row headers, or spanning cells, such as financial statements, lab reports, and invoices.
- Scanned tables processed by OCR, where geometric reconstruction is required before cell-level data extraction.
Features that support Table Recognition:
- PDF to Word
- PDF to Excel
- PDF to PowerPoint (PPT)
- PDF to HTML
- PDF to RTF
- PDF to CSV
- Extract PDF to JSON
- Extract PDF to Markdown
Notice
- Table Recognition runs only when layout analysis is active (i.e.
enableAiLayout = true, or implicitly whenenableOcr = true). - The DocumentAI model is loaded by
LibraryManager::initializefromresource/models/documentai.model. - Setting
enableAiTableRecognition = falsedisables the table model entirely; detected table regions will then fall back to geometric reconstruction from the underlying page objects.
Sample
This sample demonstrates how to convert a PDF to a DOCX file with Table Recognition enabled.
$option = new ConvertOption();
// Layout analysis must be enabled for Table Recognition to take effect.
$option->enableAiLayout = true;
// Enable AI table recognition (set to false to disable).
$option->enableAiTableRecognition = true;
Conversion::convert('Word', 'word.pdf', 'password', 'output.docx', $option);