USO DE IRONPDF FOR PYTHON

Cómo ver archivos PDF en Python

Este artículo explorará cómo ver archivos PDF en Python utilizando la biblioteca IronPDF.

IronPDF - Biblioteca Python

IronPDF es una potente biblioteca de Python que permite a los desarrolladores trabajar con archivos PDF de manera programática. Con IronPDF, puede generar, manipular y extraer fácilmente datos de documentos PDF, lo que la convierte en una herramienta versátil para diversas tareas relacionadas con PDF. Tanto si necesita crear PDFs desde cero, modificar PDFs existentes o extraer contenido de PDFs, IronPDF le ofrece un completo conjunto de funciones para simplificar su flujo de trabajo.

Algunas de las características de la biblioteca IronPDF for Python son:

Requisitos previos

Antes de trabajar con IronPDF en Python, hay algunos requisitos previos:

  1. Instalación de Python: Asegúrese de tener Python instalado en su sistema. IronPDF es compatible con las versiones Python 3.x, así que asegúrese de tener una instalación Python compatible.

  2. Biblioteca IronPDF: Instale la biblioteca IronPDF para acceder a su funcionalidad. Puede instalarlo utilizando el gestor de paquetes de Python (pip) ejecutando el siguiente comando en su interfaz de línea de comandos:
    :InstallCmd pip install ironpdf
    :InstallCmd pip install ironpdf
SHELL
  1. Biblioteca Tkinter: Tkinter es el kit de herramientas estándar de GUI para Python. Se utiliza para crear la interfaz gráfica de usuario del visor de PDF en el fragmento de código proporcionado. Tkinter suele venir preinstalado con Python, pero si encuentras algún problema, puedes instalarlo usando el gestor de paquetes:
    :InstallCmd pip install tkinter
    :InstallCmd pip install tkinter
SHELL
  1. Biblioteca Pillow: La biblioteca Pillow es un fork de la Biblioteca de Imágenes de Python (PIL) y ofrece capacidades adicionales de procesamiento de imágenes. Se utiliza en el fragmento de código para cargar y mostrar las imágenes extraídas del PDF. Instale Pillow utilizando el gestor de paquetes:
    :InstallCmd pip install pillow
    :InstallCmd pip install pillow
