PHP中使用mpdf 导出PDF文件的实现方法


Posted in PHP onOctober 22, 2018

mPDF是一个很强大的PDF生成库,能基本兼容HTML标签和CSS3样式,这篇文章通过实例代码给大家介绍PHP中使用mpdf 导出PDF文件的实现方法。

具体代码如下所示:

/**
 * PHP 使用 mpdf 导出PDF文件
 * @param $content  string PDF文件内容 若为html代码,css内容分离 非id,class选择器可能失效,解决办法直接写进标签style中
 * @param $filename string 保存文件名
 * @param $css   string css样式内容
 */
function export_pdf_by_mpdf($content, $filename, $css = '')
{
 set_time_limit(0);
 include_once './mpdf/mpdf.php';
 //实例化mpdf
 $_obj_mpdf = new \mPDF('utf-8', 'A4', '', '宋体', 0, 0, 20, 10);
 //设置PDF页眉内容 (自定义编辑样式)
 $header = '<table width="95%" style="margin:0 auto;border-bottom: 1px solid #4F81BD; vertical-align: middle; font-family:serif; font-size: 9pt; color: #000088;">
    <tr><td width="10%"></td><td width="80%" align="center" style="font-size:16px;color:#A0A0A0">页眉</td><td width="10%" style="text-align: right;"></td></tr></table>';
 //设置PDF页脚内容 (自定义编辑样式)
 $footer = '<table width="100%" style=" vertical-align: bottom; font-family:serif; font-size: 9pt; color: #000088;"><tr style="height:30px"></tr><tr>
    <td width="10%"></td><td width="80%" align="center" style="font-size:14px;color:#A0A0A0">页脚</td><td width="10%" style="text-align: left;">
    页码:{PAGENO}/{nb}</td></tr></table>';
 //添加页眉和页脚到PDF中
 $_obj_mpdf->SetHTMLHeader($header);
 $_obj_mpdf->SetHTMLFooter($footer);
 $_obj_mpdf->SetDisplayMode('fullpage');//设置PDF显示方式
 $_obj_mpdf->WriteHTML('<pagebreak sheet-size="210mm 297mm" />');//设置PDF的尺寸 A4纸规格尺寸:210mm*297mm
 !empty($css) && $_obj_mpdf->WriteHTML($css, 1);//设置PDF css样式
 $_obj_mpdf->WriteHTML($content);//将$content内容写入PDF
 $_obj_mpdf->DeletePages(1, 1);//删除PDF第一页(由于设置PDF尺寸导致多出的一页)
 //输出PDF 直接下载PDF文件
 //$_obj_mpdf->Output($filename . '.pdf', true);
 //$_obj_mpdf->Output($filename . '.pdf', 'D');
 $_obj_mpdf->Output();//输出PDF 浏览器预览文件 可右键保存
 exit;
}
$html = '<b style="color: red">你看我哪里像好人</b>';
$wordname = 'test-file';
export_pdf_by_mpdf($html, $wordname);

总结

以上所述是小编给大家介绍的PHP中使用mpdf 导出PDF文件的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
检测png图片是否完整的php代码
Sep 06 PHP
php中利用post传递字符串重定向的实现代码
Apr 21 PHP
Admin generator, filters and I18n
Oct 06 PHP
PHP设计模式之迭代器模式的深入解析
Jun 13 PHP
浅析php原型模式
Nov 25 PHP
php实现两表合并成新表并且有序排列的方法
Dec 05 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
php检索或者复制远程文件的方法
Mar 13 PHP
百万级别知乎用户数据抓取与分析之PHP开发
Sep 28 PHP
php求今天、昨天、明天时间戳的简单实现方法
Jul 28 PHP
php中输出json对象的值(实现方法)
Mar 07 PHP
Referer原理与图片防盗链实现方法详解
Jul 03 PHP
php微信公众号开发之答题连闯三关
Oct 20 #PHP
php微信公众号开发之简答题
Oct 20 #PHP
php微信公众号开发之快递查询
Oct 20 #PHP
php微信公众号开发之翻页查询
Oct 20 #PHP
php微信公众号开发之校园图书馆
Oct 20 #PHP
php微信公众号开发之二级菜单
Oct 20 #PHP
php微信公众号开发之音乐信息
Oct 20 #PHP
You might like
PHP生成静态页面详解
2006/11/19 PHP
PHP memcache扩展的三种安装方法
2009/04/26 PHP
在Laravel 中实现是否关注的示例
2019/10/22 PHP
改进版通过Json对象实现深复制的方法
2012/10/24 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
JS控制表单提交的方法
2015/07/09 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
js 自带的 map() 方法全面了解
2016/08/16 Javascript
微信小程序 教程之模块化
2016/10/17 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
2017/01/23 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
2017/08/08 jQuery
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
Vue2.0父组件与子组件之间的事件发射与接收实例代码
2017/09/19 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
关于js陀螺仪的理解分析
2019/04/11 Javascript
[03:17]DOTA2英雄基础教程 剧毒术士
2013/12/12 DOTA
python简单猜数游戏实例
2015/07/09 Python
Python中的函数作用域
2018/05/07 Python
python3学生名片管理v2.0版
2018/11/29 Python
python 在指定范围内随机生成不重复的n个数实例
2019/01/28 Python
Python正则表达式和re库知识点总结
2019/02/11 Python
python自动分箱,计算woe,iv的实例代码
2019/11/22 Python
python datetime时间格式的相互转换问题
2020/06/11 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
html5 更新图片颜色示例代码
2014/07/29 HTML / CSS
html5 视频播放解决方案
2016/11/06 HTML / CSS
HTML5中input[type='date']自定义样式与日历校验功能的实现代码
2017/07/11 HTML / CSS
台湾网友喜爱的综合型网路购物商城:Yahoo! 奇摩购物中心
2018/03/10 全球购物
运行时异常与一般异常有何异同?
2014/01/05 面试题
应届生财务管理求职信
2013/11/06 职场文书
毕业论文指导教师评语
2014/12/30 职场文书
国家助学金感谢信
2015/01/21 职场文书
销售开票员岗位职责
2015/04/15 职场文书
神州牡丹园的导游词
2019/11/20 职场文书
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python