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

使用jsPDF插入图片失败求助:提示图片格式不符

解决jsPDF添加Logo时“文件不是.jpg或.png格式”的问题
  • 校验图片实际格式
    部分图片后缀显示为jpg/png,但实际编码不符合标准。用图片编辑工具(如系统画图、Photoshop)重新导出为规范的jpg或png格式,避免文件编码异常导致校验失败。

  • 使用base64编码嵌入图片
    jsPDF对本地路径图片的格式校验可能存在限制,将图片转换为base64编码后再传入:

    // 替换为你的图片base64字符串(需带data:image/png;base64, 前缀)
    const logoBase64 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...';
    const doc = new jsPDF();
    // 参数依次为:base64串、图片格式、x坐标、y坐标、宽度、高度
    doc.addImage(logoBase64, 'PNG', 10, 10, 50, 20);
    doc.save('result.pdf');
    
  • 确保图片加载完成后再调用addImage
    通过URL加载图片时,必须等待图片加载完成再执行添加操作,否则会因图片未加载完全触发格式错误:

    const doc = new jsPDF();
    const img = new Image();
    img.src = './your-logo.png';
    img.onload = function() {
      doc.addImage(img, 'PNG', 10, 10, 50, 20);
      doc.save('result.pdf');
    };
    img.onerror = () => console.error('图片加载失败,请检查路径或格式');
    
  • 升级jsPDF版本
    旧版本可能存在格式兼容bug,执行命令升级到最新稳定版:

    npm install jspdf@latest
    

内容的提问来源于stack exchange,提问作者Joaquim Sousa

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 23:17:01