Ridimensionare immagini tramite script con ImageMagik
Ridimensionamento automatico delle immagini per adattarle a siti statici
Mainroad theme in Hugo non ridimensiona automaticamente le immagini, ma le copia semplicemente dalla cartella statica. Quindi dobbiamo preparare uno script per ridimensionare e tagliare le immagini alle dimensioni corrette.
Quando
Ho diverse fonti di immagini – lo smartphone e la fotocamera sono le più utilizzate. Hanno risoluzioni e rapporti di aspetto diversi.
Quindi dobbiamo definire una sequenza di elaborazione:
- taglio centrale al rapporto di aspetto
- ridimensionamento (riduzione) a due risoluzioni. La qualità JPEG del 80% è sufficiente.
- 235x171
- 678x495
Dove
Supponiamo che le immagini di origine siano tutte nella cartella ~/tmp/img_src Dobbiamo
- spostare le immagini elaborate nelle cartelle ~/tmp/img_235x171 e ~/tmp/img_678x495
- nominare le immagini come
_235x171.jpg e _678x495.jpg
Come
In Ubuntu Linux utilizzeremo Imagemagick
sudo apt-get install imagemagick
Passo di taglio:
convert wizard.png -gravity center -extent 11:8 wizarc.jpg
# ora controlliamo le dimensioni
identify wizard.png wizarc.jpg
Passo di ridimensionamento
convert wizarc.jpg -resize 678x495 -quality 80 -interlace plane wizarc_678x495.jpg
convert wizarc.jpg -resize 235x171 -quality 80 -interlace plane wizarc_235x171.jpg
# ora controlliamo le dimensioni
identify wizarc.jpg wizarc_678x495.jpg wizarc_235x171.jpg
L'80 indica la qualità JPEG e plane significa JPEG progressivo. Aiuterà a caricare le immagini più velocemente su connessioni lente, non solo perché verrà caricato prima il riquadro, ma anche perché il file stesso è più piccolo. Almeno nel caso del mago.
Con bordi
convert wizarc.jpg -resize 676x493 -quality 80 -interlace plane -border 1x1 wizarc_678x495.jpg
convert wizarc.jpg -resize 233x169 -quality 80 -interlace plane -border 1x1 wizarc_235x171.jpg
# ora controlliamo le dimensioni
identify wizarc.jpg wizarc_678x495.jpg wizarc_235x171.jpg
L’immagine risultante che vedete nell’intestazione di questo post e le proporzioni dell’immagine di origine erano simili a:
che è il risultato di un semplice ridimensionamento e l’aggiunta di un bordo
convert wizard.png -resize 20% -quality 85 -interlace plane -border 2x2 wizard20.jpg
Altre opzioni
nautilus-image-converter
nautilus-image-converter è un’estensione per Nautilus per ridimensionare o ruotare in massa le immagini. Per installare nautilus-image-converter in tutte le versioni attualmente supportate di Ubuntu apri il terminale e digita:
sudo apt-get install nautilus-image-converter
Aggiunge due voci nel menu contestuale in Nautilus, così puoi fare clic destro e scegliere “Ridimensiona immagine”. (L’altra è “Ruota immagine”).
Puoi ridimensionare l’intera cartella di immagini in un solo colpo e non devi nemmeno aprire un’applicazione per farlo.
Dovrai riavviare Nautilus per visualizzare i nuovi menu contestuali, esegui
nautilus -q
e poi fai clic sull’icona della cartella Home per ricaricare Nautilus con il nuovo plug-in.
mogrify
Il comando mogrify sovrascrive i file originali con le immagini ridimensionate:
mogrify -resize 50% *.png # mantieni il rapporto di aspetto mogrify -resize 320x240 *.png # mantieni il rapporto di aspetto mogrify -resize 320x240! *.png # non mantieni il rapporto di aspetto mogrify -resize x240 *.png # non mantieni il rapporto di aspetto mogrify -resize 320x *.png # non mantieni il rapporto di aspetto
Altri strumenti utili
Ottieni i dettagli meta delle immagini – come risoluzione, bitdepth, ecc. – parte del pacchetto imagemagick.
identify image.jpg
produrrebbe qualcosa come
image.jpg JPEG 720x482 720x482+0+0 8-bit DirectClass 100KB 0.000u 0:00.009
Converti immagini in PDF
convert $(ls -v *.jpg) foobar.pdf
convert $(ls -v *.png) foobar.pdf