1

我检查了其他类似的帖子,人们有同样的问题,但没有一个有帮助。

我尝试的是交换这 3 种路径,但我得到了与所有这些相同的错误消息:

$logo = 'assets/company/logo-png-3.png';
$logo1 = 'https://my.hostname.co.uk/assets/company/logo-png-3.png';
$logo2 = '/home/username/my.hostname.co.uk/assets/company/logo-png-3.png';


$html = '<div>';
$html .= '<img src="'.$logo.'">';
$html .= '</div>';


  $html2pdf = new HTML2PDF('P', 'A4', 'en', 'UTF-8');
  $html2pdf->writeHTML($html);
  $html2pdf->output($file, 'F');

我还设置了我的项目目录php.ini文件,其中包括:

allow_url_fopen = On;
allow_url_include = On;

但我仍然得到:

无法使用 HTML2PDF 获取图像 [] 的大小

4

3 回答 3

0

问题解决了

出于某种原因在 vendor\spipu\html2pdf\src\Html2Pdf.php

protected function _tag_open_IMG($param)
{

  print_r($param);

    $src    = str_replace('&amp;', '&', $param['src']);

我得到这样的结果

Array ( 
[style] => Array ( ) 
[alt] => 
[src] => 
[href] => https://my.hostname.co.uk/assets/company/logo-png-3.png
[num] => 1 
) 

所以我只是改变

$src    = str_replace('&amp;', '&', $param['src']);

$src    = str_replace('&amp;', '&', $param['href']);
于 2020-04-17T12:17:46.183 回答
0

在 Html2Pdf 文件中记录了解决方案。

// WARNING : if URL, "allow_url_fopen" must turned to "on" in php.ini//

所以只需在 php.ini 中启用该选项。

问候!

于 2021-02-20T17:40:42.153 回答
0

所以,我发现我的src属性后面有一个空格。显然,这是 Html2Pdf 的禁忌。只需通过更改删除空间:

src ="$imageUrl"

 src="$imageUrl"

解决了我的问题!

于 2021-11-23T15:36:53.237 回答