SaveDOCXToStream

文档转换、提取、DOCX、流

描述

将 PDF 页范围转换为可编辑的 WordprocessingML 文档,并在当前流位置写入 DOCX 包

语法

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

参数

PageRange从 1 开始的页码范围,或代表所有页面的空字符串,保留显式页面顺序
Options位掩码:PDF_DOCX_INCLUDE_IMAGES = 1 将页面图像作为浮动 PNG 对象嵌入,PDF_DOCX_DETECT_HEADINGS = 2 将较大的短行映射为标题 1 到标题 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 与包组装使用额外缓冲区,内存随选定内容与图像增长

输出是具有经过 CRC 检查的原始 Deflate 条目的确定性 DOCX ZIP 包,无需安装 Office

提取会保留选定页面与打开的 writer 标签栈;当前未保存的 writer 标签会被包含进来,但不关闭标签,也不最终确定文档

无效参数时 LastErrorCode 为 114,提取、打包或流失败时为 518

另请参阅

SaveDOCXToFile、ExtractStructuredDocument、ExportDocumentHTML