Wie man PDF-Dateien mit Text und Bildern in Python erstellt.
Im heutigen digitalen Zeitalter ist die Erstellung von PDF-Dokumenten mit dynamischen Inhalten, einschließlich Text und Bildern, eine gängige Anforderung. Python ist eine beliebte Programmiersprache, die es ermöglicht, Routineprozesse einfach zu automatisieren und so Zeit und Energie zu sparen. Eine vielseitige Bibliothek zur Erstellung von PDF-Dateien mit Text und Bildern in Python kann für die automatische Generierung von Berichten, Quittungen oder Rechnungen sehr nützlich sein. IronPDF , eine vielseitige Python-Bibliothek, vereinfacht die Erstellung von PDFs mit reichhaltigen Inhalten.
In diesem Artikel werden wir erkunden, wie man IronPDF verwendet, um PDFs zu erstellen, die sowohl Text als auch Bilder in einem Python-Projekt enthalten.
Wie man in Python PDF-Dateien mit Text und Bildern erstellt
- Installieren Sie die IronPDF-Bibliothek für Python.
- ChromePdfRenderer instanziieren
- Textinhalte hinzufügen
- Bild als Binärdaten hinzufügen
- Erstellen Sie eine HTML-Zeichenkette mit Text und Bildern.
- HTML mithilfe von RenderHtmlAsPdf in PDF umwandeln
- Speichern Sie die PDF-Datei mit der Methode
SaveAs.
Einführung in IronPDF
IronPDF ist eine funktionsreiche Python-Bibliothek, die Entwicklern leistungsstarke Werkzeuge zum Erstellen , Bearbeiten und Verarbeiten von PDF-Dokumenten bietet. Mit IronPDF können Sie problemlos Text, Bilder, Tabellen und andere Elemente in Ihre PDFs einfügen. Dadurch wird es zu einem wertvollen Werkzeug für eine Vielzahl von Anwendungen, von der Berichtserstellung bis zur Dokumentenerstellung.

