Le mercredi 1 octobre, Frederic Ollivier a écrit :
> 1500 .jpg en faite des scannes de photos d'identités des éléves.
> avec des formats plus ou moins différents.
> je recherche un moyen rapide de tout les recadrer au méme format et de
> leur appliquer la même compression.
Je m'étais posé le même problème pour faire le trombinoscope de la
Guilde :
http://www.guilde.asso.fr/guilde/trombinoscope/
Frédéric Mantegazza a répondu :
> Il y a convert, du paquet ImageMagick (ligne de commande)
C'est ce que j'utilise, c'est probablement déjà installé sur ta
distribution. Exemple en bash :
mkdir reduits
for f in *.jpg; do
convert -geometry 200x200 -quality 60 $f reduits/${f%.jpg}.jpeg
done
remarque qu'au passage tu corriges l'extension (.jpeg).
En fait pour le trombinoscope c'est un script Perl qui utilise
l'interface PerlMagick, mais j'utilise aussi souvent l'interface ligne
de commande.
> tout les recadrer au méme format
Ça c'est un peu délicat, car en recadrant tu risques de couper des bouts
de tête, des oreilles... mais je le fais quand-même pour le
trombinoscope. Voici mon algo :
si (largeur != largeur_désirée ou hauteur != hauteur_désirée) {
si (largeur/hauteur > largeur_désirée/hauteur_désirée) {
nouvelle_largeur = hauteur*largeur_désirée/hauteur_désirée;
recadrer à la nouvelle_largeur, en enlevant symétriquement à
droite et à gauche;
}
sinon, si (largeur/hauteur < largeur_désirée/hauteur_désirée) {
nouvelle_hauteur = largeur*hauteur_désirée/largeur_désirée;
recadrer à la nouvelle_hauteur, en enlevant symétriquement en
haut et en bas;
}
redimensionner à largeur_désirée et hauteur_désirée;
}
Remarque que je recadre avant de redimensionner, ce qui est mieux que le
contraire : il vaut mieux tout faire à la plus haute résolution et
redimensionner à la fin.
Je peux te passer le script Perl si tu veux, mais il contient plein de
choses qui ne t'intéressent probablement pas : parsing d'un fichier XML
et d'un modèle de mise en page, génération de HTML.
Edgar.
--
Edgar Bonet Maison : 04 76 21 29 16 Bureau : 04 76 88 10 96
3 rue Jean Prévost Mobile : 06 77 19 79 39 Fax : 04 76 88 11 91
38000 Grenoble guilde@??? www.edgar-bonet.org