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")
PDF-Dateien mit Text und Bildern in Python erstellen
Jordi Bardia
6. März 2024
Teilen Sie:
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, mit der sich Routineprozesse leicht automatisieren lassen, um Zeit und Energie zu sparen. Eine vielseitige Bibliothek zumErstellung von PDF-Dateien mit Text und Bildern in Python kann für die automatische Erstellung von Berichten, Quittungen oder Rechnungen sehr nützlich sein. IronPDF, eine vielseitige Python-Bibliothek, vereinfacht die Erstellung von PDFs mit umfangreichen Inhalten.
In diesem Artikel erfahren Sie, wie Sie IronPDF verwenden, um in einem Python-Projekt PDFs zu erzeugen, die sowohl Text als auch Bilder enthalten.
PDF-Dateien mit Text und Bildern in Python erstellen
IronPDF for Python-Bibliothek installieren
ChromePdfRenderer instanziieren
Textinhalt hinzufügen
Bild als Binärdaten hinzufügen
HTML-String mit Text und Bildern erstellen
Rendering von HTML in PDF mit RenderHtmlAsPdf
PDF-Datei mit SaveAs-Methode speichern
Einführung in IronPDF
IronPDF ist eine funktionsreiche Python-Bibliothek, die Entwicklern leistungsstarke Werkzeuge zur Verfügung stellt, um*Kreierenund die Bearbeitung von PDF-Dokumenten. Mit IronPDF können Sie problemlos Text, Bilder, Tabellen und andere Elemente in Ihre PDFs einfügen, was es zu einem wertvollen Hilfsmittel für eine Vielzahl von Anwendungen macht, von der Berichterstellung bis zur Dokumentenerstellung.
Hauptmerkmale von IronPDF:
Einfache Integration: IronPDF lässt sich nahtlos in gängige Python-Entwicklungsumgebungen integrieren, so dass es für Entwickler, die Tools wie PyCharm verwenden, zugänglich ist.
Rich-Text-Unterstützung: Sie unterstützt die Formatierung von Rich-Text und ermöglicht es Entwicklern, mit Leichtigkeit optisch ansprechende PDF-Dokumente zu erstellen.
Bildverarbeitung: IronPDF ermöglicht die Einbindung von Bildern in PDFs und bietet damit Flexibilität bei der Gestaltung und Anpassung von Dokumenten.
Plattformübergreifende Kompatibilität: IronPDF arbeitet plattformübergreifend und stellt sicher, dass die erzeugten PDFs konsistent angezeigt und bearbeitet werden können.
Voraussetzungen
Bevor Sie mit der Erstellung von PDF-Dokumenten mit IronPDF beginnen, sollten Sie sicherstellen, dass die folgenden Voraussetzungen erfüllt sind:
Python muss installiert sein: Python muss auf Ihrem Computer installiert sein. Sie können die neueste Version von der offiziellen Python-Website herunterladen und installieren(https://www.python.org/).
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: IronPDF-Bibliothek heruntergeladen von*hier oder über PIP installiert(Python-Paketverwaltung). Die Microsoft .NET-Laufzeitumgebung ist ebenfalls erforderlich, um die IronPDF-Funktionen erfolgreich zu nutzen. Linux-, Mac- und Windows-Benutzer können die .NET 6.0-Version herunterladen unter*das download-Link.
Python-Projekt in PyCharm erstellen
Sobald die Voraussetzungen erfüllt sind, öffnen Sie PyCharm und erstellen Sie ein neues Python-Projekt. Richten Sie eine virtuelle Umgebung für Ihr Projekt ein, um Abhängigkeiten effektiv zu verwalten.
Klicken Sie auf Datei > Neues Projekt.
Im Fenster "Neues Projekt":
Geben Sie im Feld "Standort" einen Namen für Ihr Projekt ein.
Wählen Sie den Ort, an dem Sie Ihre Projektdateien speichern möchten.
Wählen Sie unter "Projektinterpreter" den Python-Interpreter aus. Er erkennt automatisch den Python-Interpreter, wenn Sie Python installiert haben.
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 sie, um mit Hilfe der Python-Bibliothek - IronPDF - einen Code für die Erzeugung von PDF-Dateien 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 installieren ironpdf
Mit diesem Befehl wird die IronPDF-Bibliothek zusammen mit den zugehörigen Abhängigkeiten automatisch heruntergeladen und installiert.
Erstellen einer einfachen PDF-Datei mit Text und Bildern
Gehen wir die Schritte durch, um mit IronPDF ein einseitiges PDF-Dokument zu erstellen, das sowohl Text als auch Bilder enthält:
Schritt 1: IronPDF importieren
In diesem Schritt importieren wir alle erforderlichen 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
PYTHON
Schritt 2: ChromePdfRenderer instanziieren
Hier erstellen wir eine Instanz des ChromePdfRenderer, der zum Rendern des HTML-Inhalts in ein PDF-Dokument verwendet wird.
In diesem Schritt definieren wir eine HTML-Zeichenkette(html_content) die die Struktur des HTML-Dokuments enthält, einschließlich der Kopfzeile, des Hauptteils und eines Abschnitts mit Textinhalt, der später in eine einzelne PDF-Datei konvertiert wird. Für die Positionierung des Textes und des Bildes wird CSS-Styling verwendet.
# 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>
"""
PYTHON
Schritt 4: Bild hinzufügen
Hier werden wir eine Bilddatei öffnen und lesen(ironpdf-logo.png) im Binärmodus, konvertiert sie in einen base64-kodierten Daten-URI und bettet sie in die HTML-Zeichenfolge ein. Das Bild wird dann mithilfe von CSS-Stilen so positioniert, dass es in der rechten oberen Ecke erscheint.
In diesem Schritt werden die Text- und Bild-HTML-Strings miteinander verknüpft, um den vollständigen HTML-Inhalt zu erstellen(full_html_content) die in eine PDF-Ausgabedatei gerendert wird.
full_html_content = html_content + imgHtml
full_html_content = html_content + imgHtml
PYTHON
Schritt 6: HTML-Inhalt als PDF-Datei rendern
Hier wird die Methode RenderHtmlAsPdf verwendet, um dieHTML zu PDF unter Verwendung des ChromePdfRenderer.
# 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)
PYTHON
Schritt 5: PDF-Datei speichern
Schließlich wird die resultierende PDF-Datei als "output_with_text_and_image_top_right.pdf" gespeichert. Diese Datei enthält den formatierten Text und das eingebettete Bild in der rechten oberen Ecke.
# 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")
PYTHON
PDF-Dokument ausgeben
Nach der Ausführung des Programms sieht die PDF-Ausgabedatei wie folgt aus:
Ebenso einfach lassen sich mehrere PDF-Seiten zu einer PDF-Datei hinzufügen.
Erweiterte Verwendung: Anpassen der Text- und Bildplatzierung
IronPDF bietet zusätzliche Funktionen zur Feinabstimmung der Platzierung und des Stylings von Text und Bildern innerhalb der PDF-Datei unter Verwendung einer externen CSS/JavaScript-Datei. Der Basispfad kann als optionales Argument an die Methode RenderHtmlAsPdf gesendet werden, wie im folgenden Code 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")
PYTHON
In diesem fortgeschrittenen Code-Beispiel wird das Konzept der Einbettung eines Bildes durch externe Quellen weiterentwickelt. Der HTML-Inhalt innerhalb der Methode RenderHtmlAsPdf enthält eine Tag, der auf eine Bilddatei verweist (iron.png) die sich im angegebenen Asset-Verzeichnis befinden(C:\site\assets\). Zusätzlich wird dieses Verzeichnis als Parameter BasePath festgelegt.
Mit RenderHtmlAsPdf können Sie eine vollständige HTML-Webseite senden, wie in den obigen Schritten gezeigt. Die CSS-Datei kann über den Basispfad als zweiten optionalen Parameter referenziert werden. Ausführlichere Informationen über andere Möglichkeiten, das PDF-Format zu erzeugen oder eine bestehende PDF-Datei zu ändern, finden Sie auf der SeiteCodebeispiele undDokumentation seite.
Schlussfolgerung
In diesem Artikel haben wir untersucht, wie manIronPDF um PDF-Dateien mit Text und Bildern in einem Python-Projekt zu erstellen. Mit seiner intuitiven API und seinen leistungsstarken Funktionen ermöglicht IronPDF Entwicklern die mühelose Erstellung dynamischer und visuell ansprechender PDF-Dokumente. Ob Sie nun Berichte, Dokumentationen oder andere Inhalte erstellen, IronPDF bietet eine zuverlässige und flexible Lösung für die PDF-Erzeugung in Python. Experimentieren Sie mit den Anpassungsoptionen, um Ihre PDFs auf spezifische Designanforderungen zuzuschneiden, was IronPDF zu einem wertvollen Werkzeug für Ihre Dokumentenerstellung macht.
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS Wie man eine PDF-Datei in Python generiert
NÄCHSTES > Wie man in Python Seitenzahlen in PDF-Dateien einfügt