SHELL
  1. Entorno de Desarrollo Integrado (IDE): Usar un IDE para gestionar proyectos en Python puede mejorar significativamente tu experiencia de desarrollo. Ofrece funciones como la finalización de código, la depuración y un flujo de trabajo más ágil. Un IDE popular para el desarrollo de Python es PyCharm. Puedes descargar e instalar PyCharm desde el sitio web de JetBrains (https://www.jetbrains.com/pycharm/).

  2. Editor de texto: Alternativamente, si prefieres trabajar con un editor de texto liviano, puedes usar cualquier editor de texto de tu elección, como Visual Studio Code, Sublime Text o Atom. Estos editores ofrecen resaltado de sintaxis y otras funciones útiles para el desarrollo en Python. También puedes utilizar la propia aplicación IDE de Python para crear scripts de Python.

Creación de un proyecto de visor de PDF con PyCharm

Después de instalar PyCharm IDE, cree un proyecto PyCharm Python siguiendo los siguientes pasos:

  1. Lanza PyCharm: Abre PyCharm desde el lanzador de aplicaciones de tu sistema o el acceso directo en el escritorio.

  2. Crear un nuevo proyecto: Haz clic en "Crear nuevo proyecto" o abre un proyecto de Python existente.

    Cómo Convertir PDF a Texto en Python (Tutorial), Figura 1: PyCharm IDE

    PyCharm IDE

  3. Configurar ajustes del proyecto: Proporcione un nombre para su proyecto y elija la ubicación para crear el directorio del proyecto. Seleccione el intérprete de Python para su proyecto. A continuación, haga clic en "Crear".

    Cómo Convertir PDF a Texto en Python (Tutorial), Figura 2: Crear un nuevo proyecto de Python

    Crear un nuevo proyecto en Python

  4. Crear archivos fuente: PyCharm creará la estructura del proyecto, incluyendo un archivo principal de Python y un directorio para archivos fuente adicionales. Empieza a escribir el código y haz clic en el botón Ejecutar o pulsa Mayús+F10 para ejecutar el script.

Pasos para ver archivos PDF en Python usando IronPDF

Importar las bibliotecas necesarias

Para empezar, importe las bibliotecas necesarias. En este caso, se necesitarán las bibliotecas os, shutil, ironpdf, tkinter, y PIL. Las bibliotecas os y shutil se utilizan para operaciones de archivos y carpetas, ironpdf es la biblioteca para trabajar con archivos PDF, tkinter se utiliza para crear la interfaz gráfica de usuario (GUI), y PIL se utiliza para la manipulación de imágenes.

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

Convertir documentos PDF en imágenes

A continuación, define una función llamada convert_pdf_to_images. Esta función toma como entrada la ruta del archivo PDF. Dentro de la función, se utiliza la biblioteca IronPDF para cargar el documento PDF desde el archivo. A continuación, se especifica una ruta de carpeta para almacenar los archivos de imagen extraídos. El método pdf.RasterizeToImageFiles de IronPDF se utiliza para convertir cada página del PDF en un archivo de imagen y guardarlo en la carpeta especificada. Y se utiliza una lista para almacenar las rutas de las imágenes. El ejemplo de código completo es el siguiente:

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
py
PYTHON

Para extraer texto de documentos PDF, visite esta página de ejemplos de código.

Asa Cierre Ventana

Para limpiar los archivos de imagen extraídos cuando se cierra la ventana de la aplicación, defina una función on_closing. Dentro de esta función, use el método shutil.rmtree() para eliminar la carpeta images completa. A continuación, establezca esta función como el protocolo que se ejecutará cuando se cierre la ventana. El siguiente código ayuda a lograr la tarea:

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

window.protocol("WM_DELETE_WINDOW", on_closing)
py
PYTHON

Crear la ventana GUI

Ahora, vamos a crear la ventana principal de la interfaz gráfica de usuario (GUI) utilizando el constructor Tk() configurando el título de la ventana como "Image Viewer" y estableciendo la función on_closing() como el protocolo para manejar el cierre de la ventana.

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

Crear un lienzo desplazable

Para mostrar las imágenes y permitir el desplazamiento, crea un widget Canvas. El widget Canvas está configurado para llenar el espacio disponible y expandirse en ambas direcciones utilizando pack(side=LEFT, fill=BOTH, expand=True). Además, crea un widget de Scrollbar y configúralo para controlar el desplazamiento vertical de todas las páginas y el lienzo.

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"))
py
PYTHON

Crear un marco para imágenes

A continuación, crea un widget Frame dentro del lienzo para sostener las imágenes usando create_window() para colocar el marco dentro del lienzo. Las coordenadas (0, 0) y el parámetro anchor='nw' aseguran que el marco comience en la esquina superior izquierda del lienzo.

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

Convertir un archivo PDF en imágenes y mostrarlas

El siguiente paso es llamar a la función convert_pdf_to_images() con el nombre de la ruta de archivo del archivo PDF de entrada. Esta función extrae las páginas del PDF como imágenes y devuelve una lista de rutas de imagen. Al iterar a través de las rutas de las imágenes y cargar cada imagen usando el método Image.open() de la biblioteca PIL, se crea un objeto PhotoImage utilizando ImageTk.PhotoImage(). Luego crea un widget Label para mostrar la imagen.

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

Cómo convertir PDF a texto en Python (Tutorial), Figura 3: El archivo de entrada

El archivo de entrada

Ejecutar el bucle principal GUI

Finalmente, ejecutemos el bucle de eventos principal usando window.mainloop(). Esto garantiza que la ventana GUI permanezca abierta y responda hasta que el usuario la cierre.

window.mainloop()
py
PYTHON

Cómo convertir PDF a texto en Python (Tutorial), Figura 4: La salida de la interfaz de usuario

La salida de la interfaz de usuario

Conclusión

Este tutorial exploró cómo ver documentos PDF en Python utilizando la biblioteca IronPDF. Cubre los pasos necesarios para abrir un archivo PDF y convertirlo en una serie de archivos de imagen, y luego mostrarlos en un lienzo desplazable, y manejar la limpieza de las imágenes extraídas cuando se cierra la aplicación.

Para obtener más detalles sobre la biblioteca IronPDF for Python, consulte la documentación.

Descargue e instale la biblioteca IronPDF for Python y obtenga también una prueba gratuita para probar toda su funcionalidad en el desarrollo comercial.

Chaknith Bin
Ingeniero de software
Chaknith trabaja en IronXL e IronBarcode. Tiene una gran experiencia en C# y .NET, ayudando a mejorar el software y a apoyar a los clientes. Sus conocimientos de las interacciones con los usuarios contribuyen a mejorar los productos, la documentación y la experiencia general.
< ANTERIOR
Cómo extraer texto de un PDF en Python
SIGUIENTE >
Cómo convertir PDF a texto en Python (Tutorial)

¿Listo para empezar? Versión: 2025.5 acaba de salir

Ver licencias >