Ridimensionare un gran numero di immagini con Linux

Il problema

Ridimensionare un immagine è un’operazione semplice: esistono molti software in grado di farlo. I più conosciuti sono Gimp e Photoshop. Ma qual’è la giusta procedura per ridimensionare un gran numero di immagini?

Immaginate di dover preparare le anteprime per una galleria o di dover ridimensionare tutte le immagini da inserire in una presentazione o, ancora, di dover ridurre delle foto da mandare via email, e così via.

Aprire le immagini con Gimp o Photoshop e ridimensionarle una ad una sarebbe una follia. Come si può eseguire questa operazione in modo semplice e senza stress?

La soluzione

Utilizzare la riga di comando di Linux. Ridimensionare più immagini con Linux è molto semplice se si utilizza la suite ImageMagick.

Prima di tutto, installiamo ImageMagick che include molti strumenti per manipolare immagini. Per farlo, eseguiamo il seguente comando in una finestra di terminale:

$ sudo apt-get install imagemagick

Ora sono disponibili molti nuovi comandi (consulta ImageMagick command line tools per ottenere più dettagli). Noi utilizzeremo mogrify che è progettato per

[…] ridimensionare un immagine, sfumare, tagliare, smacchiare, distorcere, disegnare, specchiare, unire, ricampionare, e molto altro.

Ovviamente, esso può lavorare su una o più immagini alla volta. Semplicemente, possiamo specificare il nome del file per agire su una singola immagine, oppure utilizzare le wildcards della riga di comando per agire su più file contemporaneamente.

Dunque, vediamo ora alcuni esempi dell’utilizzo di morgify. Per informazioni più dettagliate e la lista completa delle opzioni, si consiglia di fare riferimento al manuale di ImageMagick Mogrify.

Ridimensionare un immagine al 75% della dimensione originale:

$ mogrify -resize 75% image.jpg

Ridimensionare tutti i file JPG in una cartella al 75% della loro dimensione originale:

$ mogrify -resize 75% *.jpg

Ridimensionare tutte le immagini in una cartella alla dimensione di 640×480 pixels:

$ mogrify -resize 640x480' *

Ridimensionare tutte le immagini in una cartella alla larghezza di 640 pixel mantenendo le proporzioni:

$ mogrify -resize width='640' *

Ridimensionare tutte le immagini in una cartella all’altezza di 480 pixel mantenendo le proporzioni:

$ mogrify -resize width='x480' *

Riferimenti:

  • ImageMagick
  • ImageMagick Mogrify