Skip to content

PDF generation🔗

phantomjs🔗

  • Site : https://phantomjs.org/
  • Technologie : javascript
  • Statut : ❌ plus maintenu
  • Paradigme : Navigateur headless imprimant en pdf une page html.
  • Avantages :
    • Génère un PDF fidéle au HTML.
  • Inconvénients :
    • Plus maintenu.
  • Resources :

wkhtmltopdf + snappy🔗

  • Site : https://wkhtmltopdf.org/ + https://github.com/KnpLabs/snappy
  • Technologie : CLI + php wrapper
  • Statut : ✅
  • Paradigme : Navigateur headless imprimant en pdf une page html.
  • Avantages :
    • Génère un PDF fidéle au HTML.
    • Supporté par KNP et leur wrapper PHP.
    • Simple à intégrer à Symfony.
  • Inconvénients :
    • Installation un peu complexe.
    • Dépend de nombreux packages apt.
  • Resources :

mpdf🔗

  • Site : https://mpdf.github.io/
  • Technologie : Full PHP
  • Statut : ✅
  • Paradigme : Création de PDF via PHP.
  • Avantages :
    • Permet de générer des PDF simples directement à partir de PHP.
    • Léger.
    • Pas de dépendences externes, très simple à installer.
    • Parfait pour créer des pdf simples.
    • Support du HTML.
  • Inconvénients :
    • API un peu vieillotte.
    • Pas de support du Javascript.
  • Resources :

Chrome Headless🔗

  • Site : https://developers.google.com/web/updates/2017/04/headless-chrome
  • Technologie : CLI
  • Statut : ✅
  • Paradigme : Navigateur headless imprimant en pdf une page html.
  • Avantages :
    • Même résultat qu'un CMP+P dans Chrome
  • Inconvénients :
    • Peu d'options de personnalisation du rendu.
    • Un peu lourd à installer (impact l'infra).
  • Ressources :

Weasyprint🔗

  • Site : weasyprint.org
  • Documentation : doc.courtbouillon.org/weasyprint
  • Technologie : CLI
  • Statut : ✅
  • Paradigme : Navigateur headless imprimant en pdf une page HTML avec support avancé des api print CSS.
  • Avantages :
    • Très riche en feature print : pagination, en-tête, pied de page, page de garde, table des matières.
    • Rendu complètement customisable piloté en HTML et CSS.
  • Inconvénients :
    • Nécessite de maitriser des pseudo-éléments CSS très spécifiques.
    • Un peu lourd à installer (impact l'infra).
  • Resources :

PrinceXML🔗

  • Site : https://www.princexml.com/
  • Technologie : CLI
  • Statut : ✅
  • Paradigme : Générateur de PDF complexe en CLI.
  • Pro:
    • Permet de générer des PDF de haute qualité destinés au print.
  • Inconvénients :

Last update: December 20, 2024