Jawaban:
Silakan coba menggunakan ImageMagick . Pertama, instal:
$ sudo apt-get install imagemagick
Kemudian Anda dapat membuat skrip bash kecil untuk mengubahnya menjadi 6 ukuran:
#!/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
Simpan skrip sebagai, misalnya convert.sh
, dan jalankan:
chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default
Sunting: Saya mengedit skrip untuk memastikan tidak menimpa file ketika mengubah ukuran, tetapi mengubah nama mereka menjadi misalnya DSC01258_640x480.JPG, dan menggunakan convert bukan mogrify
karena file sebenarnya diubah namanya. Saya juga membersihkan variabel sedikit, tidak sakit.
Saya menguji skrip dengan file png dan itu bekerja dengan baik. Ini harus bekerja untuk semua jenis format gambar yang didukung oleh 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
Jika Anda menginstal ImageMagick seperti yang disebutkan Sathya, ada antarmuka GUI yang bagus untuk membuat pengubahan ukuran lebih mudah dipanggil nautilus-image-converter
.
Untuk menginstalnya:
sudo apt-get install nautilus-image-converter
Mulai ulang nautilus (atau logout dan kembali). Ini akan menambahkan "Ubah Ukuran Gambar" dan "Putar Gambar" ke menu konteks Anda seperti yang ditunjukkan di sini:
Cukup sorot semua gambar yang ingin Anda ubah ukurannya, klik kanan, pilih Ubah Ukuran Gambar , dan Anda akan mendapatkan antarmuka ini:
Gunakan opsi "Tambah" dan tambahkan nama khusus ke gambar Anda yang sudah diubah ukurannya. Anda mungkin ingin menambahkan ukuran seperti 1024x768 ATAU Anda dapat membuat 6 salinan gambar Anda di folder yang berbeda, kemudian gunakan opsi ukuran gambar di tempat pada gambar di setiap folder untuk menimpanya dengan gambar baru yang memiliki dimensi berbeda. Ubah ukuran gambar pada tempatnya akan selalu menimpa gambar yang dipilih, jadi berhati-hatilah dengan apa yang Anda pilih!
Anda dapat menggunakan ImageMagick: Pertama instal ImageMagick
sudo apt-get install imagemagick
Selanjutnya, cd ke lokasi di mana gambar Anda ada:
cd /path/to/where/images/are/stored
Selanjutnya, buat direktori sesuai dengan Imagesize Anda
mkdir /path/to/where/images/are/stored/size
Salin gambar ke direktori tempat Anda ingin mengubahnya
cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size
Selanjutnya, ubah direktori ke direktori lain
cp /path/to/where/images/are/stored/size
Kemudian, gunakan alat yang disebut mogrify
disediakan oleh pustaka ImageMagick untuk mengubah ukuran
mogrify -resize 640×480! *.jpg
Ini akan mengubah ukuran semua menjadi 640*480
, !
memberi tahu untuk memaksa rasio aspek.
Saya tidak tahu skrip Bash, jadi ini bukan yang otomatis.
Benar-benar harus ada beberapa referensi ke mogrify
alat di convert
manual ini. ... Saya mencari sekitar empat puluh lima menit tetapi tidak sampai saya menemukan posting lain bahwa saya bisa mulai mencari ke arah yang benar.
Demi kepentingan orang lain, baris ini melakukan apa yang saya butuhkan. Butuh sekitar 50meg 2meg hingga 3meg JPG (dalam direktori yang sama) dan menurunkan semuanya menjadi 80 hingga 120 kb. Dan tentu saja itu membuat semua nama mereka 'persis' sama.
mogrify *.jpg -quality 75 -resize "640x480>" *
Dan, sekali lagi untuk kepentingan orang lain:
*.jpg
... melakukan perintah mogrify pada semua JPG di direktori.
-quality 75
... memotong kualitas jpg hingga 75% yang cukup untuk dilihat secara online.
-resize "640x480>"
... menyebabkan semua gambar diubah ukurannya menjadi 640x480 (perhatikan ">" di akhir. Itu membuat gambar lebih kecil tetapi 'tidak' lebih besar ... dan jangan lupa tanda kutip; itu penting.
*
... dan jangan lupakan ini di akhir perintah.
Gimp hadir dengan mode batch. lihat Mode Batch GIMP .
Saya telah membuat alat yang mudah digunakan: Ubah Ukuran Gambar . Menggunakan imagemagick di belakang layar. Ketika diinstal, itu akan membuat ikon di desktop linux Anda. Anda dapat menarik dan melepaskan satu atau banyak gambar, atau folder gambar di atasnya, dan itu akan membuat salinan yang diubah ukurannya dari setiap gambar. Ukuran yang Anda inginkan dapat dengan mudah diubah dengan mengklik kanan pada ikon desktop.
Jika Anda mencari GUI daripada alat baris perintah, lihat BIR: https://github.com/agronick/BIR