
Protéger vos images contre le vol est devenu indispensable pour tout créateur de contenu. Le watermarking (ou filigrane) consiste à superposer un logo ou un texte sur vos images pour les identifier comme vôtres. Avec N8N et ImageMagick, vous pouvez automatiser cette protection sur des dizaines d’images en quelques secondes, sans intervention manuelle.
Qu’est-ce qu’un watermark et pourquoi l’utiliser ?
Un watermark est l’application d’une image, d’un logo ou d’un texte sur une photo ou une vidéo dans le but de la protéger contre le vol et l’utilisation non autorisée. C’est une pratique courante chez les photographes, graphistes et créateurs de contenu.
Les avantages du watermarking
- Protection contre le vol : décourage l’utilisation non autorisée de vos créations
- Visibilité de marque : votre logo devient visible sur chaque image partagée
- Traçabilité : identification facile de l’origine d’une image
- Dissuasion : même si l’IA peut retirer certains filigranes, la majorité des utilisateurs ne feront pas cette démarche
Prérequis : installer ImageMagick
ImageMagick est une librairie Linux open source permettant de manipuler les images en ligne de commande. C’est elle qui effectue le travail de superposition du watermark sur vos images. Sans cette librairie, le workflow ne fonctionnera pas.
Installation sur Docker
Si vous utilisez N8N avec Docker, ajoutez la commande d’installation dans votre Dockerfile pour que la librairie soit disponible à chaque redémarrage :
sudo apt install imagemagick
Installation sur VPS Linux
Sur un serveur Linux (Ubuntu, Debian), connectez-vous en SSH et exécutez :
sudo apt update
sudo apt install imagemagick -y
Pour N8N Cloud ou NPM, consultez la documentation de votre hébergeur pour savoir comment installer des librairies externes.
Architecture du workflow watermark
Le workflow reçoit un logo (watermark) et plusieurs images, puis applique automatiquement le filigrane sur chaque image avant de les regrouper dans un fichier ZIP téléchargeable.
Formulaire → Split Binary → Switch (watermark/images)
├── Watermark → Write File (logo)
└── Images → Write File → Loop
├── Execute Command (magick)
├── Read File (image watermarkée)
└── Sortie Loop
↓
Aggregate → Compress ZIP → URL téléchargement
Étape 1 : Formulaire de réception
Le nœud Formulaire permet à l’utilisateur de télécharger les fichiers. Configurez deux champs :
- Champ 1 – Watermark : type fichier, accepte une image (votre logo)
- Champ 2 – Images : type fichier, accepte plusieurs images (les photos à protéger)
À la sortie du formulaire, vous avez un seul item contenant toutes les images (watermark + images à traiter).
Étape 2 : Séparer les fichiers avec Split Binary
Le nœud Split Binary transforme l’item unique contenant N fichiers en N items distincts, chacun contenant un fichier. Cette séparation est indispensable pour pouvoir itérer sur chaque image individuellement.
Avant Split Binary : 1 item avec 4 fichiers (1 watermark + 3 images).
Après Split Binary : 4 items, chacun avec 1 fichier.
Étape 3 : Router watermark et images
Le nœud Switch sépare le traitement du watermark (toujours en index 0) des images à traiter (index 1, 2, 3…).
Branche Watermark
Condition : si l’index est égal à 0, l’item est le watermark. On l’écrit sur le disque N8N dans un dossier dédié (exemple : /data/image/watermark_0.png).
Branche Images
Pour tous les autres index, ce sont les images à traiter. On les écrit également sur le disque en conservant leur nom d’origine.
Étape 4 : Boucler sur chaque image
Le nœud Loop permet d’itérer sur chaque image à traiter. Pour chaque itération, trois opérations sont effectuées :
Exécuter la commande ImageMagick
Le nœud Execute Command lance la commande magick d’ImageMagick pour superposer le watermark sur l’image :
magick /data/image/photo.jpg /data/image/watermark_0.png -gravity southeast -composite /data/image/photo_watermarked.jpg
Cette commande prend l’image source, superpose le watermark en bas à droite (-gravity southeast) et génère l’image de sortie.
Lire le fichier watermarké
Le nœud Read Binary File récupère l’image watermarkée depuis le disque pour la réintégrer dans le workflow N8N sous forme de binaire.
Étape 5 : Agréger et compresser
Une fois toutes les images traitées, le nœud Aggregate rassemble les N items (N images watermarkées) en un seul item contenant tous les binaires.
C’est l’opération inverse du Split Binary : on passe de N items avec 1 fichier chacun à 1 item avec N fichiers.
Le nœud Compress génère ensuite un fichier ZIP contenant toutes les images watermarkées. Ce ZIP est écrit sur le disque à un emplacement accessible par URL.
Étape 6 : Générer le lien de téléchargement
Pour rendre le ZIP téléchargeable, écrivez-le dans un dossier accessible publiquement sur votre serveur. Le workflow retourne alors l’URL du fichier ZIP que l’utilisateur peut télécharger directement.
Conseil : ajoutez un identifiant unique au nom du ZIP (timestamp ou UUID) pour éviter les conflits entre plusieurs utilisateurs.
Options de positionnement du watermark
ImageMagick offre plusieurs options de positionnement via le paramètre -gravity :
| Valeur | Position |
| northwest | Haut gauche |
| north | Haut centre |
| northeast | Haut droite |
| west | Milieu gauche |
| center | Centre |
| east | Milieu droite |
| southwest | Bas gauche |
| south | Bas centre |
| southeast | Bas droite |
Vous pouvez également ajuster la transparence du watermark avec l’option -dissolve pour un rendu plus discret.
Bonnes pratiques
- Utilisez un logo PNG transparent : le fond transparent s’intègre mieux sur les images
- Dimensionnez votre watermark : trop grand il gêne la lecture, trop petit il est inefficace
- Positionnez-le stratégiquement : les coins sont faciles à recadrer, privilégiez une position centrale ou répétée
- Nettoyez les fichiers temporaires : supprimez les images du disque après génération du ZIP
- Créez un sub-workflow réutilisable : encapsulez la logique de watermarking pour l’appeler depuis d’autres automatisations

