Je cherche la ligne de commande a taper pour redimentionner toutes les images d'un dossier en 640x480.
Pour l'instant je fait:
mogrify *.jpg -geometry 640
le probleme c est que "mogrify" modifie l original donc je cherche plustot a utiliser "convert" mais je ne sais pas l utiliser pour de multiples images.
L autre probleme c est que la commande que j utilise ne prend pas en compte l orientation (portrait ou paysage) des image. Je ne sais pas comment dire a imagemagick de prendre comme reference le plus grand cote de la photo.
Merci d avance
# Boucle for
Posté par ericdrier . Évalué à 3.
J'utilise convert pour faire ça.
Imaginons que tes photos s'appelle toutes Photo???.jpg.
Premier exemple tu fais précéder toutes les photos par préfixe mod_ et tu les redimensionnes avec une largeur de 1024 pixels :
for i in *.jpg; do convert $i -resize 1024x mod_$i; done
Tu peux aussi carrément changer le nom Photo en Image, toujours en les redimensionnant :
for i in *.jpg; do convert $i -resize 1024x $(echo $i | sed s/Photo/Image/); done
Et hop !
[^] # Re: Boucle for
Posté par Jacques L'helgoualc'h (site web personnel) . Évalué à 3.
L'appel à Sed est inutile, le shell (Bash, Zsh, ...) sait modifier ses variables, qu'il vaut mieux protéger en cas d'espaces :
convert "$i" -resize -40x640 "Image${i#Photo}"
On peut aussi n'appeler qu'une seule instance de mogrify pour éviter la boucle, en rusant sur l'extension :
mogrify -format jpeg -resize 640x640 '*.jpg'
[^] # detail de la commande
Posté par djraffon . Évalué à 1.
for i in
$i
mod_$i
car je ne comprend pas a quoi ca sert et j aimerai bien comprendre ce que je tape en console.
[^] # Re: detail de la commande
Posté par gregolak . Évalué à 2.
Mais bon rapidment "for" est une boucle.
"for i in" > pour tout i compris dans (en l'occurence ici tous les *.jpg)
"$i" désigne le fichier en cours dans la boucle
mod_$i désigne le nom du fichier précédé par mod_
En clair si tu as dans ton répertoire les fichiers :
1.jpg
2.jpg
...
$i désigne 1.jpg puis 2.jpg ...
mod_$i désigne mod_1.jpg mod_2.jpg ...
# Et l'aide de convert ?
Posté par liberforce (site web personnel) . Évalué à 2.
Recherche la chaîne "Inline Image Resize"
Pour la taille, utilise soit un pourcentage (le plus pratique), ou l'opérateur ^
http://www.imagemagick.org/script/command-line-options.php#r(...)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.