Wie schneide ich Ränder / Leerzeichen vom Bild ab?

52

Ich habe viele Bilder mit weißen Rändern. Ich möchte diese Ränder auf einmal zuschneiden, vorzugsweise von der Kommandozeile aus. Ich glaube, dass dies mit ImageMagick möglich ist, aber ich konnte keinen passenden Befehl finden.

Ich weiß, dass dies mit dem Windows-Programm "Irfanview" mit der Option "Auto Crop Borders" möglich ist, suche aber nach einer Ubuntu-basierten und vorzugsweise auf der Befehlszeile basierenden Lösung.

Rafal
quelle
Hast du es mit Gimp versucht?
Mitch
1
@Mitch Nein, ich wusste nicht, dass Gimp Batch-Modus hat. Auf jeden Fall ist die Verwendung von ImageMagick Trim einfacher, daher werde ich bei dieser Lösung bleiben.
Rafal
Die Betrüger schlagen im Allgemeinen GUI-Lösungen vor ...
Wilf

Antworten:

65

ImageMagick Trim

Mit der Befehlszeilenoption, trimdie zusammen mit convertoder verwendet wird, mogrifykönnen Sie Ränder mit der gleichen Farbe wie die Ecken eines Bildes abschneiden.

Verwendungszweck:

convert input.png -trim output.png

Die zusätzlichen Optionen -fuzzentfernen auch Farben in der Nähe der Eckfarben. Verwenden Sie die Option +repage, um eine Leinwand zu entfernen (falls zutreffend).

ImageMagick Batch Trim (Finden)

Der obige Befehl für ImageMagick Trim kann auch zur Stapelverarbeitung von Bildern in Kombination mit dem folgenden findBefehl verwendet werden:

find ./ -name "pattern" -exec convert {} -trim outputfolder/{} \;

schneidet alle Bilder zu, die patternTeil des Befehls sind, und speichert sie in einem neuen Ordner mit dem Namen outputfolder.

Angenommen, Bilder sind PNGs, dann sieht der Befehl folgendermaßen aus:

find ./ -name "*.png" -exec convert {} -trim outputfolder/{} \;

ImageMagick Batch Trim (mogrify)

Dies findermöglicht zwar eine weitaus bessere Kontrolle darüber, wo die Ausgabedateien abgelegt werden, ist jedoch auch mit ImageMagick möglich mogrify:

mogrify -trim *.png

Bitte beachten Sie, dass im Gegensatz zu convertund Batch-Betrieb mit findund convert mogrify alle Dateien überschrieben werden . Es ist am besten, eine Sicherungskopie aller Bilder im Verzeichnis zu erstellen, bevor Sie mit dem Befehl mogrify fortfahren.

Randnotiz: mogrifyKann verwendet werden, um die meisten (wenn nicht alle) convertOperationen im Batch auszuführen , während die Originaldateien überschrieben werden.

IrfanView

IrfanView läuft ganz gut mit Wine . Achten Sie darauf, die Ausgabe von Irfanview sorgfältig zu überprüfen, da es bei der Verwendung von Wine manchmal zu Bildstörungen kommt.

Takkat
quelle
Es klappt. Vielen Dank. Ich habe Informationen zur Stapelverarbeitung von Bildern mit ImageMagick hinzugefügt, als der kombinierte findBefehl in Ihrer Antwort fehlte.
Rafal
9
Ich habe mogrify -trim *.jpgalle Bilder im aktuellen Ordner zugeschnitten.
Buttle Butkus
1
Das ist toll. Das hat mir viel Zeit gespart. TX :)
antmw1361
@ ShuttleButkus Ich habe die Antwort so bearbeitet, dass sie diese Informationen enthält. Aus irgendeinem Grund habe ich diese Option früher vergessen.
Rafal
1
Gibt es eine Möglichkeit, ein PNG-Bild entlang seiner Höhe zuzuschneiden und dabei die Breite beizubehalten?
1.