TranslateProject/published/202110/20211021 How to Convert a Webpage to PDF in Linux.md
2021-11-01 08:52:05 +08:00

5.1 KiB
Raw Blame History

如何在 Linux 下将网页转换为 PDF 文件

当你将某些资源存档或用于教育目的时,将网页保存为 PDF 是很方便的。

但是,你如何在 Linux 中把一个网页转换成 PDF

你可以选择使用每个 Linux 发行版上的网页浏览器GUI或者使用终端将网页变成 PDF 文件。

在这里,我将提到这两种方法来帮助你完成工作。

方法 1使用网页浏览器将网页转换为 PDF 文件

尽管我在本教程中使用的是 Mozilla Firefox但你也可以用任何 可用于 Linux 的最佳浏览器 做同样的事情。

1、加载你想转换的网页。

2、在浏览器菜单中找到“打印”选项,或使用键盘快捷键 Ctrl + P

3、默认情况下它应该让你把它保存为 PDF。你需要点击“保存”然后选择目的地并保存网页。

Save webpage as PDF in Mozilla Firefox

这种简单方法的一个主要问题是,它包括页面上的所有元素。这可能包括评论、页脚等。你可以用一个 PDF 编辑器来删除部分内容,但这是一个额外的任务。

更好的选择是利用一个浏览器扩展,如 Print Friendly。它允许你在下载 PDF 之前编辑和删除网页的部分内容。

方法 2使用终端将网页转换为 PDF 或图片

你可能已经知道,你可以 在 Linux 终端浏览互联网,甚至 使用命令行下载文件。这并不奇怪,因为你可以在终端中做更多的事情,包括将网页下载为 PDF。

一个灵巧的开源命令行工具 wkhtmltopdfwkhtmltoimage 可以帮到你,让你把任何 HTML 网页转换成 PDF 或图像文件。

它使用 Qt WebKit 渲染引擎来完成这个任务。你可以浏览它的 GitHub页面 了解更多信息。

你应该能够从你的 Linux 发行版的默认仓库中安装它。对于基于 Ubuntu 的发行版,你可以输入以下命令:

sudo apt install wkhtmltopdf

无论你想把它转换为 PDF 还是图像文件,它的使用都是非常直接的:

要将一个网页转换成 PDF请输入

wkhtmltopdf URL/domain filename.pdf

比如,类似于这样:

wkhtmltopdf linuxmint.com mint.pdf

你可以选择使用 https://linuxmint.com 这样完整的 URL 或使用域名,如上面的例子所示。

默认情况下,生成的文件将保存在主目录下。

在转换网页时,你还可以得到一些好玩的选项。

例如,你可以对 PDF 文件应用灰度过滤器,在同一文件中制作多个页面副本,以及在转换过程中排除图像。

灰度过滤器不一定对每个网页都有效,但你可以用命令试试:

wkhtmltopdf -g google.com googlepage.pdf

要在同一个 PDF 文件中复制多个页面,命令是:

wkhtmltopdf --copies 2 linuxmint.com mint.pdf

而且,如果你想排除网页中的图像,只需输入:

wkhtmltopdf --no-images linuxmint.com mint.pdf

此外,如果你想把一个网页转换为图像,命令是这样的:

wkhtmltoimage linuxmint.com mint.png

注意,与使用浏览器的 GUI 方法不同,通过终端使用这些工具有其局限性。它似乎不能成功转换利用任何 <iframe> 代码片段的网页。

像我们的网站,甚至 DuckDuckGo 都没有转换为 PDF 或图像。然而,简单的 HTML 网站,如 Linuxmint.com、Ubuntu.com、Google.com 则非常有效。

总结

使用浏览器将网页保存为 PDF 似乎是个好办法。但是,如果你想有更多的选择并通过终端,wkhtmltopdf 工具应该会派上用场。

你喜欢如何在 Linux 中把网页转换为 PDF欢迎在评论中分享你的想法。


via: https://itsfoss.com/convert-webpage-pdf-linux/

作者:Ankush Das 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出