怎么用Pandoc把Latex转换成MS Word文档

Image by rawpixel via Unsplash

作为一名研究生,我喜欢在Latex中写作。它很容易入手,可以很好地处理不同发布者的所有格式要求,具有很好的对引用文献的支持等等。所有这些优势使得在Latex中撰写学术文章比在MS Word中写作更有乐趣。但是一个缺点是,并非所有合作者都知道如何使用Latex,比如说我的导师经常希望我用Word来撰写论文,因为Word中的“评论”和“跟踪更改”的功能对于写作方面的协作非常有用。因此,很多时候需要在Latex和MS Word之间进行转换,而我也经常使用笨办法,那就是手动的重新写一遍Word文档,这个过程非常痛苦和耗时。

有一些软件可以完成这项工作,但它们要么是付费软件,要么结果不尽如人意。直到我发现Pandoc,这是一个很棒的程序,可以在各种标记格式之间进行转换(包括markdown,latex和docx文档之间)。更重要的是,Pandoc也是免费的开源软件。

第一步:安装

Pandoc的安装相对容易,并且在网页中提供了针对不同操作系统的详细过程。这里我就不加赘述了。

第二步:从 Latex 转换到 Word

我将假设您已准备好一个想要转化成Word的Latex文件。然后,您需要打开一个CMD窗口并指向包含要转换的Latex文件的目录。然后我们可以通过以下命令转换文件。

``pandoc mydoc.tex -o mydoc.docx``

这个命令就是告诉Pandoc将mydoc.tex转换为mydoc.docx。 -o告诉Pandoc我们想要的输出。请注意,我们可以将输出docx文件命名为我们想要的任何内容 - 它不需要与输入的Latex文档具有相同的名称。

数学公式

Pandoc可以很好地处理Latex方程,所有方程都转换成Word里用Equation Editor编辑的公式,因此不需要MathType。

但是,目前没有使用Equation Editor对MS Word中的公式进行正确编号的好方法,常见的方法是创建一个三列表,将公式放在中间列中,将公式编号放在右列中。如果我们有很多方程式,这在许多学术出版物中通常都都是如此,那么编辑方程式的编号非常耗时。

文献引用

Latex中的Citations可能无法在转换后的Word文件中正确显示。我们可以通过pandoc-citeproc解决这个问题,这通常是在我们安装Pandoc时安装的。我们只需要让Pandoc知道参考文件的位置,例如.bib文件。如果文件与Latex文档位于同一文件夹中,我们可以使用以下命令,

``pandoc mydoc.tex --bibliography=myref.bib -o mydoc.docx`

文档格式

Pandoc的另一个不错的功能是,我们可以通过引用docx文件指定生成的docx文件的样式。例如,如果我们要向IEEE提交论文,我们可以从IEEE下载Word模板,并将其用作参考文件,然后Pandoc生成的docx文件将具有与IEEE模板相同的样式。这可以通过以下命令实现,

``pandoc mydoc.tex --bibliography=myref.bib --reference-docx=IEEE_template.doc -o mydoc.docx``

交叉引用

为了处理数字,方程式,表格和交叉引用的编号,有一个名为pandoc-crossref的文件管理器。我正在使用的电脑是Windows操作系统,因此我下载了GitHub Repo发布页面上提供的预构建好的.exe文件。然后我将可执行文件放在Pandoc的安装目录中(默认情况下通常在C盘中)。

然后我们可以在命令中指定pandoc-crossref作为Pandoc的filter,

``pandoc mydoc.tex --filter pandoc-crossref --bibliography=myref.bib --reference-docx=IEEE_template.doc -o mydoc.docx``

小结

我认为使用Pandoc将Latex转换为Word对于与使用MS Word的共同作者的合作来说已经足够了。如果我们想要提交只接受docx文件的期刊,Pandoc也可以节省我们很多时间,我们只需要对生成的docx文件进行小的更改,而不是手动重新输入MS Word中的整个文件。

推荐阅读更多精彩内容