如何使用pandoc将HTML转换为PDF?

Chr*_*ski 10 pandoc

我需要哪些图书馆?我需要通过哪些命令行参数?

我安装了wkhtml2pdf,我试图运行:

pandoc reports/7/report.html -t pdf -o reports/7/report.pdf

哪个报告错误:

To create a pdf with pandoc, use the latex or beamer writer and specify
an output file with .pdf extension (pandoc -t latex -o filename.pdf).
Run Code Online (Sandbox Code Playgroud)

sco*_*coa 9

pdf不是有效的输出格式.latexbeamer(对于胶乳幻灯片)是.

要创建pdf,请使用-t latex-o myoutput.pdf.可以省略-t参数因为.pdf-o默认为乳胶.所以你可以使用:

pandoc reports/7/report.html -t latex -o reports/7/report.pdf
Run Code Online (Sandbox Code Playgroud)

要么:

pandoc reports/7/report.html -o reports/7/report.pdf
Run Code Online (Sandbox Code Playgroud)


Dav*_*vis 6

https://pandoc.org/MANUAL.html

或者,pandoc 可以使用以下任一 HTML/CSS-to-PDF-engines 来创建 PDF:

为此,请像以前一样指定带有 .pdf 扩展名的输出文件,但将--pdf-engine选项或 -t 上下文、-t html 或 -t ms 添加到命令行(-t html默认为- -pdf-engine=wkhtmltopdf)。


jdh*_*hao 6

以下对我有用:

pandoc --pdf-engine=xelatex https://www.python.org/dev/peps/pep-0008/ -o pep8.pdf
Run Code Online (Sandbox Code Playgroud)

您需要安装 LaTeX 发行版,例如TeX Live

如果要为链接着色,则应添加linkcolors选项。如果网页包含 CJK 字符,则需要指定CJKmainfont选项。一个例子如下所示:

pandoc --pdf-engine=xelatex -V colorlinks -V CJKmainfont="KaiTi" https://jdhao.github.io/2019/01/07/windows_tools_for_programmers/ -o programmer_tools.pdf
Run Code Online (Sandbox Code Playgroud)

字体KaiTi支持汉字。如果您使用其他语言,您可以使用该mainfont选项指定支持网页使用的语言的字体。

如果网页包含 svg 图片,您还需要安装rsvg-convert才能成功将网页转换为 PDF 文件(请参阅此处的参考)。