一款在Linux 中将网页转成 PDF 的智能工具

PHPz
发布: 2024-02-09 12:03:13
转载
994 人浏览过

wkhtmltopdf 是一个开源、简单且高效的命令行 shell 程序,它能够将任何 HTML (网页)转换为 PDF 文件或图像(如 jpg、png 等)。

wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布。它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文件,而不会损失页面质量。这是一个非常实用且可靠的解决方案,用于实时创建和存储网页快照。

一款在Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf 的功能

  1. 开源并且跨平台。
  2. 使用 WebKit 引擎将任意 HTML 网页转换为 PDF 文件。
  3. 添加页眉和页脚的选项
  4. 目录生成 (TOC) 选项。
  5. 提供批量模式转换。
  6. 通过绑定 libwkhtmltox 来支持 PHP 或 Python。

在本文中,我们将介绍如何在 Linux 系统下使用 tar 包来安装 wkhtmltopdf。

安装 Evince (PDF 浏览器)

让我们在 Linux 系统中安装 evince (一个 PDF 阅读器)来浏览 PDF 文件。

$ sudo yum install evince [RHEL/CentOS and Fedora] $ sudo dnf install evince [On Fedora 22+ versions] $ sudo apt-get install evince [On Debian/Ubuntu systems]
登录后复制

下载 wkhtmltopdf 源码文件

使用wget 命令根据你的 Linux 架构来下载 wkhtmltopdf 源码文件,或者你也可以在wkhtmltopdf 下载页下载最新的版本(目前最新的稳定版是 0.12.4)

在 64 位 Linux 系统中:

$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
登录后复制

在 32 位 Linux 系统中:

$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz
登录后复制

在 Linux 中安装 wkhtmltopdf

使用tar 命令解压文件到当前目录中。

------ On 64-bit Linux OS ------ $ sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz ------ On 32-bit Linux OS ------ $ sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz
登录后复制

为了能从任意路径执行程序,将 wkhtmltopdf 安装到/usr/bin目录下。

$ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/
登录后复制

如何使用 wkhtmltopdf?

我们会看到如何将远程的 HTML 页面转换成 PDF 文件、验证信息、使用 evince 在 GNOME 桌面中浏览创建的文件。

将 HTML 网页转成 PDF 文件

要将任意 HTML 页面转换成 PDF,运行下面的命令。它会在当前目录下将页面转换成10-Sudo-Configurations.pdf。

# wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
登录后复制

示例输出:

Loading pages (1/6) Counting pages (2/6) Resolving links (4/6) Loading headers and footers (5/6) Printing pages (6/6) Done
登录后复制

浏览生成的 PDF 文件

为了验证创建的文件,使用下面的命令。

$ file 10-Sudo-Configurations.pdf
登录后复制

示例输出:

10-Sudo-Configurations.pdf: PDF document, version 1.4
登录后复制

浏览生成的 PDF 文件细节

要浏览生成的文件信息,运行下面的命令。

$ pdfinfo 10-Sudo-Configurations.pdf
登录后复制

示例输出:

Title: 10 Useful Sudoers Configurations for Setting 'sudo' in Linux Creator: wkhtmltopdf 0.12.4 Producer: Qt 4.8.7 CreationDate: Sat Jan 28 13:02:58 2017 Tagged: no UserProperties: no Suspects: no Form: none JavaScript: no Pages: 13 Encrypted: no Page size: 595 x 842 pts (A4) Page rot: 0 File size: 697827 bytes Optimized: no PDF version: 1.4
登录后复制

浏览创建的文件

在桌面中使用 evince 查看最新生成的 PDF 文件。

$ evince 10-Sudo-Configurations.pdf
登录后复制
登录后复制

示例截图:
在我的 Linux Mint 17 中看起来很棒。
一款在Linux 中将网页转成 PDF 的智能工具

给 PDF 创建页面的目录

要创建一个 PDF 文件的目录,使用 toc 选项。

$ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
登录后复制

示例输出:

Loading pages (1/6) Counting pages (2/6) Loading TOC (3/6) Resolving links (4/6) Loading headers and footers (5/6) Printing pages (6/6) Done
登录后复制

要查看已创建文件的 TOC,再次使用 evince。

$ evince 10-Sudo-Configurations.pdf
登录后复制
登录后复制

示例截图:

看一下下面的图。它上看去比上面的更好。

一款在Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf 选项及使用

更多关于 wkhtmltopdf 的使用及选项,使用下面的帮助命令。它会显示出所有可用的选项。

$ wkhtmltopdf --help
登录后复制

以上是一款在Linux 中将网页转成 PDF 的智能工具的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:lxlinux.net
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!