latex - Pandoc 不使用 latex 在 Markdown 中生成新行

标签 latex markdown pandoc

我正在处理 .md包含 latex 的文件.该文件如下所示:

$$
1+1 = 2
\\
2+2 = 4
$$
文件:
the file
当查看它为 markdown正确添加新行后,文件看起来非常好。
虽然当我使用 pandoc 将文件写入 pdf发生以下情况:
PDF 文件(来自 pandoc)
pandoc
如您所见,新行已被完全删除并生成 latex难读。
我正在使用以下 pandoc 命令:
pandoc --wrap=preserve in.md -o out.pdf
--wrap=preserve似乎没有工作,因为它忽略了一个新行。我也试过用 \newline \linebreak而不是 \\并且似乎都没有工作。
如何指定换行符,以便 pandoc 确保保留换行符而不是将所有内容保持内联?

最佳答案

无论您使用什么文件预览工具:它都在骗您。双反斜杠不是在数学中插入换行符的正确方法。
Pandoc 要么解析数学并将其转换为目标格式,要么只传递代码,具体取决于输出格式。对于通过 LaTeX 输出的 PDF,方程只是通过了。 (您可以通过使用 --verbose 运行 pandoc 来检查,除其他外,它将打印生成的原始 LaTeX 代码。)所以很明显问题出在输入上。
有多种方法可以在 LaTeX 中将换行符添加到数学中。其中之一是 align*环境:

\begin{align*}
1+1 = 2
\\
2+2 = 4
\end{align*}
这将为您提供预期的 PDF 输出,但缺点是不会以其他输出格式(如 HTML)显示。我不知道有任何方法会在所有可能的 pandoc 输出格式的数学方程中产生换行符。如果需要,您将不得不使用多个单线方程。

关于latex - Pandoc 不使用 latex 在 Markdown 中生成新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63350182/

相关文章:

haskell - 使用 CSS 或模板自定义 Pandoc 的 HTML 输出

latex - 如何将章节名称放在每页的顶部?

python matplotlib 让一切变得大胆

html - Markdown 文档中不可破坏的内联代码块

javascript - Node.js:将 markdown 转换为 HTML,然后将特定内容包装在 <section> 标签中

markdown - 是否可以在 pandoc 中启用全局双间距以进行 Markdown 到 RTF 的转换?

r - 将 RMarkdown 文档编写为 Word 时丢失的方程式和引用文献

pdf - 使用 Latex 嵌入到 pdf 中的视频无法正常播放

html - GitHub 自述文件中的中心对齐 shield.io

r - 当 url 在 YAML 元数据中时,如何强制 pandoc 不构建 <a> 标签