UTILISATION D'IRONPDF POUR PYTHON

Comment visualiser un fichier PDF en Python

Publié juillet 2, 2023
Partager:

PDF (Format de document portable)

Le format PDF est un format de fichier très répandu pour le partage de documents. Il s'agit d'un format polyvalent pour les informations documentaires, qui peut être consulté sur une variété d'appareils, et qui peut également être protégé par des autorisations de sécurité.

En Python, il existe un certain nombre de bibliothèques qui peuvent être utilisées pour lire et manipuler des documents PDF. L'une de ces bibliothèques est IronPDF. IronPDF est une bibliothèque puissante qui offre un large éventail de fonctionnalités pour travailler avec des documents PDF.

Dans cet article, nous allons apprendre à visualiser des fichiers PDF en Python à l'aide de la bibliothèque IronPDF.

IronPDF - Bibliothèque Python

IronPDF est une puissante bibliothèque Python qui permet aux développeurs de travailler avec des fichiers PDF de manière programmatique. Avec IronPDF, vous pouvez facilement générer, manipuler et extraire des données de documents PDF, ce qui en fait un outil polyvalent pour diverses tâches liées aux PDF. Que vous ayez besoin de créer des PDF à partir de zéro, de modifier des PDF existants ou d'extraire du contenu de PDF, IronPDF offre un ensemble complet de fonctionnalités pour simplifier votre flux de travail.

Voici quelques caractéristiques de la bibliothèque IronPDF for Python :

  • Créer un nouveau fichier PDF à partir de zéro en utilisant HTML ou URL
  • Modifier des fichiers PDF existants
  • Rotation des pages du PDF
  • Extraction de texte, de métadonnées et d'images à partir de fichiers PDF
  • Convertir des fichiers PDF en d'autres formats
  • Sécuriser les fichiers PDF à l'aide de mots de passe et de restrictions
  • Diviser et fusionner des PDF

    Note: IronPDF produit un fichier de données PDF filigrané. Pour supprimer le filigrane, vous devez acquérir une licence IronPDF. Si vous souhaitez utiliser une version sous licence d'IronPDF, visitez la page Site web d'IronPDF à obtenir une clé de licence.

Conditions préalables

