本文操作环境:windows10系统、php 7、thinkpad t480电脑。
要将html转成pdf其实有很多种办法,比如我们可以使用html2pdf、mpdf、dompdf和tcpdf等方法。这四种开源库我们都可以使用composer安装,但是可能在安装的过程中会遇到网络传输慢、安装超时等情况。所以最好是使用码云上的源进行下载安装。
虽然以上四个方法都可以将html转成pdf,但是如果从转换效果来看mpdf是最好的一种方式。当然这种方式也不是完美无缺,mpdf并不支持复杂表格的自动分页,在使用的过程中我们可能需要手动拆解html中的内容,生成多个html模板,最后再生成多个单页的PDF文件。
mpdf使用示例:
function genBillPdfContent($htmlContent) {
$mpdf = new \Mpdf\Mpdf();
$mpdf->SetDisplayMode('fullpage');
$mpdf->autoScriptToLang = true;
$mpdf->autoLangToFont = true;
$mpdf->WriteHTML($htmlContent);
return $mpdf->Output('filename.pdf', \Mpdf\Output\Destination::STRING_RETURN);
}