①. 首先建议下载对应的版本包 【mpdf 扩展包链接】
以我为例,根据我的PHP版本,从版本库中找一个可支持的 mpdf 版本即可,鄙人选择的是 v7.0.1,那么对应的命令为: composer require mpdf/mpdf v7.0.1②. 核心方法实现
举例:富文本信息为 $html_content (如果直接赋值,注意转化) <p style="text-align: center;"> <span style="color: rgb(153, 0, 0); font-size: 15px; text-align: center;"> <img src="/upload/20200903/191335ODA5NzgyNzMwMzAy.jpg" title="191335ODA5NzgyNzMwMzAy.jpg" alt="QQ截图20200306180410.jpg"/> </span> </p> <p style="text-align: center;"> <span style="color: rgb(153, 0, 0); font-size: 15px; text-align: center;">余生很贵,经不起浪费</span> </p> <p style="text-align: center;"> <img src="http://img.baidu.com/hi/jx2/j_0034.gif"/> <img src="http://img.baidu.com/hi/jx2/j_0040.gif"/> </p> 那么测试处理的核心代码如下: $mpdf = new Mpdf(['mode'=>'utf-8','format' => 'A4',]); $mpdf->SetDisplayMode('fullpage'); //自动分析录入内容字体 $mpdf->autoScriptToLang = true; $mpdf->autoLangToFont = true; // 自定义文章pdf文件存储路径 $fileUrl = "upload/article_files/article_".$id.".pdf"; //默认 以html为标准分析写入内容 $mpdf->WriteHTML($html_content); // 文件生成指令 $mpdf->Output($fileUrl);③. 对于 Linux/Nginx 环境下,需要更改 mpdf 目录下的写权限 (“src/”、“tmp/”、“ttfonts/”) 为了方便,鄙人直接使用了如下命令:
chmod -R 777 vendor/mpdf 如果没有做处理,很有可能出现如下的报错: Temporary files directory "/xxxxxxxxxxxxxxxxx/vendor/mpdf/mpdf/src/Config/../../tmp" is not writable④. 实现效果如下:
1.mPDF - 临时文件目录…不可写
2.推荐文章——mPDF的简单使用
毕竟 mPDF 集成的内容是很丰富的,可以根据自己的需求进行扩展; 比如:水印,页眉页脚设置,标题等等…