PYTHON PDF-WERKZEUGE

PDF in Python in Bilder umwandeln

Veröffentlicht 30. Juni 2023
Teilen Sie:

PDF (Portable Document Format) ist das beliebteste Dateiformat für die Übertragung von Daten über das Internet, da es die Formatierung des Inhalts beibehält und die Daten durch Sicherheitsberechtigungen schützt. Es gibt Szenarien, in denen wir PDF-Dateien in JPG-Bilder oder andere Bildformate wie PNG, BMP, TIFF oder GIF konvertieren müssen. Es gibt viele Online-Ressourcen für die JPG-Konvertierung, aber wie cool wäre es, unser eigenes PDF-zu-Bild-Konvertierungstool in Python zu erstellen?

Was ist Python?

Python ist eine hochentwickelte Programmiersprache, die zum Erstellen von Softwareanwendungen und Websites, zur Automatisierung von Aufgaben, zur Durchführung von Datenanalysen und zur Durchführung von Aufgaben im Bereich der künstlichen Intelligenz und des maschinellen Lernens verwendet wird. Sie ist auch eine Skriptsprache, da sie interpretiert wird, was sie im Hinblick auf eine schnelle Entwicklung und Prüfung leistungsfähiger macht.

Um einen PDF-zu-Bild-Konverter zu erstellen, muss Python 3+ auf dem Computer installiert sein. Downloaden und installieren Sie die neueste Version von der offizielle Website.

In diesem Artikel werden wir unsere eigene Bildkonvertierungsanwendung mit Hilfe der Python PDF to image Bibliotheken erstellen. Zu diesem Zweck werden wir zwei der beliebtesten Bibliotheken von Python verwenden: PDF2Image und PyMuPDF.

Konvertieren von PDF-Dateien in Bilddateien in Python

  1. Installieren Sie die Python-Bibliothek, um PDF in Bilder zu konvertieren.

  2. Laden Sie eine vorhandene PDF-Datei von einem beliebigen Speicherort.

  3. Nutzen Sie die Umrechnungsmethoden.

  4. Iterieren Sie durch die Seiten der Datei.

  5. Speichern Sie jede Seite als JPG- oder PNG-Bild mit der Speichermethode.

Eine neue Python-Datei erstellen

  1. Öffnen Sie die Python-Anwendung IDLE und drücken Sie die Tasten Strg + N. Der Texteditor wird geöffnet. Hierfür können Sie einen Texteditor Ihrer Wahl verwenden.

  2. Speichern Sie die Datei unter dem Namen pdf2image.py an demselben Ort wie die PDF-Datei, die Sie in Bilder umwandeln möchten.

    Die PDF-Eingabedatei, die wir verwenden werden, enthält 28 Seiten und sieht wie folgt aus:

    PDF in Python in ein Bild umwandeln: Abbildung 1

PDF-Dateien mit der PDF2Image-Bibliothek in Bilddateien umwandeln

1. PDF2Image-Python-Bibliothek installieren

PDF2Image ist ein Modul, das pdftocairo und pdftoppm umschließt. Es funktioniert auf Python 3.7+, um PDF in ein PIL-Bildobjekt zu konvertieren. Die bisherige Versionsgeschichte zeigt, dass es nur pdftoppm zur Konvertierung von PDF in Bilder verpackt und nur unter Python 3+ funktioniert.

Um das pdf2image-Paket zu installieren, öffnen Sie Ihre Windows-Eingabeaufforderung oder Windows PowerShell und verwenden Sie den folgenden pip-Befehl:

pip install pdf2image

*Pip (Preferred Installer Program) ist der Paketmanager für Python. Es lädt Softwarepakete von Drittanbietern herunter und installiert sie, die Merkmale und Funktionen bieten, die nicht in der Python-Standardbibliothek enthalten sind.

Hinweis: Um diesen Befehl von einer beliebigen Stelle der Kommandozeile aus ausführen zu können, muss Python zum PATH hinzugefügt werden. Für Python 3+ wird die Verwendung von pip3 empfohlen, da es sich um die aktuelle Version von pip handelt.

2. Poppler installieren

Poppler ist eine freie und quelloffene Bibliothek für die Arbeit mit PDF-Dateien. Es wird zum Rendern von PDF-Dateien, zum Lesen von Inhalten und zum Ändern von Inhalten in PDF-Dateien verwendet. Es wird häufig von Linux-Benutzern verwendet. Für Windows müssen wir jedoch die neueste Version von Poppler herunterladen.

Für Windows

Windows-Nutzer können die neueste Version von Poppler hier herunterladen: @oschwartz10612 Version. Sie müssen dann den bin/Ordner zur Umgebungsvariablen PATH hinzufügen.

Für Mac

Mac-Benutzer müssen außerdem Folgendes installieren Poppler. Es kann installiert werden mit Gebräu:

brew install poppler

Für Linux

Die meisten Linux-Distributionen werden mit den Kommandozeilen-Dienstprogrammen "pdftoppm" und "pdftocairo" ausgeliefert. Wenn diese Dienstprogramme nicht installiert sind, können Sie den Paketmanager verwenden, um poppler-utils zu installieren.

