1.下载第三方mpdf库:
参考官方文档:https://mpdf.github.io/
2,引入mpdf库:
(1)通过url地址生成pdf文件
function createPDFByHTML($url, $title, $file_name, $images = []) { $type = 'D'; //$type='I';在线预览模式 //$type='D';下载模式 //$type='f';生成后保存到服务器 //$type='s';返回字符串,此模式下$filename会被忽视 $mpdf = new mPDF('', 'A4', 8, '宋体'); //实例化:(语言,纸张大小,字体大小,字体) $mpdf->SetTitle($title); $mpdf->autoLangToFont = true; $mpdf->SetHeader($title); $mpdf->SetFooter('{PAGENO}'); $mpdf->WriteHTML(file_get_contents($url)); //其他设置参考官方文档 if ($images) { foreach ($images as $image) { $mpdf->Image($image[0], $image[1], $image[2], $image[3], $image[4]); } } return $mpdf->Output($file_name, $type); }
(2)通过html内容生成
function createPDFByHTMLContent($content, $title, $file_name, $images = []) { $type = 'D'; $mpdf = new mPDF('', 'A4', 8, '宋体'); $mpdf->SetTitle($title); $mpdf->autoLangToFont = true; $mpdf->SetHeader($title); $mpdf->SetFooter('{PAGENO}'); $mpdf->WriteHTML($content); if ($images) { foreach ($images as $image) { //图片输出 $mpdf->Image($image[0], $image[1], $image[2], $image[3], $image[4]); } } return $mpdf->Output($file_name, $type); }