Saltar al pie de página
AYUDA DE PYTHON

imageio python (Cómo Funciona para Desarrolladores)

Imageio es una biblioteca de Python versátil diseñada para leer y escribir una amplia gama de datos de imagen, incluyendo imágenes animadas, datos volumétricos y formatos científicos. Ofrece una API sencilla y coherente, lo que la convierte en una excelente opción para desarrolladores y científicos de datos que trabajan en tareas de procesamiento de datos de imágenes. En este artículo, veremos cómo se puede utilizar Imageio para leer y escribir imágenes. Más adelante, también analizaremos IronPDF de Iron Software para generar documentos PDF. Ambos paquetes pueden utilizarse para crear imágenes y almacenarlas en documentos PDF con fines de archivo.

¿Por qué utilizar Imageio?

Imageio ofrece varias ventajas:

  1. Compatibilidad con múltiples formatos: es compatible con numerosos formatos de imagen, incluidos PNG, JPEG, GIF, TIFF y muchos más.
  2. Facilidad de uso: La API es fácil de usar, incluso para principiantes.
  3. Compatibilidad multiplataforma: Imageio funciona en varios sistemas operativos, incluidos Windows, macOS y Linux.
  4. Integración con otras bibliotecas: Se puede utilizar junto con otras bibliotecas de Python, como NumPy y Matplotlib, para el procesamiento avanzado de imágenes y la visualización.

Introducción a Imageio

Instalación

Puedes instalar Imageio utilizando pip:

pip install imageio
pip install imageio
SHELL

Uso básico

A continuación se muestra un ejemplo sencillo para demostrar cómo leer y escribir imágenes utilizando Imageio:

import imageio.v3 as iio

# Read an image
image = iio.imread('image.jpg')
print(image.shape)  # Output: (329, 559, 3)

# Write the image to a new file
iio.imwrite('newimage.jpg', image)
import imageio.v3 as iio

# Read an image
image = iio.imread('image.jpg')
print(image.shape)  # Output: (329, 559, 3)

# Write the image to a new file
iio.imwrite('newimage.jpg', image)
PYTHON

En este ejemplo, Imageio lee un archivo de imagen e imprime su forma. A continuación, escribe la imagen en un nuevo archivo.

Resultado

imageio python (Cómo funciona para desarrolladores): Figura 1 - Leer y escribir imágenes con Imageio

Funciones avanzadas

Imageio ofrece numerosas funciones avanzadas para tareas de procesamiento de imágenes más complejas:

  1. Lectura desde diversas fuentes: Imageio puede leer imágenes desde archivos, URL e incluso flujos de bytes.
  2. Imágenes animadas: Admite la lectura y escritura de imágenes animadas como GIF.
  3. Procesamiento de vídeo: Imageio puede gestionar archivos de vídeo, lo que le permite leer y escribir fotogramas de vídeo.
  4. Datos volumétricos: Admite la lectura y escritura de datos volumétricos, lo cual resulta útil para aplicaciones científicas.

Ejemplo: Creación de un GIF

A continuación se muestra un ejemplo de cómo crear un GIF a partir de una serie de imágenes utilizando Imageio:

import imageio.v2 as imageio
import numpy as np  # Import NumPy for numerical operations

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg']  # Specify your image files here

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=1.0)  # Duration is in seconds per frame
import imageio.v2 as imageio
import numpy as np  # Import NumPy for numerical operations

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg']  # Specify your image files here

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=1.0)  # Duration is in seconds per frame
PYTHON

En este ejemplo, Imageio lee una serie de imágenes y crea un GIF animado.

imageio python (Cómo funciona para los desarrolladores): Figura 2 - Salida GIF

Presentamos IronPDF

imageio python (Cómo funciona para los desarrolladores): Figura 3 - IronPDF: La biblioteca PDF for Python

IronPDF es una potente biblioteca de Python diseñada para crear, editar y firmar archivos PDF utilizando HTML, CSS, imágenes y JavaScript. Ofrece un rendimiento de nivel comercial con un bajo consumo de memoria y una interfaz sencilla. Las características principales incluyen:

Conversión de HTML a PDF:

Convierte archivos HTML, cadenas HTML y URL a PDF. Por ejemplo, renderizar una página web como PDF utilizando el renderizador de PDF de Chrome.

Compatibilidad multiplataforma:

IronPDF está diseñado for Python 3+ y también funciona en Windows, Mac, Linux o plataformas en la nube.
IronPDF también está disponible en .NET, Java, Python y Node.js.

Edición y firma:

Configure propiedades, añada seguridad con contraseñas y permisos, y aplique firmas digitales a sus archivos PDF.

Plantillas de página y configuración:

Puede personalizar los archivos PDF con encabezados, pies de página, números de página y márgenes ajustables. Además, admite tamaños de papel personalizados y diseños adaptativos.

Cumplimiento de las normas:

Cumple con los estándares PDF, incluidos PDF/A y PDF/UA, admite la codificación de caracteres UTF-8 y gestiona recursos como imágenes, CSS y fuentes.