Avant de travailler avec IronPDF for Python, il y a quelques prérequis à mettre en place :

  1. Installation de Python : Assurez-vous que Python est installé sur votre système. IronPDF est compatible avec les versions 3.x de Python, assurez-vous donc d'avoir une installation Python compatible.

  2. Bibliothèque IronPDF : Installez la bibliothèque IronPDF pour accéder à ses fonctionnalités. Vous pouvez l'installer à l'aide du gestionnaire de paquets Python (pip) en exécutant la commande suivante dans votre interface de ligne de commande :
    :InstallCmd pip install ironpdf
  1. Bibliothèque Tkinter : Tkinter est la boîte à outils graphique standard pour Python. Il est utilisé pour créer l'interface utilisateur graphique du visualiseur PDF dans l'extrait de code fourni. Tkinter est généralement préinstallé avec Python, mais si vous rencontrez des problèmes, vous pouvez l'installer à l'aide du gestionnaire de paquets :
    :InstallCmd pip install tkinter
  1. Bibliothèque Pillow : La bibliothèque Pillow est un dérivé de la bibliothèque d'imagerie Python (LIP) et offre des possibilités supplémentaires de traitement d'images. Il est utilisé dans l'extrait de code pour charger et afficher les images extraites du PDF. Installez Pillow à l'aide du gestionnaire de paquets :
    :InstallCmd pip install pillow
  1. Environnement de développement intégré (L'IDE) : L'utilisation d'un IDE pour gérer les projets Python peut grandement améliorer votre expérience de développement. Il offre des fonctionnalités telles que la complétion de code, le débogage et un flux de travail plus rationalisé. PyCharm est un IDE populaire pour le développement de Python. Vous pouvez télécharger et installer PyCharm à partir du site web de JetBrains (https://www.jetbrains.com/pycharm/).

  2. Éditeur de texte : Si vous préférez travailler avec un éditeur de texte léger, vous pouvez utiliser l'éditeur de texte de votre choix, tel que Visual Studio Code, Sublime Text ou Atom. Ces éditeurs proposent la coloration syntaxique et d'autres fonctionnalités utiles pour le développement de Python. Vous pouvez également utiliser l'application IDLE propre à Python pour créer des scripts Python.

Création d'un projet de visualisation de PDF avec PyCharm

Après avoir installé l'IDE PyCharm, créez un projet python PyCharm en suivant les étapes ci-dessous :

  1. Lancer PyCharm: Ouvrez PyCharm à partir du lanceur d'applications de votre système ou d'un raccourci sur le bureau.

  2. Créer un nouveau projet: Cliquez sur "Créer un nouveau projet" ou ouvrez un projet Python existant.

    Comment convertir un PDF en texte en Python (Tutoriel) : Figure 1

  3. Configurer les paramètres du projet: Donnez un nom à votre projet et choisissez l'endroit où créer le répertoire du projet. Sélectionnez l'interpréteur Python pour votre projet. Cliquez ensuite sur "Créer".

    Comment convertir un PDF en texte en Python (Tutoriel) : Figure 2

  4. Créer les fichiers sources: PyCharm va créer la structure du projet, y compris un fichier Python principal et un répertoire pour les fichiers sources supplémentaires. Commencez à écrire le code et cliquez sur le bouton d'exécution ou appuyez sur Shift+F10 pour exécuter le script.

Etapes pour visualiser des fichiers PDF en Python avec IronPDF for Python

Importer les bibliothèques nécessaires

Pour commencer, nous devons importer les bibliothèques nécessaires. Dans ce cas, nous avons besoin des bibliothèques os, shutil, ironpdf, tkinter, et PIL. Les bibliothèques os et shutil sont utilisées pour les opérations sur les fichiers et les dossiers, ironpdf est la bibliothèque pour travailler avec les fichiers PDF, tkinter est utilisée pour créer l'interface utilisateur graphique (GUI)et la LIP est utilisée pour la manipulation de l'image.

import os, shutil, ironpdf
from tkinter import *
from PIL import Image, ImageTk
PYTHON

Convertir un document PDF en images

Ensuite, nous définissons une fonction appelée convert_pdf_to_images. Cette fonction prend en entrée le chemin du fichier PDF. Dans la fonction, nous utilisons la bibliothèque IronPDF pour charger le document PDF à partir du fichier. Nous spécifions ensuite un chemin d'accès au dossier pour stocker les fichiers images extraits. La méthode pdf.RasterizeToImageFiles d'IronPDF est utilisée pour convertir chaque page du PDF en un fichier image et l'enregistrer dans le dossier spécifié. Nous créons également une liste pour stocker les chemins d'accès aux images. L'exemple de code complet est le suivant :

def convert_pdf_to_images(pdf_file):
    pdf = ironpdf.PdfDocument.FromFile(pdf_file)
    # Extract all pages to a folder as image files
    folder_path = "images"
    pdf.RasterizeToImageFiles(os.path.join(folder_path, "*.png"))
    # List to store the image paths
    image_paths = []
    # Get the list of image files in the folder
    for filename in os.listdir(folder_path):
        if filename.lower().endswith((".png", ".jpg", ".jpeg", ".gif")):
            image_paths.append(os.path.join(folder_path, filename))
    return image_paths
PYTHON

Pour extraire du texte de documents PDF, visitez cette page d'exemples de code lien.

Poignée Fermeture de la fenêtre

Afin de nettoyer les fichiers d'images extraits lorsque la fenêtre de l'application est fermée, nous définissons une fonction(n) fonction on_closing. Dans cette fonction, nous utilisons la fonction shutil.rmtree() pour supprimer l'intégralité du dossier images. Nous avons également défini cette fonction comme le protocole à exécuter lorsque la fenêtre est fermée. Le code suivant permet de réaliser cette tâche :

def on_closing():
    # Delete the images in the 'images' folder
    shutil.rmtree("images")
    window.destroy()

window.protocol("WM_DELETE_WINDOW", on_closing)
PYTHON

Créer la fenêtre de l'interface graphique

Maintenant, nous créons la fenêtre principale de l'interface graphique en utilisant la fonction Tk() constructeur. Nous fixons le titre de la fenêtre à "Image Viewer" et définissons la fonction on_closing() comme protocole pour gérer la fermeture de la fenêtre.

window = Tk()
window.title("Image Viewer")
window.protocol("WM_DELETE_WINDOW", on_closing)
PYTHON

Créer un canevas déroulant

Pour afficher les images et permettre le défilement, nous créons un widget Canvas. Le widget Canvas est configuré pour remplir l'espace disponible et s'étendre dans les deux sens en utilisant pack(side=LEFT, fill=BOTH, expand=True). Nous créons également un widget Scrollbar et le configurons pour contrôler le défilement vertical de toutes les pages et du canevas.

canvas = Canvas(window)
canvas.pack(side=LEFT, fill=BOTH, expand=True)
scrollbar = Scrollbar(window, command=canvas.yview)
scrollbar.pack(side=RIGHT, fill=Y)
canvas.configure(yscrollcommand=scrollbar.set)
canvas.bind("<Configure>", lambda e:canvas.configure(scrollregion=canvas.bbox("all")))
canvas.bind_all("<MouseWheel>", lambda e: canvas.yview_scroll(int(-1*(e.delta/120)), "units"))
PYTHON

Créer un cadre pour les images

Ensuite, nous créons un widget Frame à l'intérieur du canevas pour contenir les images. Nous utilisons create_window() pour placer le cadre dans la toile. Le (0, 0) et le paramètre anchor='nw' garantissent que le cadre commence dans le coin supérieur gauche de la toile.

frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")
PYTHON

Convertir un fichier PDF en images et l'afficher

Nous appelons la fonction convert_pdf_to_images() avec le nom du chemin d'accès au fichier PDF d'entrée. Cette fonction extrait les pages PDF sous forme d'images et renvoie une liste de chemins d'accès aux images. Nous parcourons les chemins d'accès aux images et chargeons chaque image à l'aide de la fonction Image.open() de la bibliothèque PIL. Nous créons ensuite un objet PhotoImage en utilisant ImageTk.PhotoImage()et créer un widget Label pour afficher l'image.

images = convert_pdf_to_images("input.pdf")
# Load and display the images in the Frame
for image_path in images:
    image = Image.open(image_path)
    photo = ImageTk.PhotoImage(image)
    label = Label(frame, image=photo)
    label.image = photo  # Store a reference to prevent garbage collection
    label.pack(pady=10)
PYTHON

Fichier d'entrée

Comment convertir un PDF en texte en Python (Tutoriel) : Figure 3

Exécuter la boucle principale de l'interface graphique

Enfin, nous lançons la boucle événementielle principale en utilisant window.mainloop(). Cela garantit que la fenêtre de l'interface graphique reste ouverte et réactive jusqu'à ce qu'elle soit fermée par l'utilisateur.

window.mainloop()
PYTHON

Sortie

Comment convertir un PDF en texte en Python (Tutoriel) : Figure 4

Conclusion

Dans ce tutoriel, nous avons appris à afficher des documents PDF en Python à l'aide de la fonction IronPDF bibliothèque. Nous avons abordé les étapes nécessaires à l'ouverture d'un fichier PDF et à sa conversion en une série de fichiers images, puis à leur affichage dans un canevas défilant et à la gestion du nettoyage des images extraites à la fermeture de l'application.

Pour plus de détails sur la bibliothèque IronPDF for Python, veuillez vous référer à la section la documentation.

Télécharger et installer IronPDF Python et obtenir également un essai gratuit pour tester l'ensemble de ses fonctionnalités dans le cadre d'un développement commercial.

< PRÉCÉDENT
Comment extraire du texte d'un PDF en Python
SUIVANT >
Comment convertir un PDF en texte en Python (Tutoriel)

Prêt à commencer ? Version : 2024.9 vient de paraître

Installation gratuite de pip Voir les licences > ;