mpdf中文开发使用文档附demo实例

833 阅读2分钟

官网URL:www.mpdf1.com/mpdf/index.…

github:github.com/mpdf/mpdf

官方开发手册,英文的:www.mpdfonline.com/repos/mpdfm…

网页版 mpdf.github.io/

蛋疼,不想翻译600多页,只翻译了部分常用的部分

 

之前一直使用tcpdf,对于不是很复杂的合同生成还行,但是语法复杂的页面,对table的支持一塌糊涂,div+css支持很有限,而且必须是100%可以转换的闭合xml才行,不行直接报错,

然后花了1天左右尝试市面上基本所有的php关于pdf的插件,基本全军覆没,要么生成pdf过大,要么某个html属性支持不好,要么年久失修,多年未维护,非常蛋疼,最后在github找到mpdf

一看文件包52M,我擦,这么大,下载完成后发现字体占了70-80M,没想的是mpdf生成的pdf只有100多KB,大大降低我磁盘的消耗。而且生成速度还不错,中文兼容,图片兼容也还不错

 

 

要求

mPDF 7.0 requires PHP ^5.6 || ~7.0.0 || ~7.1.0 || ~7.2.0. PHP mbstring和gd扩展必须加载。

对于某些高级功能,可能需要其他扩展,例如用于压缩输出的zlib和用于生成条形码的bcmath或用于字符集转换和SVG处理的xml等嵌入式资源。

mPDF在使用单线程服务器(如php-s)获取外部HTTP资源时遇到一些问题。推荐使用适当的服务器,如nginx(php-fpm)或Apache。

Support us

Consider supporting development of mPDF with a donation of any value. Donation button can be found on the main page of the documentation.

安装

官方安装方法是通过composer and its packagist package mpdf/mpdf.

$ composer require mpdf/mpdf


使用

库的最简单的用法(从版本7.0开始)如下:

WriteHTML('

Hello world!

'); $mpdf->Output(); ```   \ 这将输出PDF作为应用程序/ PDF内容类型的PDF内联类型。 设置和配置 所有配置指令都可以通过构造函数的$ config参数来设置。 建议通过tempDir配置变量设置自己的临时目录。对于使用mPDF(通常为cli,webserver,fpm)的用户,该目录必须具有写权限(建议使用775模式)。 __DIR__ . '/tmp']); ```   默认情况下,临时目录将位于vendor目录中,并且将具有来自post_install作曲家脚本的正确权限。 有关自定义临时目录的更多信息,请参阅手册中“安装和设置”一节中有关“临时文件的文件夹”的说明。