HTML 转 PDF 之 wkhtmltopdf 工具简介

相关文章

HTML 转 PDF 之 wkhtmltopdf 工具精讲

为什么要写

其实不太会写,我讲解的东西,能听懂的人大都是理解能力非常强的。所以我的语言表达能力不是一般的差,而写作能力还不如语言表达。之所以要写此篇,………………就是为了告诉你们,我的写作水平到底有多烂。(狂笑……)

开个玩笑。(严肃)其实这应该是我第一次正式写作,原因有两点;
首先是实际需要,我需要把我的知识体系记录下来,所以今后会有大量作品……出……现?(心虚)
其次是我已经在《五壶上酱》群里放出话了,本来是在昨天就需要完成此篇的,但迟到总比缺席强吧(此刻的心态)。

要写什么

前面废话有点多,可能有人已经看不下去了,那下面就言归正传。先说一下此篇主要写点什么吧,标题中写的虽然明确,但信息量太少了。

此篇主要是为了简单介绍一个工具,名为“wkhtmltopdf",是一个能够把网页文件转换成PDF的工具。(情不自禁)不得不说这个工具简直是太好用了。

工具 "wkhtmltopdf" 简介

【官网】:【http://wkhtmltopdf.org/】

【下载请点击这里】 【http://wkhtmltopdf.org/downloads.html】

工具全名叫 "wkhtmltopdf" ; 是一个使用 Qt WebKit 引擎做渲染的,能够把html 文档转换成 pdf 文档 或 图片(image) 的命令行工具。(强调一下:是 “命令行工具”

支持多个平台,可在win,linux,os x 等系统下运行。

优点

  1. 生成PDF时会自动根据你在HTML页面中H标签生成树形目录结构。
  2. 小巧方便,转换速度快。
  3. 夸平台,在Liunx下用,在win下也可以用(我也只在这两个平台下用过)。

缺点

还没发现(狂笑……)

使用方式

使用前的准备

使用前一定要记得先下载安装才行,对于不同的操作系统可能会有需要设置环境变量的情况。如果你安装后在命令行执行 wkhtmltopdf -V 提示以下信息:

C:\Users\hehe>wkhtmltopdf -V    
'wkhtmltopdf' 不是内部或外部命令,也不是可运行的程序    或批处理文件。    

这就说明你需要配置系统的环境变量了,根据情况把你安装wkhtmltopdf目录下的bin子目录加到 PATH 环境变量下。

我用的是win系统,我的安装到了D盘wkhtmltopdf目录下,所以我需要把 D:\wkhtmltopdf\bin 目录加入到环境变量 PATH

正确安装后是执行 wkhtmltopdf -V 会得到如下提示:

C:\Users\wfso>wkhtmltopdf -V
wkhtmltopdf 0.12.3.2 (with patched qt)

看上面的信息可知,写此篇时我系统里装的 wkhtmltopdf 的版本是 0.12.3.2

开始使用

命令格式:wkhtmltopdf [GLOBAL OPTION]... [OBJECT]... <output file>

命令行工具自然是没有图形界面的。

光看上面的命令格式好像不太简单理解应该怎么用啊,别急,下面会有详细介绍的,不过为了满足部分急性子,我先给几个例子在下面。伸手堂可以直接拿去用,不愿意深入了解的同学就不必再浪费时间了。

把一个html文件转换成PDF

命令格式 :wkhtmltopdf xxx.html xxx.pdf

D:\MyWorkSpace\markdown>wkhtmltopdf 1.html 1.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文档慢慢研究吧。

把一个 url 指向的网页转换成PDF

命令格式 : wkhtmltopdf url xxx.pdf

D:\MyWorkSpace\markdown>wkhtmltopdf www.yioks.com yioks.pdf
Loading pages (1/6)
QFont::setPixelSize: Pixel size <= 0 (0)                     ] 55%
Counting pages (2/6)
QFont::setPixelSize: Pixel size <= 0 (0)=====================] Object 1 of 1
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

当你看到如上信息时代表转换成功,是不是很酷。

把html文件 和 url指向的网页 转换成图片

命令格式 :

wkhtmltoimage xxx.html xxx.jpg
wkhtmltoimage url xxx.jpg    

其实和转pdf时的参数是一样的,只是命令和输出文件的扩展名变了。上的命令格式中,我是把图片保存成了 jpg 格式,当然,如果你愿意也可以保存成其他图片格式(如:png),但文件可能会变大很多倍。在我的测试中,jpg格式文件是最小的。

应用场景

你能拿他来干什么我不知道,下面我说一下我用这个工具都做了什么。

场景一

首先,多年前在浏览器的收藏夹里收藏的好文章,我都一一转成了PDF,不要问我为什么,我就是这么做了。并且做的过程中我发现,我所收藏的链接已经有部分无法访问了。

场景二

网上各种工具的 单面文档(如:spring等),每次查看都要访问网络,如果没网了……,或者我想在手机上看……。所以果断转换成pdf存一份。

场景三

我开发的WEB应用程序中,需要用到下载PDF功能时,都是用这个工具把程序生成的动态网页HTML存储到服务器并转换成PDF后提供给用户下载的。

场景四

编不下去了,其实没有场景三,哈哈哈哈…… (狂笑),等我想到了再补充吧。如果你有属于自己应用场景一定要分享给我啊。

wkhtmltopdf 工具详解

本来下面就是针对 wkhtmltopdf 工具的详细介绍了,详细到这个命令的每一个参数都会单独做讲解。

但是……好吧,我有点累了。

关于 wkhtmltopdf 工具详解的文章已经完成,请移驾:
HTML 转 PDF 之 wkhtmltopdf 工具精讲

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,657评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,662评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,143评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,732评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,837评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,036评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,126评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,868评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,315评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,641评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,773评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,859评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,584评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,676评论 2 351

推荐阅读更多精彩内容