1.

1. Ouvrir et afficher une image

from PIL import Image

# Ouvrir une image
image = Image.open("exemple.jpg")

# Afficher l'image
image.show()


2. Créer une nouvelle image

from PIL import Image

# Créer une image noire de largeur 100 pixel et de hauteur 200 pixels
# - au format couleur
im2 = Image.new('RGB', (100, 200))

# - au format niveau de gris
im2 = Image.new('L', (100, 256)))

# - au format noir et blanc
im2 = Image.new('1', (100, 256)))


3. Récupérer les informations de l’image

# Afficher des informations utiles
print("Format :", image.format)
print("Taille :", image.size) # donne la taille sous la forme (largeur,hauteur) (un tupple en Python)
print("Mode de couleur :", image.mode)

4. Redimensionner une image

# Redimensionner à 200x200 pixels
image_redim = image.resize((200, 200))
image_redim.show()

5. Faire une rotation ou une symétrie

# Rotation de 90 degrés
image_rot = image.rotate(90)
image_rot.show()

# Symétrie horizontale
from PIL import ImageOps
image_flip = ImageOps.mirror(image)
image_flip.show()

6. Rogner une image

# Définir la zone à garder (gauche, haut, droite, bas)
box = (100, 100, 400, 400)
image_crop = image.crop(box)
image_crop.show()

7. Lire et modifier un pixel

# Lire un pixel (coordonnées x=50, y=100)
pixel = image.getpixel((50, 100))
print("Valeur du pixel :", pixel) # donne la valeur sous la forme (R,V,B) (un tupple en Python) pour une image en couleur

# Modifier un pixel (x=50, y=100) en rouge
image.putpixel((50, 100), (255, 0, 0))

# Afficher l’image
image.show()

8. Ajouter du texte sur une image

from PIL import ImageDraw, ImageFont

# Préparer le dessin
draw = ImageDraw.Draw(image)

# Police par défaut
font = ImageFont.load_default()

# Ajouter du texte blanc en haut à gauche
draw.text((10, 10), "Bonjour Pillow!", font=font, fill="white")

# Afficher l’image
image.show()

9. Sauvegarder une image

# Sauvegarder dans un nouveau fichier
image.save("image_modifiee.jpg")