其他分享
首页 > 其他分享> > Pandoc 的简单使用

Pandoc 的简单使用

作者:互联网

本文的大部分内容是 Pandoc官方文档 的翻译。

简介

Pandoc 是一个用 Haskell 编写的库,这是一个用来将文本从一种格式转成另一种格式的命令行工具。

Pandoc 支持大量的格式,包括但不限于 Markdown(和它的一些方言)、HTML、LaTeX、Word docx 等。Pandoc 也可以输出 PDF 格式的文件。

使用 Pandoc

如果没有指定任何输入文件,那么 Pandoc 会从标准输入(也就是命令行)读入数据。同理,如果没有指定任何输出文件,那么 Pandoc 会向标准输出 输出数据。

如果你希望输出到某个文件,则使用 -o

pandoc -o output.html input.txt

指定格式

输入和输出的格式可以使用命令行选项来指定。

比如,你要将 hello.txt 的内容从 Markdown 转成 LateX,那么你应该输入:

pandoc -f markdown -t latex hello.txt

你可以使用 pandoc --list-input-formatspandoc --list-output-formats 来查看完整的支持格式的列表。

字符编码

Pandoc 使用 UTF-8 作为输入和输出的编码。

导出为 PDF

要导出为 PDF,只需指示输出格式为 PDF 即可。但需要安装 至少一个 PDF 引擎(PDF engine)。Pandoc 会在导出 PDF 时自动到 PATH 环境变量中寻找可用的 PDF 引擎。如果你的 PDF 引擎不在 PATH 中,那么你需要指定完整的路径。

Pandoc 默认使用 LaTeX 来导出 PDF,这需要你安装一个 LaTeX 发行版。要使用其他 PDF 扩展,需要使用 --pdf-engine 参数来指定。这个参数的合法值为 pdflatex, lualatex, xelatex, latexmk, tectonic, wkhtmltopdf, weasyprint, pagedjs-cli, prince, contextpdfroff。如果你没有指定这个参数,那么 Pandoc 根据你需要的输出格式,按照下面的标准来默认地设置这个参数:

啰嗦了一大堆,总结一下,如果你安装了某个 LaTeX 发行版(比如 Tex Live),而且编译命令在 PATH 中,那么你无需指定额外的格式,直接指定输出为 PDF 即可:

pandoc test.md -o test.pdf

从网络输入数据

你也可以不指定输入的文件,而是要求 Pandoc 从一个绝对的 URI 地址读取。此种情况下 Pandoc 会使用 HTTP 协议来读取。

pandoc -f html -t markdown https://www.fsf.org

你也可以指定 UA:

pandoc -f html -t markdown --request-header User-Agent:"Mozilla/5.0" \
  https://www.fsf.org

标签:输出,Pandoc,格式,使用,指定,pandoc,简单,PDF
来源: https://www.cnblogs.com/eslzzyl/p/16342802.html