DOMPDF远程图像不以pdf显示(Dompdf remote image is not displ

2019-07-20 18:31发布

在通过DOMPDF生成我的服务器的PDF不显示图像。 因为他们是远程URL的图像。(本地图片工作正常),然后我才知道,它需要一些设置来显示图像远程。

allow_url_fopen = true => i can not as server control is not in my hand.(and no one will suggest to do this due to security reasons)
read/write access to the DOMPDF_TEMP_DIR (already have this)
DOMPDF_ENABLE_REMOTE = true (already have this)

因此,要确保了allow_url_fopen的问题,我设置我的本地也就是现在给输出作为服务器相同的错误。

所以,现在的问题是,现在我想了allow_url_fopen = false来显示PDF远程图像

  • 我几乎尝试了5-10独特的方式来做到这一点。
  • 我试图显示PHP文件图像(通过设置头部),然后显示在PDF PHP的链路
  • 我试图显示图像通过绝对路径到PHP太多,但毫无效果。
  • 我通过通过卷曲的功能越来越像,然后在PHP文件显示它试图...但没有运气。

是否有任何人可以建议我怎么可以在PDF显示图像请。 我总是得到的错误是...

Image not found
http://localhost/dompdf/image.php

Image not found
http://localhost/dompdf/image.jpg

Answer 1:

我有同样的问题, DOMPDF图像不活的服务器上找到

我找到了自己的解决方案,你只需要仔细检查图像路径,

考虑到你的在线服务器映像路径

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

你只需要将其更改为,

<img src="public/images/thumb.png">

注意:确保,所有的设置都是一样的,你已经做出。

我希望这能帮到您。



Answer 2:

尝试

$options = new Options();
$options->set('isRemoteEnabled', true);
$dompdf = new Dompdf($options);


Answer 3:

有两件事情要照顾。

  1. 如果使用来自同一服务器的图像,然后使用完整路径,如/var/www/html/project_folder/images/logo.jpg

  2. 列表项使用JPEG图像,而不是png或其他类型。



Answer 4:

可以达到在机器上的Web浏览器这些网址,您使用打开PDF? 如果不是,PDF阅读器将无法要么。

我怀疑是“localhost”的域名意味着这些网址只从生成的PDF中的Web服务器可见。 你需要输出就像一个网址http://example.com/dompdf/image.jpg

(要步骤解决此问题,请记住,有充分的理由不使用遥控器的图像。该文件将看起来很糟糕,如果观众没有连接到互联网,例如,是否有可能只是直接在嵌入图像文献?)



Answer 5:

DOMPDF目前还没有对本地和远程域之间的区分机制,使启动HTTP的任何URL:// ...被视为远程。 另外,使用一个基于PHP的中介(如pic.php)任何图像不能使用本地路径,因为除非你通过一个Web服务器的PHP不会被解析。

这是一个困难的前景,但你的页面是动态生成的。 所以,我看到两个选项:

  1. 下载远程图像和链接到他们的本地文件系统上
  2. 下载远程图像和使用数据URI。

既然你已经制定了让使用curl的图像,你应该能够实现的两者之一。



Answer 6:

我想你可以添加此

private function change_url_image($data, $url) {    
    $str = $url; //for example "http://localhost/yoursite/";
    $str2 = str_replace($str, "", $data);
    return $str2;
}

更改URL图像



Answer 7:

同样的问题,我面临着,而我是还设置了“DOMPDF_ENABLE_REMOTE =>真正的”中“DOMPDF / dompdf_config.inc”,但没有奏效。

有一两件事为我工作从绝对更改图像/ CSS的SRC 相对事物done.in这种情况下,我有我的服务器上的所有的CSS /图像。



Answer 8:

万一有人有相同的问题我:

  • 我改变SRC = “https://开头”为src = “HTTP://”和图像加载细。

  • 我还添加了一个内的所有CSS内嵌<style>通过,而不必加载<link>

  • 并确保CSS <style><head>不是<body>



Answer 9:

我用这行代码

<img src="{{ url('/frontened/images/jeevan-green-logo.png') }}" >

它的正常工作。 谢谢。



Answer 10:

转至dompdf_config.inc.php文件和可变DOMPDF_ENABLE_REMOTE设置为TRUE ...



文章来源: Dompdf remote image is not displaying in pdf
标签: php image dompdf