htmlpdf

HTML zu PDF · JavaScript

HTML zu PDF mit Playwright

Playwright ist Microsofts Browser-Automation-Framework. Die PDF-Erzeugung laeuft wie bei Puppeteer ueber Chromium und die Methode page.pdf(). Es bringt robuste Auto-Waits und eine saubere API fuer serverseitiges Rendering mit.

Code-Beispiel

import { chromium } from "playwright";

const html = "<h1>Angebot</h1><p>Gueltig bis Monatsende.</p>";

const browser = await chromium.launch();
const page = await browser.newPage();

await page.setContent(html, { waitUntil: "networkidle" });

await page.pdf({
  path: "angebot.pdf",
  format: "A4",
  printBackground: true,
  margin: { top: "20mm", bottom: "20mm" },
});

await browser.close();

Hinweise

Playwright nutzt dieselbe Rendering-Grundlage wie Puppeteer und erreicht damit nahezu identische CSS-Treue. Der praktische Unterschied liegt im Umfeld: Playwright installiert Browser-Binaries mit fester Version, was reproduzierbare PDFs ueber CI-Umgebungen hinweg sichergestellt. Die Auto-Wait-Mechanik macht das Warten auf Netzwerk und Selektoren robuster, was bei dynamisch nachgeladenen Inhalten Fehlerquellen reduziert. Wichtig: page.pdf() funktioniert nur im headless Chromium, nicht in Firefox oder WebKit, da die Methode auf dem Chrome DevTools Protocol basiert. Fuer reine PDF-Pipelines ist das selten ein Problem. Wer ohnehin Playwright fuer End-to-End-Tests einsetzt, spart sich eine zweite Abhaengigkeit und nutzt denselben Stack fuer Dokumentenerzeugung. Kopf- und Fusszeilen, Seitenumbrueche und Hintergruende steuerst du identisch zu Puppeteer ueber die Optionen und CSS.

Anzeige

FAQ

Häufige Fragen

Kann Playwright PDFs auch mit Firefox erzeugen?

Nein. page.pdf() basiert auf dem Chrome DevTools Protocol und ist nur in Chromium verfuegbar. Fuer PDF-Export musst du den Chromium-Browser starten.

Wie halte ich PDFs ueber Builds hinweg stabil?

Playwright pinnt die Browser-Version ueber npx playwright install. Dieselbe Browser-Version erzeugt reproduzierbare Ausgaben in lokalen und CI-Umgebungen.

Ohne Code geht es auch: Der HTML-zu-PDF-Converter wandelt direkt im Browser um, ohne Installation und ohne Upload.

Anzeige
Anzeige
Anzeige
Anzeige