由于公司业务的需要,最近需要把html静态文件生成pdf,在网上找了很多类文件来实现,效果都不是很好.最先用的是tcpdf这个类特别的慢,而且当前版本有一个很让人头疼的
问题
—css中的背景
图片
无法获取到,找了很多资料都无法解决.最后发现
mpdf
可能实现该功能,大喜过望,而且效率也比tcpdf快.
mpdf
的官方下载地址:http://www.
mpdf
1.com/
mpdf
/download
下载后里面有实例,可以参照着做一个就知道了.当然官方网站也有实例,网址:http://
mpdf
1.com/common/
mpdf
/examples/
官方提供的文档:http://
mpdf
1.com/ma
记录一下昨天和今天遇到的,yii2
使用
mpdf
的
时
候,
图片
是
使用
php
方法生成的二维码,所以
图片
地址为http://local.com/xxxxx,url中携带不同的参数。
但是开启了
$
mpdf
->showImageErrors = true;
google了很多,错误原因也是很多,当然我这个其中一种原因,后来我
使用
了file_get_contents(),来查看...
遇到这个
问题
当
时
有点懵。它不是所有
图片
都不
显示
,是一部分。
首先检查了
php
扩展是否正常。其实不认为这个有
问题
。不过还是先检查一下。包括相关依赖软件包都正常。
然后对各种
图片
格式进行了测试。发现无论是png还是jpg,都会有部分
图片
无法
显示
。反过来说,都会有部分
图片
可以
显示
。
怀疑是否因为
图片
太大导致读取失败。目前
使用
的
图片
都是比较小的
图片
正常,较大的不
显示
(其实最大的
图片
也
后端转换.html文档下载为pdf文件,在浏览器中样式正常,转换成pdf文档后位置错乱
mpdf
插件最新版本仅支持父元素是body的position:absolute定位,且只支持absolute、fixed两个属性
省流:
mpdf
定位只支持在最外层1.css样式应用失败
时
,写行内试试
2.尽量只写简单的属性,如果不支持的话想办法用其他属性代替或div去解决,就是麻烦很多
例如:明明文档写了支持text-align,但实际应用
时
text-align:justify并不支持,最后只能想办法用letter-spa