WeasyPrint
weasyprint.org
What it is
WeasyPrint is free, open-source software for web developers who create PDFs from HTML. Its Python library can turn HTML objects into PDF files with `HTML.write_pdf()`, while the command-line interface offers PDF variants including PDF/A, PDF/UA, and PDF/X. Inputs include HTML, CSS, local files, URLs, file objects, HTML strings, raster images, and SVG. Sample output types include reports, invoices, tickets, books, letters, and posters. WeasyPrint supports Linux, macOS, Windows, and self-hosted deployment; its documentation also describes community-maintained Docker images and an AWS Lambda layer. It can create fillable forms and provides an API. The default HTTP client does not handle cookies or authentication, although a custom URL fetcher can be used. The documentation cautions that untrusted HTML or CSS can create security problems. Version 70.0 requires Python 3.10 or later and Pango 1.44 or later, among other dependencies. The software was created and developed by Kozea; CourtBouillon provides professional support and maintenance.
Spec sheet
- Purpose
- WeasyPrint is free and open source software that helps web developers create PDF documents from HTML pages.Read 7 Oct 2026 · weasyprint.org
- Intended users
- The maker describes WeasyPrint as a solution for web developers and shows document examples including statistical reports and invoices.Read 7 Oct 2026 · weasyprint.org
- Integrations
- The documentation describes use as a Python library and lists community-maintained Docker images and an AWS Lambda layer.Read 7 Oct 2026 · doc.courtbouillon.org
- Security
- The documentation warns that using WeasyPrint with untrusted HTML or CSS may cause security problems.Read 7 Oct 2026 · doc.courtbouillon.org
- Support
- CourtBouillon offers professional assistance with WeasyPrint use, configuration, integration, bug fixes, new features, and templating.Read 7 Oct 2026 · weasyprint.org
- Creator and maintainer
- WeasyPrint was created and developed by Kozea, while CourtBouillon provides professional support, maintenance, and community management.Read 7 Oct 2026 · weasyprint.org
- Dependencies
- WeasyPrint 70.0 requires Python 3.10 or later and Pango 1.44 or later, among other dependencies.Read 7 Oct 2026 · doc.courtbouillon.org
- Notable limit
- The default HTTP client does not support cookies or authentication, though a custom URL fetcher can be used.Read 7 Oct 2026 · doc.courtbouillon.org
- Output examples
- The maker shows reports, invoices, tickets, books, letters, and posters as sample documents.Read 7 Oct 2026 · weasyprint.org
- PDF options
- The command-line interface supports PDF variants including PDF/A, PDF/UA, and PDF/X options.Read 7 Oct 2026 · doc.courtbouillon.org
- Platform support
- The documentation gives installation instructions for Linux, macOS, and Windows.Read 7 Oct 2026 · doc.courtbouillon.org
- Python API
- The Python library can render an HTML object to a PDF file with HTML.write_pdf().Read 7 Oct 2026 · doc.courtbouillon.org
Plans and prices
Strong points and limits
Strong points
- Free and open-source software.
- Accepts HTML, CSS, SVG, and other inputs.
- Offers PDF/A, PDF/UA, and PDF/X options.
- Supports fillable form creation.
- Runs on Linux, macOS, Windows, and self-hosted deployments.
Limits
- Untrusted HTML or CSS may create security problems.
- Default HTTP client lacks cookie and authentication support.
- Version 70.0 requires Python 3.10 and Pango 1.44 or later.
- Consulting plans are billed annually and exclude taxes.
Who it suits
It suits web developers who need to generate PDF documents from HTML and want a Python library or command-line workflow. Teams needing help with configuration, integration, bug fixes, features, or templating can consider CourtBouillon’s consulting plans.
Verdict
WeasyPrint covers HTML-to-PDF generation across a range of inputs and PDF options, with several deployment routes. Check its dependency requirements and HTTP client limits, and take care with untrusted content.
Where Specifiction places it
- PDF Creation Software#17 of 467.8
- PDF SDKs#22 of 317.7