mPDF 5.7.1 - 图像显示为损坏的 [x]

2022-08-30 13:42:55

我有一个关于mPDF(版本5.7.1)的小问题。

此代码应生成带有图像文件的 PDF:

 $mpdf = new mPDF();
 $html = '<img src="https://www.google.pl/images/srpr/logo11w.png"/>';
 $mpdf->WriteHTML($html);
 $mpdf->debug = true; 
 $output = $mpdf->Output(); 
 exit();

好吧,没有图像,而是一个。[x]

我已经用谷歌搜索了足够多的东西,得出的结论是它必须以这种方式完成,但我也尝试了对该文件的真实路径。还是一无所获。

我唯一没有尝试过的是将图像复制到文件夹中,因为我不知道我应该将文件复制到哪个文件夹中。<img src="logo11w.png">logo11w.png

有什么建议吗?


答案 1

在生成带有mPDF的PDF时,我遇到了相同的PNG图像显示为[X]的问题。

我补充说:$mpdf->showImageErrors = true;

后:$mpdf = new Mpdf();

并收到错误消息:

PNG 图像所需的 GD 库(Alpha 通道)#

因此,在运行后,使用PNG生成PDF就像一个魅力!apt-get install php5-gd


答案 2

在mPDF中包含图像有点棘手。我也有一些问题。我发现了更多的问题。

首先,您应该打开调试变量:

$mpdf = new mPDF();    
$mpdf->showImageErrors = true;

通常人们没有安装PHP的GD模块。在 linux 计算机上,执行:

sudo apt-get install php5-gd
sudo service apache2 restart

在 Windows 服务器上,php_gd2.dll包含在标准 PHP 安装中,但默认情况下不启用。要启用它,请取消注释php.ini文件中的expation=php_gd2.dll行(从该行的开头删除#),然后重新启动PHP扩展名。[1]

如果您收到此错误,您可能会看到 [x] 图像:

mPDF 错误: 图像错误 (http://www.domain.com/directory/image.jpg): 找不到图像文件

检查 URL,了解您的图像是否存在,以及图像是否可访问。如果是,那么您可以尝试将绝对URL更改为相对URL。您可以尝试以下两个版本:

<img src="directory/image.jpg">
<img src="./directory/image.jpg">

实际上,我对PNG格式也有问题。将PNG图像转换为JPG工作正常。

mPDF模板中的链接应该与整个框架/系统的链接相同。


推荐