Pandoc的使用记录

本文最后更新于:2024年9月16日 下午

Pandoc简介

Pandoc是使用Haskell语言编写的一款跨平台、自由开源及命令行界面的标记语言转换工具,可实现不同标记语言间的格式转换,堪称该领域中的“瑞士军刀”

Windows10系统下的使用方法

  1. 将pandoc安装目录加入系统环境变量的path中

  2. 在命令行操作pandoc进行格式转换

markdown/latex转docx

1
2
3
pandoc -s source.md -o output.docx
# 如果有数学公式需要转换,加上--mathjax或者--katex或者--mathml参数
pandoc -s maths.md -o outputmaths.docx --mathjax

使用情况记录:转换出来的公式是用word中自带的公式编辑器显示的,绝大部分公式都能正常显示

小贴士: 利用typora编辑器,在安装好pandoc的情况下,可以一键实现转换,不需要命令行操作,并且转换后的格式比用命令行转换出来的好看。

To do: \dfrac{}{} 的行间分式转化出来,在word中变矮了,显示的格式是 frac{}{} 类型

查阅大量文章之后发现word不支持 \dfrac ,看来让行内公式显示看起来比较舒服的分数大小,不太容易实现了。

md转html再转docx

1
pandoc -s maths.md --webtex -t html | pandoc -f html -o output.docx

解释说明: > -s 表示待转换的文件 > --webtex 表示将数学公式加上标签 > -t to的简写 > | 管道符 > -f from的简写 > -o output的简写 > 上述命令的作用就是将md文件以及其中的数学公式以图片形式转为html,然后再将html转成docx

由于此时word中的公式全部都是图片显示了,可以有效解决分数变小的问题。

实际使用过程中的三个问题:

  1. 运行命令报错,提示连接错误之类的,很可能是众所周知的问题,在命令行挂上代理即可:

linux系统终端使用 proxychains

win10命令行需要设置代理

1
2
set http_proxy=http://127.0.0.1:xxxx
set https_proxy=http://127.0.0.1:xxxx
2. 处理图片的速度比较慢,在正确设置代理的情况下,完成一套数学试卷的转换大约用了8分钟左右,请耐心等待

  1. 转换好打开发现,word中图片和文字参差不齐,只需要选中所有,右键选择 段落 ,找到 对齐方式 选择 居中 即可,为了美观些,还可以将行距设置为1.5倍。

Pandoc的使用记录
https://andyppang.github.io/2021/05/13/Pandoc的使用记录/
作者
PL
发布于
2021年5月13日
许可协议