我以前经常\LaTeX
在文件中获取 LaTeX 徽标.tex
。但是,使用以下命令将其转换为 pdf:
pandoc file.tex -o file.pdf
生成的文件没有正确格式的 LaTeX 徽标。但是,pdflatex
工作正常。
我该如何解决这个问题?
编辑:最小示例:
\documentclass{article}
\begin{document}
\LaTeX{} is a program for typesetting documents.
\end{document}
答案1
不要使用 pandoc 运行 LaTeX 文件。Pandoc 是一个文档转换器不是 LaTeX 编译器。
Pandoc 的行为与预期一致。Pandoc 有两个部分:读取器和写入器。读取器将输入转换为表示文档结构的抽象语法树 (AST),写入器将 AST 转换回所需的输出格式。
\LaTeX
那么,文档中的发生了什么?读取器将其转换为LaTeX
并将其存储在 AST 中。因此,LaTeX 写入器只看到字符串LaTeX
(而不是\LaTeX
),因此只写入LaTeX
。换句话说,pandoc已转换将您的 LaTeX 文档转换为另一个仅包含这些元素的 LaTeX 文档,这些元素可以在 pandoc 的 AST 中表示。
Pandoc 的降价另一方面,阅读器可以将 LaTeX 代码传递给编写器。因此,markdown 文件包含:
\LaTeX\ is a program for typesetting documents.
可以使用以下方式转换为 PDF(通过 latex):
pandoc file.md -o file.pdf
并且徽标将被保留: