wkhtmltopdf:一个 Linux 中将网页转成 PDF 的智能工具

简介:

wkhtmltopdf 是一个开源、简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg、png 等)。

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

wkhtmltopdf 的功能

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

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

安装 Evince (PDF 浏览器)

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


 
 
  1. $ sudo yum install evince [RHEL/CentOS and Fedora]
  2. $ sudo dnf install evince [On Fedora 22+ versions]
  3. $ sudo apt-get install evince [On Debian/Ubuntu systems]

下载 wkhtmltopdf 源码文件

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

在 64 位 Linux 系统中:


 
 
  1. $ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz

在 32 位 Linux 系统中:


 
 
  1. $ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz

在 Linux 中安装 wkhtmltopdf

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


 
 
  1. ------ On 64-bit Linux OS ------
  2. $ sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
  3. ------ On 32-bit Linux OS ------
  4. $ sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz

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


 
 
  1. $ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/

如何使用 wkhtmltopdf?

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

将 HTML 网页转成 PDF 文件

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


 
 
  1. # wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf

示例输出:


 
 
  1. Loading pages (1/6)
  2. Counting pages (2/6)
  3. Resolving links (4/6)
  4. Loading headers and footers (5/6)
  5. Printing pages (6/6)
  6. Done

浏览生成的 PDF 文件

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


 
 
  1. $ file 10-Sudo-Configurations.pdf

示例输出:


 
 
  1. 10-Sudo-Configurations.pdf: PDF document, version 1.4

浏览生成的 PDF 文件细节

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


 
 
  1. $ pdfinfo 10-Sudo-Configurations.pdf

示例输出:


 
 
  1. Title: 10 Useful Sudoers Configurations for Setting 'sudo' in Linux
  2. Creator: wkhtmltopdf 0.12.4
  3. Producer: Qt 4.8.7
  4. CreationDate: Sat Jan 28 13:02:58 2017
  5. Tagged: no
  6. UserProperties: no
  7. Suspects: no
  8. Form: none
  9. JavaScript: no
  10. Pages: 13
  11. Encrypted: no
  12. Page size: 595 x 842 pts (A4)
  13. Page rot: 0
  14. File size: 697827 bytes
  15. Optimized: no
  16. PDF version: 1.4

浏览创建的文件

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


 
 
  1. $ evince 10-Sudo-Configurations.pdf

示例截图:

在我的 Linux Mint 17 中看起来很棒。

在 PDF 中浏览网页

在 PDF 中浏览网页

给 PDF 创建页面的 目录Table Of Content(TOC)

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


 
 
  1. $ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf

示例输出:


 
 
  1. Loading pages (1/6)
  2. Counting pages (2/6)
  3. Loading TOC (3/6)
  4. Resolving links (4/6)
  5. Loading headers and footers (5/6)
  6. Printing pages (6/6)
  7. Done

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


 
 
  1. $ evince 10-Sudo-Configurations.pdf

示例截图:

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

在 PDF 中创建网页的目录

在 PDF 中创建网页的目录

wkhtmltopdf 选项及使用

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


 
 
  1. $ wkhtmltopdf --help

原文发布时间为:2017-04-01

本文来自云栖社区合作伙伴“Linux中国”

相关文章
|
人工智能 自然语言处理 算法
科研论文翻译神器!BabelDOC:开源AI工具让PDF论文秒变双语对照,公式图表全保留
BabelDOC 是一款专为科学论文设计的开源AI翻译工具,采用先进的无损解析技术和智能布局识别算法,能完美保留原文格式并生成双语对照翻译。
3121 67
科研论文翻译神器!BabelDOC:开源AI工具让PDF论文秒变双语对照,公式图表全保留
|
12月前
|
人工智能 文字识别 自然语言处理
熊猫 OCR 识别软件下载,支持截图 OCR、PDF 识别、多语言翻译的免费全能工具,熊猫OCR识别
本文介绍了几款实用的图文识别软件,包括熊猫OCR、Umi-OCR和天若OCR_本地版。熊猫OCR功能强大,支持多窗口操作、AI找图找色、OCR识别等;Umi-OCR免费且高效,具备截图OCR、批量处理等功能;天若OCR界面简洁,适合快速文字识别。文章还提供了下载链接及软件特点、界面展示等内容,便于用户根据需求选择合适的工具。
1448 36
|
人工智能 自然语言处理 安全
CodeBuddy 开发本地 PDF 转图工具
市场上的 PDF 转图片工具存在收费昂贵、功能有限、隐私安全风险等痛点,而使用 CodeBuddy 实现的本地 PDF 批量转图片工具可以有效解决这些问题。CodeBuddy 的强大编程能力让我们可以快速开发出满足需求的工具,而且工具可以在本地运行,保证了文件的隐私安全。此外,工具还支持批量处理和自定义功能,提高了工作效率。如果你也有 PDF 转图片的需求,不妨尝试使用 CodeBuddy 来实现一个属于自己的工具。
485 11
|
人工智能 算法 安全
使用CodeBuddy实现批量转换PPT、Excel、Word为PDF文件工具
通过 CodeBuddy 实现本地批量转换工具,让复杂的文档处理需求转化为 “需求描述→代码生成→一键运行” 的极简流程,真正实现 “技术为效率服务” 的目标。感兴趣的快来体验下把
880 10
|
人工智能 文字识别 安全
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩等,同时提供多语言支持和企业级功能,满足个人和企业用户的多样化需求。
1464 6
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
|
人工智能 文字识别 自然语言处理
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
Vision Parse 是一款开源的 PDF 转 Markdown 工具,基于视觉语言模型,能够智能识别和提取 PDF 中的文本和表格,并保持原有格式和结构。
2231 19
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
|
机器学习/深度学习 人工智能 文字识别
Zerox:AI驱动的万能OCR工具,精准识别复杂布局并输出Markdown格式,支持PDF、DOCX、图片等多种文件格式
Zerox 是一款开源的本地化高精度OCR工具,基于GPT-4o-mini模型,支持PDF、DOCX、图片等多种格式文件,能够零样本识别复杂布局文档,输出Markdown格式结果。
1741 4
Zerox:AI驱动的万能OCR工具,精准识别复杂布局并输出Markdown格式,支持PDF、DOCX、图片等多种文件格式
|
人工智能 文字识别 数据挖掘
MarkItDown:微软开源的多格式转Markdown工具,支持将PDF、Word、图像和音频等文件转换为Markdown格式
MarkItDown 是微软开源的多功能文档转换工具,支持将 PDF、PPT、Word、Excel、图像、音频等多种格式的文件转换为 Markdown 格式,具备 OCR 文字识别、语音转文字和元数据提取等功能。
5046 9
MarkItDown:微软开源的多格式转Markdown工具,支持将PDF、Word、图像和音频等文件转换为Markdown格式
|
机器学习/深度学习 人工智能 自然语言处理
Documind:开源 AI 文档处理工具,将 PDF 转换为图像提取结构化数据
Documind 是一款利用 AI 技术从 PDF 中提取结构化数据的先进文档处理工具,支持灵活的本地或云端部署。
832 8
Documind:开源 AI 文档处理工具,将 PDF 转换为图像提取结构化数据
|
XML C# 数据格式
一个.NET开源、免费、功能强大的 PDF 处理工具
一个.NET开源、免费、功能强大的 PDF 处理工具
635 8

热门文章

最新文章