SaveDOCXToStream

Преобразование документов, извлечение, DOCX, потоки

Описание

Преобразует диапазон страниц PDF в редактируемый документ WordprocessingML и записывает DOCX-пакет в текущую позицию потока

Синтаксис

Function TPDFlib.SaveDOCXToStream(Const PageRange: WideString;
  Options: Integer; Target: TStream): Integer;

Параметры

PageRangeДиапазон страниц (нумерация с 1) или пустая строка для всех страниц; explicit page order is preserved
OptionsБитовая маска: PDF_DOCX_INCLUDE_IMAGES = 1 встраивает изображения страниц как плавающие объекты PNG, PDF_DOCX_DETECT_HEADINGS = 2 отображает крупные короткие строки в Heading 1 по Heading 3, PDF_DOCX_PRESERVE_STYLES = 4 сохраняет имена шрифтов, размеры, цвета, полужирность, курсив, надстрочное и подстрочное начертание, а PDF_DOCX_PRESERVE_PAGE_BREAKS = 8 вставляет редактируемые разрывы страниц; PDF_DOCX_DEFAULT включает все четыре
TargetВыходной поток, который не переходит во владение библиотеки

Возвращаемые значения

Возвращает число преобразованных страниц либо ноль при сбое валидации, отмены, извлечения, упаковки или записи

Примечания

Анализ использует SetStructuredTextOptions независимо от специфичных для формата Options; источники чтения и предупреждения о резервных путях смотрите в GetLastStructuredTextDiagnostics

Когда привязки содержимого полны, приоритет имеет реальный порядок дерева тегов; неразрешённое или неоднозначное содержимое удерживает извлечённый текст в mixed- или geometric-резерве, а неизвестные пользовательские роли не угадываются по их именам

Абзацы в порядке чтения, маркированные и нумерованные списки и таблицы становятся нативным редактируемым содержимым Word, а не снимками страниц

Пустые тегированные ячейки, горизонтальные и вертикальные охваты используют нативные ячейки таблиц Word, w:gridSpan и w:vMerge

Соединённые фрагменты таблиц остаются в одном w:tbl между страницами, а опознанные повторяющиеся заголовки продолжения опускаются; опция разрывов страниц вставляет редактируемый разрыв в продолженную таблицу

Геометрические колонки, служебные элементы у полей, сопоставление продолжений и включаемый явно вывод объединений остаются эвристиками; когда важна точность, проверяйте последние диагностические отчёты и происхождение в структурированном JSON

Модели выбранных страниц и включённые изображения удерживаются для анализа по всему документу; сборка XML и пакета использует дополнительные буферы, поэтому память растёт с объёмом выбранного содержимого и изображений

Вывод — детерминированный ZIP-пакет DOCX с проверенными по CRC необработанными записями Deflate и не требует установки Office

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

LastErrorCode возвращает 114 при некорректных аргументах и 518 при сбоях извлечения, упаковки или потока

См. также

SaveDOCXToFile, ExtractStructuredDocument, ExportDocumentHTML