Passer au contenu du pied de page
AIDE PYTHON

imageio python (Comment ça marche pour les développeurs)

Imageio est une bibliothèque Python polyvalente conçue pour lire et écrire une large gamme de données d'image, y compris les images animées, les données volumétriques et les formats scientifiques. Il fournit une API simple et cohérente, en faisant un excellent choix pour les développeurs et les scientifiques des données travaillant avec des tâches de traitement de données d'image. In this article, we will look into how Imageio can be used to read and write images, later we will also look into IronPDF from Iron Software to generate PDF documents. Ces deux packages peuvent être utilisés pour créer des images et stocker des images dans des documents PDF à des fins d'archivage.

Pourquoi utiliser Imageio ?

Imageio offre plusieurs avantages :

  1. Support étendu des formats : Il prend en charge de nombreux formats d'image, y compris PNG, JPEG, GIF, TIFF, et plus.
  2. Facilité d'utilisation : L'API est simple à utiliser, même pour les débutants.
  3. Compatibilité multiplateforme : Imageio fonctionne sur divers systèmes d'exploitation, y compris Windows, macOS et Linux.
  4. Intégration avec d'autres bibliothèques : Il peut être utilisé avec d'autres bibliothèques Python comme NumPy et Matplotlib pour un traitement et une visualisation d'image avancés.

Commencer avec Imageio

Installation

Vous pouvez installer Imageio en utilisant pip :

pip install imageio
pip install imageio
SHELL

Utilisation de base

Voici un exemple simple pour démontrer comment lire et écrire des images en utilisant 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

Dans cet exemple, Imageio lit un fichier image et imprime sa forme. Il écrit ensuite l'image dans un nouveau fichier.

Sortie

imageio python (Comment cela fonctionne pour les développeurs) : Figure 1 - Lire et écrire une image en utilisant Imageio

Fonctionnalités avancées

Imageio propose de nombreuses fonctionnalités avancées pour des tâches de traitement d'image plus complexes :

  1. Lecture à partir de différentes sources : Imageio peut lire des images à partir de fichiers, d'URL, et même de flux d'octets.
  2. Images animées : Il prend en charge la lecture et l'écriture d'images animées comme les GIF.
  3. Traitement vidéo : Imageio peut gérer les fichiers vidéo, vous permettant de lire et d'écrire des trames vidéo.
  4. Données volumétriques : Il prend en charge la lecture et l'écriture de données volumétriques, ce qui est utile pour des applications scientifiques.

Exemple : Créer un GIF

Voici un exemple de création d'un GIF à partir d'une série d'images en utilisant 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

Dans cet exemple, Imageio lit une série d'images et crée un GIF animé.

imageio python (Comment cela fonctionne pour les développeurs) : Figure 2 - Sortie GIF

Présentation d'IronPDF

imageio python (Comment cela fonctionne pour les développeurs) : Figure 3 - IronPDF : La bibliothèque PDF Python

IronPDF est une bibliothèque Python puissante conçue pour créer, éditer et signer des PDF en utilisant HTML, CSS, images, et JavaScript. Il offre des performances de qualité commerciale avec une faible empreinte mémoire et une interface facile. Les caractéristiques clés incluent :

Conversion HTML en PDF :

Convertissez des fichiers HTML, des chaînes HTML et des URLs en PDFs. Par exemple, vous pouvez rendre une page web en PDF en utilisant le moteur de rendu Chrome PDF.

Soutien multiplateforme :

IronPDF est conçu pour Python 3+ et fonctionne également sous Windows, Mac, Linux ou plateformes cloud.
IronPDF is also available in .NET, Java, Python, and Node.js.

Édition et signature :

Définissez des propriétés, ajoutez de la sécurité avec des mots de passe et des permissions, et appliquez des signatures numériques à vos PDFs.

Modèles de page et paramètres :

Vous pouvez personnaliser les PDF avec des en-têtes, pieds de page, numéros de page, et marges ajustables. Il supporte également des tailles de papier personnalisées et des mises en page adaptatives.

Conformité aux normes :

Se conforme aux normes PDF, y compris PDF/A et PDF/UA, prend en charge l'encodage de caractères UTF-8, et gère des ressources telles que des images, CSS, et polices.