Instalación

 pip install ironpdf

Generar documentos PDF con IronPDF e Imageio

Requisitos previos

  1. Asegúrate de que Visual Studio Code está instalado como editor de código
  2. Python versión 3 está instalado

Para empezar, creemos un archivo Python para añadir nuestros scripts.

Abre Visual Studio Code y crea un archivo, ImageioDemo.py.

Instala las bibliotecas necesarias:

pip install imageio
pip install ironpdf
pip install imageio
pip install ironpdf
SHELL

A continuación, añade el código siguiente para mostrar el uso de los paquetes de Python IronPDF e Imageio.

import imageio.v2 as imageio
import numpy as np
from ironpdf import * 

# Apply your license key
License.LicenseKey = "your-key"

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=0.5)  # Duration is in seconds per frame

# Convert the GIF to PDF
ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf")
import imageio.v2 as imageio
import numpy as np
from ironpdf import * 

# Apply your license key
License.LicenseKey = "your-key"

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=0.5)  # Duration is in seconds per frame

# Convert the GIF to PDF
ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf")
PYTHON

Explicación del código

Este script convierte una lista de archivos de imagen (img1.jpg, img2.jpg, img3.jpg) en un GIF y, a continuación, convierte ese GIF en un documento PDF.

  1. Importación de bibliotecas:

    • imageio.v2 as imageio: Importa la biblioteca imageio para el procesamiento de imágenes.
    • numpy as np: Importa NumPy para operaciones numéricas (aunque no se utiliza explícitamente en el fragmento de código proporcionado).
    • from ironpdf import *: Importa las funciones necesarias de la biblioteca IronPDF.
  2. Clave de licencia:

    • License.LicenseKey = "your-key": Establece la clave de licencia para la biblioteca IronPDF. Sustituya "your-key" por la clave de licencia real.
  3. Lista de archivos de imagen:

    • image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']: Define una lista que contiene las rutas a tres archivos de imagen (img1.jpg, img2.jpg, img3.jpg).
  4. Lectura de imágenes:

    • for file in image_files: images.append(imageio.imread(file)): Recorre cada ruta de archivo en image_files, lee la imagen utilizando imageio.imread() y añade los datos de la imagen a la lista images.
  5. Creación de un GIF:

    • imageio.mimsave('output2.gif', images, duration=0.5): Ahorra las imágenes almacenadas en la lista images como un archivo GIF denominado 'output2.gif'. El parámetro duration=0.5 especifica la duración (en segundos) de cada fotograma del GIF.
  6. Conversión de GIF a PDF:
    • ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf"): Convierte el archivo GIF ("output2.gif") generado en el paso anterior a un PDF utilizando ImageToPdfConverter de IronPdf y lo guarda como "ironPdf-imageio.pdf".

El script lee primero varios archivos de imagen, los compila en una animación GIF con duraciones de fotograma especificadas y, a continuación, convierte esta animación GIF en un documento PDF utilizando las funcionalidades de la biblioteca IronPdf. Las imágenes GIF se almacenan como una serie de imágenes en el PDF, tal y como se muestra a continuación.

Resultado

imageio python (Cómo funciona para los desarrolladores): Figura 4 - GIF animado

PDF

imageio python (Cómo funciona para los desarrolladores): Figura 5 - Salida en PDF

Licencia de IronPDF

IronPDF funciona con la clave de licencia for Python. IronPDF for Python ofrece una licencia de prueba gratuita para que los usuarios puedan probar sus amplias funciones antes de la compra.

Coloque la clave de licencia al principio del script antes de utilizar el paquete IronPDF:

from ironpdf import * 
# Apply your license key
License.LicenseKey = "your-key"
from ironpdf import * 
# Apply your license key
License.LicenseKey = "your-key"
PYTHON

Conclusión

Imageio es una biblioteca potente y flexible para el procesamiento de imágenes en Python. Su facilidad de uso, su amplia compatibilidad con formatos y sus funciones avanzadas la convierten en una herramienta valiosa para desarrolladores y científicos de datos. Tanto si necesitas realizar manipulaciones de imágenes sencillas como gestionar datos complejos de imágenes o volumétricos, Imageio te ofrece la funcionalidad que necesitas en un paquete fácil de usar. IronPDF es una biblioteca de Python versátil diseñada para crear, manipular y convertir documentos PDF. Permite realizar tareas como generar archivos PDF desde cero, convertir HTML e imágenes a PDF, y llevar a cabo diversas operaciones con documentos, como fusionar y proteger archivos PDF. Es compatible con múltiples plataformas y se integra a la perfección con aplicaciones Python, lo que la convierte en una potente herramienta para gestionar tareas relacionadas con PDF mediante programación.

Junto con estas bibliotecas, podemos trabajar con el procesamiento de imágenes y almacenar los resultados en formato PDF con fines de archivo.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más

Equipo de soporte de Iron

Estamos disponibles online las 24 horas, 5 días a la semana.
Chat
Email
Llámame