Si vous voulez rapidement générer des miniatures d'images pour les mettre sur votre ftp par exemple, voici un petit script que je viens de réaliser :
#!/bin/sh
# verifying file
if [ -f $1 ]; then
# get image infos
infos=$(identify $1)
# get real format and extension
format=$(echo $infos | awk -F" " '{print $2}')
case $format in
JPEG)
extension=jpg;;
PNG)
extension=png;;
*)
echo "Sorry, only PNG and JPEG pictures are accepted"
exit;;
esac
# get image resolution and size
resolution=$(echo $infos | awk -F" " '{print $3}')
size=$(echo $infos | awk -F" " '{print $5}')
# get image name, without extension
ext=$(echo $1 | sed 's/.*([^.]+).([^.]+)$/2/')
name=$(basename $1 .$ext)
# resize image and add infos
convert $1 -resize 400x200 -gravity South -background Black -fill white -splice 0x18 -draw "text 0,2 '$format : $resolution - $size'" $name-thumb.$extension
else
echo "file does not exist"
fi
Enregistrez le en tant que "genthumb" par exemple.
Donnez lui les droits d'éxécution : [color=000099]$chmod 775 genthumb[/color]
Facultatif : mettez le dans /usr/bin pour qu'il soit dans le PATH. (en root : [color=000099]#cp genthumb /usr/bin[/color])
Pour le lancer : [color=000099]$genthumb monimage.png[/color] ou [color=000099]$./genthumb monimage.png[/color] dans le répertoire du fichier si vous ne l'avez pas copié dans /usr/bin.
Voici le résultat:
Notes :
- nécessite ImageMagick ... mais vous l'avez sans doute, même si vous ne le savez pas.
- ne supporte que les formats JPEG et PNG... ça se modifie en 30 sec mais les autres formats ne m'intéressent pas. (ne peuvent être rajoutés que les formats supportés par ImageMagick)
- va sans doute vous dire qu'il ne trouve pas arial.ttf. Bah, ça, ça m'ennuie ... mais c'est ImageMagick qui cherche les fonts dans le mauvais répertoire, je ne suis pas sûr que je puisse y faire grand chose. Dans ce cas, cherchez arial.ttf par un [color=000099]$locate arial.ttf[/color] et copiez le fichier ou ImageMagick vous dit qu'il le cherche. Nécessite d'avoir installé les "TrueType core fonts for the web" (paquet msttcorefonts sur FC).