pandoc 是一个可以将文件转换成各种格式的软件,支持 macOS ,Windows 和 Linux 。

本篇文章主要记录如何将 Markdown 文件转换成 docx 。

Pandoc 的安装

可以参考 Pandoc 官网

macOS 可以用 brew 安装。各个系统可以用 conda 安装。

安装完成后,在终端输入 pandoc --version ,如有版本信息,则安装成功。

pandoc 安装完成后,需要安装 pandoc-xnos 插件。该插件主要功能是图片、表格、公式等编号的索引。插件使用 pip 安装。

1
$ pip install pandoc-xnos

pandoc 生成 pdf 文件需要使用 Letax 工具。由于我并不需要转换为 pdf,因此这里暂不详述。

Markdown 格式转换为 docx

笔者尝试了一些可以将 Markdown 格式进行展示的方法,但效果都不够好。最终发现转换成 docx 格式最适合在组会上展示。

根据相关资料,pandoc 直接将 Markdown 转成 docx 格式可能会出现格式问题。因此需要先转换为 html 格式,再转换为 docx。

具体终端命令为:

1
2
3
4
// 转换为 html
$ pandoc --mathml --from markdown-yaml_metadata_block 'xxx.md' -o output.html
// 转换为 docx
$ pandoc --mathml .\output.html -o output2.docx

其中,--mathml 用于调整公式渲染,将数学公式输出为 MathML 格式。

--from markdown-yaml_metadata_block 用于完全解析 yaml 元数据块。

转换之后发现 docx 的公式还是有一些小问题,但是已经完全够用了。