Search code examples
phpsymfonypdfdompdf

Dompdf - images not render in pdf


I am using dompdf in Symfony project to render PDF

        $pdfOptions = new Options();
        $pdfOptions->set('defaultFont', 'Arial');
        $pdfOptions->setIsPhpEnabled(true);
        $pdfOptions->setIsRemoteEnabled(true);

        $dompdf = new Dompdf();
        $dompdf->setOptions($pdfOptions);
        $dompdf->loadHtml($html);
        $dompdf->render();
        $dompdf->stream("mypdf.pdf");

I am set remoteEnabled to true but still no changes. The same image is shown on page render but not on pdf.

What am I missing here?


Solution

  • How your action returning PDF?

        $options = new Options();
        $options->setIsRemoteEnabled(true);
        $pdfInvoice = new Dompdf($options);
        $body = $this->renderView('App/Payments/invoice.html.twig');
    
        $pdfInvoice->loadHtml($body);
        $pdfInvoice->setPaper('A4');
        $pdfInvoice->render();
        $pdfInvoice->stream();
    
        return new Response($pdfInvoice->output());
    

    This way worked for me

    Edit: One more thing, set absolute path in your template eg.

    <img src="{{ asset('assets/img/logo.png', absolute=true) }}">