PRF&PUB:20170128 Wkhtmltopdf – A Smart Tool to Convert Website HTML Page to PDF in Linux.md

@geekpi
This commit is contained in:
wxy 2017-03-31 22:09:59 +08:00
parent 003c37085c
commit c7ecc3907c

View File

@ -1,24 +1,24 @@
wkhtmltopdf - 一个 Linux 中将网页转成 PDF 的智能工具 wkhtmltopdf一个 Linux 中将网页转成 PDF 的智能工具
============================================================ ============================================================
**wkhtmltopdf**是一个开源、简单而有效的命令行 shell 程序,它可以将任何 **HTML** **网页**)转换为 **PDF** 文档或图像(**jpg****png** 等)。 wkhtmltopdf 是一个开源、简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像jpg、png 等)。
wkhtmltopdf 是用 **C++** 编写的,并在 **GNU/GPL** **通用公共许可证**)下发布。它使用 **WebKit** 渲染引擎将 **HTML** 页面转换为 **PDF** 文档且不会丢失页面的质量。这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案。 wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布。它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文档且不会丢失页面的质量。这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案。
### wkhtmltopdf 的功能 ### wkhtmltopdf 的功能
1. 开源并且跨平台。 1. 开源并且跨平台。
2. 使用 **WebKit** 引擎将任意 **HTML** 网页转换为 **PDF** 文件。 2. 使用 WebKit 引擎将任意 HTML 网页转换为 PDF 文件。
3. 添加页眉和页脚的选项 3. 添加页眉和页脚的选项
4. 目录生成 **TOC** 选项。 4. 目录生成 TOC 选项。
5. 提供批量模式转换。 5. 提供批量模式转换。
6. 通过绑定 libwkhtmltox 来支持 **PHP****Python** 6. 通过绑定 libwkhtmltox 来支持 PHP 或 Python。
在本文中,我们将介绍如何在 Linux 系统下使用 tar 包来安装 **wkhtmltopdf** 在本文中,我们将介绍如何在 Linux 系统下使用 tar 包来安装 wkhtmltopdf。
### 安装 Evince (PDF 浏览器) ### 安装 Evince (PDF 浏览器)
让我们在 Linux 系统中安装 **evince** (一个 **PDF** 阅读器)来浏览 **PDF** 文件。 让我们在 Linux 系统中安装 evince (一个 PDF 阅读器)来浏览 PDF 文件。
``` ```
$ sudo yum install evince [RHEL/CentOS and Fedora] $ sudo yum install evince [RHEL/CentOS and Fedora]
@ -28,15 +28,15 @@ $ sudo apt-get install evince [On Debian/Ubuntu systems]
### 下载 wkhtmltopdf 源码文件 ### 下载 wkhtmltopdf 源码文件
使用[ wget 命令][1]根据你的 **Linux** 架构来下载 **wkhtmltopdf** 源码文件,或者你也可以在[wkhtmltopdf 下载页][2]下载最新的版本(目前最新的稳定版是 **0.12.4** 使用 [wget 命令][1]根据你的 Linux 架构来下载 wkhtmltopdf 源码文件,或者你也可以在 [wkhtmltopdf 下载页][2]下载最新的版本(目前最新的稳定版是 0.12.4
##### 在 64 位 Linux 系统中 在 64 位 Linux 系统中
``` ```
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz $ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
``` ```
##### 在 32 位 Linux 系统中 在 32 位 Linux 系统中
``` ```
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz $ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz
@ -53,7 +53,7 @@ $ sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
$ sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz $ sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz
``` ```
为了能从任意路径执行程序,将 **wkhtmltopdf** 安装到 **/usr/bin** 目录下。 为了能从任意路径执行程序,将 wkhtmltopdf 安装到 `/usr/bin` 目录下。
``` ```
$ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/ $ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/
@ -61,17 +61,17 @@ $ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/
### 如何使用 wkhtmltopdf ### 如何使用 wkhtmltopdf
我们会看到如何将远程的 **HTML** 页面转换成 **PDF** 文件、验证信息、使用 **evince****GNOME** 桌面中浏览创建的文件。 我们会看到如何将远程的 HTML 页面转换成 PDF 文件、验证信息、使用 evince 在 GNOME 桌面中浏览创建的文件。
### 将 HTML 网页转成 PDF 文件 #### 将 HTML 网页转成 PDF 文件
要将任意 **HTML** 页面转换成 **PDF**,运行下面的命令。它会在当前目录下将页面转换成 [10-Sudo-Configurations.pdf][4]。 要将任意 HTML 页面转换成 PDF运行下面的命令。它会在当前目录下将页面转换成 [10-Sudo-Configurations.pdf][4]。
``` ```
# wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf # wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
``` ```
##### 示例输出: 示例输出:
``` ```
Loading pages (1/6) Loading pages (1/6)
@ -90,13 +90,13 @@ Done
$ file 10-Sudo-Configurations.pdf $ file 10-Sudo-Configurations.pdf
``` ```
##### 示例输出: 示例输出:
``` ```
10-Sudo-Configurations.pdf: PDF document, version 1.4 10-Sudo-Configurations.pdf: PDF document, version 1.4
``` ```
#### 浏览生成的 PDF 文件细 #### 浏览生成的 PDF 文件细
要浏览生成的文件信息,运行下面的命令。 要浏览生成的文件信息,运行下面的命令。
@ -104,7 +104,7 @@ $ file 10-Sudo-Configurations.pdf
$ pdfinfo 10-Sudo-Configurations.pdf $ pdfinfo 10-Sudo-Configurations.pdf
``` ```
##### 示例输出 示例输出
``` ```
Title: 10 Useful Sudoers Configurations for Setting 'sudo' in Linux Title: 10 Useful Sudoers Configurations for Setting 'sudo' in Linux
@ -127,13 +127,13 @@ PDF version: 1.4
#### 浏览创建的文件 #### 浏览创建的文件
在桌面中使用 **evince**一眼最新生成的 **PDF** 文件。 在桌面中使用 evince 看最新生成的 PDF 文件。
``` ```
$ evince 10-Sudo-Configurations.pdf $ evince 10-Sudo-Configurations.pdf
``` ```
##### 示例截图: 示例截图:
在我的 Linux Mint 17 中看起来很棒。 在我的 Linux Mint 17 中看起来很棒。
@ -141,17 +141,17 @@ $ evince 10-Sudo-Configurations.pdf
![View Website Page in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/View-Website-Page-in-PDF.png) ![View Website Page in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/View-Website-Page-in-PDF.png)
][5] ][5]
在 PDF 中浏览网页 *在 PDF 中浏览网页*
### 将页面的 TOC Table Of Content 即目录)创建为 PDF ### 给 PDF 创建页面的 TOC Table Of Content 即目录)
要创建一个 **PDF** 文件的目录,使用 **toc** 选项。 要创建一个 PDF 文件的目录,使用 toc 选项。
``` ```
$ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf $ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
``` ```
##### 示例输出: 示例输出:
``` ```
Loading pages (1/6) Loading pages (1/6)
@ -163,13 +163,13 @@ Printing pages (6/6)
Done Done
``` ```
查已创建文件的 **TOC**,再次使用 evince。 要查已创建文件的 TOC再次使用 evince。
``` ```
$ evince 10-Sudo-Configurations.pdf $ evince 10-Sudo-Configurations.pdf
``` ```
##### 示例截图: 示例截图:
看一下下面的图。它上看去比上面的更好。 看一下下面的图。它上看去比上面的更好。
@ -177,11 +177,11 @@ $ evince 10-Sudo-Configurations.pdf
![Create Website Page to Table of Contents in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/Create-Website-Page-Table-of-Contents-in-PDF.png) ![Create Website Page to Table of Contents in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/Create-Website-Page-Table-of-Contents-in-PDF.png)
][6] ][6]
在 PDF 中创建网页的目录 *在 PDF 中创建网页的目录*
#### wkhtmltopdf 选项及使用 #### wkhtmltopdf 选项及使用
更多关于 **wkhtmltopdf** 的使用及选项,使用下面的帮助命令。它会显示出所有可用的选项。 更多关于 wkhtmltopdf 的使用及选项,使用下面的帮助命令。它会显示出所有可用的选项。
``` ```
$ wkhtmltopdf --help $ wkhtmltopdf --help
@ -199,7 +199,7 @@ via: http://www.tecmint.com/wkhtmltopdf-convert-website-html-page-to-pdf-linux/
作者:[Ravi Saive][a] 作者:[Ravi Saive][a]
译者:[geekpi](https://github.com/geekpi) 译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出