zl程序教程

您现在的位置是:首页 >  其他

当前栏目

卧槽,一行命令实现Html转PDF,强烈推荐!

PDFHTML命令 实现 一行 强烈推荐 卧槽
2023-06-13 09:15:41 时间

大家好,我是爱撸码的开源大叔!

大家在日常的工作当中,应该经常会遇到将网页保存为PDF文档的需求。

一般而言,直接使用浏览器自带的“打印”功能,选择“另存为PDF”,即可以输出 PDF 了。但是如果需要打印的数量多了,这个操作就很费劲了。

今天大叔逛 Github 的时候无意发现一个好用的开源项目-wkhtmltopdf,只需要一行命令就可以实现网页转 PDF 文件保存,结合各种语言,可以非常容易实现批量化操作。

简介

wkhtmltopdf是一个用 C++ 编写的开源、简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg、png 等)。基于QT Webkit 渲染引擎,遵循LGPL开源协议。

项目功能

使用方法

1、安装

官网地址是:

https://wkhtmltopdf.org/

选择你正在使用的操作系统对应的安装文件即可。

大叔这边以 windows 版本为例,下载完成直接安装即可。

2、基本使用

软件安装完成之后,就可以使用了。这里以 搜狗首页 为例,展示如何将 搜狗首页保存为 PDF 文件。

我们打开 cmd,找到安装路径下的 bin 目录,然后输入以下命令:

wkhtmltopdf.exe  https://www.sogou.com/ C:\sougou.pdf

运行之后就可以在指定的目录C盘根目录下找到 sougou.pdf 文件了。

本地的 html 文件也是可以的,你只需要把 https://www.sogou.com 替换成成本地文件路径就行。

更多的使用参数可以使用wkhtmltopdf.exe -h进行查看。

3、进阶使用

支持 PHP、Python、Java 等多种语言对项目程序的调用,进而可以实现各类不同的需求。

以 Python 为例,需要再安装pdfkit库(Python对wkhtmltopdf调用的封装库),支持URL,本地文件,文本内容到PDF的转换,实际转换还是最终调用wkhtmltopdf命令。

import pdfkit

path_wkthmltopdf = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)
pdfkit.from_url('https://www.sogou.com/', 'sougou.pdf', configuration=config)

最后,关于这个项目的更多详细使用功能,大家可以自己查阅下开源项目地址和官网:


Github地址:https://github.com/wkhtmltopdf/wkhtmltopdf
官网:https://wkhtmltopdf.org/