Risposte:
Prova a utilizzare ImageMagick . Innanzitutto installalo:
$ sudo apt-get install imagemagick
Quindi puoi creare un piccolo script bash per convertirli nelle tue 6 dimensioni:
#!/bin/bash
# List all the formats you wish to have
SIZES="640x480 800x600 1024x768"
# pass directory as first argument to the script
# Use '.' (current directory) if no argument was passed
DIR=${1:-.}
find $DIR -type f | while read file; do
for size in $SIZES; do
# Resize and rename DSC01258.JPG into DSC01258_640x480.JPG, etc.
# Remove the ! after $size if you do not wish to force the format
convert -resize "${size}!" "$file" "${file%.*}_${size}.${file##*.}"
done
done
Salvare lo script come, ad esempio convert.sh
, ed eseguire:
chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default
Modifica: ho modificato lo script per essere sicuro di non sovrascrivere i file durante il ridimensionamento, ma di rinominarli in ad es. DSC01258_640x480.JPG e utilizzare convert anziché invece mogrify
poiché i file vengono effettivamente rinominati. Ho anche disinfettato un po 'le variabili, non fa male.
Ho testato lo script con file png e ha funzionato bene. Dovrebbe funzionare con tutti i tipi di formati di immagine supportati da ImageMagick:
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
$ ./resize.sh wave_bible_bot/
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
Se installi ImageMagick come accennato da Sathya, c'è un bel frontend GUI per rendere più facile il ridimensionamento chiamato nautilus-image-converter
.
Per installarlo:
sudo apt-get install nautilus-image-converter
Riavvia nautilus (o disconnettiti e accedi nuovamente). Aggiungerà "Ridimensiona immagini" e "Ruota immagini" al menu di scelta rapida, come mostrato qui:
Basta evidenziare tutte le immagini che si desidera ridimensionare, fare clic con il tasto destro, selezionare Ridimensiona immagini e si otterrà questa interfaccia:
Utilizzare l'opzione "Aggiungi" e aggiungere un nome personalizzato alle immagini ridimensionate. Potresti voler aggiungere dimensioni come 1024x768 O puoi fare 6 copie delle tue immagini in diverse cartelle, quindi utilizzare l' opzione di ridimensionamento delle immagini in posizione sulle immagini in ciascuna cartella per sovrascriverle con nuove immagini che hanno dimensioni diverse. Il ridimensionamento delle immagini sul posto sovrascriverà sempre le immagini selezionate, quindi fai attenzione a ciò che selezioni!
È possibile utilizzare ImageMagick: installare prima ImageMagick
sudo apt-get install imagemagick
Quindi, cd nella posizione in cui si trovano le tue immagini:
cd /path/to/where/images/are/stored
Quindi, crea le directory in base al tuo formato immagine
mkdir /path/to/where/images/are/stored/size
Copia le immagini nella directory in cui desideri trasformare
cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size
Successivamente, cambia la directory nell'altra directory
cp /path/to/where/images/are/stored/size
Quindi, utilizzare uno strumento chiamato mogrify
fornito dalla libreria ImageMagick per ridimensionare
mogrify -resize 640×480! *.jpg
Questo ridimensionerà tutto a 640*480
, !
dice di forzare le proporzioni.
Non conosco gli script di Bash, quindi non è così automatico.
Dovrebbero esserci davvero diversi riferimenti allo mogrify
strumento nel convert
manuale. ... Ho cercato per circa quarantacinque minuti, ma è stato solo quando mi sono imbattuto in un altro post che sono stato in grado di iniziare a guardare nella giusta direzione.
A beneficio di altri, questa linea ha fatto esattamente ciò di cui avevo bisogno. Ci sono voluti da una cinquantina di JPG da 2meg a 3meg (nella stessa directory) e li hanno fatti scendere da 80 a 120 kb. E ovviamente ha lasciato tutti i loro nomi "esattamente" uguali.
mogrify *.jpg -quality 75 -resize "640x480>" *
E, ancora a beneficio degli altri:
*.jpg
... esegue il comando mogrify su tutti i JPG nella directory.
-quality 75
... riduce la qualità jpg al 75%, il che è abbastanza per la visualizzazione online.
-resize "640x480>"
... fa sì che tutte le immagini vengano ridimensionate a 640x480 (notare ">" alla fine. Ciò rende le immagini più piccole ma "non" più grandi ... e non dimenticare le virgolette; quelle sono importanti.
*
... e non dimenticarlo alla fine del comando.
Gimp è dotato di modalità batch. vedere la modalità batch di GIMP .
Ho creato uno strumento semplice da usare: Picture Resize . Usa imagemagick dietro la scena. Una volta installato, creerà un'icona sul desktop di Linux. Puoi trascinare e rilasciare una o più immagini o una cartella di immagini su di essa e creerà una copia ridimensionata di ogni immagine. Le dimensioni desiderate possono essere facilmente modificate facendo clic con il tasto destro sull'icona del desktop.
Se stai cercando una GUI piuttosto che uno strumento da riga di comando, dai un'occhiata a BIR: https://github.com/agronick/BIR