Ridimensiona le immagini, mantieni il rapporto, con vincoli di dimensione


2

Ho un sacco di immagini in una cartella con dimensioni e proporzioni diverse.

Voglio ridurli tutti mantenendo un'altezza e una larghezza minime, mantenendo lo stesso rapporto.

Qualcosa di simile a:
convert -resize -minwidth 300 -minheight 200 -keep-ratio src *.jpg

Quindi tutte le immagini ridotte avrebbero almeno 300 di larghezza e 200 di altezza e manterranno il rapporto originale.

È possibile anche senza un pesante scripting?

Cose che ho provato:

➜  swazidowners mogrify -resize 300x200^ "*.jpg"
zsh: no matches found: 300x200^
➜  swazidowners mogrify -resize 300x200^ bbq.jpg
zsh: no matches found: 300x200^
➜  swazidowners mogrify -resize 300x200 bbq.jpg # just to show that it works without ^ character
➜  swazidowners 

Informazioni di sistema: Sistema
operativo: Ubuntu 16.04x64

$ mogrify -version  
Version: ImageMagick 6.8.9-9 Q16 x86_64 2016-11-29 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules OpenMP
Delegates: bzlib cairo djvu fftw fontconfig freetype jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png rsvg tiff wmf x xml zlib

Risposte:


5
mogrify -resize '300x200^' *.jpg

assicurati di eseguirlo su una copia delle tue immagini mentre le sostituisce.


Ricevozsh: no matches found: 300x200^
Adam Goldman il

normalmente riceveresti questo messaggio se non ci sono file che corrispondono a * .jpg, ma suppongo tu abbia ragione?
Kees Beets

sì, l'ho fatto e l'ho testato più volte :( Funziona per te?
Adam Goldman

sì, usando ubuntu 16.04 e imagemagick (8: 6.8.9.9-7ubuntu5.3)
Kees Beets

potresti provare a usare le virgolette: mogrify -resize 300x200 ^ "* .jpg"
Kees Beets
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.