Comment appliquer automatiquement un watermark sur plusieurs images avec N8N ?
Conclusion
Automatiser le watermarking avec N8N et ImageMagick vous fait gagner un temps considérable, surtout si vous traitez régulièrement de nombreuses images. Le workflow présenté peut être adapté selon vos besoins : positionnement, transparence, format de sortie. C’est un excellent exemple de l’utilisation des commandes Bash dans N8N pour étendre ses capacités au-delà des nœuds natifs.
Pour aller plus loin, vous pouvez connecter ce workflow à Google Drive ou Dropbox pour traiter automatiquement les images uploadées dans un dossier spécifique. Explorez nos autres ressources N8N ou contactez notre équipe pour concevoir une solution de protection d’images adaptée à vos besoins.
Un watermark (ou filigrane) est une image, un logo ou un texte superposé sur une photo pour la protéger contre le vol et l’utilisation non autorisée. Il permet d’identifier l’auteur de l’image et de dissuader les utilisations frauduleuses.
Sur un serveur Linux, exécutez ‘sudo apt install imagemagick’. Pour Docker, ajoutez cette commande dans votre Dockerfile. ImageMagick est indispensable car c’est la librairie qui effectue la superposition du watermark sur les images via la commande ‘magick’.
Split Binary transforme un item contenant plusieurs fichiers en plusieurs items distincts, chacun avec un fichier. Cette séparation est indispensable pour pouvoir ensuite boucler sur chaque image individuellement et appliquer le watermark une par une.
ImageMagick propose le paramètre ‘-gravity’ avec 9 positions possibles : northwest (haut gauche), north (haut centre), northeast (haut droite), west (milieu gauche), center, east (milieu droite), southwest (bas gauche), south (bas centre), southeast (bas droite).
Oui, vous pouvez connecter ce workflow à un trigger Google Drive qui détecte les nouveaux fichiers dans un dossier spécifique. Chaque image uploadée déclenche automatiquement le workflow de watermarking, et le résultat peut être sauvegardé dans un autre dossier.
Privilégiez un fichier PNG avec fond transparent. Le fond transparent permet au watermark de s’intégrer proprement sur n’importe quelle image sans créer de rectangle blanc ou coloré autour du logo. Dimensionnez-le pour qu’il soit visible sans gêner la lecture de l’image.
