PHP实现html生成pdf、html生成图片 利用wkhtmltox,wkhtmltopdf扩展
需求: 将网页转为pdf或者图片,并提供下载。
wkhtmltox项目主页:http://wkhtmltopdf.org/ 支持html转pdf、image
php扩展php-wkhtmltox项目主页: https://github.com/mreiferson/php-wkhtmltox
1、下载安装wkhtmltox系统环境
http://wkhtmltopdf.org/downloads.html 根据系统类型选择下载wkhtmltox:
这里我的系统环境是CentOS 6-64bit 所以选择:Linux CentOS 6 - 64bit
下载下来后是一个rpm包 [wkhtmltox-0.12.2_linux-centos6-amd64.rpm]。
安装wkhtmltox:
> rpm -ivh wkhtmltox-0.12.2_linux-centos6-amd64.rpm
error: Failed dependencies:
xorg-x11-fonts-75dpi is needed by wkhtmltox-1:0.12.2-1.x86_64
# 提示需要安装75dpi
> yum search 75dpi
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
============================================================ N/S Matched: 75dpi ============================================================
xorg-x11-fonts-75dpi.noarch : A set of 75dpi resolution fonts for the X Window System.
xorg-x11-fonts-ISO8859-1-75dpi.noarch : A set of 75dpi ISO-8859-1 fonts for X.
xorg-x11-fonts-ISO8859-14-75dpi.noarch : ISO8859-14-75dpi fonts
xorg-x11-fonts-ISO8859-15-75dpi.noarch : ISO8859-15-75dpi fonts
xorg-x11-fonts-ISO8859-2-75dpi.noarch : A set of 75dpi Central European language fonts for X.
xorg-x11-fonts-ISO8859-9-75dpi.noarch : ISO8859-9-75dpi fonts
Name and summary matches only, use "search all" for everything.
> yum install xorg-x11-fonts-75dpi.noarch
安装完成后,再执行:
> rpm -ivh wkhtmltox-0.12.2_linux-centos6-amd64.rpm
如果无法安装xorg-x11-fonts-75dpi.noarch
直接使用如下方法解压rpm包内已经编译好的包:
> rpm2cpio wkhtmltox-0.12.2_linux-centos6-amd64.rpm | cpio -div
完成后在当前目录会生成一个 usr 的目录,里面包含 local/bin,local/include,local/share,local/lib四个文件夹
将对应文件夹的内容拷贝至/usr/local即可!
> cp -Rv ./usr/local/* /usr/local/
wkhtmltox系统环境安装完成!
2、安装php-wkhtmltox扩展
下载github上的源码包 [php-wkhtmltox_master.zip]
> unzip php-wkhtmltox_master.zip
> cd phpwkhtmltox
> phpize
> ./configure --with-php-config=/usr/local/php/bin/php-config #此处按照各自系统php安装路径不同而定
> make && make install
> ldconfig #重新加载系统动态链接库
> php -m
# 检查扩展是否成功 如果能看到phpwkhtmltox 说明扩展成功
php-wkhtmltox扩展安装完成。
3、修改php.ini文件开启扩展
> vi /usr/local/php/etc/php.ini
加入:
extension="phpwkhtmltox.so"
> /etc/init.d/php-fpm restart
安装完成!
本文参考: http://www.phpboy.net/linux/575.html
安装部分可使用本文介绍的安装部分,有些可能需要中文字体支持,可参考上文中得中文字体库安装部分进行扩展。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现