Guides
How to generate PDFs from code, with and without PDFOven.
- How to convert HTML to PDF in Node.js (2026)Convert HTML to PDF in Node.js with Puppeteer or Playwright, the production pitfalls (memory, fonts, cold starts), and a one-request API alternative.
- How to convert HTML to PDF in PythonGenerate PDFs from HTML in Python with WeasyPrint or Playwright, their real trade-offs, and how to call a hosted HTML-to-PDF API with requests.
- How to convert HTML to PDF in PHP and LaravelConvert HTML to PDF in PHP with Dompdf or Browsershot, what each one gets wrong, and how to call an HTML-to-PDF API with Guzzle or cURL.
- How to generate PDFs from HTML in Ruby on RailsGenerate PDFs in Rails with Grover (Puppeteer), why WickedPDF is a legacy choice, and how to call an HTML-to-PDF API with Net::HTTP.
- How to generate PDFs in Next.js (route handlers on Vercel)Generate PDFs from a Next.js route handler: running serverless Chromium on Vercel, its size and cold-start costs, and a fetch-based alternative.
- wkhtmltopdf alternatives: migrating off an archived rendererwkhtmltopdf was archived in 2023 and its old WebKit lacks flexbox and grid. Compare the alternatives and map your CLI flags to a modern API.
- Puppeteer PDF alternative: when running Chromium yourself stops paying offRunning Puppeteer for PDFs works until it doesn't. The hidden costs of self-hosted Chromium, a hardened setup if you keep it, and when an API is cheaper.
- How to generate invoice PDFs from JSON with a templateBuild a reusable HTML invoice template with Handlebars, compute totals with helpers, paginate cleanly, and render it to PDF from JSON data.
- How to convert Markdown to PDF programmaticallyConvert Markdown to a styled PDF with Pandoc or marked plus a headless browser, or with a single API call. Covers CSS, page breaks and page numbers.
- Let AI agents generate PDFs with MCP (Claude Code, Cursor and more)Give Claude Code, Cursor and other MCP clients a PDF tool. Build your own MCP server around Puppeteer, or connect a hosted one in one command.
- How to generate PDFs in Laravel (2026)Generate PDFs in Laravel with laravel-dompdf or Browsershot, the trade-offs of each, and how to call an HTML-to-PDF API with the Http facade.
- How to generate PDFs in Django (2026)Generate PDFs in Django with WeasyPrint and render_to_string, what it cannot render, and how to call an HTML-to-PDF API from a view with requests.
- How to convert HTML to PDF in GoConvert HTML to PDF in Go with chromedp and Chrome's PrintToPDF, what it takes to run in production, and how to call an HTML-to-PDF API with net/http.
- How to convert HTML to PDF in Java and Spring BootConvert HTML to PDF in Java with OpenHTMLtoPDF and Thymeleaf, its CSS limits, and how to call an HTML-to-PDF API from Spring Boot with HttpClient.
- How to convert HTML to PDF in C# and .NETConvert HTML to PDF in C# with PuppeteerSharp or Playwright for .NET, running Chromium in ASP.NET Core, and calling a PDF API with HttpClient.
- HTML to PDF API: how to choose one in 2026How to evaluate an HTML to PDF API: rendering engine, CSS support, templates, headers and footers, limits, data retention, pricing, and AI agent support.