Php symfony 4-显示图像时dompdf循环

Php symfony 4-显示图像时dompdf循环,php,image,symfony,twig,dompdf,Php,Image,Symfony,Twig,Dompdf,我花了几天的时间在我的PDF中显示用domPDF在symfony 4上生成的图像 在pdf中,我想插入一个实体的图像,我用VichUploader管理该实体 所以我就这样说, 在我的控制器中,我添加了: // Configure Dompdf according to your needs $pdfOptions = new Options(); $pdfOptions->set('isRemoteEnabled', true); 在我的小树枝中,我的图像

我花了几天的时间在我的PDF中显示用domPDFsymfony 4上生成的图像

在pdf中,我想插入一个实体的图像,我用VichUploader管理该实体

所以我就这样说,

在我的控制器中,我添加了:

// Configure Dompdf according to your needs
        $pdfOptions = new Options();
        $pdfOptions->set('isRemoteEnabled', true);
在我的小树枝中,我的图像显示如下:

<img style="width:90px;" src="{{absolute_url(vich_uploader_asset(parametresAdmin, 'logoFile'))}}">
小枝:

/* Uses */
use Dompdf\Dompdf;
use Dompdf\Options;

/*Fonction*/
    /**
     * Générer un PDF
     * @Route("/absence/pdf", name="absence_pdf")
     *
     * @return void
     */
    public function createPDF(ParametresAdminRepository $repoParametres)
    {
        $parametresAdmin = $repoParametres->findAll();

        if (isset($parametresAdmin[0])) {
            $parametresAdmin = $parametresAdmin[0];
        } else {
            $parametresAdmin = new ParametresAdmin();
        }
        // Configure Dompdf according to your needs
        $pdfOptions = new Options();
        $pdfOptions->set('isRemoteEnabled', true);



        // Instantiate Dompdf with our options
        $dompdf = new Dompdf($pdfOptions);
        $dompdf->set_option('isHtml5ParserEnabled', true);

        // Retrieve the HTML generated in our twig file
        $html = $this->renderView('absence/pdf.html.twig', [
            'title' => "Welcome to our PDF Test",
            'parametresAdmin' => $parametresAdmin
        ]);

        // Load HTML to Dompdf
        $dompdf->loadHtml($html);

        // (Optional) Setup the paper size and orientation 'portrait' or 'portrait'
        $dompdf->setPaper('A4', 'portrait');

        // Render the HTML as PDF
        $dompdf->render();

        // Output the generated PDF to Browser (inline view)
        $dompdf->stream("mypdf.pdf", [
            "Attachment" => false,
        ]);
    }
和我的树枝:

/* Uses */
use Dompdf\Dompdf;
use Dompdf\Options;

/*Fonction*/
    /**
     * Générer un PDF
     * @Route("/absence/pdf", name="absence_pdf")
     *
     * @return void
     */
    public function createPDF(ParametresAdminRepository $repoParametres)
    {
        $parametresAdmin = $repoParametres->findAll();

        if (isset($parametresAdmin[0])) {
            $parametresAdmin = $parametresAdmin[0];
        } else {
            $parametresAdmin = new ParametresAdmin();
        }
        // Configure Dompdf according to your needs
        $pdfOptions = new Options();
        $pdfOptions->set('isRemoteEnabled', true);



        // Instantiate Dompdf with our options
        $dompdf = new Dompdf($pdfOptions);
        $dompdf->set_option('isHtml5ParserEnabled', true);

        // Retrieve the HTML generated in our twig file
        $html = $this->renderView('absence/pdf.html.twig', [
            'title' => "Welcome to our PDF Test",
            'parametresAdmin' => $parametresAdmin
        ]);

        // Load HTML to Dompdf
        $dompdf->loadHtml($html);

        // (Optional) Setup the paper size and orientation 'portrait' or 'portrait'
        $dompdf->setPaper('A4', 'portrait');

        // Render the HTML as PDF
        $dompdf->render();

        // Output the generated PDF to Browser (inline view)
        $dompdf->stream("mypdf.pdf", [
            "Attachment" => false,
        ]);
    }

PDF的标题
{{title}}
同侧眼睑

{%if参数sadmin.logonName%}
{% set var = absolute_url(vich_uploader_asset(parametresAdmin, 'logoFile')) %}
<img style="width:90px;" src="{{var}}">
{%endif%}
{% set var = absolute_url(vich_uploader_asset(parametresAdmin, 'logoFile')) %}
<img style="width:90px;" src="{{var}}">
编辑:直接从文件使用绝对路径时,如:

“C:\Users\user\Desktop\churchest2\public\admin\logo\avatar2.jpg” 它起作用了

但如果绝对路径是:

http://........

在这种情况下:

它不起作用。但我需要这条路


谢谢你的帮助

你有远程图像吗?是:$pdfOptions->set('isRemoteEnabled',true);对不起,我读得太多了。我唯一能想到的是,
DOMPDF
没有访问temp文件夹的权限,无法将图像写入temp文件夹。这是否意味着我无法访问托管在服务器上的实体的图像?您可以尝试使用
$DOMPDF->setOption('tempDir',DIR.'/my/tempfolder')更改
temp
文件夹
/* Uses */
use Dompdf\Dompdf;
use Dompdf\Options;

/*Fonction*/
    /**
     * Générer un PDF
     * @Route("/absence/pdf", name="absence_pdf")
     *
     * @return void
     */
    public function createPDF(ParametresAdminRepository $repoParametres)
    {
        $parametresAdmin = $repoParametres->findAll();

        if (isset($parametresAdmin[0])) {
            $parametresAdmin = $parametresAdmin[0];
        } else {
            $parametresAdmin = new ParametresAdmin();
        }
        // Configure Dompdf according to your needs
        $pdfOptions = new Options();
        $pdfOptions->set('isRemoteEnabled', true);



        // Instantiate Dompdf with our options
        $dompdf = new Dompdf($pdfOptions);
        $dompdf->set_option('isHtml5ParserEnabled', true);

        // Retrieve the HTML generated in our twig file
        $html = $this->renderView('absence/pdf.html.twig', [
            'title' => "Welcome to our PDF Test",
            'parametresAdmin' => $parametresAdmin
        ]);

        // Load HTML to Dompdf
        $dompdf->loadHtml($html);

        // (Optional) Setup the paper size and orientation 'portrait' or 'portrait'
        $dompdf->setPaper('A4', 'portrait');

        // Render the HTML as PDF
        $dompdf->render();

        // Output the generated PDF to Browser (inline view)
        $dompdf->stream("mypdf.pdf", [
            "Attachment" => false,
        ]);
    }
<html>
    <head>
        <meta charset="UTF-8">
        <title>Title of the PDF</title>
    </head>
    <body>
        <h4>{{ title }}</h4>
        <p>Lorem Ipsum</p>
        {% if parametresAdmin.logoName %}
            <img style="width:90px;" src="{{absolute_url(vich_uploader_asset(parametresAdmin, 'logoFile'))}}">
        {% endif %}
    </body>
</html>