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")
Cet article explorera la manière d'afficher des fichiers PDF en Python à l'aide de la bibliothèque IronPDF.
IronPDF - Bibliothèque Python
IronPDF est une bibliothèque Python puissante qui permet aux développeurs de travailler de manière programmatique avec des fichiers PDF. 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.
Parmi les caractéristiques de la bibliothèque IronPDF for Python, citons :
Note : IronPDF produit un fichier de données PDF avec un filigrane. Pour supprimer le filigrane, vous devez obtenir une licence IronPDF. Si vous souhaitez utiliser une version sous licence d'IronPDF, visitez le site Web d'IronPDF pour obtenir une clé de licence.
Conditions préalables
Avant de travailler avec IronPDF for Python, il y a quelques prérequis :
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.
Bibliothèque IronPDF : Installez la bibliothèque IronPDF pour accéder à ses fonctionnalités. Vous pouvez l'installer en utilisant le gestionnaire de packages Python (pip) en exécutant la commande suivante dans votre interface en ligne de commande :
:InstallCmd pip install ironpdf
:InstallCmd pip install ironpdf
SHELL
Bibliothèque Tkinter : Tkinter est l'outil GUI 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
:InstallCmd pip install tkinter
SHELL
Bibliothèque Pillow : La bibliothèque Pillow est un fork de la bibliothèque Python Imaging Library (PIL) et offre des capacité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
:InstallCmd pip install pillow
SHELL
Environnement de Développement Intégré (IDE) : Utiliser 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 depuis le site Web de JetBrains (https://www.jetbrains.com/pycharm/).
Éditeur de texte : Alternativement, si vous préférez travailler avec un éditeur de texte léger, vous pouvez utiliser n'importe quel é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 IDE de Python pour créer des scripts Python.
Création d'un projet de visualisation de PDF avec PyCharm
Après avoir installé PyCharm IDE, créez un projet PyCharm Python en suivant les étapes ci-dessous :
Lancez PyCharm : Ouvrez PyCharm depuis le lanceur d'applications de votre système ou le raccourci sur le bureau.
Créer un nouveau projet : Cliquez sur "Créer un nouveau projet" ou ouvrez un projet Python existant.
PyCharm IDE
Configurer les paramètres du projet : Fournissez un nom pour votre projet et choisissez l'emplacement pour créer le répertoire du projet. Sélectionnez l'interpréteur Python pour votre projet. Cliquez ensuite sur "Créer".
Créer un nouveau projet Python
Créer des fichiers source : PyCharm créera la structure du projet, y compris un fichier principal Python et un répertoire pour les fichiers source 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, importez les bibliothèques nécessaires. Dans ce cas, les bibliothèques os, shutil, ironpdf, tkinter, et PIL seront nécessaires. Les bibliothèques os et shutil sont utilisées pour les opérations sur les fichiers et dossiers, ironpdf est la bibliothèque pour travailler avec les fichiers PDF, tkinter est utilisé pour créer l'interface graphique utilisateur (GUI) et PIL est utilisé pour la manipulation d'images.
import os
import shutil
import ironpdf
from tkinter import *
from PIL import Image, ImageTk
py
PYTHON
Convertir un document PDF en images
Ensuite, définissez une fonction appelée convert_pdf_to_images. Cette fonction prend en entrée le chemin du fichier PDF. À l'intérieur de la fonction, la bibliothèque IronPDF est utilisée pour charger le document PDF à partir du fichier. Il faut ensuite spécifier un chemin d'accès au dossier pour stocker les fichiers d'image extraits. La méthode pdf.RasterizeToImageFiles de IronPDF est utilisée pour convertir chaque page du PDF en un fichier image et l'enregistrer dans le dossier spécifié. Une liste est utilisée 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
Pour nettoyer les fichiers d'images extraites lorsque la fenêtre de l'application est fermée, définissez une fonction on_closing. À l'intérieur de cette fonction, utilisez la méthode shutil.rmtree() pour supprimer le dossier images en entier. Ensuite, définissez 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)
py
PYTHON
Créer la fenêtre de l'interface graphique
Maintenant, créons la fenêtre principale de l'interface graphique en utilisant le constructeur Tk() en définissant le titre de la fenêtre sur "Image Viewer" et en définissant la fonction on_closing() comme protocole pour gérer la fermeture de la fenêtre.
Pour afficher les images et activer le défilement, créez un widget Canvas. Le widget Canvas est configuré pour remplir l'espace disponible et s'étendre dans les deux directions en utilisant pack(side=LEFT, fill=BOTH, expand=True). De plus, créez un widget Scrollbar et configurez-le pour contrôler le défilement vertical de toutes les pages et du canevas.
Ensuite, créez un widget Frame à l'intérieur du canvas pour contenir les images en utilisant create_window() afin de placer le cadre dans le canvas. Les coordonnées (0, 0) et le paramètre anchor='nw' garantissent que le cadre commence dans le coin supérieur gauche du canevas.
La prochaine étape consiste à appeler la fonction convert_pdf_to_images() avec le nom du chemin de fichier du fichier PDF d'entrée. Cette fonction extrait les pages du PDF sous forme d'images et renvoie une liste de chemins d'images. En itérant à travers les chemins d'image et en chargeant chaque image en utilisant la méthode Image.open() de la bibliothèque PIL, un objet PhotoImage est créé en utilisant ImageTk.PhotoImage(). Créez ensuite 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)
py
PYTHON
Le fichier d'entrée
Exécuter la boucle principale de l'interface graphique
Enfin, exécutons la boucle d'événements 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()
py
PYTHON
La sortie de l'interface utilisateur
Conclusion
Ce tutoriel a exploré comment afficher des documents PDF en Python en utilisant la bibliothèque IronPDF. Elle couvre les étapes nécessaires pour ouvrir un fichier PDF et le convertir en une série de fichiers images, puis les afficher dans un canevas défilant, et gérer le 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 documentation.
Téléchargez et installez la bibliothèque IronPDF for Python et obtenez également une version d'essai gratuite pour tester sa fonctionnalité complète dans le développement commercial.
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT Comment extraire du texte d'un PDF en Python
SUIVANT > Comment convertir un PDF en texte en Python (Tutoriel)
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier