使用 pandoc 将 latex 转换为 word

使用 pandoc 将 latex 转换为 word

我愿意将我的 latex 文件转换为 MS word(docx 扩展名),以便与一些不使用 latex 的合著者分享(他们应该使用!!)。

我有两个问题:

1) 我在 tex 文件中包括了一些图形。但是,当我转换文件时,我收到以下错误消息:“pandoc 找不到图像‘Figure1’”,跳过。

包含两个图形的文件位于我正在处理的同一文件夹中。有什么方法可以让 pandoc 将这些图形包含在 docx 文件中吗?

2) 除了第 1 点之外,一切正常。但是,pandoc 无法转换两个方程式(我得到的是 latex 代码,而不是两个方程式)。生成这些方程式的 MWE 是:

\documentclass[12pt, A4paper]{article}

\usepackage{amssymb}
\usepackage{amsmath}


\begin{document}

Consistently, the probabilities in Eq. (1) and Eq. (2) are defined as follows, respectively:
\[
(\alpha)P\left[\frac{1}{2}+\mu \right] =
\setlength{\arraycolsep}{0pt}
\renewcommand{\arraystretch}{2}
\left\{ 
\begin{array}{l @{\quad} l r l}
    0            & \text{if } & \mu &{} < -\dfrac{1}{2}\\
    \alpha\mu & \text{if } & -\dfrac{1}{2} &{} \leq \mu \leq \dfrac{1}{2}\\
    1            & \text{if } & \mu &{}> \dfrac{1}{2} 
\end{array}
\right.
\]
and:
\[
P\left[\frac{1}{2}+\gamma \mu -(\alpha -1)\right]=
\setlength{\arraycolsep}{0pt}
\renewcommand{\arraystretch}{2}
\left\{ 
\begin{array}{l @{\quad} l r l}
    0            & \text{if} & \gamma\mu &{} < \alpha -\dfrac{3}{2}\\
    \dfrac{1}{2}+\gamma \mu -(\alpha -1) & \text{if} &{} \alpha -\frac{3}{2} &{}\leq \gamma \mu \leq \alpha -\frac{1}{2}\\
    1            & \text{if } & \gamma \mu &{}> \alpha -\frac{1}{2} 
\end{array}
\right.
\]
\vspace{0.5cm}

\end{document}

为什么会这样?我是否可以写出上面的两个方程式,这样我得到相同的结果,但它们是以 pandoc 可以转换的方式编写的?提前谢谢。

答案1

删除它\setlength{\arraycolsep}{0pt},它就应该可以工作了——这似乎是导致问题的原因。

请考虑在pandoc 错误追踪,这样我们就可以改进 pandoc。更改 texmath 库(pandoc 用于数学转换)以忽略(或更好地处理)该\setlength命令将是一件相对简单的事情。

至于图片,pandoc 应该能够找到图像;同样,我们希望得到一份详细的错误报告,其中包含足够的信息来重现问题。(此外,请确保您使用的是最新版本的 pandoc,或者至少告诉我们您使用的是哪个版本。)

答案2

抱歉回复迟了:我尝试了所有将 .tex 导出为 .docx 的设置 - 使用 pandoc,但最终还是不得不使用www.ilovepdf.com甚至可以很好地呈现格式。

相关内容