How to Simply Generate a PDF From HTML in Symfony With WeasyPrint

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • Snappy

    PHP library allowing thumbnail, snapshot or PDF generation from a url or a html page. Wrapper for wkhtmltopdf/wkhtmltoimage (by KnpLabs)

  • When I first looked for solutions to generate a PDF document in a Symfony application, I was amazed to find that a SymfonyCast was made about this. It features the PHP library Snappy, which is essentially a wrapper around wkhtmltopdf.

  • wkhtmltopdf-windows

    wkhtmltopdf - Convert html to pdf using webkit (qtwebkit). Windows binaries

  • wkhtmltopdf

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • WeasyPrintBundle

    Easily create PDF in Symfony by converting HTML using WeasyPrint

  • The advantage of this approach is that it can be used as a command-line tool with other languages, just like the bundle for Symfony that I will present in this article!

  • Twig

    Twig, the flexible, fast, and secure template language for PHP

  • The first step before generating the PDF is writing the HTML. To generate the HTML string, we will use the Twig template engine, which is the default one in Symfony. It comes with tons of features such as inheritance, blocks, filters, functions, and more.

  • WeasyPrint

    The awesome document factory

  • Performance is not the strength of WeasyPrint, meaning that heavy HTML files will increase generation time. You should always compress images before attaching them, as they are not compressed by default. Generating a 50-page-long PDF may take up to a minute in extreme cases, although multi-page documents generated on my project take fewer than 2 seconds to generate.

  • gotenberg

    A developer-friendly API for converting numerous document formats into PDF files, and more!

  • If you also want to convert Markdown or LibreOffice formats, the self-hosted API Gotenberg is worth checking out

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts