ExportPageMarkdown

文字、擷取、Markdown

描述

依頁面偵測到的段落、清單、標題與表格,將單一 PDF 頁面匯出成語義化 Markdown

語法

Delphi

Function TPDFlib.ExportPageMarkdown(Page, Options: Integer): WideString;

ActiveX

Function PDFlib::ExportPageMarkdown(Page As Long, Options As Long) As String

DLL

const wchar_t* DLExportPageMarkdown(int InstanceID, int Page, int Options);
const char* DLExportPageMarkdownA(int InstanceID, int Page, int Options);

參數

Page頁碼(1 起算)
Options組合 PDF_MARKDOWN_INCLUDE_PAGE_MARKERS (1)、PDF_MARKDOWN_DETECT_HEADINGS (2) 與 PDF_MARKDOWN_PRESERVE_STYLES (4),或使用 PDF_MARKDOWN_DEFAULT (7);零表示只輸出語義區塊,不含選配標記、標題推測與字型樣式

傳回值

傳回 Markdown 文字;驗證或擷取失敗時傳回空字串

備註

分析使用 SetStructuredTextOptions,與各格式專屬的 Options 分開;讀取來源與後備警告請看 GetLastStructuredTextDiagnostics

內容繫結完整時,真實標籤樹順序優先;未解析或不明確的內容會以 mixed 或 geometric 後備保留萃取文字,未知自訂角色不會從名稱猜測

簡單未合併的表格使用直立線語法;帶合併儲存格的表格使用內嵌 HTML,並以 row span 與 column span 保留空白儲存格

標題推斷會把短單行段落與該頁本文文字的中位數大小比較,產出 H1 到 H3 層級

啟用 PDF_MARKDOWN_PRESERVE_STYLES 時,字型樣式可辨識粗體與斜體字型名稱,以及上標與下標對齊

Markdown 語法字元會被跳脫,直立線表格的儲存格也會跳脫內嵌的直立線字元

擷取會保留所選頁面與開啟中的寫入器標籤堆疊;目前未儲存的寫入器標籤會在不關閉標籤、不結束文件的狀態下納入輸出

DLL 傳回指標在下一次同一執行個體的字串傳回呼叫之前保持有效

LastErrorCode 為 113 表示頁面或選項遮罩無效,517 表示萃取失敗

另請參閱

ExportDocumentMarkdown, ExtractStructuredPage, ExportPageHTML