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 String

DLL

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
FormatPDF_STRUCTURED_TEXT_JSON (0), PDF_STRUCTURED_TEXT_XHTML (1) nebo PDF_STRUCTURED_TEXT_CSV (2)
OptionsNula 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