BCard - Documentation technique

DomPdfService
in package

Enveloppe le moteur Dompdf pour produire des documents PDF à partir de HTML.

Utilisé pour les documents imprimables de l'application (factures, bons de commande, exports). L'instance Dompdf est créée une fois dans le constructeur et réutilisée : le service ne doit pas être considéré comme sans état, deux générations successives partageant le même moteur.

Table of Contents

Properties

$domPdf  : Dompdf

Methods

__construct()  : mixed
Initialise le moteur Dompdf avec sa configuration par défaut.
generateBinaryPdf()  : void
Rend le HTML en PDF et l'écrit directement sur la sortie standard.
generatePdfFile()  : Response
Convertit du HTML en PDF et le renvoie dans une réponse HTTP affichée dans le navigateur.

Properties

$domPdf

private Dompdf $domPdf

Instance du moteur de rendu, partagée par toutes les générations.

Methods

__construct()

Initialise le moteur Dompdf avec sa configuration par défaut.

public __construct() : mixed

Aucune dépendance n'est injectée : l'objet Dompdf est instancié directement.

generateBinaryPdf()

Rend le HTML en PDF et l'écrit directement sur la sortie standard.

public generateBinaryPdf(string $html, string $filename) : void

Charge le HTML, effectue le rendu puis appelle Dompdf::stream() avec Attachment à 0, ce qui pousse immédiatement les en-têtes et le corps du PDF vers le client pour un affichage dans le navigateur, en court-circuitant la réponse Symfony.

Effets de bord : émission d'en-têtes HTTP et écriture sur la sortie ; le nom de fichier transmis à stream() est une chaîne vide, le paramètre $filename n'étant pas utilisé.

Parameters
$html : string

Document HTML complet à convertir.

$filename : string

Paramètre conservé pour la signature mais ignoré par l'implémentation.

generatePdfFile()

Convertit du HTML en PDF et le renvoie dans une réponse HTTP affichée dans le navigateur.

public generatePdfFile(string $html, string $filename) : Response

Charge le HTML, applique un format A4 portrait, effectue le rendu et retourne le binaire produit dans une Response avec l'en-tête Content-Type: application/pdf et une disposition inline portant le nom de fichier fourni. Le cache est désactivé (max-age=0).

Attention : un objet Options est construit et renseigné (chargement des ressources distantes, parseur HTML5, police par défaut Arial, marges de 10 mm) mais n'est jamais transmis à l'instance Dompdf — ces réglages restent donc sans effet sur le rendu.

Effets de bord : le chargement du HTML peut déclencher des requêtes réseau vers les ressources externes référencées si l'option correspondante est active côté Dompdf.

Parameters
$html : string

Document HTML complet à convertir.

$filename : string

Nom de fichier proposé dans l'en-tête Content-Disposition.

Return values
Response

Réponse HTTP contenant le PDF généré.


        
On this page

Search results