php生成PDF最好的类MPDF
下载后里面有实例,可以参照着做一个就知道了.当然官方网站也有实例,网址:http://mpdf1.com/common/mpdf/examples/
官方提供的文档:http://mpdf1.com/manual/
<?php /* *功能:生成用户诊断报告PDF文件 *创建时间:2013-09-12 */ //phpinfo();exit; //引入MPDF类文件 set_time_limit(0); include '/include/MPDF57/mpdf.php'; //实例化mpdf $mpdf=new mPDF('utf-8','A4','','宋体',0,0,20,10); //设置字体,解决中文乱码 $mpdf->useAdobeCJK = true; $mpdf->SetAutoFont(AUTOFONT_ALL); //获取要生成的静态文件 $html=file_get_contents('template.html'); echo $html;exit; //设置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中 $mpdf->SetHTMLHeader($header); $mpdf->SetHTMLFooter($footer); //设置pdf显示方式 $mpdf->SetDisplayMode('fullpage'); //设置pdf的尺寸为270mm*397mm //$mpdf->WriteHTML('<pagebreak sheet-size="270mm 397mm" />'); //创建pdf文件 $mpdf->WriteHTML($html); //删除pdf第一页(由于设置pdf尺寸导致多出了一页) //$mpdf->DeletePages(1,1); //输出pdf $mpdf->Output(); exit; ?> ------------------------------------------------------------------------------- --------------------------------------------------------------------------- yii框架 yii框架加入类文件,(如mpdf)先把类文件放入common 文件夹下,再在config下配置bootstrap.php,加入 Yii::$classMap['mpdf']='@common/mpdf/mpdf.php'; 就可以采用以下方法调用类 use mPDF; 直接实例化类
<?php namespace backend\controllers; use Yii; use yii\web\Controller; use mPDF; /** * Pdf控制器 */ class PdfController extends Controller { public function actionIndex(){ // $mpdf=yii::$app->mpdf; //实例化mpdf $mpdf=new mPDF(); $mpdf->useAdobeCJK = true; $mpdf->SetDisplayMode('fullpage'); $mpdf->watermark_font = 'GB'; $mpdf->SetWatermarkText('中国水印',0.1); $mpdf->WriteHTML(file_get_contents('http://localhost/php93/rikaogaoji/backend/web')); //下载 //yii::$app->response->setDownloadHeaders("yii login"); //输出、下载(D为pdf类封装好的下载方法) return $mpdf->Output('yii login','D'); exit; } public function actionPdf(){ //实例化mpdf $mpdf=new mPDF(); //获取文件,写入pdf $mpdf->WriteHTML(file_get_contents('http://localhost/php93/rikaogaoji/backend/web')); // 打开输出缓冲区,所有的输出信息不在直接发送到浏览器,而是保存在输出缓冲区里面,可选得回调函数用于处理输出结果信息。 ob_start(); $mpdf->Output(); //得到当前缓冲区的内容并删除当前输出缓冲区。 $html=ob_get_clean(); yii::$app->response->sendContentAsFile($html,'yii login.pdf'); } }