Open-Source-Python-Bibliothek zum Verarbeiten von PDF-Dateien
Die kostenlose Python-API ermöglicht das Linearisieren von PDFs und den Zugriff auf verschlüsselte PDFs. Es unterstützt die PDF-Erstellung von Grund auf neu, das Kopieren von Seiten von einem PDF in ein anderes, das Teilen oder Zusammenführen von PDFs und vieles mehr.
PikePDF ist eine sehr einfache Python-PDF-Bibliothek, die es Softwareentwicklern ermöglicht, mit PDF-Dateien in Python-Anwendungen zu arbeiten. Es basiert auf QPDF, einer leistungsstarken PDF-Manipulations- und Reparaturbibliothek. PikePDF ist eine PDF-Content-Transformationsbibliothek und bietet Low-Level-Zugriff auf PDF-Dateien. Dies bedeutet, dass Benutzer Kenntnisse über PDF-Interna und Vertrautheit mit PDF-Spezifikationen benötigen. Die Bibliothek ist Open Source und steht unter der MIT-Lizenz zur öffentlichen Nutzung zur Verfügung. Die Bibliothek ist Open Source und steht unter der MPL-2.0-Lizenz.
PikePDF bietet Unterstützung für die Linearisierung von PDFs und den Zugriff auf verschlüsselte PDFs. Es enthält eine sehr leistungsstarke Reihe von Funktionen im Zusammenhang mit der PDF-Verwaltung, wie z Einstellungen unterstützen, PDF-Metadaten verwalten, passwortgeschützt arbeiten, PDF-XMP-Metadaten bearbeiten, bestehende PDFs umwandeln und vieles mehr.
.
Erste Schritte mit PikePDF
PikePDF erfordert Python 3.6 und höher. Sie können PikePDF mit pip installieren. Bitte verwenden Sie den folgenden Befehl, um es zu installieren.
Installieren Sie PikePDF über Pip
pip install pikepdf
Kopieren Sie Seiten von einem PDF in ein anderes über Python
Die Open-Source-PikePDF-Bibliothek bietet die Möglichkeit, mit der Softwareentwickler mit nur wenigen Zeilen Python-Code Seiten von einer PDF-Datei in eine andere kopieren können. Durch das Kopieren von Seiten zwischen PDF-Objekten wird eine flache Kopie der Quellseite in der Ziel-PDF-Datei erstellt, und daher wirkt sich das Ändern der Seiten nicht auf die ursprünglichen PDF-Dokumente aus. Es ist auch möglich, bestimmte Seiten durch benutzerdefinierte Inhalte zu ersetzen. Es ist auch möglich, Seiten innerhalb eines bestimmten PDFs zu kopieren.
Öffnen und bearbeiten Sie PDF-Dokumente über Python
# PDF Documents Manipulation
from pikepdf import Pdf
new_pdf = Pdf.new()
with Pdf.open('sample.pdf') as pdf:
pdf.save('output.pdf')
# Copying pages from other PDFs
pdf = Pdf.open('../tests/resources/fourpages.pdf')
appendix = Pdf.open('../tests/resources/sandwich.pdf')
pdf.pages.extend(appendix.pages)
PDF-Aufteilung und -Zusammenführung über Python
Die PDF PikePDF-Bibliothek gibt Softwareentwicklern die Möglichkeit, auf vorhandene PDF-Dateien zuzugreifen und sie problemlos in mehrere PDF-Dateien aufzuteilen. Beim Aufteilen von PDFs benötigen wir lediglich, dass die neuen PDFs die Zielseiten enthalten müssen. Die Bibliothek stellt auch sicher, dass mit jeder Seite verbundene Daten übertragen werden, sodass jede Seite für sich steht. Die Bibliothek enthielt auch Unterstützung für das Zusammenführen oder Verketten mehrerer PDF-Dokumente zu einem einzigen. Es ist auch möglich, die Reihenfolge der PDF-Seiten mit nur wenigen Codezeilen umzukehren.
Teilen und Zusammenführen von PDF-Dokumenten über Python
# PDF Splitting
pdf = Pdf.open('../tests/resources/fourpages.pdf')
for n, page in enumerate(pdf.pages):
dst = Pdf.new()
dst.pages.append(page)
dst.save(f'{n:02d}.pdf')
# Combine Multiple PDF pages into a single One
from glob import glob
pdf = Pdf.new()
for file in glob('*.pdf'):
src = Pdf.open(file)
pdf.pages.extend(src.pages)
pdf.save('merged.pdf')
Verwalten Sie Bilder in PDF-Dokumenten über Python
Die PDF PikePDF-Bibliothek macht es Softwareentwicklern leicht, Bilder in einer PDF-Datei mit Python-Befehlen zu handhaben. Die Bibliothek enthält mehrere wichtige Funktionen im Zusammenhang mit der Bildverarbeitung, z. B. das Kopieren von Bildern innerhalb einer PDF-Seite, das Öffnen und Anzeigen von PDFs, das Ändern der Größe von Bildern, das Bearbeiten von Bildern in einem PDF, das Extrahieren von Bildern aus einem PDF, das Ersetzen von Bildern, das Löschen eines Bilds aus einem PDF und vieles mehr .
Bild extrahieren und in PDF über Python ersetzen
# Extract Image & Replace PDF Images
import zlib
rawimage = pdfimage.obj
pillowimage = pdfimage.as_pil_image()
greyscale = pillowimage.convert('L')
greyscale = greyscale.resize((32, 32))
rawimage.write(zlib.compress(greyscale.tobytes()), filter=Name("/FlateDecode"))
rawimage.ColorSpace = Name("/DeviceGray")
rawimage.Width, rawimage.Height = 32, 32
Umgang mit PDF-Metadaten über Python
PDF-Metadaten enthalten sehr nützliche Informationen über ein PDF-Dokument wie den Namen des Autors, Erstellungs- und Änderungsdatum, Schlüsselwörter, Copyright-Informationen und so weiter. Die PDF PikePDF-Bibliothek enthält vollständige Funktionen für den Zugriff auf und das Lesen von Metadaten, das Extrahieren von Metadaten und das Löschen von Metadateneinträgen aus PDF-Dokumenten. Das folgende Codebeispiel zeigt, wie Metadaten aus PDF-Dokumenten extrahiert werden.
So extrahieren Sie PDF-Metadaten über Python
# Extract PDF Metadata
import pikepdf
import sys
# get the target pdf file from the command-line arguments
pdf_filename = sys.argv[1]
# read the pdf file
pdf = pikepdf.Pdf.open(pdf_filename)
docinfo = pdf.docinfo
for key, value in docinfo.items():
print(key, ":", value)