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 相关文章推荐
实时抓取YAHOO股票报价的代码
Oct 09 PHP
关于Appserv无法打开localhost问题的解决方法
Oct 16 PHP
php trim 去除空字符的定义与语法介绍
May 31 PHP
初步介绍PHP扩展开发经验分享
Sep 06 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
Apr 26 PHP
php生成随机密码自定义函数代码(简单快速)
May 10 PHP
ThinkPHP模板Switch标签用法示例
Jun 30 PHP
PHP使用redis实现统计缓存mysql压力的方法
Nov 14 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
Oct 25 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
Sep 20 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
Nov 09 PHP
设定php简写功能的方法
Nov 28 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(1)
2006/10/09 PHP
php 字符过滤类,用于过滤各类用户输入的数据
2009/05/27 PHP
PHP 源代码压缩小工具
2009/12/22 PHP
php下保存远程图片到本地的办法
2010/08/08 PHP
php 中英文语言转换类代码
2011/08/11 PHP
linux使用crontab实现PHP执行计划定时任务
2014/05/10 PHP
php HTML无刷新提交表单
2016/04/05 PHP
基于jquery的合并table相同单元格的插件(精简版)
2011/04/05 Javascript
关于JavaScript命名空间的一些心得
2014/06/07 Javascript
JS实现简单的键盘打字的效果
2015/04/24 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
浅析JavaScript异步代码优化
2019/03/18 Javascript
JS中call()和apply()的功能及用法实例分析
2019/06/28 Javascript
VUE子组件向父组件传值详解(含传多值及添加额外参数场景)
2020/09/01 Javascript
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[09:59]DOTA2-DPC中国联赛2月7日Recap集锦
2021/03/11 DOTA
初学Python函数的笔记整理
2015/04/07 Python
python获得linux下所有挂载点(mount points)的方法
2015/04/29 Python
编写Python爬虫抓取豆瓣电影TOP100及用户头像的方法
2016/01/20 Python
python切片及sys.argv[]用法详解
2018/05/25 Python
TensorFlow 模型载入方法汇总(小结)
2018/06/19 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
python多线程与多进程及其区别详解
2019/08/08 Python
python中with用法讲解
2020/02/07 Python
Python任务调度利器之APScheduler详解
2020/04/02 Python
python 线程的五个状态
2020/09/22 Python
python zip()函数的使用示例
2020/09/23 Python
Allsole美国/加拿大:英国一家专门出售品牌鞋子的网站
2018/10/21 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
致短跑运动员广播稿
2014/01/09 职场文书
爱国演讲稿400字
2014/05/07 职场文书
群众路线剖析材料怎么写
2014/10/09 职场文书
成本会计实训报告
2014/11/05 职场文书
vue3 自定义图片放大器效果的示例代码
2022/07/23 Vue.js