PHP使用MPDF类生成PDF的方法
author:一佰互联 2019-04-27   click:173

由于公司业务的需要,最近需要把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;?>