✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

So konvertieren Sie HTML in PDF in PHP

253

PDF (Portable Document Format) ist ein Dateiformat, das Textformatierungen und Bilder in einem festen Layout enthält. Das PDF ist unabhängig von Anwendungssoftware, Hardware und Betriebssystem. Das bedeutet, dass Sie dasselbe PDF auf jedem Betriebssystem verwenden können.

Bei der Arbeit an PHP-Anwendungen möchten wir manchmal PDFs aus HTML erstellen. Es kann sich um eine Rechnung, eine Installationsanleitung, einen Lebenslauf usw. handeln. Um sie dynamisch zu machen, müssen wir im Handumdrehen PDF mit HTML generieren.

In diesem Artikel zeige ich Ihnen, wie Sie mit der Dompdf-Bibliothek HTML in PDF in PHP konvertieren.

Dompdf ist eine Open-Source-HTML-zu-PDF-Konverter-Bibliothek. Mit Dompdf können Sie ganz einfach PDFs aus Roh-HTML oder mithilfe einer HTML-Datei erstellen.

Einstieg

Um zu beginnen, müssen Sie zunächst die Dompdf-Bibliothek in Ihrer Anwendung installieren. Ich empfehle Composer für die Installation der Bibliothek zu verwenden.

Öffnen Sie das Terminal in Ihrem Projekt-Root-Verzeichnis und führen Sie den Befehl aus:

composer require dompdf/dompdf

Nach der Installation einer Bibliothek können Sie die Dompdf-Umgebung mithilfe des folgenden Codes in Ihr Projekt einbinden.

<?php
require_once "vendor/autoload.php";
  
use DompdfDompdf;

Konvertieren Sie HTML in PDF in PHP

Der zum Generieren von PDF erforderliche Code ist einfach und unkompliziert. Nehmen wir als Beispiel an, Sie haben ein rohes HTML, das in PDF konvertiert werden soll. Erstellen Sie eine index.phpDatei und fügen Sie den Code wie folgt hinzu.

<?php
require_once "vendor/autoload.php";
  
use DompdfDompdf;
 
// instantiate and use the dompdf class
$dompdf = new Dompdf();
$dompdf->loadHtml('<h1>hello world</h1>');
  
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
  
// Render the HTML as PDF
$dompdf->render();
  
// Output the generated PDF to Browser
$dompdf->stream();

Hier übergeben wir einen rohen HTML-Code an die Methode loadHtml(). Wenn wir diese Datei ausführen, wird PDF generiert und in einem Browser gerendert.

Wir können dem PDF, das heruntergeladen wird, auch einen Namen geben.

$dompdf->stream('test.pdf');

Sie haben gelernt, wie Sie PDFs aus Roh-HTML generieren. Sehen wir uns nun an, wie Sie eine PDF-Datei mit einer HTML-Datei erstellen.

Es gibt 2 Möglichkeiten dafür. Im ersten Fall holen wir den Inhalt aus der HTML-Datei und übergeben ihn an die loadHtml()Methode. Eine andere Möglichkeit besteht darin, die loadHtmlFile()Funktion zu verwenden und ihr den Pfad der HTML-Datei zu übergeben.

Sehen wir uns beide Wege nacheinander an.

Erste Methode

$html = file_get_contents('test.html');
$dompdf->loadHtml($html);
 
// Render the HTML as PDF
$dompdf->render();
 
// Output the generated PDF to Browser
$dompdf->stream();

Zweite Methode

Bei dieser Methode sollten Sie zuerst die ‘chroot’ des Verzeichnisses festlegen, in dem sich Ihre HTML-Datei befindet. Wenn sich Ihre HTML-Datei im Stammverzeichnis befindet, verwenden Sie direkt die getcwd()Methode. Sie sollten den Pfad Ihren Anforderungen entsprechend anpassen.

$dompdf->set_option('chroot', getcwd()); //assuming HTML file is in the root folder
$dompdf->loadHtmlFile('test.html');
 
// Render the HTML as PDF
$dompdf->render();
 
// Output the generated PDF to Browser
$dompdf->stream();

Speichern Sie die generierte PDF-Datei

Alle oben genannten Codes, die wir geschrieben haben, rendern das generierte PDF in einem Browser. Wenn jemand generierte PDFs auf einer Festplatte speichern möchte, verwenden Sie den Code wie folgt:

$dompdf->set_option('chroot', getcwd()); //assuming HTML file is in the root folder
$dompdf->loadHtmlFile('test.html');
 
// Render the HTML as PDF
$dompdf->render();
 
//Save to disk
$output = $dompdf->output();
file_put_contents("test.pdf", $output);

Es dreht sich alles um das Konvertieren von HTML in PDF mit der Dompdf-Bibliothek. Ich würde gerne Ihre Gedanken und Vorschläge im Kommentarbereich unten hören.

Zum Thema passende Artikel

Aufnahmequelle: artisansweb.net

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen