Ajouter un message textuel sur une série d’image

En utilisant ImageMagick, voici un petit script permettant de traiter un ensemble de photos avant leur utilisation sur un site web:

Vous pouvez installer ImageMagick via vos dépots habituel sur les différentes version de Gnu/Linux. Pour les utilisateurs sous Windows, une version est également disponible.

Il vous faudra en revanche adapter ce script puisque celui-ci étant écrit en BASH, il n’est utilisable directement sous Windows.

#! /bin/bash
# Ajout copyright (dans un nouveau répertoire) + création d'une copie des photos en 1024x683
if [ "${1}" ] && [ "${2}" ] ; then
  mkdir ${1}/1280;
  mkdir ${1}/1024;
  for i in $( ls ${1} | grep  JPG ); do
    convert -size 1280x853 -quality 100 -strip -interlace line xc:none -matte -pointsize 14 -draw "text 920,800 '${2}'" miff:- | composite -tile - ${1}/$i ${1}/1280/$i;
    convert ${1}/1280/$i -resize 1024x683 ${1}/1024/$i;
  done
else
  echo "usage: "
fi

Ce petit script permet l’ajout d’un même texte sur toutes les images d’un répertoire (ici la taille originale est 1280×853, vous devez bien entendu adapter ce paramètres en fonction de la taille de vos images).

Une fois ce tag ajouté, il crée également une copie de ces images dans une plus faible résolution (ici 1024×683), celles-ci seront utilisées sur Internet pour un affichage dans une galerie par exemple, tandis que les images au format original ne seront affichées que si le visiteur souhaite une meilleure résolution. Cela évite que les visiteurs s’enfuient en attendant un temps de chargement trop long. De même, le dés-entrelacement (-interlace line) effectué permet à l’image de s’afficher progressivement évitant ainsi pour le visiteur une attente sans savoir si l’image se charge ou non.

Vus : 1800
Publié par Libre Astux : 45