background-image не отображается в dompdf laravel - PullRequest
0 голосов
/ 20 апреля 2020

контроллер. php

use PDF;
use Dompdf\Adapter\CPDF;

use Dompdf\Exception;
use Dompdf\Dompdf;
use Dompdf\Options;

   public function pdf()
    { 

        $pdf = PDF::loadView('Donor.certificate');
        return  $pdf->download('certificate.pdf');

    }

blade. php

<html>
    <head>
        <meta http-equiv="Content-Type" content="charset=utf-8" />
        <meta charset="UTF-8">
        <title>PDF Upn</title>
        <style type="text/css">
        * {
        font-family: "DejaVu Sans";
        font-size: 8px;
        }
        .upn {
        background-image:url('../img/certificate_template.png');
        background-repeat:no-repeat;
        width:100%;
        height:100vh;
        background-size: cover;
        }
        </style>
    </head>
    <body>
        <div class="upn">
            <h1>test</h1>
            <img src="../img/logo.png" alt="">
        </div>
    </body>
</html>

composer. json

 "license": "MIT",
    "require": {
        "php": "^7.2.5",
        "barryvdh/laravel-dompdf": "^0.8.6",
        "dompdf/dompdf": "^0.8.5",
        "fideloper/proxy": "^4.2",
        "fruitcake/laravel-cors": "^1.0",
        "guzzlehttp/guzzle": "^6.3",
        "intervention/image": "^2.5",
        "laravel/framework": "7.0",
        "laravel/tinker": "^2.0",
        "laravel/ui": "^2.0"
    },

Проблема в том, что background-image не отображается в pdf, но тестовое слово написано ... если я использую тег img внутри погружения, то оно работает нормально ... я хочу отобразить background-image и хочу написать код на этом изображении, но оно не показывает, что это то, чего мне не хватает, любой может проверить этот код, пожалуйста.

1 Ответ

0 голосов
/ 20 апреля 2020

для вашего шаблона png укажите местоположение изображения

 <html>
        <head>
            <meta http-equiv="Content-Type" content="charset=utf-8" />
            <meta charset="UTF-8">
            <title>PDF Upn</title>
            <style type="text/css">
            * {
            font-family: "DejaVu Sans";
            font-size: 8px;
            }
            .upn {
            background-image:url('/img/certificate_template.png');
            background-repeat:no-repeat;
            width:100%;
            height:100vh;
            background-size: cover;
            }
            </style>
        </head>
        <body>
            <div class="upn">
                <h1>test</h1>
                <img src="{{url('/')}}/img/logo.png" alt="">
            </div>
        </body>
    </html>
...