由于要将html生成pdf,找了很多插件:tcpdf、dompdf、mpdf等很多,但是都对css的属性支持不佳,不能满足需求;经过再次寻找发现很多推荐 wkhtmltoxpdf,于是在centos下开始测试。
环境:centos 7 ,64位。
进入任一目录,执行下载,现在wkhtmltopdf 提供了直接安装包,方便多了:https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
如果提示缺少依赖,请直接yum install
错误:依赖检测失败:
fontconfig 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
libX11 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
libXext 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
libXrender 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
xorg-x11-fonts-75dpi 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
xorg-x11-fonts-Type1 被 wkhtmltox-1:0.12.5-1.centos7.x86_64 需要
安装依赖:
yun install fontconfig libX11 libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1
wkhtmltoxpdf 对中文的支持不够好,所以需要安装一下 宋体:simsun.ttc , 自行百度下载,吧下载的字体放在:/usr/share/fonts/
执行测试:
wkhtmltopdf http://www.iamlintao.com iamlintao.pdf
格式说明: 命令 html地址 文件名
wkhtmltoxpdf 的参数/命令:
php调用示例:
//请确保执行PHP的Linux用户有权操作 wkhtmltopdf 所在目录,将 wkhtmltopdf 或操作wkhtmltopdf的shell脚本放在 www项目目录下将是省力的做法
$filename = date('YmdHis');
$pdf_file_name = $filename.'.pdf';
$wkhtmltopdf_exec_url = "/home/wwwroot/default/web/public/wkhtmltopdf-amd64";
$pdf_url = " /home/wwwroot/default/web/upload/pdf/";shell_exec("$wkhtmltopdf_exec_url $pdf_url"."$html_file_name"." $pdf_url"."$pdf_file_name");
if(file_exists("$pdf_url"."$pdf_file_name")){
echo '<span>Success.</span>';
}else{
echo '<span>Error.</span>';
}
如需转载请注明: 转载自26点的博客
本文链接地址: centos下html生成pdf的方法 支持php等诸多
转载请注明:26点的博客 » centos下html生成pdf的方法 支持php等诸多