htmlpdf

HTML zu PDF · PHP

HTML zu PDF mit PHP und Dompdf

Dompdf ist eine in reinem PHP geschriebene Bibliothek, die HTML mit einer eigenen Engine in PDF umwandelt. Sie braucht keine externen Binaries und laesst sich per Composer einbinden, was sie in vielen PHP-Projekten zur ersten Wahl macht.

Code-Beispiel

<?php
require "vendor/autoload.php";

use Dompdf\Dompdf;
use Dompdf\Options;

$options = new Options();
$options->set("isRemoteEnabled", true);

$dompdf = new Dompdf($options);
$dompdf->loadHtml("<h1>Quittung</h1><p>Danke fuer Ihren Einkauf.</p>");
$dompdf->setPaper("A4", "portrait");
$dompdf->render();

file_put_contents("quittung.pdf", $dompdf->output());

Hinweise

Dompdf ist beliebt, weil es ohne Systemabhaengigkeiten auskommt: kein Browser, keine externe Binary, nur ein Composer-Paket. Das macht die Installation auf Shared Hosting und in Containern unkompliziert. Der Kompromiss ist die eigene Rendering-Engine, deren CSS-Unterstuetzung deutlich eingeschraenkter ist als die einer Browser-Loesung. Flexbox und CSS-Grid fehlen, viele Layouts muessen mit Tabellen und Inline-Styles aufgebaut werden, und float verhaelt sich nicht immer wie im Browser. Dafuer beherrscht Dompdf die Grundlagen solide: Schriften ueber @font-face, einfache Tabellen, Seitenumbrueche und Hintergruende. Externe Bilder laden nur, wenn isRemoteEnabled aktiviert ist. Fuer Rechnungen, Quittungen und tabellarische Dokumente mit kontrolliertem Markup ist Dompdf eine pragmatische Wahl. Sobald das Layout moderne CSS-Techniken verlangt, stoesst die Bibliothek an Grenzen und mPDF oder eine Browser-Loesung passen besser.

Anzeige

FAQ

Häufige Fragen

Warum laedt Dompdf meine externen Bilder nicht?

Externe Ressourcen sind aus Sicherheitsgruenden deaktiviert. Setze in den Options isRemoteEnabled auf true, damit Bilder und Stylesheets von URLs geladen werden.

Unterstuetzt Dompdf Flexbox?

Nein. Die eigene Engine kennt weder Flexbox noch Grid. Layouts baust du am zuverlaessigsten mit Tabellen, Inline-Styles und einfachen Block-Elementen auf.

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

Anzeige
Anzeige
Anzeige
Anzeige