How To : Rekursives resizen von Grafiken unter Linux per console

mastercad
29.06.2013 11:36:58
Unter Linux gibts es das sehr vielseitige und mächtige Tool imagemagic um so ziemlich jede Operation mit Grafiken vornehmen zu können. Man installiert dieses Tool per

BASH code

  1. sudo apt-get install imagemagick

in diesem Toolpaket befindet sich unter anderem auch mogrify, was zum modifizieren von Grafiken dient.

Nun ist man schon gerüstet um erste Versuche zu starten, am Anfang eine kleine Fingerübung:


BASH code

  1. mogrify -resize 1600 *.jpg

wie man daraus einfach ablesen kann, werden alle Grafiken nun auf 1600 skaliert, wobei eine angegebene Zahl für die Breitenangabe steht.

Außerdem ist zu beachten, das dieser Befehl casesensitiv ist, bedeutet es werden nur jpg Dateien gefunden, keine JPG, Jpg und schon gar keine JPEG!

mit dem Befehl


BASH code

  1. mogrify -resize 1600x920! *.jpg

skaliert man alle bilder auf 1600x920 wobei 920 für eine zu erreichende Höhe steht, um das seitenverhältnis beizubehalten, durch das folgende '!'.

es geht natürlich auch mit % angaben!


BASH code

  1. mogrify -resize 25% *.jüg

damit werden alle Bilder im Verzeichnis auf 1/4 ihrer Tatsächlichen Größe reduziert.

etwas ungewöhnlich aber sicher auch hin und wieder sehr nützlich, die angabe einer zu erreichenden Pixelanzahl:


BASH code

  1. mogrify -resize 48000@ *.jpg

damit werden alle bilder auf 48000px geschrinkt, was 800x600 oder eben auch 600x800 pixel Bildmaße entsprechen würde.

um nun aber Bilder auch rekursiv skalieren zu können nutzt uns folgender befehl:


BASH code

  1. find ./ -name "*.jpg" -exec mogrify -resize 25% {} ;

damit kann man nun alle bilder ab dem aktuellen Verzeichnis nach unten, die auf die Endung *jpg" lauten auf 25% skalieren.

Natürlich sind auch hier wieder alle Kombinationen aus den vorhergehenden Beispielen möglich.

Wer mehr zu ImageMagik erfahren möchte, findet viele detailierte Informationen unter ImageMagic Command-Line Tools