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