USO DE IRONPDF FOR .NET

Cómo ver archivos PDF en Python

Actualizado 2 de julio, 2023
Compartir:

PDF (formato de documento portátil)

PDF es un formato de archivo muy popular para compartir documentos. Se trata de un formato versátil para la información documental que puede visualizarse en diversos dispositivos y que, además, puede protegerse con permisos de seguridad.

En Python, hay una serie de bibliotecas que se pueden utilizar para leer y manipular documentos PDF. Una de estas bibliotecas es IronPDF. IronPDF es una potente biblioteca que proporciona una amplia gama de funciones para trabajar con documentos PDF.

En este artículo, aprenderemos a visualizar archivos PDF en Python utilizando la librería IronPDF.

IronPDF - Biblioteca Python

IronPDF es una potente biblioteca de Python que permite a los desarrolladores trabajar con archivos PDF mediante programación. 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 características de la biblioteca IronPDF Python incluyen:

  • Crear un nuevo archivo PDF desde cero utilizando HTML o URL
  • Editar archivos PDF existentes
  • Girar páginas PDF
  • Extraer texto, metadatos e imágenes de archivos PDF
  • Convierte archivos PDF a otros formatos
  • Proteja los archivos PDF con contraseñas y restricciones
  • Dividir y fusionar PDF

    Nota: IronPDF produce un archivo de datos PDF con marca de agua. Para eliminar la marca de agua, necesita una licencia de IronPDF. Si desea utilizar una versión con licencia de IronPDF, visite la página Sitio web de IronPDF a obtener una clave de licencia.

Requisitos previos

Antes de trabajar con IronPDF en Python, hay algunos requisitos previos que debemos tener en su lugar:

  1. Instalación de Python: Asegúrese de que tiene 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
  1. Biblioteca Tkinter: Tkinter es el conjunto de herramientas GUI estándar 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
  1. Biblioteca Pillow: La librería Pillow es un fork de la Python Imaging Library (PIL) y proporciona funciones 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
  1. Entorno de desarrollo integrado (IDE): El uso de un IDE para manejar proyectos de Python, puede mejorar en gran medida su 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. Puede descargar e instalar PyCharm desde el sitio web de JetBrains (https://www.jetbrains.com/pycharm/).
  2. Editor de texto: Alternativamente, si prefiere trabajar con un editor de texto ligero, puede utilizar cualquier editor de texto de su 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 IDLE de python para crear scripts de Python.

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

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

  1. Inicie PyCharm: Abra PyCharm desde el lanzador de aplicaciones de su sistema o desde el acceso directo del escritorio.
  2. Crear un nuevo proyecto: Haga clic en "Crear nuevo proyecto" o abra un proyecto Python existente.

    Cómo convertir PDF a texto en Python (Tutorial): Figura 1

  3. Configure los 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

  4. Crear archivos fuente: PyCharm creará la estructura del proyecto, incluyendo un archivo Python principal 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, tenemos que importar las bibliotecas necesarias. En este caso, necesitamos las bibliotecas os, shutil, ironpdf, tkinter y PIL. Las bibliotecas os y shutil se utilizan para las operaciones con 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 el PIL se utiliza para la manipulación de imágenes.

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

Convertir documentos PDF en imágenes

A continuación, definimos una función llamada convert_pdf_to_images. Esta función toma como entrada la ruta del archivo PDF. Dentro de la función, utilizamos la biblioteca IronPDF para cargar el documento PDF desde el archivo. A continuación, especificamos 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 PDF del PDF en un archivo de imagen y guardarlo en la carpeta especificada. También creamos 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
PYTHON

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

Asa Cierre Ventana

Para limpiar los archivos de imagen extraídos cuando se cierra la ventana de la aplicación, definimos una función(n) función on_closing. Dentro de esta función, utilizamos el shutil.rmtree()para borrar toda la carpetaimages`. También establecemos 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)
PYTHON

Crear la ventana GUI

Ahora, creamos la ventana principal de la GUI usando el Tk() constructor. Establecemos el título de la ventana como "Visor de imágenes" y establecemos el parámetro on_closing() como el protocolo para manejar el cierre de ventanas.

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

Crear un lienzo desplazable

Para mostrar las imágenes y permitir el desplazamiento, creamos un widget Canvas. El widget Canvas está configurado para llenar el espacio disponible y expandirse en ambas direcciones utilizando pack(side=IZQUIERDO, fill=AMBOS, expand=Verdadero). También creamos un widget Scrollbar y lo configuramos para controlar el desplazamiento vertical de todas las páginas y canvas.

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

Crear un marco para imágenes

A continuación, creamos un widget Frame dentro del lienzo para contener las imágenes. Utilizamos create_window() para colocar el marco dentro del lienzo. El (0, 0) y el parámetro anchor='nw' aseguran que el marco comienza en la esquina superior izquierda del lienzo.

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

Convertir un archivo PDF en imágenes y mostrarlas

Llamamos a la función convert_pdf_to_images() con el nombre de la ruta del archivo PDF de entrada. Esta función extrae las páginas PDF como imágenes y devuelve una lista de rutas de imágenes. Recorremos las rutas de las imágenes y cargamos cada una de ellas con Image.open()de la biblioteca PIL. A continuación creamos un objetoPhotoImageutilizandoImageTk.PhotoImage()y crear un widgetLabel` 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)
PYTHON

Fichero de entrada

Cómo convertir PDF a texto en Python (Tutorial): Figura 3

Ejecutar el bucle principal GUI

Por último, ejecutamos el bucle de eventos principal con window.mainloop(). Esto garantiza que la ventana GUI permanezca abierta y responda hasta que el usuario la cierre.

window.mainloop()
PYTHON

Salida

Cómo convertir PDF a texto en Python (Tutorial): Figura 4

Conclusión

En este tutorial, aprendimos a ver documentos PDF en Python utilizando la función IronPDF biblioteca. Cubrimos 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 información sobre la biblioteca Python IronPDF, consulte la página documentación.

Descargar e instalar IronPDF Python biblioteca y también obtener un prueba gratuita para probar su funcionalidad completa en el desarrollo comercial.

< 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: 2024.5 recién publicada

Instalación pip gratuita Ver licencias >