Ändern Sie die Größe großer Bilder mit mogrify (ImageMagick), lassen Sie jedoch kleine Bilder unberührt

7

Die Größe von Bildern kann mit mogrify aus der ImageMagick-Suite geändert werden:

`mogrify -resize 256x256 *.jpg`

Dadurch wird jedoch die Größe von Bildern so geändert, dass die größte Dimension 256 Pixel beträgt, einschließlich Bildern, die zunächst kleiner als 256 Pixel sind (z. B. Avatare mit 100 x 100 Pixel).

Wie kann ich ausschließen, dass kleinere Bilder betroffen sind? dh ich möchte, dass die größte Dimension nicht mehr als 256 Pixel beträgt

(Am besten kann ich dies mit der ImageMagick-Suite tun oder zumindest ohne zusätzliche Installation).

Craig
quelle

Antworten:

7

Versuchen Sie mogrify -resize '1280x1024>' *.jpgjedoch, ein Backup zu erstellen.

DemonWareXT
quelle
1
Während es funktioniert, werden die Bilder, deren Größe nicht geändert wird, weiterhin geöffnet und erneut gespeichert (ein Windows Paint-PNG kann verkleinert werden, ohne die Pixel des Bildes zu beeinträchtigen). Obwohl es in
Bezug auf die
0

mogrify -resize '256x256>' *.jpgÄndert auch Bilder, deren Größe nicht geändert wird, und ändert ihre Bilddaten. Das geht nicht:

identify -format '%w %h %i\n' *.jpg|awk '$1>256||$2>256{print$3}'|xargs mogrify -quality 93 -resize 256x256

Oder wenn die Pfade der Dateien Leerzeichen, einfache Anführungszeichen, doppelte Anführungszeichen oder Tabulatoren enthalten:

identify -format '%w %h %i\n' *.jpg|awk '$1>256||$2>256'|cut -d\ -f3-|xargs -d\\n mogrify -quality 93 -resize 256x256

Nisetama
quelle