Ridimensionare più immagini in un colpo solo
Attenzione
Questo articolo è stato pubblicato più di un anno fa, potrebbero esserci stati sviluppi.
Ti preghiamo di tenerne conto.
Ridimensionare le immagini, da quando i programmi di fotoritocco sono entrati a far parte della routine dell’utente medio, è un compito tanto semplice quanto banale. Si usa rimpicciolire le immagini soprattutto per risparmiare banda sul trasferimento del file: un’immagine più piccola si caricherà più in fretta e inoltre per usare le immagini sul web non è necessaria l’alta risoluzione. Il problema si pone quando abbiamo una quantità considerevole di immagini da ridimensionare, aprirle una per una può diventare piuttosto lungo e noioso.
Una delle soluzioni è “David’s Batch Processor“, un plugin per Gimp che permette di eseguire alcuni filtri su più immagini, tra cui anche il “Resize” per ridimensionare.
“David’s Batch Processor” può essere divertente da scoprire, e può senza dubbio velocizzare il lavoro che altrimenti faremmo a mano, ma rispetto ad altri programmi è lento. Che io conosca il modo più veloce per ridimensionare più immagini in un colpo solo è la riga di comando. ImageMagick è un piccolo ma potente tool a riga di comando (utilizzabile anche tramite web come libreria aggiunta a PHP). ImageMagick è un programma che comprende diversi comandi, oggi ne vediamo un paio.
Convert
Il comando “convert
” converte l’immagine di partenza e ne crea una copia. Alla fine dell’elaborazione avremo l’immagine iniziale e l’immagine convertita. Con “convert
” non è possibile sovrascrivere un’immagine.
Vediamo ora come sia possibile cambiare le dimensioni di un’immagine:
convert -geometry 1024x 1.jpg 1_mod.jpg
Questo comando ridimensiona il lato lungo dell’immagine “1.jpg” a 1024px, mantenendo inalterate le proporzioni.
for i in *.jpg; do convert -geometry 1024x $i thumb-$i; done
Quest’altro comando esegue lo stesso lavoro, ma converte tutte le immagini con estensione “.jpg” a 1024px di lato.
for i in *.jpg; do convert -scale 50% $i thumb-$i; done
Quest’altro comando utilizza l’argomento “scale
” al posto di “geometry
“. L’argomento “scale
” si usa insieme alla percentuale di riduzione / ingrandimento dell’immagine. In questo caso l’immagine sarà dimezzata.
convert originale.jpg originale.png
Va precisato che “convert
” può essere usato anche per cambiare estensione al file (creerà sempre una copia senza sovrascrivere).
Mogrify
Il comando “mogrify
” è praticamente identico al comando “convert
“, la differenza è che non creerà una copia dell’originale, bensì sovrascriverà l’immagine di partenza. Occhio quindi a non sovrascrivere se non è proprio quello che volete fare.
In qualche minuto abbiamo terminato di ridimensionare le nostre immagini, e non abbiamo dovuto eseguire il lavoro manualmente. Una vera pacchia.
2 commenti
Francesco Paolo · 26 Novembre 2015 alle 1:47 PM
Ciao desidero sapere come posso utilizzare il comando mogrify per ridimensionare un file 800×400 a 800×800 mantenendo l’aspect ratio.
Grazie
TheJoe · 30 Novembre 2015 alle 10:55 AM
Non credo di aver capito. La tua immagine di partenza è 800×400. Potrai scalarne le dimensioni (entrambe), perché se ne modifichi solo una l’aspect ratio non verrà rispettato.
Forse hai intenzione di “tagliare” parte dell’immagine, in questo caso potrai tagliarla a 400×400 e poi sovradimensionarla a 800×800. Ovviamente avrai una qualità scadente al termine dell’operazione.