我在使用MPDF显示图像时遇到困难。我可以使用本地XAMPP服务器成功显示它。但是,在我的实时服务器上,PDF显示屏,但不会加载图像零件。奇怪的是,没有红色X指示器,让我知道显示图像的问题。我尝试了ShowimageErrors,但这没有任何显示。
我认为这一定是某种服务器配置问题,但是我已经检查了以确保MBSTRING,ZLIB和GD已安装和工作。
这是我用来显示PDF的代码。
$html = '<h1>Hello world</h1><img src="/assets/images/check.png" />';
$pdf = new MpdfMpdf( [
'tempDir' => __DIR__ . '/pdf_tmp',
'debug' => true,
'showImageErrors' => true,
'allow_output_buffering' => true
]);
$pdf->WriteHTML($html);
$pdf->Output("Hello.pdf","I");
关于此操作的所有内容都如XAMPP所做的那样,但是出于某种疯狂的原因,我无法将图像显示在我的实时服务器中。文字" Hello World"显示,因此我知道PDF是生成的,但没有图像。没有红色X。就像图像不存在。
Local和Live使用相同的PHP7.1,我也使用MDPF 7。MPDF还有其他可能导致的要求吗?
我还应该提到,如果我尝试添加水印图像,则可以正常工作。
$pdf->SetWatermarkImage('assets/images/watermark.png');
$pdf->showWatermarkImage = true;
$pdf->watermarkImageAlpha = 0.7;
$pdf->watermarkImgBehind = true;
所以图像确实会加载。
我的不好,我通过重新安装所有MPDF文件来解决此问题。最初的上传必须以某种方式不完整或损坏。