【问题标题】:How to get background image showing on DOMPDF generator如何在 DOMPDF 生成器上显示背景图像
【发布时间】:2016-08-04 19:16:43
【问题描述】:

到目前为止,我一直在尝试使用此代码:

<style>
    body {
        background-image: url(http://example.com/wp-content/uploads/2016/04/myImage.jpg);
        background-size: 100%;
        background-repeat: no-repeat;
    }
</style>

但这不会在生成的 PDF 上呈现图像。

正文中以这种方式格式化的普通图像标签,可以正常工作并显示:

<img src="/home/example/public_html/wp-content/uploads/2016/04/myImage.jpg">

有人知道这是为什么吗?我该怎么做才能让背景图像实际显示在生成的 pdf 上?

更新

我现在已经尝试 base64_encode() 链接的所有可能性.. 意味着我已经通过了,

/home/example/public_html/wp-content/uploads/2016/04/myImage.jpg

http://example.com/wp-content/uploads/2016/04/myImage.jpg

/wp-content/uploads/2016/04/myImage.jpg

这些 ^ 组合是通过 base64_encode() 函数实现的,目前还没有一个可以显示背景图像。

【问题讨论】:

    标签: css pdf background-image dompdf


    【解决方案1】:

    我知道这个问题很老了,但总是有其他答案的余地。

    您可以尝试使用 base64。代码如下:

    获取图片内容。

    $data = file_get_contents('absolute/path/to/background-image.jpg');
    

    将其转换为 base64。

    $base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);
    

    在 CSS 中以这种方式使用它。

    body { background-image: url(<?php echo $base64 ?>); }
    

    但请记住, background-size 属性不能正常工作,至少就我而言。

    【讨论】:

    • 在尝试了其他方法之后,这个方法对我有用。谢谢!
    • 你能输入 .svg 吗?
    【解决方案2】:

    更灵活的解决方案

    这样您就不必知道生成 PDF 的目录的相关性。

    ..include setup.dompdf.php in your generator script

    <?php 
    
        $webRoot = '/var/www/html/';
    
        $dompdf = new Dompdf($this->dompdf_options);
        $dompdf->setBasePath($webRoot);
    
    ?>
    

    然后,您可以从生成 pdf 的任何脚本中引用相对于 web 根目录的 css 中的任何文件。

    <style>
        body {
            background-image: url(wp-content/uploads/2016/04/myImage.jpg);
        }
    </style>
    

    【讨论】:

      【解决方案3】:

      我想通了。我没有意识到的是,被放在一起的 html 位于我的 wordpress 主题文件夹的文件夹中,所以为了访问我需要的图像,我需要根据那个 html 文件的位置返回几个目录在我的文件结构中。我试图从媒体库访问附加到帖子的图像。

      解决方法很简单:

      background-image: url(../../uploads/2016/04/myImage.jpg);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-23
        • 2011-03-20
        • 2018-10-12
        • 1970-01-01
        • 2017-01-03
        • 1970-01-01
        • 1970-01-01
        • 2019-09-07
        相关资源
        最近更新 更多