Ich habe ein Verzeichnis mit vielen Bildern, die jedoch falsch ausgerichtet sind. Ich möchte die Bilder in die richtige Richtung drehen (meist ± 90 o ). Mit dem Bildbetrachter (shotwell photo) kann ich sie einzeln drehen, indem ich auf die Schaltfläche "Drehen" klicke, aber das ist zu mühsam.
Ich schaute auf man shotwell
und shotwell --help-all
aber es gibt nichts , das erklärt , wie Sie den Befehl Drehen von der Kommandozeile aufzurufen.
Kann ich den Befehl "Drehen" von shotwell (oder einem anderen Viewer) vom Terminal aus aufrufen? Oder andere Methoden zum Drehen von Bildern sind ebenfalls willkommen.
command-line
scripts
images
shotwell
Pranphy
quelle
quelle
Antworten:
Wenn Sie nach einer reinen Bash-Implementierung suchen, ist der
convert
Befehl von ImageMagick genau das, wonach Sie suchen:Oben werden vorhandene Dateien intakt gelassen und die neu gedrehten kopiert,
/tmp
sodass Sie sie nach der Konvertierung und nach der Überprüfung an einen anderen Ort verschieben oder kopieren oder sogar die vorhandenen ersetzen können .(und es wird auf allen neueren Versionen von Ubuntu als Standard-Software funktionieren)
quelle
Dies wird urheber- drehen -and-benennen Sie Ihre Dateien.
Wenn Sie die Originaldateien nur noch unberührt lassen möchten, funktioniert diese Methode möglicherweise gut für Sie ...
Beachten Sie dabei die Groß- und Kleinschreibung: Wenn Ihre Dateien den Namen * .jpg haben, ersetzen Sie sie entsprechend durch Kleinbuchstaben (oder * .png ...).
quelle
Wenn Sie
mogrify
direkt überschreiben möchten, scheint die ImageMagick-Suite der einfachste Weg zu sein, dies zu erreichen:CAVEAT : Dies ist keine verlustfreie Rotationsmethode für JPEG-Dateien, https://www.imagemagick.org/discourse-server/viewtopic.php?t=5899 .
jpegtran
erreicht dies (ungetestet):quelle
mogrify
es für JPEG-Dateien nicht verlustfrei ist, aber esjpegtran
ist.So mache ich es:
Installieren Sie gThumb
Öffne nautilus und gehe in dein Bilderverzeichnis. Klicken Sie mit der rechten Maustaste darauf und wählen Sie
Open with -> gthumb
.Unter dem
view
Menü wählenBrowser
oder drücken Sie die EscTaste. Dadurch wird der Verzeichnis-Browser geöffnet, in dem alle Ihre Bilder angezeigt werden.Drücken Sie Ctrlund wählen Sie die Bilder aus, die Sie drehen möchten, oder wählen Sie alle mit Ctrl+ aus A.
Wählen Sie in der Symbolleiste
Tools
und dannRotate Right
oderRotate Left
je nach Ihren Vorlieben.quelle
Eine schöne Lösung ist eine Reihe von Sicherungen (zB vorangestelltes zu machen
backup-
), drehen Sie die Original - Dateien eine Reihe von neuen Dateien (zB vorangestellte Herstellungrotated-
), so dass Sie eine Reihe vonimg-1.png
backup-img-1.png
rotated-img-1.png
img-2.png
Die
mv
/cp
tools [bash globbing] können nur Präfixe hinzufügen, es ist chaotisch, sie zu entfernen (es würde Parametererweiterung verwenden, ewww ...)Mit dem
rename
Tool können Sie dies/before/after/
Ersetzungssyntax (aus demsed
Tool) verwenden, um das Sicherungspräfix auszutauschen und die Originaldateien zu überschreiben. Der Gesamtprozess für einen bestimmten Satz von Bildernimg-
lautet also {1..n}.png
:Hinweis:
cp
anstatt verwendenmv
, aber dann gibt es 2 Kopien des Originals herumliegen (Nachteil ist, Sie erhalten Verkettung von Präfixen, "rotated-backup-
...")-rotate 270
90 ° gegen den Uhrzeigersinn)echo "Rotating ${imgf#backup-} ... ";
nachconvert
Aufrufen (vorherdone
)Verwenden Sie für eine kompaktere Form (z. B. eine Reihe von nummerierten Dateien)
echo "$(echo ${imgf#backup-img-} | cut -d\. -f 1)...";
stattdessen eine Parametererweiterung wie(Sie können Präfix und Suffix nicht in derselben Bash-Parameter-Erweiterung entfernen, verwenden Sie daher
cut
)Löschen Sie die Bilder, nachdem Sie überprüft haben, dass Sie nichts falsch gemacht haben, indem Sie sie wieder auf das Original verschieben
quelle
Sie können diesen Code kopieren, einfügen und als speichern
rotate.sh
Führen Sie diese Datei nach dem Speichern über das Terminal aus
./rotate.sh folder_containing_images
.quelle