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 相关文章推荐
初学CAKEPHP 基础教程
Nov 02 PHP
php自动加载的两种实现方法
Jun 21 PHP
PHP基础教程(php入门基础教程)一些code代码
Jan 06 PHP
Window下PHP三种运行方式图文详解
Jun 11 PHP
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
Apr 01 PHP
PHP获取时间排除周六、周日的两个方法
Jun 30 PHP
PHP+Ajax实时自动检测是否联网的方法
Jul 01 PHP
PHP开发中AJAX技术的简单应用
Dec 11 PHP
PHP数学运算函数大汇总(经典值得收藏)
Apr 01 PHP
Ubuntu 16.04下安装PHP 7过程详解
Mar 28 PHP
php时间戳转换代码详解
Aug 04 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 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使用token防止表单重复提交的方法
2016/04/07 PHP
JavaScript网页制作特殊效果用随机数
2007/05/22 Javascript
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法
2015/11/27 Javascript
纯原生js实现贪吃蛇游戏
2020/04/16 Javascript
Angular如何引入第三方库的方法详解
2017/07/13 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
vue-cli webpack2项目打包优化分享
2018/02/07 Javascript
AngularJS监听ng-repeat渲染完成的方法
2018/03/20 Javascript
vue router 跳转后回到顶部的实例
2018/08/31 Javascript
JavaScript变量Dom对象的所有属性
2020/04/30 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
在vue中使用eslint,配合vscode的操作
2020/11/09 Javascript
盘点提高 Python 代码效率的方法
2014/07/03 Python
python使用xmlrpclib模块实现对百度google的ping功能
2015/06/02 Python
Django查询数据库的性能优化示例代码
2017/09/24 Python
Python 修改列表中的元素方法
2018/06/26 Python
Python分析微信好友性别比例和省份城市分布比例的方法示例【基于itchat模块】
2020/05/29 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
Python绘制数码晶体管日期
2021/02/19 Python
农田水利实习自我鉴定
2013/09/19 职场文书
大四自我鉴定范文
2013/10/06 职场文书
环境工程毕业生自荐信
2013/11/17 职场文书
农村婚礼证婚词
2014/01/08 职场文书
中学教师管理制度
2014/01/14 职场文书
中专生自我鉴定范文
2014/02/02 职场文书
毕业生学校推荐信范文
2014/05/21 职场文书
个人求职自荐信范文
2014/06/20 职场文书
委托书怎么写
2014/07/31 职场文书
县委常委班子对照检查材料思想汇报
2014/09/28 职场文书
校友回访母校寄语
2015/02/26 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
Java实现给Word文件添加文字水印
2022/02/15 Java/Android
「月刊Comic Alive」2022年5月号封面公开
2022/03/21 日漫