Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
PDF(Portable Document Format) ist das beliebteste digitale Dateiformat für das Senden und Empfangen von Daten im Internet. Es wird hauptsächlich verwendet, um die Datenformatierung zu bewahren und die Daten mit einem verschlüsselten Passwort zu sichern. Die .pdf-Erweiterung ist unabhängig von der Softwareanwendung, der Hardware oder dem Betriebssystem.
In diesem Artikel werden wir eine PDF-Datei in der Programmiersprache Python erstellen. Es gibt eine ganze Reihe von Online-Optionen, aber hier werden wir eine Python-Bibliothek für die Erstellung von PDF-Dateien verwenden. Im Folgenden finden Sie zwei bekannte Bibliotheken, mit denen Sie in Python PDF-Dokumente mit einzelnen oder mehreren Seiten erzeugen können:
Reportlab
PDFKit
Von den oben erwähnten PDF-Python-Bibliotheken kann jeder für die Erstellung von PDFs verwendet werden.
Schauen wir uns die beiden Bibliotheken einzeln an.
Reportlab bibliothek ist ein kostenloses Open-Source-PDF-Toolkit, mit dem sich PDF-Dateien leicht erstellen lassen. Es bietet eine Reihe von Zeichenwerkzeugen zum Hinzufügen von Bildern und Text an einer bestimmten Position auf mehreren Seiten. Sie können auch verschlüsselte PDF-Dateien mit der Methode "encryptCanvas" erstellen.
Zur Installation von Reportlab wird der Paketmanager pip benötigt. Es lädt automatisch das Anforderungspaket herunter und installiert es mit dem Befehl pip. Geben Sie einfach den folgenden Befehl in Windows cmd oder PowerShell ein:
pip3 install reportlab
Hinweis: Während der Installation von Python muss es zur Umgebungsvariablen path hinzugefügt werden, damit der obige Befehl von einer beliebigen Stelle in cmd oder PowerShell ausgeführt werden kann. Es wird empfohlen, Pip3 für Python 3+ zu verwenden, da es sich um die aktuellste Version handelt.
Um die Reportlab-Bibliothek zu verwenden, müssen wir den Code in eine Python-Datei schreiben und ihn ausführen, um PDF-Dateien zu erstellen.
Suchen und öffnen Sie die Python-Standardshell IDLE in der Windows-Suchleiste und drücken Sie Strg + N oder wählen Sie "Neue Datei" auf der Registerkarte Datei. Dadurch wird der Texteditor zum Schreiben des Codes geöffnet.
Speichern Sie dann die Datei unter dem entsprechenden Namen. Ich nenne es "createpdf.py ". Die Datei sieht wie folgt aus:
Der folgende Code zeichnet Dokumentenelemente und erzeugt innerhalb von Sekunden eine PDF-Datei:
# importing modules
from reportlab.pdfgen import canvas
from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase import pdfmetrics
from reportlab.lib import colors
# initializing variables with values
fileName = 'sample.pdf'
documentTitle = 'sample'
title = 'Create PDF'
subTitle = 'Using ReportLab !!'
# creating a pdf object
pdf = canvas.Canvas(fileName)
# setting the title of the document
pdf.setTitle(documentTitle)
# creating the title by setting it's font
# and putting it on the canvas
pdf.setFont('abc', 36)
pdf.drawCentredString(300, 770, title)
# creating the subtitle by setting it's font,
# colour and putting it on the canvas
pdf.setFillColorRGB(0, 0, 255)
pdf.setFont("Courier-Bold", 24)
pdf.drawCentredString(290, 720, subTitle)
# saving the pdf
pdf.save()
Die generierte PDF-Ausgabe sieht wie folgt aus:
Nachdem wir alle Module und Pakete importiert haben, haben wir zunächst alle Inhalte initialisiert, die in eine PDF-Datei geschrieben werden sollen.
fileName = 'sample.pdf'
documentTitle = 'sample'
title = 'Create PDF'
subTitle = 'Using ReportLab !!'
Jetzt legen wir den Namen der Leinwand, den Titel des Dokuments, einen zentrierten Titel und einen Untertitel mit entsprechender Schriftart und -größe fest.
# creating a pdf object
pdf = canvas.Canvas(fileName)
# setting the title of the document
pdf.setTitle(documentTitle)
# creating the title by setting it's font
# and putting it on the canvas
pdf.setFont('abc', 36)
pdf.drawCentredString(300, 770, title)
# creating the subtitle by setting it's font,
# colour and putting it on the canvas
pdf.setFillColorRGB(0, 0, 255)
pdf.setFont("Courier-Bold", 24)
pdf.drawCentredString(290, 720, subTitle)
Schließlich speichern wir die PDF-Datei, wenn alles auf der Leinwand gezeichnet ist.
# saving the pdf
pdf.save()
Wir können auch die Methoden drawString
und drawText
verwenden, um mit Reportlab in Python eine einfache PDF-Datei zu erstellen.
PDFKit bibliothek ist einer der besten Ansätze, wenn es um die Erstellung von PDF-Dateien in Python geht. Es kann PDF-Dateien mit HTML-Code erstellen. Sie können einfache und komplexe HTML-Dateien oder HTML aus URLs in pixelgenaue, druckbare PDF-Seiten umwandeln. PDFKit integriert jedoch die Funktionen von wkhtmltopdf zur Konvertierung von HTML in PDF. Um wkhtmltopdf für Windows, Linux und Mac zu installieren, besuchen Sie diese Seitelink.
Hinweis: Unter Windows wird wkhtmltopdf in den Programmdateien installiert.
Verwenden Sie den folgenden Befehl, um PDFKit zu installieren:
pip3 install pdfkit
Die Erstellung von PDF-Dateien mit PDFKit ist sehr einfach und ein Ein-Zeilen-Prozess.
import pdfkit
pdfkit.from_url('http://google.com', 'out.pdf')
import pdfkit
pdfkit.from_file('index.html', 'out.pdf')
Sie können HTML-Templates als String übergeben, um sie in PDF als Ausgabedatei zu konvertieren.
html_string = """
<html>
<head>
<meta name="pdfkit-page-size" content="Legal"/>
<meta name="pdfkit-orientation" content="Landscape"/>
</head>
Hello World!
</html>
"""
pdfkit.from_string(html_string, 'out.pdf')
PDFKit ermöglicht die einfache Erstellung von PDFs in Python unter Verwendung von HTML-Vorlagen.
IronPDF ist ein nützliches Instrument zurpDF-Dateien erstellen in .NET-Projekten. Eine häufige Anwendung dieser Bibliothek ist das "HTML to PDF"-Rendering, bei dem HTML als Designsprache für das Rendering eines PDF-Dokuments verwendet wird.
IronPDF verwendet eine .NET Chromium-Engine, um HTML-Seiten in PDF-Dateien umzuwandeln. Bei der Konvertierung von HTML in PDF müssen Sie keine komplexen APIs verwenden, um PDFs zu positionieren oder zu gestalten. IronPDF unterstützt auch alle Standard-Webseitentechnologien: HTML, ASPX, JS, CSS und Bilder.
Außerdem können Sie damit eine .NET-PDF-Bibliothek mit HTML 5, CSS, JavaScript und Bildern erstellen. Sie können eine PDF-Datei mühelos bearbeiten, stempeln und Kopf- und Fußzeilen hinzufügen. Außerdem ist es sehr einfach, PDF-Text zu lesen und Bilder zu extrahieren.
Um mit IronPDF zu arbeiten, müssen Sie das NuGet-Paket installieren:
pip installieren ironpdf
Das folgende Beispiel hilft Ihnen, eine PDF-Datei direkt aus einer URL zu erstellen:
from ironpdf import *
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a URL or local file path
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/")
# Export to a file or Stream
pdf.SaveAs("url.pdf")
Der folgende Code hilft Ihnen bei der Erstellung von PDF-Dateien aus HTML-Code zusammen mit CSS oder JavaScript:
from ironpdf import *
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
# Export to a file or Stream
pdf.SaveAs("output.pdf")
# Advanced Example with HTML Assets
# Load external html assets: Images, CSS and JavaScript.
# An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", r"C:\site\assets")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Wie Sie aus dem obigen Code ersehen können, ist er recht einfach und sauber. Es sind nur wenige Codezeilen erforderlich, um eine PDF-Datei aus HTML-Code zu erstellen. Es ist eine schnelle, zuverlässige und zeitsparende Lösung mit genauen Ergebnissen.
Laden Sie IronPDF herunter und testen Sie es fürkostenlos. Nach der Testphase beginnt die Lizenzierung mit $749.
9 .NET API-Produkte für Ihre Bürodokumente