ImageMagick è un software che uso molto spesso per manipolare le immagini da riga di comando in ambiente GNU/Linux. Le possibilità offerte da questo pacchetto sono proprio tante e mogrify
è il tool che preferisco perché permette di elaborare grandi quantità di immagini in maniera proprio semplice.
Qualche giorno fa, ad esempio, ho dovuto ridimensionare e ritagliare qualche migliaio di foto. Uno dei problemi principali di questo tipo di attività è che non sempre la diagonale delle foto è costante. Ci sono foto orizzontali e foto verticali, quindi in alcuni casi è necessario scalare prima la larghezza e poi effettuare il ritaglio (crop), in altri casi invece si deve modificare l'altezza per poi procedere al taglio.
Fortunatamente anche per questa operazione ImageMagick ha a disposizione alcuni parametri che fanno al caso nostro.
Per gli impazienti ecco un esempio con il comando completo per ridimensionare e ritagliare correttamente una o più immagini in formato JPG per portarle tutte alla dimensione di esattamente 170x140 pixel:
mogrify -resize "170x140^" -gravity center -crop 170x140+0+0 +repage *.jpg
Ricordo che ImageMagick si compone principalmente di due utility:
convert
per manipolare un formato alla volta;mogrify
per elaborare più immagini contemporaneamente.
In questo caso ho scelto mogrify
in quanto dovevo lavorare su molti file assieme.
Il primo parametro che troviamo è resize
che serve per effettuare il ridimensionamento. È importante evidenziare che come valore vengono assegnate le dimensioni (larghezza per altezza) ed un flag per ridimensionare l'immagine in base alla dimensione più piccola per riempire l'area indicata.
Abbiamo poi il parametro gravity
attraverso il quale si specifica dove centrare l'immagine per effettuare il ritaglio definito con il parametro crop
. In questo caso l'immagine sarà centrata al centro (center
).
Il parametro crop
accetta come valori le dimensioni finali e lo scostamento (offset) da cui ritagliare a partire dall'angolo in alto a sinistra dell'immagine. Inoltre è consigliabile il parametro +repage
che rimuove eventuali aree al di fuori della zona ritagliata.
Infine l'esempio che ho riportato elabora tutti i file con estensione jpg
che sono presenti nella directory in cui è stato eseguito il comando per cui consiglio di effettuare sempre un backup dei file.
N.B: ImageMagick è disponibile anche per altre piattaforme come iOS e Windows.
Ultimi commenti
8 years 4 giorni fa
8 years 1 settimana fa
8 years 2 settimane fa
8 years 15 settimane fa
8 years 15 settimane fa
8 years 15 settimane fa
8 years 15 settimane fa
8 years 15 settimane fa
8 years 17 settimane fa
8 years 17 settimane fa