ExtractStructuredDocument
Texto, extracción, datos estructurados
Descripción
Captura un intervalo de páginas seleccionado, analiza las páginas juntas y devuelve un documento JSON de esquema 2, un documento XHTML semántico o tablas CSV coordinadas
Sintaxis
Delphi
Function TPDFlib.ExtractStructuredDocument(Const PageRange: WideString;
Format, Options: Integer): WideString;ActiveX
Function PDFlib::ExtractStructuredDocument(PageRange As String,
Format As Long, Options As Long) As StringDLL
const wchar_t* DLExtractStructuredDocument(int InstanceID,
const wchar_t* PageRange, int Format, int Options);
const char* DLExtractStructuredDocumentA(int InstanceID,
const char* PageRange, int Format, int Options);Parámetros
| PageRange | Un intervalo de páginas de base uno como 1-3,7, o una cadena vacía para todas las páginas |
|---|---|
| Format | PDF_STRUCTURED_TEXT_JSON (0), PDF_STRUCTURED_TEXT_XHTML (1) o PDF_STRUCTURED_TEXT_CSV (2) |
| Options | Cero o PDF_STRUCTURED_TEXT_INCLUDE_STYLES (1) |
Valores devueltos
El JSON contiene version: 2 y una matriz pages que utiliza el esquema documentado por ExtractStructuredPage; los identificadores semánticos de nodo estables se aplican entre páginas
El XHTML combina el contenido semántico, con los fragmentos de tabla unidos dentro de una sola tabla en lugar de exigir una sección por página
El CSV contiene solo tablas y está vacío cuando ninguna página seleccionada tiene una; las tablas lógicas continuadas utilizan un único encabezado de tabla y omiten las filas de encabezado repetidas identificadas
Un intervalo, formato u opción no válidos, así como cualquier fallo de extracción, devuelven una cadena vacía
Observaciones
El análisis utiliza SetStructuredTextOptions con independencia de las Options específicas de formato; consulte GetLastStructuredTextDiagnostics para conocer las fuentes de lectura y las advertencias de recurso alternativo
El orden real del árbol de etiquetas tiene prioridad cuando las vinculaciones de contenido están completas; el contenido sin resolver o ambiguo conserva el texto extraído en el recurso alternativo mixto o geométrico, y los roles personalizados desconocidos no se adivinan por su nombre
El análisis entre páginas identifica elementos accesorios repetidos en los márgenes y continuaciones de tabla compatibles; los indicadores predeterminados identifican los elementos accesorios conservando su texto
Las celdas etiquetadas conservan el contenido vacío y las extensiones explícitas de fila y columna; las rejillas de tabla mal formadas o solapadas recurren al recurso alternativo conservando el texto extraído
Los modelos de página seleccionados se conservan para el análisis de todo el documento y el resultado serializado completo se almacena en búfer; la memoria crece con el contenido seleccionado y el tamaño de la salida
La extracción conserva la página seleccionada y la pila de etiquetas del escritor abiertas; las etiquetas del escritor sin guardar se incluyen sin etiquetas de cierre ni finalizar el documento
El progreso y la cancelación cooperativa utilizan el ciclo de vida normal de las operaciones del documento
LastErrorCode es 111 para una entrada no válida y 515 cuando falla la extracción