Pandoc3.7新特性:存在合并单元格的 HTML 表格会被保留为嵌入的 HTML 表格

问题描述

在 Pandoc 3.6 中,当将包含合并单元格的 HTML 表格 (<table>) 转换为 Markdown 格式时,表格会被直接转换为 Markdown 表格格式。然而,在 Pandoc 3.7 中,同样的操作结果发生了变化:合并单元格的 HTML 表格被保留为嵌入的 HTML 表格,而不是强制转换为 Markdown 表格。

pandoc的官方文档地址:https://pandoc.org/releases.html


3.7版本文档相关说明

  1. Grid Table 改进

    • 文档中提到: New version of gridTable (#6344) [API change]. This handles row and colspans. It also ensures that cells won't wrap text in places where it wouldn't normally wrap, even if this means making the cells wider than requested by the colspec (#9001, #7641).

    这一改动表明 Pandoc 3.7 对网格表格(gridTable)进行了重大升级,增加了对 rowspancolspan 的支持,并且在无法正确布局时会扩展单元格宽度以避免文本换行。

  2. HTML Reader 和 Writer 的改进

    • 文档中提到: Handle row/colspans in grid tables, and expand cells when it isn't possible to lay them out without breaking string of non-whitespace.

    这一改动明确指出,Pandoc 3.7 在处理表格时会尝试保留 rowspancolspan,并在无法正确布局时扩展单元格,而不是简单地将表格转换为目标格式的表格。

  3. Markdown Writer 的改进

    • 文档中提到: Avoid spaces after/before open/close delimiters (#10696). E.g. instead of rendering xspace y as x* space *y we render it as x space y.

    这一条针对 Markdown 渲染的细节, 更加注重兼容性和展示效果。


结合上述信息,可以得到 Pandoc 3.7 的以下特性导致了行为变化:

  • Grid Table 的改进 :Pandoc 3.7 引入了新的 gridTable 实现,支持 rowspancolspan,并且在无法正确布局时会保留原始 HTML 表格。
  • HTML Reader 的改进:Pandoc 3.7 在读取 HTML 表格时,能够更好地识别和处理复杂的表格结构(如合并单元格),并尽量保留这些结构。

因此,当使用 Pandoc 3.7 将包含合并单元格的 HTML 表格转换为 Markdown 格式时,Pandoc 会选择保留原始的 HTML 表格结构,而不是强制将其转换为 Markdown 表格。这种行为确保了表格在目标格式中的展示效果更好。

其他格式的文件转换我还没有验证,希望有兴趣的朋友来讨论,

相关推荐
熊猫_豆豆1 分钟前
一个模拟四轴飞行器在随机气流扰动下悬停飞行的交互式3D仿真网页,包含飞行器建模与PID控制算法
javascript·3d·html·四轴无人机模拟飞行
小贺儿开发1 分钟前
一句话生成网页 + 自动化办公(OpenCode + DeepSeek-V4)
css·自动化·html·工具·代码·网页·deepseek
爱睡懒觉的焦糖玛奇朵6 分钟前
【从视频到数据集:焦糖玛奇朵的魔法工具Video To YOLO Dataset】
人工智能·python·学习·yolo·音视频
石榴树下的七彩鱼37 分钟前
医疗票据 OCR 识别 API 多场景落地指南:医保结算 + 商保理赔 + 医疗信息化(附 Python/Java 完整示例)
java·python·ocr·石榴智能·医疗票据ocr·医保结算·ocrapi
idingzhi1 小时前
A股量化策略日报(2026年05月22日)
android·开发语言·python·kotlin
song5011 小时前
多卡训练加速:HCCL 集合通信实战
分布式·python·flutter·ci/cd·分类
江上清风山间明月1 小时前
如何将python开发的window应用打包成exe
开发语言·python·exe·打包
知识分享小能手1 小时前
Flask入门学习教程,从入门到精通, Flask模板 — 完整知识点与案例代码 (2)
python·学习·flask
不懒不懒2 小时前
基于 Flask —— 异步任务处理接口服务
后端·python·flask
happybasic2 小时前
Python库升级标准流程~
linux·前端·python