ExtractStructuredPage
Text, extrakce, strukturovaná data
Popis
Vykreslí jednu stránku do strukturovaného textového modelu a serializuje ji jako JSON, XHTML nebo CSV
Model seskupuje text do odstavců a zjištěných tabulek, s řádky a stylovanými úseky pod odstavci a řádky, buňkami a úseky pod tabulkami
Syntaxe
Delphi
Function TPDFlib.ExtractStructuredPage(Page, Format,
Options: Integer): WideString;ActiveX
Function PDFlib::ExtractStructuredPage(Page As Long, Format As Long,
Options As Long) As StringDLL
const wchar_t* DLExtractStructuredPage(int InstanceID, int Page,
int Format, int Options);
const char* DLExtractStructuredPageA(int InstanceID, int Page,
int Format, int Options);Parametry
| Page | Číslo stránky od jedničky |
|---|---|
| Format | PDF_STRUCTURED_TEXT_JSON (0), PDF_STRUCTURED_TEXT_XHTML (1) nebo PDF_STRUCTURED_TEXT_CSV (2) |
| Options | Nula nebo PDF_STRUCTURED_TEXT_INCLUDE_STYLES (1) k zahrnutí fontu, velikosti, barvy a svislého zarovnání do JSON a XHTML |
Hierarchie JSON
{
"version": 1,
"page": 1,
"width": 612,
"height": 792,
"blocks": [
{"type": "paragraph", "bbox": [40, 50, 300, 70],
"lines": [{"bbox": [40, 50, 300, 70], "spans": []}]},
{"type": "table", "columns": 3, "rows": [[]]}
]
}Návratové hodnoty
JSON a XHTML vracejí kompletní samostatné dokumenty
CSV vrací jen zjištěné tabulky a je prázdné, když stránka žádnou tabulku nemá
Neplatný požadavek nebo selhání extrakce vrací prázdný řetězec
Poznámky
Text se vykreslí jednou, pak se každý formát vyprodukuje ze stejné mezilehlé hierarchie
Detekce tabulek slučuje běžné mezery mezi slovy uvnitř buňky a vyžaduje zarovnané vícebuněčné řádky, čímž snižuje falešné pozitivity odstavců
Ohraničující rámečky používají souřadnice stránky vlevo nahoře a vyjadřují se v bodech PDF
Návratové ukazatele DLL zůstávají platné do dalšího volání vracejícího řetězec na stejné instanci
LastErrorCode je 111 pro neplatnou stránku, formát nebo volby a 515, když selže extrakce
Viz také
ExtractStructuredDocument, ExtractPageTextBlocks, GetPageText