Wichtige Funktionen von IronPDF:
- Einfache Integration: IronPDF lässt sich nahtlos in gängige Python-Entwicklungsumgebungen integrieren und ist somit auch für Entwickler mit Tools wie PyCharm zugänglich.
- Unterstützung für Rich Text: Es unterstützt Rich-Text-Formatierung, sodass Entwickler problemlos optisch ansprechende PDF-Dokumente erstellen können.
- Bildverarbeitung: IronPDF ermöglicht das Einfügen von Bildern in PDFs und bietet so Flexibilität bei der Gestaltung und Anpassung von Dokumenten.
- Plattformübergreifende Kompatibilität: IronPDF funktioniert auf verschiedenen Plattformen und gewährleistet so, dass generierte PDFs einheitlich angezeigt und bearbeitet werden können.
Voraussetzungen
Bevor Sie mit der Erstellung von PDF-Dokumenten mithilfe von IronPDF beginnen, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:
- Python installiert: Python muss auf Ihrem Computer installiert sein. Sie können die neueste Version von der offiziellen Python-Website ( https://www.python.org/ ) herunterladen und installieren.
- PyCharm IDE: Verwenden Sie PyCharm oder eine andere Python-IDE Ihrer Wahl. PyCharm ist eine beliebte integrierte Entwicklungsumgebung, die einen komfortablen Arbeitsbereich für die Python-Entwicklung bietet.
- IronPDF: Die IronPDF-Bibliothek wurde von hier heruntergeladen oder mit PIP (Python Package Manager) installiert. Für die erfolgreiche Nutzung der IronPDF-Funktionalität wird außerdem die Microsoft .NET-Laufzeitumgebung benötigt. Linux-, Mac- und Windows-Nutzer können die .NET 6.0-Version über diesen Download-Link herunterladen.
Python-Projekt in PyCharm erstellen
Sobald die Voraussetzungen erfüllt sind, öffnen Sie PyCharm und erstellen Sie ein neues Python-Projekt. Richten Sie für Ihr Projekt eine virtuelle Umgebung ein, um Abhängigkeiten effektiv zu verwalten.
- Klicken Sie auf Datei > Neues Projekt .
- Im Fenster "Neues Projekt":
- Geben Sie im Feld "Ort" einen Namen für Ihr Projekt ein.
- Wählen Sie den Speicherort, an dem Sie Ihre Projektdateien speichern möchten.
- Wählen Sie unter "Projektinterpreter" den Python-Interpreter aus. Der Python-Interpreter wird automatisch erkannt, sofern Python installiert ist.
-
Wählen Sie den Projekttyp. Für ein einfaches Python-Projekt können Sie die Standardeinstellungen beibehalten.

- Klicken Sie auf "Erstellen ", um das Projekt zu erstellen.
- Öffnen Sie eine neue Python-Datei und speichern Sie diese, um Code zum Generieren von PDF-Dateien mithilfe der Python-Bibliothek IronPDF zu schreiben.
IronPDF for Python mit PIP installieren
Um IronPDF zu installieren, verwenden Sie den folgenden PIP-Befehl im Terminal oder in der Eingabeaufforderung Ihres Projekts:
pip install ironpdf
Dieser Befehl lädt die IronPDF-Bibliothek zusammen mit ihren Abhängigkeiten automatisch herunter und installiert sie.

Erstellen eines einfachen PDFs mit Text und Bildern
Lassen Sie uns die Schritte zur Erstellung eines einseitigen PDF-Dokuments mit Text und Bildern mithilfe von IronPDF durchgehen:
Schritt 1: IronPDF importieren
In diesem Schritt importieren wir alle benötigten Module aus IronPDF. Wir importieren ChromePdfRenderer zum Rendern von PDFs und base64 zum Kodieren von Bilddaten.
from ironpdf import ChromePdfRenderer
import base64
from ironpdf import ChromePdfRenderer
import base64
Schritt 2: ChromePdfRenderer instanziieren
Hier erstellen wir eine Instanz des ChromePdfRenderers , der dazu verwendet wird, den HTML-Inhalt in ein PDF zu rendern.
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Instantiate Renderer
renderer = ChromePdfRenderer()
Schritt 3: Textinhalte hinzufügen
In diesem Schritt definieren wir eine HTML-Zeichenkette ( html_content ), die die Struktur des HTML-Dokuments enthält, einschließlich Kopfzeile, Hauptteil und einem Abschnitt mit Textinhalt, der später in eine einzelne PDF-Datei umgewandelt wird. CSS-Styling wird verwendet, um Text und Bilder zu positionieren.
# HTML String with Text
html_content = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>PDF Generation Example</title>
<style>
body {
margin: 0; /* Remove default margin */
padding: 20px; /* Add padding for better visibility */
position: relative; /* Set the body as a relative position */
}
header {
text-align: center;
}
section {
margin-top: 20px; /* Add margin to separate sections */
}
img {
position: absolute;
top: 20px; /* Adjust the top position */
right: 20px; /* Adjust the right position */
}
</style>
</head>
<body>
<header>
<h1>PDF Generation Example</h1>
</header>
<section id="contentSection">
<h2>Text and Image in PDF</h2>
<p>This PDF includes both text and an embedded image:</p>
<p>IronPDF developed by Ironsoftware is a great PDF creating library for .NET, Python, JAVA, Node.JS.</p>
"""
# HTML String with Text
html_content = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>PDF Generation Example</title>
<style>
body {
margin: 0; /* Remove default margin */
padding: 20px; /* Add padding for better visibility */
position: relative; /* Set the body as a relative position */
}
header {
text-align: center;
}
section {
margin-top: 20px; /* Add margin to separate sections */
}
img {
position: absolute;
top: 20px; /* Adjust the top position */
right: 20px; /* Adjust the right position */
}
</style>
</head>
<body>
<header>
<h1>PDF Generation Example</h1>
</header>
<section id="contentSection">
<h2>Text and Image in PDF</h2>
<p>This PDF includes both text and an embedded image:</p>
<p>IronPDF developed by Ironsoftware is a great PDF creating library for .NET, Python, JAVA, Node.JS.</p>
"""
Schritt 4: Bild hinzufügen
Hier öffnen und lesen wir eine Bilddatei ( ironpdf-logo.png ) im Binärmodus, konvertieren sie in eine Base64-kodierte Daten-URI und betten sie in den HTML-String ein. Das Bild wird dann mithilfe von CSS-Stilen so positioniert, dass es in der oberen rechten Ecke erscheint.
# Read image and convert to base64 string
with open("ironpdf-logo.png", "rb") as f:
pngBinaryData = f.read()
imgDataUri = "data:image/png;base64," + base64.b64encode(pngBinaryData).decode("utf-8")
imgHtml = f"""
<img src='{imgDataUri}' width=100px height=100px
alt="IronPDF Logo">
</section>
</body>
</html>
"""
# Read image and convert to base64 string
with open("ironpdf-logo.png", "rb") as f:
pngBinaryData = f.read()
imgDataUri = "data:image/png;base64," + base64.b64encode(pngBinaryData).decode("utf-8")
imgHtml = f"""
<img src='{imgDataUri}' width=100px height=100px
alt="IronPDF Logo">
</section>
</body>
</html>
"""
Schritt 5: HTML-Zeichenkette aus Text und Bild zusammenfügen
In diesem Schritt werden die HTML-Zeichenketten für Text und Bild verknüpft, um den vollständigen HTML-Inhalt ( full_html_content ) zu erstellen, der in eine PDF-Ausgabedatei gerendert wird.
full_html_content = html_content + imgHtml
full_html_content = html_content + imgHtml
Schritt 6: HTML-Inhalt als PDF-Datei rendern
Hier wird die Methode RenderHtmlAsPdf verwendet, um den HTML-Code mithilfe des ChromePdfRenderers in PDF zu konvertieren.
# Create a PDF from the HTML string
pdf = renderer.RenderHtmlAsPdf(full_html_content)
# Create a PDF from the HTML string
pdf = renderer.RenderHtmlAsPdf(full_html_content)
Schritt 7: PDF-Datei speichern
Schließlich wird die resultierende PDF-Datei unter dem Namen "output_with_text_and_image_top_right.pdf" gespeichert. Diese Datei enthält den formatierten Text und das eingebettete Bild, das sich in der oberen rechten Ecke befindet.
# Save the PDF to a file
pdf.SaveAs("output_with_text_and_image_top_right.pdf")
# Save the PDF to a file
pdf.SaveAs("output_with_text_and_image_top_right.pdf")
Ausgabe-PDF-Dokument
Nach Ausführung des Programms sieht die resultierende PDF-Datei wie folgt aus:

Ebenso einfach lassen sich mehrere PDF-Seiten zu einer PDF-Datei hinzufügen.
Erweiterte Nutzung: Anpassen der Text- und Bildplatzierung
IronPDF bietet zusätzliche Funktionen zur Feinabstimmung der Platzierung und Formatierung von Text und Bildern innerhalb der PDF-Datei mithilfe einer externen CSS-/JavaScript-Datei. Der Basispfad kann als optionales Argument an die Methode RenderHtmlAsPdf übergeben werden, wie im folgenden Codebeispiel gezeigt:
# 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")
# 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")
In diesem fortgeschrittenen Codebeispiel gehen wir noch einen Schritt weiter und nutzen externe Quellen, um das Konzept des Einbettens eines Bildes weiter zu verfolgen. Der HTML-Inhalt innerhalb der RenderHtmlAsPdf -Methode enthält einen Tag, das auf eine Bilddatei ( iron.png ) verweist, die sich im angegebenen Assets-Verzeichnis ( C:\site\assets\ ) befindet. Zusätzlich wird dieses Verzeichnis als BasePath- Parameter festgelegt.
Mit RenderHtmlAsPdf können Sie eine vollständige HTML-Webseite wie in den obigen Schritten gezeigt senden. Die CSS-Datei kann über den Basispfad als zweiten optionalen Parameter referenziert werden. Für detailliertere Informationen zu anderen Möglichkeiten, das PDF-Format zu erzeugen oder eine bestehende PDF-Datei zu ändern, besuchen Sie bitte die Seite mit den Codebeispielen und der Dokumentation .
Abschluss
In diesem Artikel haben wir untersucht, wie man mit IronPDF in einem Python-Projekt PDF-Dateien mit Text und Bildern erstellen kann. Mit seiner intuitiven API und seinen leistungsstarken Funktionen ermöglicht IronPDF Entwicklern die mühelose Erstellung dynamischer und optisch ansprechender PDF-Dokumente. Egal ob Sie Berichte, Dokumentationen oder andere Arten von Inhalten erstellen, IronPDF bietet eine zuverlässige und flexible Lösung für die PDF-Generierung in Python. Experimentieren Sie mit den Anpassungsoptionen, um Ihre PDFs an spezifische Designanforderungen anzupassen. Dadurch wird IronPDF zu einem wertvollen Werkzeug für Ihre Dokumentenerstellungsbedürfnisse.
Sie können eine IronPDF- Lizenz erwerben oder sich bei weiteren Fragen an den Support wenden .

Sie können die Bibliothek von der IronPDF- Website herunterladen und installieren.
Häufig gestellte Fragen
Wie kann ich ein PDF mit Text und Bildern mit Python erstellen?
Sie können IronPDF's ChromePdfRenderer verwenden, um ein PDF mit Text und Bildern in Python zu erstellen. Installieren Sie zuerst die IronPDF-Bibliothek, erstellen Sie dann einen HTML-String mit dem gewünschten Inhalt. Verwenden Sie die RenderHtmlAsPdf-Methode, um das HTML in ein PDF zu rendern und speichern Sie das PDF schließlich mit der SaveAs-Methode.
Welche Schritte sind nötig, um die PDF-Bibliothek in Python zu installieren?
Um die IronPDF-Bibliothek für Python zu installieren, können Sie den PIP-Paketmanager verwenden. Führen Sie den Befehl pip install ironpdf in Ihrer Eingabeaufforderung oder Ihrem Terminal aus, um die Bibliothek zusammen mit ihren Abhängigkeiten herunterzuladen und zu installieren.
Welche Voraussetzungen sind erforderlich, um eine PDF-Erstellungsbibliothek in Python zu verwenden?
Sie benötigen Python auf Ihrem Computer, eine IDE wie PyCharm für die Entwicklung und die IronPDF-Bibliothek. Darüber hinaus erfordert IronPDF die Microsoft .NET-Laufzeitumgebung.
Ist es möglich, PDFs mit externem CSS oder JavaScript mit Python-Bibliotheken anzupassen?
Ja, IronPDF erlaubt die Verwendung von externen CSS- und JavaScript-Dateien, um das Layout und Design Ihrer PDFs anzupassen. Diese Funktion bietet erweiterte Anpassungsoptionen für die Platzierung von Text und Bildern.
Kann die PDF-Python-Bibliothek plattformübergreifende Kompatibilität handhaben?
IronPDF ist so konzipiert, dass es plattformübergreifende Kompatibilität bietet, sodass die von Ihnen erzeugten PDFs konsistent auf verschiedenen Betriebssystemen angezeigt und interagiert werden können.
Warum wird Base64-Codierung für Bilder in der PDF-Erstellung mit Python verwendet?
Base64-Codierung wird verwendet, um Bild-Binärdaten in ein String-Format zu konvertieren, das direkt in HTML eingebettet werden kann. Dadurch können Bilder in das PDF aufgenommen werden, ohne auf externe Dateien verweisen zu müssen.
Was sind die Hauptmerkmale von IronPDF for Python?
IronPDF bietet Funktionen wie einfache Integration mit Python-Umgebungen, Unterstützung für reichhaltigen Text und Bilder sowie plattformübergreifende Kompatibilität. Diese Funktionen machen es zu einem vielseitigen Werkzeug für die Erzeugung von PDFs mit dynamischen Inhalten.
Wie kann IronPDF bei der Erstellung dynamischer PDF-Dokumente helfen?
IronPDF bietet eine leistungsstarke API, die Entwicklern ermöglicht, PDFs mit dynamischen Inhalten wie Text und Bildern zu erstellen. Es unterstützt HTML und CSS für die Formatierung, was es einfach macht, optisch ansprechende Dokumente in Python zu erstellen.




