本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《
阿里云开发者社区用户服务协议
》和
《
阿里云开发者社区知识产权保护指引
》。如果您发现本社区中有涉嫌抄袭的内容,填写
侵权投诉表单
进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
wkhtmltopdf 是一个开源、简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg、png 等)。
wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布。它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文档且不会丢失页面的质量。这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案。
wkhtmltopdf 的功能
开源并且跨平台。
使用 WebKit 引擎将任意 HTML 网页转换为 PDF 文件。
添加页眉和页脚的选项
目录生成 (TOC) 选项。
提供批量模式转换。
通过绑定 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
)
浏览生成的 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 中看起来很棒。
在 PDF 中浏览网页
给 PDF 创建页面的 目录Table Of Content(TOC)
要创建一个 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
)
要查看已创建文件的 TOC,再次使用 evince。
-
$ evince
10
-
Sudo
-
Configurations
.
pdf
示例截图:
看一下下面的图。它上看去比上面的更好。
在 PDF 中创建网页的目录
wkhtmltopdf 选项及使用
更多关于 wkhtmltopdf 的使用及选项,使用下面的帮助命令。它会显示出所有可用的选项。
-
$ wkhtmltopdf
--
help
原文发布时间为:2017-04-01
本文来自云栖社区合作伙伴“Linux中国”
06_Linux基础-NGINX和浏览器、网页的关系-云服务器ssh登陆-安装NGINX-上传网页-压缩命令-xz-gzip-bzip2-zip-tar-配置NGINX服务器支持下载功能-备份脚本
NGINX和浏览器、网页的关系-云服务器ssh登陆-安装NGINX-上传网页-压缩命令-xz-gzip-bzip2-zip-tar-配置NGINX服务器支持下载功能-备份脚本
mycpen