【问题标题】:dompdf and img tag, image wont showdompdf 和 img 标签,图像不会显示
【发布时间】:2011-05-18 16:39:34
【问题描述】:

这是调用 $dompdf->render() 和 $dompdf->output() 之前的 HTML:

<img src="http://www.example.com/images/Logo.png" />

在浏览器中查看、打印或以 HTML 格式通过电子邮件发送时,所有其他发票都能正常显示图像。当我在我们的应用程序中单击“生成 PDF”时,它会以 PDF 格式呈现发票,但缺少徽标。我已经添加了一条调试行,通过电子邮件将它发送到 render() 的原始 HTML 发送给我,我觉得它看起来不错。

有人知道为什么 dompdf 不显示此图像吗?

【问题讨论】:

  • 您使用的是哪个版本的 DOMPDF?我不记得确切的限制,但我相信 0.5.1 在 PNG 中存在 alpha 透明度问题。这里提到了这一点:drupal.org/node/558170#comment-1981550
  • 哇,谢谢!就是这样。啊!

标签: php drupal pdf dompdf


【解决方案1】:

一个想法:如果您为图像提供完整的 URI,它将被视为外部的,因此定义的 costant DOMPDF_ENABLE_REMOTE 必须设置为 true。

【讨论】:

  • DomPDF 0.7 版不再使用常量。改用这个: $dompdf = new Dompdf(array('enable_remote' => true));
【解决方案2】:

看起来您必须在 src 参数中传递 server path 而不是 server url

http://www.flashnutz.com/2009/08/images-not-working-in-dompdf/

【讨论】:

  • 服务器路径似乎不起作用。打算再试一次。DOMPDF_ENABLE_REMOTE 也设置为 TRUE。
  • 网站是否由 /home/user/public_html 提供是否重要?
  • @Kevin 我很早就在 fpdf 上工作过,从来没有用 pdf 生成过图像。我刚刚在搜索中找到了这个。手册中没有提到这个吗?如果src 参数需要服务器路径,我认为/home/user/public_html 并不重要。
  • 您应该能够使用完整的 URL 或绝对/相对路径。完整的 URL 需要几个条件: 1) DOMPDF_ENABLE_REMOTE 为真; 2) Web 服务器对 DOMPDF_TEMP_DIR 指定的目录具有读/写权限; 3) allow_url_fopen 为真。
猜你喜欢
  • 2021-11-30
  • 2014-09-29
  • 1970-01-01
  • 2023-03-23
  • 1970-01-01
  • 1970-01-01
  • 2022-01-24
  • 2021-12-17
相关资源
最近更新 更多