PHP使用MPDF类生成PDF的方法


Posted in PHP onDecember 08, 2015

由于公司业务的需要,最近需要把html静态文件生成pdf,在网上找了很多类文件来实现,效果都不是很好.最先用的是tcpdf这个类特别的慢,而且当前版本有一个很让人头疼的问题—css中的背景图片无法获取到,找了很多资料都无法解决.最后发现mpdf可能实现该功能,大喜过望,而且效率也比tcpdf快.

mpdf的官方下载地址:http://www.mpdf1.com/mpdf/download

下载后里面有实例,可以参照着做一个就知道了.当然官方网站也有实例,网址:http://mpdf1.com/common/mpdf/examples/

官方提供的文档:http://mpdf1.com/manual/

<?php
/*
*功能:生成用户诊断报告PDF文件
*创建时间:--
*/
//phpinfo();exit;
//引入MPDF类文件
set_time_limit();
include '/include/MPDF/mpdf.php';
//实例化mpdf
$mpdf=new mPDF('utf-','A','','宋体',,,,);
//设置字体,解决中文乱码
$mpdf->useAdobeCJK = true;
$mpdf->SetAutoFont(AUTOFONT_ALL);
//获取要生成的静态文件
$html=file_get_contents('template.html');
echo $html;exit;
//设置PDF页眉内容
$header='<table width="%" style="margin: auto;border-bottom: px solid #FBD; vertical-align: middle; font-family:
serif; font-size: pt; color: #;"><tr>
<td width="%"></td>
<td width="%" align="center" style="font-size:px;color:#AAA">页眉</td>
<td width="%" style="text-align: right;"></td>
</tr></table>';
//设置PDF页脚内容
$footer='<table width="%" style=" vertical-align: bottom; font-family:
serif; font-size: pt; color: #;"><tr style="height:px"></tr><tr>
<td width="%"></td>
<td width="%" align="center" style="font-size:px;color:#AAA">页脚</td>
<td width="%" style="text-align: left;">页码:{PAGENO}/{nb}</td>
</tr></table>';
//添加页眉和页脚到pdf中
$mpdf->SetHTMLHeader($header);
$mpdf->SetHTMLFooter($footer);
//设置pdf显示方式
$mpdf->SetDisplayMode('fullpage');
//设置pdf的尺寸为mm*mm
//$mpdf->WriteHTML('<pagebreak sheet-size="mm mm" />');
//创建pdf文件
$mpdf->WriteHTML($html);
//删除pdf第一页(由于设置pdf尺寸导致多出了一页)
//$mpdf->DeletePages(,);
//输出pdf
$mpdf->Output();
exit;
?>
PHP 相关文章推荐
FCKeditor的安装(PHP)
Jan 13 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
Jul 17 PHP
PHP的SQL注入过程分析
Jan 06 PHP
php递归创建和删除文件夹的代码小结
Apr 13 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 PHP
PHP代码优化之成员变量获取速度对比
Feb 28 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
Aug 16 PHP
php函数serialize()与unserialize()用法实例
Nov 06 PHP
Symfony2 session用法实例分析
Feb 04 PHP
PDO::query讲解
Jan 29 PHP
laravel Validator ajax返回错误信息的方法
Sep 29 PHP
PHP Swoole异步Redis客户端实现方法示例
Oct 24 PHP
学习php设计模式 php实现享元模式(flyweight)
Dec 07 #PHP
学习php设计模式 php实现策略模式(strategy)
Dec 07 #PHP
学习php设计模式 php实现状态模式
Dec 07 #PHP
学习php设计模式 php实现适配器模式
Dec 07 #PHP
分享五个PHP7性能优化提升技巧
Dec 07 #PHP
学习php设计模式 php实现工厂模式(factory)
Dec 07 #PHP
学习php设计模式 php实现原型模式(prototype)
Dec 07 #PHP
You might like
php分页示例代码
2007/03/19 PHP
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
2014/08/08 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
2016/03/06 PHP
laravel自定义分页的实现案例offset()和limit()
2019/10/15 PHP
JavaScript 字符串连接性能优化
2008/12/20 Javascript
javascript getElementsByTagName
2011/01/31 Javascript
JavaScript高级程序设计(第3版)学习笔记2 js基础语法
2012/10/11 Javascript
JS代码同步文本框内容的实例方法
2013/07/12 Javascript
直接在JS里创建JSON数据然后遍历使用
2014/07/25 Javascript
node.js中的fs.ftruncate方法使用说明
2014/12/15 Javascript
有关json_decode乱码及NULL的问题
2015/10/13 Javascript
一步快速解决微信小程序中textarea层级太高遮挡其他组件
2019/03/04 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
layui实现数据表格点击搜索功能
2020/03/26 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
2020/04/25 Javascript
深入了解Vue3模板编译原理
2020/11/19 Vue.js
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
使用SAE部署Python运行环境的教程
2015/05/05 Python
tensorflow构建BP神经网络的方法
2018/03/12 Python
Python中将变量按行写入txt文本中的方法
2018/04/03 Python
基于Numpy.convolve使用Python实现滑动平均滤波的思路详解
2019/05/16 Python
python日期相关操作实例小结
2019/06/24 Python
python切片的步进、添加、连接简单操作示例
2019/07/11 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
Python之qq自动发消息的示例代码
2021/02/18 Python
Python3爬虫RedisDump的安装步骤
2021/02/20 Python
使用CSS3编写灰阶滤镜来制作黑白照片效果的方法
2016/05/09 HTML / CSS
CSS3贝塞尔曲线示例:创建链接悬停动画效果
2020/11/19 HTML / CSS
canvas绘制图片drawImage使用方法
2020/09/15 HTML / CSS
经典大学生求职信范文
2014/01/06 职场文书
巾帼建功标兵事迹材料
2014/05/11 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
教师党员整改措施
2014/10/24 职场文书
优秀教师个人材料
2014/12/15 职场文书
2015年度个人业务工作总结
2015/04/27 职场文书
css3新特性的应用示例分析
2022/03/16 HTML / CSS