跳到主要内容

Python 文档生态:对比与借鉴

本页是实现参考,不是项目能力的范围上限。全量目标、固定 26.9.0 基准和验收门槛以 商业对齐计划 为准;使用方式见 DOM 指南 和 转换与安全。

下表保留迁移前已积累的对照方向与历史验证,不代表 DocKiln 0.1.0 已重新验收。Markdown/TXT 读写及 Markdown 语义映射已移除,相关旧记录仅用于历史对照。局部测试或某次原生输出不代表完整格式/布局等价;历史 阶段的无引用调试、性能记录和缺少完整复验材料的零散外部引擎观察可从 Git 历史恢复; benchmarks/ 保留指南、测试或复验器引用的材料。不将旧测试数量、环境或 CI 状态写成当前结果。

来源项目落点证明价值所需证据当前状态
python-docx原包局部编辑、自然的节点 API、公开保留报告独立 ZIP 部件字节对照,读/无编辑/资源编辑/失败不污染已实现;独立 ZIP 字节及无编辑/编辑用例通过
docxtpl可信 Word 模板与转换组合,明确模板错误实际模板变量、循环、图片、缺失变量和 XML 转义变量、段落循环、内嵌/动态图片、缺失变量及 XML 转义已实测;动态图片的 DOCX/PDF 尺寸和像素检查通过
Mammoth自定义业务样式语义、脚注引用与回链、转换消息标题/引用/代码样式覆盖与不变更源模型;脚注位置和内容对照Markdown 映射与注释导出已移除;既有 Mammoth/Pandoc 对照仅为历史证据,当前保留 DOCX/Flat OPC 注释及来源模型
docx2python来源关联与独立内容对照复杂列表、嵌套/合并表格、notes 和跨 run 内容既有语义 corpus 通过;原 XML 定位已验证,复杂共同样本仍待扩展
Pandoc单一中间模型、输出参考样式、读写边界模型语义往返;参考 DOCX 样式用于生成且保留输出关系参考 DOCX 样式覆盖已实现;有效字号/直接格式/ID 关系/失败不污染验证通过,常见内容及参考标题已做真实 Pandoc 对照,复杂字符继承仍待深化
unoserver批转换超时、回收和生命周期超时/崩溃后下一任务成功、重复转换无 profile 串扰;吞吐对照原生超时后恢复、不同输入/独立 profile、崩溃子进程回收已验证;批量吞吐对照待补
docx2pdfMicrosoft Word 对照工具相同样本的真实 Word 页数、文本、视觉结果;环境缺失明确记录已有八页 Word 原生产物和小字号对照;固定语料的完整布局验收仍未完成
fpdf2字体回退、塑形、测量与输出一致混合字体与复杂文字的实际坐标/内容/测量对照相同格式 run 连字/字距、fallback 缓存和 RTL 片段方向已修复;实际基线/边界与原生标点坐标已有验证;真实格式边界及更多文字仍待深化
ReportLab测量/放置/拆分职责、跨页表格长行分割、重复表头、不可拆行的布局验证长行、重复表头及不可拆行已有实测;首个多行表头拆分、重复表头导航和旋转单元格隐藏文字已修复;四类 ReportLab 共同样本通过内容/位置对照;复杂富内容共同样本仍待扩展
WeasyPrint页边区域、页码、分页与孤行规则keepNext、pageBreakBefore、widowControl 跨页/列内容与坐标pageBreakBefore、keepNext 链与两行孤行控制、多列链/首表行/组均衡已验证;页边 Artifact 与首次可见导航已验证;复杂连续分节仍待扩展
Docling稳定结构契约、层级和来源追踪JSON 契约、原始 part/定位关联、正文/附属内容区分原始 part/元素索引已实现,正文/嵌套表格/注/页眉测试通过;完整 LDM 图片 JSON 往返已验证
商业 Aspose / Spire.Doc诚实能力矩阵、一致选项、复杂文档验收能力声明逐条关联实现/测试,不使用未实现选项冒充兼容已有矩阵;PDF 内容流压缩/打开模式、大纲补层和展开状态已验证,其余选项继续审计
pypdf / PyMuPDF独立 PDF 结构、内容和渲染验收同一样本独立抽取、页面坐标及渲染图五类基准内容/图片独立抽取通过;段落导航的页/列/坐标、结构树映射已对照;表格/页边等共同样本逐页像素摘要一致,更多真实语料仍待扩展

证据与剩余边界​

  • 共同语义样本(本地复验材料,未公开)、注释/脚注样本(本地复验材料,未公开) 用于内容与结构对照,不替代分页和像素检查。
  • 早期性能测量移至 Git 历史;需要当前速度结论时,应在固定环境和共同语料上重新测量。
  • 当前字体替换、塑形、外部引擎和内容损失边界见 转换与安全。
  • 完整布局、复杂共同样本、批量吞吐、标准认证及全部商业 API 的缺口仍保留在 全量台账(本地复验材料,未公开)。

重现各专项时使用 benchmarks/ 中记录的版本、语料、配置和执行方法;测试/复验器仍 引用的原始输出及生成器保留。阶段叙述和失败调试过程可从 Git 历史恢复。