Installation

pip install ironpdf

Générer des documents PDF en utilisant IronPDF et Imageio

Prérequis

  1. Assurez-vous que Visual Studio Code est installé en tant qu'éditeur de code
  2. La version 3 de Python est installée

Pour commencer, créons un fichier Python pour ajouter nos scripts.

Ouvrez Visual Studio Code et créez un fichier, ImageioDemo.py.

Installez les bibliothèques nécessaires :

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

Ajoutez ensuite le code ci-dessous pour démontrer l'utilisation des packages Python IronPDF et 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

Explication du code

Ce script convertit une liste de fichiers image (img1.jpg, img2.jpg, img3.jpg) en un GIF puis convertit ce GIF en un document PDF.

  1. Importation des bibliothèques :

    • imageio.v2 as imageio : Importe la bibliothèque imageio pour le traitement d'images.
    • numpy as np : Importe NumPy pour les opérations numériques (bien que non utilisé explicitement dans le code snippet fourni).
    • from ironpdf import * : Importe les fonctions nécessaires de la bibliothèque IronPDF.
  2. Clé de licence :

    • License.LicenseKey = "your-key" : Définit la clé de licence pour la bibliothèque IronPDF. Remplacez "your-key" par la clé de licence réelle.
  3. Liste des fichiers d'image :

    • image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg'] : Définit une liste contenant les chemins de trois fichiers image (img1.jpg, img2.jpg, img3.jpg).
  4. Lecture des images :

    • for file in image_files: images.append(imageio.imread(file)) : Itère à travers chaque chemin de fichier dans image_files, lit l'image en utilisant imageio.imread(), et ajoute les données de l'image à la liste images.
  5. Création d'un GIF :

    • imageio.mimsave('output2.gif', images, duration=0.5) : Sauvegarde les images stockées dans la liste images en tant que fichier GIF nommé 'output2.gif'. Le paramètre duration=0.5 spécifie la durée (en secondes) de chaque trame dans le GIF.
  6. Conversion du GIF en PDF :
    • ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf") : Convertit le fichier GIF ("output2.gif") généré à l'étape précédente en un PDF utilisant le ImageToPdfConverter d'IronPDF et le sauvegarde en tant que "ironPdf-imageio.pdf".

Le script lit d'abord plusieurs fichiers image, les compile en une animation GIF avec des durées de trame spécifiées, puis convertit cette animation GIF en un document PDF utilisant les fonctionnalités de la bibliothèque IronPDF. Les images GIF sont stockées en tant que série d'images dans le PDF comme montré ci-dessous.

Sortie

imageio python (Comment cela fonctionne pour les développeurs) : Figure 4 - GIF animé

PDF

imageio python (Comment cela fonctionne pour les développeurs) : Figure 5 - Sortie PDF

Licence IronPDF

IronPDF fonctionne sur la clé de licence pour Python. IronPDF pour Python propose une licence d'essai gratuite pour permettre aux utilisateurs de tester ses nombreuses fonctionnalités avant d'acheter.

Placez la clé de licence au début du script avant d'utiliser le package IronPDF :

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

Conclusion

Imageio est une bibliothèque puissante et flexible pour le traitement d'images en Python. Sa facilité d'utilisation, son support étendu au format, et ses fonctionnalités avancées en font un outil précieux pour les développeurs et les scientifiques des données. Que vous ayez besoin d'effectuer des manipulations d'images simples ou de gérer des données d'image/volumétriques complexes, Imageio fournit les fonctionnalités nécessaires dans un package convivial. IronPDF est une bibliothèque Python polyvalente conçue pour créer, manipuler et convertir des documents PDF. Il prend en charge des tâches telles que la génération de PDF à partir de zéro, la conversion de HTML et d'images en PDF, et l'exécution de diverses opérations sur les documents comme fusionner et sécuriser des fichiers PDF. Il est compatible multiplateforme et s'intègre parfaitement aux applications Python, ce qui en fait un outil puissant pour gérer des tâches liées aux PDF de manière programmatique.

Ensemble avec ces bibliothèques, nous pouvons travailler avec le traitement d'images et stocker les résultats au format PDF à des fins d'archivage.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite