<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
// Include Dompdf required namespaces
use Dompdf\Dompdf;
use Dompdf\Options;
#[Route('/pdf', name: 'app_pdf')]
class PdfController extends AbstractController
{
#[Route('/logement/{slug}', name: 'logement_pdf')]
public function index($slug): Response
{
$facture = 'teste';
$name = $slug;
$dompdf = new DOMPDF();
// On demande à Symfony de générer le code html correspondant à
// notre template, et on stocke ce code dans une variable
$template = $this->renderView('pdf/mypdf.html.twig', array(
'titre' => $facture
));
// On envoie le code html à notre instance de dompdf
$dompdf->loadHtml($template);
$dompdf->setPaper('A4', 'landscape');
// On demande à dompdf de générer le pdf
$dompdf->render();
// On renvoie le flux du fichier pdf dans une Response pour l'utilisateur
return new Response ($dompdf->stream($name));
}
}