You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Html2Pdf报错[2]:无法获取图片尺寸问题求助

解决Html2Pdf无法获取图片尺寸的问题

针对你遇到的Html2Pdf Error [2](无法获取图片[image1/2.png]尺寸)的问题,可按以下步骤排查修复:

  • 修正HTML语法错误
    你的模板代码中<img>标签存在语法问题:多余的**和错误的闭合/**>会导致Html2Pdf无法正确解析标签。修正后的代码应为:

    <tr style="height:142pt">
      <td style="width:503pt;border-top-style:solid;border-top-width:1pt;border-left-style:solid;border-left-width:1pt;border-bottom-style:solid;border-bottom-width:1pt;border-right-style:solid;border-right-width:1pt" colspan="3">
        <p style="text-indent: 0pt;text-align: left;"><br/><img width="60" height="65" src="'. $row['incident_attachments'] .'" style="float:left;" /></p>
      </td>
    </tr>
    
  • 使用绝对路径指定图片
    Html2Pdf对相对路径的解析可能存在问题,建议拼接服务器绝对路径:

    src="' . $_SERVER['DOCUMENT_ROOT'] . '/form/' . $row['incident_attachments'] . '"
    

    注意确认$row['incident_attachments']的值是否为image1/2.png,如果是,拼接后路径即为完整的服务器文件路径。

  • 检查文件权限
    确保Web服务器进程(如apache、www-data)拥有读取form/image1文件夹及图片的权限:

    chmod -R 755 form/image1
    chmod 644 form/image1/2.png
    
  • 验证图片完整性
    图片损坏也会导致无法获取尺寸,可通过PHP函数测试:

    $imagePath = $_SERVER['DOCUMENT_ROOT'] . '/form/image1/2.png';
    var_dump(getimagesize($imagePath));
    

    如果返回false,说明图片已损坏,需重新上传。

  • 配置Html2Pdf的BasePath
    实例化Html2Pdf时设置图片根目录,简化路径引用:

    $html2pdf = new Html2Pdf('P', 'A4', 'fr');
    $html2pdf->setBasePath($_SERVER['DOCUMENT_ROOT'] . '/form/');
    

    此时模板中<img>的src直接使用image1/2.png即可。

内容的提问来源于stack exchange,提问作者Salsabilah Aulia Rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 03:13:14