Automatisation de l'ajout de watermarks sur des images
Fanhatcha est un jeune entrepreneur qui vient de créer son entreprise dans le domaine de l'immobilier de luxe. Pour tous les appartements, villa de luxe et manoirs qu'il loue ou vend à ses clients, il dispose d'un panorama d'images de la propriété sous tous les angles.
Pour une question de droit d'auteur et de propriété intellectuelle, Fanhatcha souhaite ajouter la mention © copyright 2021 Fanhatcha Inc sur toutes les images de son catalogue photo. Fanhatcha le faisait à la main quand il avait une vingtaine d'images. Aujourd'hui, il recherche un moyen plus rapide et plus simple de le faire.
Dans cet article, nous allons aider Fanhatcha à automatiser l'ajout de watermarks sur les images
Si vous avez suivi les articles précédent, nous avons crée un dossier appelé 1000 Tache. Accédez à ce dossier et créez un sous-dossier du nom de Tâche #2
Une fois le dossier Tache #2 crée, créez un jupyter notebook du nom de Automatisation de l'ajout de watermarks sur des images
Si vous avez le même résultat que celui-ci pour le moment, félicitations nous pouvons commencer,
Etape 1: Installer la librairie Pillow avec pip
!pip install pillow
La librairie Pillow nous permet d'effectuer des opérations complexes sur les images.
Etape 2: Importer les librairies dans jupyter notebook
import os
from PIL import Image, ImageDraw, ImageFont
Les scripts ci-dessus indiquent à python que nous utiliserons ces librairies dans notre programme.
Etape 3 : Créer un dossier qui contient toutes les images avec des watermarks
os.makedirs('avec_watermaks', exist_ok = True)
Le but de ce script est de créer un dossier du nom de avec_watermarks. Il contiendra toutes les images avec watermark.
Une fois le script ci-dessus exécuté, vous verrez qu'un dossier nommé avec_watermarks a été crée dans le dossier Tache #2
Etape 4: Ajouter toutes les images à marquer dans le dossier Tache #2
Etape 5 : Exécution finale du programme
for filename in os.listdir('.'):
if not (filename.endswith('.png') or filename.endswith('.jpg')):
continue
im = Image.open(filename)
width, height = im.size
draw = ImageDraw.Draw(im)
text = "© copyright 2021 Fanhatcha Inc"
font = ImageFont.truetype('arial.ttf', 22)
textwidth, textheight = draw.textsize(text, font)
margin = 10
x = width - textwidth - margin
y = height - textheight - margin
draw.text((x, y), text, font=font)
im.save('avec_watermaks/' + filename)
Ce script nous permet de prendre toutes les images du dossier Tache #2 et d'ajouter la mention © copyright 2021 Fanhatcha Inc (ce que vous pouvez changer), puis de sauvegarder les nouvelles images marquées dans le dossier avec_watermarks.
Ouvrez le dossier avec_watermarks et vous verrez que vous venez d'effacer une tâche ingrate de notre checklist !