使用php第三方包mpdf將網頁裝換成pdf文件輸出
來自專欄子,安於塵世
最近做一個商城項目,遇到了要將動態內容生成PDF的需求,查遍網上,發現網上能找到的可以實現此功能的php第三方包所能參考的文檔特別是中文文檔特別少,折騰了兩天,查閱了一些英文文檔,看了網上一些前輩踩過的坑,特意在前人的基礎上整理了這篇文章,希望日後有小夥伴遇到同樣的需求,能夠少踩坑。
安裝方法:
thinkphp5.0以及laravel5.0以上可以通過composer安裝 在命令行切換到項目根目錄,運行以下命令:composer require mpdf/mpdf
public function pdf(){ vendor("mpdf.mpdf.src.Mpdf"); $mpdf = new MpdfMpdf(); $url = https://www.anzichen.com.cn; $strContent = file_get_contents($url); $mpdf->WriteHTML($strContent); $mpdf->Output(); exit;}
遇到坑:
Q:中文字元無法識別,全部顯示為?????
A: mpdf7.0版本以上 進入vendor/mpdf/mpdf/src/config/ConfigVariables.php 將如下配置修改為true
autoScriptToLang => true, autoLangToFont => true,
此時再次訪問該地址即可輸出中文無亂碼pdf
Q:頁面圖片無法顯示
A:將模板文件中圖片路徑全部改為包含域名的絕對路徑 如: https://www.anzichen.com.cn/public/images/logo.png"
其它問題歡迎加入QQ群96094083討論
推薦閱讀:
※基本能力之美術常識-360文檔中心
※日曆枱曆(列印版)【共6個文檔】
※Word圖片排版時的嵌入式與非嵌入式
※六祖大師法寶壇經(文檔E)
※【2017.11.19 承傳法脈 圓滿孝德—墨爾本淨宗學會新道場落成典禮暨三時繫念法會致賀開示】凈空老法師(視頻+文檔)