在php的EXEOUT下使用mpdf不显示图像

在php的EXEOUT下使用mpdf不显示图像,php,codeigniter,pdf,desktop-application,mpdf,Php,Codeigniter,Pdf,Desktop Application,Mpdf,我正在使用EXEOUTPUT for PHP创建一个使用Codeigniter框架的桌面应用程序。所有网页都显示存储在MYSQL BLOB字段中的图像,但只有使用mpdf库生成的pdf无法显示图像 当我在浏览器中运行相同的代码时,会显示图像。即使我使用基本url作为,也会显示图像。但是,当我在Exeoutput for PHP中使用相同的代码作为基本url时,不会显示图像 $config['base_url'] = 'http://heserver/'; //$config['base_url'

我正在使用EXEOUTPUT for PHP创建一个使用Codeigniter框架的桌面应用程序。所有网页都显示存储在MYSQL BLOB字段中的图像,但只有使用mpdf库生成的pdf无法显示图像

当我在浏览器中运行相同的代码时,会显示图像。即使我使用基本url作为,也会显示图像。但是,当我在Exeoutput for PHP中使用相同的代码作为基本url时,不会显示图像

$config['base_url'] = 'http://heserver/';
//$config['base_url'] = 'http://localhost/applicationname/';
我也尝试过访问文件夹中上传的图像,它们也没有被访问。mpdf库在渲染之前是否需要一些位置来临时渲染图像,或者存在其他问题

我已尝试了以下所有变体:

$top.='<img width="40px" src="logo.png"/>'; //accessing from file system
$top.='<img width="40px" src="data:image/png;base64,'.base64_encode($this->session->userdata('logo')).'"/>'; //accessing from database
$top.='<img width="30px" src="'.exo_getglobalvariable('HEPubStorageLocation', '').'rs\logo.png" />' //accessing through variable provided by exeoutput4php tool

ob_clean();
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="'.$billno.'.pdf"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
include($_SERVER['DOCUMENT_ROOT']."/application/views/admin/mpdf/vendor/autoload.php");
$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML($top);
$mpdf->SetJS('this.print();');
$mpdf->Output();
exit;
我还尝试了一个绝对虚拟数据文件夹,但没有成功

我使用了一个图像作为外部资源,尝试通过在图像标记中将子文件夹/imagename作为src传递来调用它,但图像不可见


请建议一些解决方案。

大多数PDF库将无法嵌入图像,除非您使用$\u SERVER superglobal引用它们,因为它们不需要图像的URIhttps://example.com/directory/file.jpg 但是指向image/home/user/directory/directory/../file.jpg的路径

尝试引用图像以导出PDF,如:

<img src="<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/assets/pdf_images/logo.png" border="0" width="174" height="38">

这直接来自我自己的代码,更改路径和属性以适合您自己的

嗨,我已将图像作为BLOB上传,但它仍然不可见。如果我理解正确,您将二进制图像存储在表中的BLOB字段中,这是非常不可取的,因为有许多原因。你试过做我在回答中概述的事情吗?