Home > php教程 > php手册 > PHP如何实现将HTML文件转换成PDF文件

PHP如何实现将HTML文件转换成PDF文件

PHPz
Release: 2018-10-17 14:09:51
Original
5565 people have browsed it

这篇文章主要介绍了PHP实现HTML生成PDF文件的方法,可实现linux中利用HTML2FPDF与wkhtmltoimage把网页html直接生成pdf格式的文件,需要的朋友可以参考下

找到一款在FPDF和HTML2FPDF源码基础上开发的一套开源程序,作者很给力。基本解决了中文(以及日语、韩语及东南亚和全球语言)乱码的问题,在Windows/Linux开发环境下测试可用,不需要安装别的组件支持,是没有VPS和独立服务器的网站开发者的福音。

不多说,源码名称是MPDF,,官方地址是: 已经更新到5.6版。
到官网下载,解压到网站目录下,使用。

代码如下:

<?php
include(&#39;mpdf.php&#39;);
$mpdf=new mPDF(&#39;UTF-8&#39;,&#39;A4&#39;,&#39;&#39;,&#39;&#39;,15,15,44,15);
$mpdf->useAdobeCJK = true; 
$mpdf->SetAutoFont(AUTOFONT_ALL);
$mpdf->SetDisplayMode(&#39;fullpage&#39;);
//$mpdf->watermark_font = &#39;GB&#39;; 
//$mpdf->SetWatermarkText(&#39;中国水印&#39;,0.1);
$url = &#39;http://www.你的域名.com/&#39;;
$strContent = file_get_contents($url); 
//print_r($strContent);die;
$mpdf->showWatermarkText = true;
$mpdf->SetAutoFont();
//$mpdf->SetHTMLHeader( &#39;头部&#39; );
//$mpdf->SetHTMLFooter( &#39;底部&#39; );
$mpdf->WriteHTML($strContent);
$mpdf->Output(&#39;ss.pdf&#39;);
//$mpdf->Output(&#39;tmp.pdf&#39;,true);
//$mpdf->Output(&#39;tmp.pdf&#39;,&#39;d&#39;);
//$mpdf->Output();
exit;
?>
Copy after login

PASS:需要注意的是,PHP文件要是UTF-8。不用心情天空贴出的代码,自己写时出现方格乱码时,可以在config.php文件里的$this->useAdobeCJK = false;修改成true或者必须标注:$mpdf->useAdobeCJK = true; 官方有文档,可以自己摸索。

这个不完美方法,MPDF只能解析相对简单的css(不能解析js和css中ul li等标签)。现在既然使用了wkhtmltoimage扩展,也就不在乎wkhtmltopdf的使用了。
同样,wkhtmltoimage 0.11会出现错误,需要下载0.10.0_rc2版。

32位:

代码如下:

wget 
tar jxf wkhtmltopdf-0.10.0_rc2-static-i386.tar.bz2
cp wkhtmltoimage-i386 /usr/local/bin/wkhtmltopdf
Copy after login

64位

代码如下:

wget 
mv wkhtmltoimage-0.10.0_rc2-static-amd64.tar.bz2 wkhtmltoimage-0.10.0_rc2-static-amd64.tar
tar -xvf wkhtmltopdf-0.10.0_rc2-static-amd64.tar
Copy after login

mv wkhtmltoimage-amd64 /usr/bin/wkhtmltopdf测试 wkhtmltopdf 你的域名.com/ 你的域名.pdfphp shell_exec() 执行shell_exec('/usr/local/bin/wkhtmltopdf 你的域名.com/ /usr/local/wwwroot/你的域名.com/你的域名.pdf');

希望本文所述对大家的php程序设计有所帮助。

【相关教程推荐】

1. php编程从入门到精通全套视频教程
2. php从入门到精通 
3. bootstrap教程

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template