Ubuntu下使用Pandoc实现Markdown转pdf

date: 2021.01.28; modification:2021.01.29

目录:

1 环境

Ubuntu14.04

2 安装

sudo apt install pandoc texlive texlive-xetex latex-cjk-all texlive-math-extra

如果是server版的ubuntu, 可能没有中文和字体, 请自行搜索安装.

3 转换

对于Ubuntu 14.04(系统仓库自带1.12版本):

pandoc --toc --latex-engine=xelatex -V mainfont="等距更纱黑体 TC" test.md -o test.pdf

mainfont的字体, 需要是 fc-list :lang=zh 命令执行结果列表中能看到的, 其中文件路径的冒号之后, 且在第一个逗号之前的字段, 就是mainfont的名称. 对于该版本, 转换出的相当于<pre>标签的内容, 中文会缺失, 因为该版本只识别mainfont, 不识别CJKmainfont.

对于Ubuntu 18.04(pandoc 1.19.2.4):

pandoc --toc --latex-engine=xelatex -V CJKmainfont="Noto Sans Mono CJK TC" test.md -o test.pdf

对于Windows:

对于 Pandoc 2.0 版本以上, 可以使用以下的命令生成 PDF 文件:

pandoc --pdf-engine=xelatex -V CJKmainfont="KaiTi" test.md -o test.pdf

4 参考

纯文本做笔记 — 使用 Pandoc 把 Markdown 转为 PDF 文件

https://github.com/googlefonts/noto-cjk/issues/70

https://github.com/jgm/pandoc/wiki/Pandoc-With-Chinese-(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)