Für plattformunabhängig (mit conda)

  1. Installieren Sie poppler:
    :InstallCmd conda install -c conda-forge poppler
  1. Installieren Sie pdf2image:
    :InstallCmd pip install pdf2image

Jetzt ist alles bereit, beginnen wir mit dem Code für die Umwandlung von PDFs in Bilder.

3. Code für die Umwandlung von PDF-Dateien in Bilddateien

Der folgende Code führt eine Bildkonvertierung der eingegebenen PDF-Datei durch:

from pdf2image import convert_from_path

print("Please Wait while the file is being loaded.")
file = convert_from_path('file.pdf')

for i in range(len(file)):
    # save pdf as jpg
    print("Progress: " + str(round(i/len(file) * 100)) + "%")
    file [i].save('page'+ str(i+1) +'.jpg', 'JPEG')

print("Conversion Successful")
PYTHON

Im obigen Code öffnen wir die Datei zunächst mit der Methode convert_from_path. Diese Methode öffnet die Datei, die sich unter dem angegebenen Pfad befindet. Dann wird jede Seite der PDF-Datei, die in JPG-Bilder umgewandelt werden soll, in einer Schleife durchlaufen. Schließlich wird die Methode save verwendet, um jede konvertierte Seite als JPG-Bilddatei zu speichern. Führen Sie nun das Programm aus und warten Sie, bis die Konvertierung abgeschlossen ist.

Die ausgegebenen Bilddateien werden in demselben Ordner wie das Programm gespeichert.

PDF in Python in ein Bild umwandeln: Abbildung 2

PDF in Python in ein Bild umwandeln: Abbildung 3

PDF-Dateien mit der PyMuPDF-Bibliothek in Bilder umwandeln

1. PyMuPDF-Python-Bibliothek installieren

PyMuPDF ist eine erweiterte Python-Anbindung an MuPDF, einen leichtgewichtigen E-Book-, PDF- und XPS-Viewer, Renderer und Toolkit. Es kann verwendet werden, um PDF in andere Formate wie JPG oder PNG zu konvertieren. PyMuPDF funktioniert mit Python 3.7+ Versionen.

Um das PyMuPDF-Paket zu installieren, öffnen Sie Ihre Windows-Eingabeaufforderung oder Windows PowerShell und verwenden Sie den folgenden pip-Befehl:

pip3 install pymupdf

Beachten Sie, dass PyMuPDF keine zusätzlichen Bibliotheken wie das PDF2Image-Paket benötigt.

2. Code für die Umwandlung von PDF-Dateien in Bilder

Der folgende Code importiert das Modul "fitz" von PyMuPDF, so dass wir das PDF in Bilder umwandeln können:

import fitz

doc = fitz.open("file.pdf")

for x in range(len(doc)):
    page = doc.load_page(x)  # number of page
    pix = page.get_pixmap()
    output = "output/pdfpage"+str(x+1)+".png" # first create the output folder in the destination
    pix.save(output)

doc.close()
PYTHON

Im obigen Code wird der Dateiname als Argument an die Methode "fitz.open" übergeben, um die Datei zu öffnen. Als Nächstes durchlaufe ich das gesamte Dokument und lade jede Seite einzeln. Die Methode "get_pixmap" wird verwendet, um jede Dokumentseite in Bildpixel umzuwandeln, und das resultierende Bild wird mit der Methode "save" im Ausgabeordner gespeichert. Schließlich wird das geöffnete Dokument geschlossen, um Speicherplatz freizugeben.

Im Vergleich zu PDF2Image ist PyMuPDF bei der Konvertierung von PDF in PNG schneller. PDF2Image kann für das PNG-Format aufgrund seiner Kompressionsrate langsam sein.

Die Ausgabe ist die gleiche wie die von PDF2Image:

PDF in Python in ein Bild umwandeln: Abbildung 4

Rendering von PDF-zu-Bild-Konvertierungen in C#

IronPDF-Bibliothek

IronPDF ist eine Bibliothek zum Erzeugen, Lesen und Verarbeiten von PDF-Dateien. Seine Spezialität ist das Rendering von HTML in PDF mit Hilfe der Chromium Engine. Diese Funktion macht es beliebt bei Entwicklern, die HTML-Dateien oder URLs in PDF-Dokumente konvertieren müssen. Außerdem bietet es die Konvertierung von verschiedenen Formaten in PDF-Dateien.

Sie können eine PDF-Datei auch mit nur zwei Codezeilen in Bilder rastern. Der folgende Code zeigt, wie man PDFs in verschiedene Bildformate konvertiert:

from ironpdf import *

# One or more images as a list. This example selects all JPEG images in a specific 'assets' folder.
image_files = [os.path.join("assets", f) for f in os.listdir("assets") if f.lower().endswith(('.jpg', '.jpeg'))]

directory_list = List [str]()
for i in range(len(image_files)):
    directory_list.Add(image_files [i])

# Converts the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(directory_list).SaveAs("composite.pdf")

# Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
PYTHON

Herunterladen IronPDF und testen Sie es für kostenlos .

< PREVIOUS
Konvertieren von HTML in PDF in Python

Sind Sie bereit, loszulegen? Version: 2024.9 gerade veröffentlicht

pip install gratuit Lizenzen anzeigen >