1722 Stimmen

Wie kann ich HTML und CSS in PDF einfügen?

Ich habe ein HTML-Dokument (nicht XHTML), das in Firefox 3 und IE 7 gut dargestellt wird. Es verwendet ziemlich einfache CSS, um es zu gestalten und wird in HTML gut wiedergegeben.

Ich suche nun nach einer Möglichkeit, sie in PDF zu konvertieren. Ich habe es versucht:

  • DOMPDF : Es hatte große Probleme mit Tabellen. Ich habe meine großen verschachtelten Tabellen ausgeklammert und das hat geholfen (vorher hat es nur bis zu 128M Speicher verbraucht und ist dann gestorben - das ist meine Speichergrenze in der php.ini), aber es macht ein komplettes Durcheinander von Tabellen und scheint keine Bilder zu bekommen. Die Tabellen waren nur einfaches Zeug mit einigen Randstilen, um einige Linien an verschiedenen Stellen hinzuzufügen;
  • HTML2PDF und HTML2PS : Ich hatte tatsächlich mehr Glück mit diesem. Es gerendert einige der Bilder (alle Bilder sind Google Chart URLs) und die Tabelle Formatierung war viel besser, aber es schien einige Komplexität Problem, das ich noch nicht herausgefunden haben und hielt sterben mit unbekannten node_type() Fehler. Ich bin mir nicht sicher, wie es weitergehen soll; und
  • Htmldoc Dies scheint zu funktionieren gut auf grundlegende HTML, aber hat fast keine Unterstützung für CSS whatsoever, so dass Sie alles in HTML zu tun haben (ich wusste nicht, es war noch 2001 in Htmldoc-Land ...), so ist es nutzlos für mich.

Ich habe eine Windows-Anwendung namens Html2Pdf Pilot ausprobiert, die eigentlich ziemlich gute Arbeit geleistet hat, aber ich brauche etwas, das zumindest unter Linux läuft und idealerweise auf Abruf über PHP auf dem Webserver läuft.

Was übersehe ich, oder wie kann ich dieses Problem lösen?

9 Stimmen

Html2Pdf verwendet eine eingebettete Instanz des IE, um die Seite zu rendern, und konvertiert diese dann in PDF - wahrscheinlich über den Druckmechanismus des IE.

58 Stimmen

Da es sich um eine Frage aus dem Jahr 2008 handelt, ist dompdf inzwischen viel ausgereifter ;-)

5 Stimmen

Dompdf unterstützt jetzt CSS 2.1 und kann mit @import , @media et @screen Regeln, und lädt externe Stylesheets. Es kommt auch mit allem gebündelt für sie erforderlich, um zu arbeiten, obwohl es Dinge, die Sie installieren können, um eine bessere Leistung als die Standard-Bibliotheken zu erhalten. code.google.com/p/dompdf

58voto

Darryl Hein Punkte 138311

Kasse TCPDF . Es hat einige HTML-zu-PDF-Funktionen, die für Ihre Zwecke ausreichen könnten. Außerdem ist es kostenlos!

33voto

Filip Dupanović Punkte 30692

Um das Thema wieder aufzugreifen: Ich habe DOMPDF ausprobiert und es hat perfekt funktioniert. Ich habe verwendet DIV und andere Elemente auf Blockebene, um alles zu positionieren, habe ich es strikt bei CSS 2.1 belassen, und es hat sehr gut funktioniert.

32voto

Oren Punkte 111

Ich schlage vor DocRaptor (die die PrinceXML als "Motor")

32voto

Paulo Coghi Punkte 11784

Gute Nachrichten! Zackig !!

Snappy ist ein sehr leicht Open-Source-PHP5-Bibliothek, die die Erstellung von Miniaturbildern, Schnappschüssen oder PDF-Dateien aus einer URL oder einer HTML-Seite ermöglicht. Und... es verwendet die ausgezeichnet Webkit-basiert wkhtmltopdf

Viel Spaß! ^_^

30voto

Starkers Punkte 9683

Es wurde bereits erwähnt, aber ich möchte nur bestätigen, dass mpdf der einfachste, leistungsfähigste und kostenloseste HTML-zu-PDF-Konverter ist, den es gibt. Der Himmel ist wirklich die Grenze. Sie können sogar pdf-Dateien mit dynamischen, benutzergenerierten Daten erstellen.

Ein Kunde wollte zum Beispiel ein CMS-System, damit er die Trackliste der Musik, die er in seinem Club spielt, aktualisieren kann. Das war kein Problem, aber er wollte auch, dass die Benutzer eine PDF-Datei der Playlist herunterladen können, und diese herunterladbare PDF-Datei musste ebenfalls durch das CMS aktualisiert werden. Dank mpdf konnte ich mit einigen einfachen Schleifen und eingestreuten Variablen genau das tun. Für etwas, wofür ich Wochen gebraucht hätte, brauchte ich buchstäblich nur Minuten.

Großartig Artikel die mir den Einstieg erleichtert haben.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X