J'ai un grand ensemble d'images JPEG avec la même résolution. Il faudrait trop de temps pour ouvrir chacun à l'intérieur de l'interface graphique d'Imagemagic ou Gimp.
Comment puis-je réaliser chaque image en cours de rotation et enregistrée comme le même nom de fichier?
Vous pouvez utiliser la commande convert
:
convert input.jpg -rotate -degrees out.jpg
par exemple:
convert input.jpg -rotate -180 out.jpg
Enregistrez-le avec le même nom:
convert file.jpg -rotate -180 file.jpg
Faites pivoter tous les fichiers:
for photo in *.jpg ; do convert $photo -rotate 90 $photo ; done
Edit
Vous pouvez utiliser les outils de ligne de commande mogrify
(le meilleur outil) recommandé par @ don-crissti
mogrify -rotate 90 *.jpg
Pour les images JPEG et les rotations d'angle droit, utilisez jpegtran
ou exiftran
, car ils peuvent faire pivoter les images sans perte.
for f in *.jpg ; do
jpegtran -rotate 180 "$f" > "${f%.jpg}-rotated.jpg"
done
Ou faire pivoter sur place:
for f in *.jpg ; do
jpegtran -rotate 180 -outfile "$f" "$f"
done
exiftran
a aussi le -a
Drapeau Pour faire pivoter automatiquement l'image en fonction de ce que dit l'étiquette d'orientation exif.