如何使用 Pandoc 将科学手稿从 LaTeX 转换为 Word?

如何使用 Pandoc 将科学手稿从 LaTeX 转换为 Word?

我有一份典型的 LaTeX.tex格式的科学手稿,我需要将其转换为 MS Word.doc文件。必须转换为 MS Word 的原因是我要将手稿提交给学术期刊,他们仅有的接受 MS Word(我知道……)

手稿包括标题页、图表、表格、方程式(内联和在其自己的align环境中)、脚注、参考书目和附件。表格位于其自己的单独tables.tex文件中,我使用\include{tables}命令将其包括在内。大多数表格占据整个横向页面,并且是使用包生成的pdflscape。我使用的是 Windows 7 Professional。

我的计划是使用pandoc从 转到.tex.odt在 Libre Office 中打开后者,然后转换为.doc。我读过一篇相关的问题但它太笼统了。同样,Pandoc 中的例子网站太简单了。我试过但无法实现我想要的效果。这很令人惊讶,因为转换科学手稿可能是 Pandoc 最常见的用例。以下是一些示例失败:

示例 1

我在项目文件夹中打开命令行,并执行以下操作:

pandoc -s document.tex -o document.odt

我收到此错误信息:

pandoc: figure1: openFile: does not exist <no such file or directory>

其中figure1是项目文件夹中图形文件的名称(例如figure1.png),在行中引用为\includegraphics[width=5.8in]{figure1}。我怀疑 pandoc 需要一个.png扩展名,但不确定如何提供它。

示例 2

接下来我尝试.html并执行以下操作:

pandoc -s document.tex -o document.html

程序运行良好。我打开 HTML 文件。有脚注,但缺少图片,表格显示为 LaTeX,缺少参考书目,内联数学显示良好,但align环境中的数学显示不佳,部分标签显示正常,还有一些其他小问题。

因此,鉴于我的用例场景可能很典型,我的问题是:我应该使用什么命令来获取.odt我想要的文件?我在网上找不到完整的示例。


以下是错误的具体列表。我将根据社区建议更新我如何纠正这些错误:

  1. 图形未呈现。通过在命令中添加文件.png扩展名来解决。现在包含了图形,但它们很大,每个图形的一半都在页面之外。.tex\includegraphics
  2. 无参考书目。解决了。首先,我有一个巨大的合并 Latex.bib文件,我把所有的引用都保存在那里。我使用贾布雷夫。这给我带来了麻烦,因为我没有保存最干净的.bib文件。因此,我使用 JabRef 中的一个巧妙技巧减少了这个问题,该技巧允许您在编译手稿时.bib使用.auxLatex 生成的文件对主文件进行子集处理。在 JabRef 中,单击“工具”>“基于 AUX 文件的新子数据库”。这样,我生成了一个更小的biblio.bib文件,其中只有我手稿中引用的文章。运行pandoc -s document.tex -o document.odt --bibliography=biblio.bib成功了。
  3. 显示数学.\begin{align}环境中的数学逐字显示\latex;(部分解决方案是使用数学Libre Office 扩展。将 Pandoc 创建的文件中的 latex 数学代码复制并粘贴.odt到公式编辑器中,等等。当然,这可以内置到可以对所有剩余数学进行后处理的宏中。)更新:使用扩展显示数学效果很好--mathjax
  4. 内联数学。内联方程式并不总是能正确呈现。粗体数学是一个问题。例如$\Sigma=\sigma^2\bm{I}$显示为$\Sigma=\sigma^2\bm{I}$
  5. 显示标签(例如,部分标签显示为[sec:empirical] blah blah]
  6. 所有表格均显示为原始乳胶。

答案1

我尝试了其他答案中提到的几乎所有方法。

最后,令人惊讶的是,我发现最令人满意的转换方法是直接在 MS Word(2013 或更新版本)中打开 PDF 文件,这样可以保留大部分布局。尽管你会丢失交叉引用的超链接。

答案2

我放弃 pandoc 的原因几乎和你列出的完全相同。

如果您打算使用 pandoc,最简单的解决方案可能就是识别导致问题的环境和包 - 然后不使用它们,或者直接在 MS Word 中输入有问题的内容。

我曾经很幸运地使用 word 文档来latex2rtf创建一个.rtf然后进行转换,而不是通过 pandoc。正如我在隐藏输出,但保留交叉引用,我的解决方案是严格限制在创建你知道将被转换的 tex 文档时使用的包。这是因为从.tex.rtf是由不受支持的可选包和环境引起的。

https://github.com/AndyClifton/AccessibleMetaClass一个类的演示,它为你提供了一个可以转换为latex2rtf的文件.rtf从而转换为.docx。奖金:这个类几乎(!)给你一个标记的PDF,它通过了标签的自动测试(传说中的508兼容性)。

答案3

.texLaTeX2rtf 是将文件转换为 Microsoft Word 可读取文件的最简单、最快捷的方法.rtf。使用它很简单,只需下载程序、选择.tex文件并按运行即可。将打开一个命令窗口以显示进度并警告任何错误。在大多数情况下,默认设置就足够了,尽管有错误,它通常也可以输出一些有用的内容。

欲了解更多信息,您可以在 Sourceforge 上找到该项目http://latex2rtf.sourceforge.net/

最重要的是,它是开源的并且得到积极维护。

答案4

我使用 LaTeX 撰写 APA6th 论文,并将其导出为 PDF。通常这就是我所需要的。有时出版商会要求提供 word 文件(我不知道原因......)。因此,我一直在寻找一个不错的 pdf 到 word 转换器,因为 simpletex4th 有表格问题,而我经常需要表格。我唯一满意的转换器是 Lighten Software Limited 为 Mac 提供的 PDF 到 Word +。生成的 docx 与 PDF 输出没有任何区别,并且完全可编辑。这比这些 tex 到 xxx 转换器好用得多。 http://www.lightenpdf.com/pdf-to-word-converter-mac.html http://www.lightenpdf.com/pdf-to-word-converter.html

相关内容