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 с охватами строк и колонок, сохраняя пустые ячейки

Вывод заголовков сравнивает короткие однострочные абзацы с медианным размером основного текста страницы и даёт уровни H1–H3

Стилизация шрифтов распознаёт имена жирных и курсивных шрифтов плюс выравнивание верхнего и нижнего индекса, когда PDF_MARKDOWN_PRESERVE_STYLES включён

Символы синтаксиса Markdown экранируются, а ячейки pipe-таблиц экранируют встроенные символы вертикальной черты

Извлечение сохраняет выбранную страницу и открытый стек тегов писателя; текущие несохранённые теги писателя включаются без закрывающих тегов и без финализации документа

Указатели возврата DLL остаются действительными до следующего вызова, возвращающего строку, на том же экземпляре

LastErrorCode возвращает 113 при некорректной странице или маске опций и 517 при сбое извлечения

См. также

ExportDocumentMarkdown, ExtractStructuredPage, ExportPageHTML