ExtractStructuredDocument
텍스트, 추출, 구조화된 데이터
설명
선택한 페이지 범위를 캡처해 페이지를 함께 분석하고 스키마 2 JSON 문서 하나, 의미 XHTML 문서 하나, 또는 짝이 맞는 CSV 표들을 반환합니다
구문
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);매개변수
| PageRange | 1-3,7 같은 1부터 시작하는 페이지 범위이며 빈 문자열이면 모든 페이지를 나타냅니다 |
|---|---|
| Format | PDF_STRUCTURED_TEXT_JSON(0), PDF_STRUCTURED_TEXT_XHTML(1) 또는 PDF_STRUCTURED_TEXT_CSV(2) |
| Options | 0 또는 PDF_STRUCTURED_TEXT_INCLUDE_STYLES(1) |
반환 값
JSON에는 version: 2와 ExtractStructuredPage가 문서화한 스키마를 쓰는 pages 배열이 담기며, 안정적인 의미 노드 ID가 페이지에 걸쳐 적용됩니다
XHTML은 의미 콘텐츠를 합칩니다. 페이지마다 section 하나를 요구하는 대신 이어진 표 조각이 하나의 표 안에 유지됩니다
CSV에는 표만 담기며 선택한 페이지에 표가 없으면 비어 있습니다. 이어지는 논리 표는 하나의 표 헤더를 쓰고 식별된 반복 헤더 행은 생략합니다
범위, 형식 또는 옵션이 잘못되었거나 추출에 실패하면 빈 문자열을 반환합니다
비고
분석은 형식별 Options와 별개로 SetStructuredTextOptions를 사용합니다. 읽기 소스와 폴백 경고는 GetLastStructuredTextDiagnostics에서 확인하십시오
콘텐츠 바인딩이 완전하면 실제 태그 트리 순서가 우선합니다. 해석되지 않거나 모호한 콘텐츠는 mixed 또는 geometric 폴백으로 추출 텍스트를 유지하고, 알 수 없는 사용자 정의 역할은 이름으로 추측하지 않습니다
페이지에 걸친 분석은 반복되는 여백 장식 요소와 호환되는 표 이어짐을 식별합니다. 기본 플래그는 텍스트를 유지하면서 장식 요소를 식별합니다
태그 셀은 빈 콘텐츠와 명시적인 행 및 열 범위를 유지합니다. 잘못되었거나 겹치는 표 그리드는 추출 텍스트를 유지한 채 폴백합니다
선택한 페이지 모델은 문서 전역 분석을 위해 유지되고 완전히 직렬화된 결과가 버퍼링됩니다. 메모리는 선택한 콘텐츠와 출력 크기에 따라 늘어납니다
추출은 선택한 페이지와 열린 라이터 태그 스택을 유지합니다. 아직 저장하지 않은 현재 라이터 태그는 태그를 닫거나 문서를 마무리하지 않고 그대로 포함됩니다
진행률 및 협력적 취소는 일반 문서 작업 수명 주기를 사용합니다
LastErrorCode는 잘못된 입력의 경우 111이고 추출 실패의 경우 515입니다