一:dompdf/dompdf 地址
github:https://github.com/dompdf/dompdf
packagist:http://packagist.p2hp.com/pac…
二:dompdf/dompdf 装置
composer require dompdf/dompdf
三:dompdf/dompdf 简略实例
$pdf = new \Dompdf\Dompdf();
$content = 'pdf 内容';
$pdf->loadHtml($content);
// 设置纸张大小和方向
$pdf->setPaper('A4', 'landscape');
$options = new Options();
// 设置应用近程图片填充 pdf 内容
$options->setIsRemoteEnabled(true);
$pdf->setOptions($options);
// 将 html 转为 PDF
$pdf->render();
// 下载生成的 pdf 文件
$pdf->stream('xxx.pdf');
// 将生成的 pdf 保留到服务器
file_put_contents('xxx.pdf',$pdf->output());
// 将生成的 pdf 文件渲染到页面
$pdf->stream('xxx.pdf', [
'compress' => 0,
'Attachment' => 0
]);
四:解决生成的 pdf 文件中文乱码
1:下载字体包装置脚本 utils
https://github.com/dompdf/utils
2:字体包装置脚本解决
将下载下来的装置脚本中的 load_font.php 文件拷贝到我的项目的 vender 平级目录下,而后将须要的字体包文件 ttf 也放到 load_font.php 同一级目录下 (例如 simsun.ttf)
3:执行字体包装置脚本
php load_font.php simsun simsun.ttf
4:批改装置字体包中的文件门路 (留神:不操作此项再本机上是失常的,放到服务器就会有问题了)
找到 dompdf\dompdf\lib\fonts\installed-fonts.json 文件,这时候咱们就能够看到咱们刚刚装置的字体包
这里咱们能够看到引入的字体包相干门路都是本机门路,咱们能够看到 dompdf\dompdf\lib\fonts 门路下存在咱们须要的文件,批改引入门路即可,如:
5:html 应用字体包款式即可
body {font-family: simsun;}
依据如上操作咱们就能够解决中文乱码问题