Redimensionner toutes les images d’un dossier

redimensionner toutes les images d'un dossier

Voici un article assez court afin de vous faire partager quelques petites commandes très utiles pour redimensionner toutes les images d’un dossier.

Note: Vous pouvez remplacer les extensions jpg par png, cela fonctionne aussi. Je n’ai pas testé avec d’autres formats

Prérequis

Pour redimensionner nos images, nous allons installer le paquet imagemagick avec la commande suivante:

sudo apt install imagemagick

Redimensionner en changeant le nom

Voici une ligne de commande qui va redimensionner toutes les images jpg de votre dossier en les renommant resizedX.jpg

convert '*.jpg[200x]' resized%03d.jpg

Important: Ici j’ai mis 200x ce qui correspond à 200 pixels de largeurs. Vous pouvez changer ce chiffre voir rajouter une hauteur. Il est également possible de mettre x200 pour redimensionner à 200 pixel de hauteur !

Voici le resultat sur mon pc quand je lance la commande:

Résultat du redimensionnement de toutes les images de mon dossier
À gauche les originales et à droite les redimensionnées

D’ailleurs on voit bien que le redimensionnement a fonctionné car quand je vais voir les infos des images redimensionnés j’ai bien 200px en largeur:

Information d'une image redimensionnée
Information d’une image redimensionnée

Redimensionner en gardant le nom

Vous voulez conserver le nom de vos images ? Pas de soucis, il faut utiliser la commande comme ceci:

mkdir newFolder && convert "./*.jpg[200x]" -set filename:base "%[basename]" "./newFolder/%[filename:base].jpg"

Je créer tout d’abord un nouveau dossier pour enregistrer mes images redimensionnées (sinon les nouvelles écrasent les anciennes !).
Puis de redimensionne toutes les images du dossier de la même manière. Ici toujours 200 pixels de largeur, à vous de le changer !

Le résultat étant le même que dans le point précédent je ne remet pas d’image illustrant le résultat.

Redimensionner BEAUCOUP d’images

Si vous avez BEAUCOUP d’images à redimensionner, mieux vaut utiliser la commande find qui sera moins gourmande en ressource:

mkdir newFolder
find . -iname '*.jpg' -exec convert \{} -verbose -set filename:base "%[basename]" -resize 500x500\> "./newFolder/%[filename:base].jpg" \;

Ici je redimensionne toutes les images en 500 pixels par 500 pixels en gardant le même nom. Comme le point précédent, je les place dans un dossier différent pour éviter d’écraser mes images sources !

Conclusion

Voilà, c’est terminé !
Je vous avez prévenu que cet article serait court.
Si vous êtes resté sur votre faim, vous pouvez aller lire la documentation sur la géométrie dans le cas du redimensionnement de imagemagick disponible à cette adresse.


Sources


Articles récents

Redimensionner toutes les images d’un dossier

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut