Linux Komut Satırında JPEG veya PNG Görüntüleri Optimize Etme ve Sıkıştırma
Çok fazla görseliniz var ve görselleri herhangi bir bulut veya yerel depolamaya yüklemeden önce orijinal kalitesini kaybetmeden optimize edip sıkıştırmak mı istiyorsunuz? Görüntüleri optimize etmenize yardımcı olacak çok sayıda GUI uygulaması mevcuttur. Ancak burada görüntüleri optimize etmek için iki basit komut satırı yardımcı programı bulunmaktadır ve bunlar:
- jpegoptim – JPEG dosyalarını kalite kaybı olmadan optimize etmek/sıkıştırmak için kullanılan bir yardımcı programdır.
- OptiPNG – PNG görüntülerini hiçbir bilgi kaybı olmadan daha küçük boyuta optimize eden küçük bir programdır.
Bu iki aracı kullanarak aynı anda tek veya birden fazla görüntüyü optimize edebilirsiniz.
JPEG Görüntülerini Komut Satırından Sıkıştırın veya Optimize Edin
jpegoptim, JPEG, JPG ve JFIF dosyalarını gerçek kalitesini kaybetmeden optimize etmek ve sıkıştırmak için kullanılabilecek bir komut satırı aracıdır. Bu araç, Huffman tablolarının optimize edilmesine dayanan kayıpsız optimizasyonu destekler.
Linux'ta jpegoptim'i yükleyin
Linux sistemlerinize jpegoptim'i yüklemek için terminalinizden aşağıdaki komutu çalıştırın.
Debian ve Türevleri Üzerine
apt-get install jpegoptim
or
sudo apt-get install jpegoptim
RedHat tabanlı Sistemlerde
RHEL, CentOS, Fedora vb. gibi RPM tabanlı sistemlerde EPEL deposunu kurup etkinleştirmeniz gerekir veya alternatif olarak epel'i yükleyebilirsiniz. gösterildiği gibi doğrudan komut satırından depolayın:
yum install epel-release
dnf install epel-release [On Fedora 22+ versions]
Daha sonra gösterildiği gibi depodan jpegoptim programını yükleyin:
yum install jpegoptim
dnf install jpegoptim [On Fedora 22+ versions]
Jpegoptim Resim Optimize Edici Nasıl Kullanılır
jpegoptm'nin sözdizimi şöyledir:
jpegoptim filename.jpeg
jpegoptim [options] filename.jpeg
Şimdi aşağıdaki tecmint.jpeg
görselini sıkıştıralım ancak görseli optimize etmeden önce gösterildiği gibi du komutunu kullanarak görselin gerçek boyutunu bulalım.
du -sh tecmint.jpeg
6.2M tecmint.jpeg
Burada gerçek dosya boyutu 6,2 MB'tır, şimdi bu dosyayı çalıştırarak sıkıştırın:
jpegoptim tecmint.jpeg
Sıkıştırılmış görüntüyü herhangi bir resim görüntüleme uygulamasında açın, büyük bir fark bulamazsınız. Kaynak ve sıkıştırılmış görüntüler aynı kalitede olacaktır.
Yukarıdaki komut, görüntüleri mümkün olan maksimum boyuta optimize eder. Ancak verilen görüntüyü belirli bir boyuta sıkıştırabilirsiniz ancak bu, kayıpsız optimizasyonu devre dışı bırakır.
Örneğin, görselin üst kısmını 5,6 MB'tan yaklaşık 250 bin'e kadar sıkıştıralım.
jpegoptim --size=250k tecmint.jpeg
Toplu JPEG Görüntü Sıkıştırma ve Optimizasyon
Dizinin tamamındaki görsellerin nasıl sıkıştırılacağını sorabilirsiniz, bu da zor değil. Resimlerin bulunduğu dizine gidin.
tecmint@tecmint ~ $ cd img/
tecmint@tecmint ~/img $ ls -l
total 65184
-rwxr----- 1 tecmint tecmint 6680532 Jan 19 12:21 DSC_0310.JPG
-rwxr----- 1 tecmint tecmint 6846248 Jan 19 12:21 DSC_0311.JPG
-rwxr----- 1 tecmint tecmint 7174430 Jan 19 12:21 DSC_0312.JPG
-rwxr----- 1 tecmint tecmint 6514309 Jan 19 12:21 DSC_0313.JPG
-rwxr----- 1 tecmint tecmint 6755589 Jan 19 12:21 DSC_0314.JPG
-rwxr----- 1 tecmint tecmint 6789763 Jan 19 12:21 DSC_0315.JPG
-rwxr----- 1 tecmint tecmint 6958387 Jan 19 12:21 DSC_0316.JPG
-rwxr----- 1 tecmint tecmint 6463855 Jan 19 12:21 DSC_0317.JPG
-rwxr----- 1 tecmint tecmint 6614855 Jan 19 12:21 DSC_0318.JPG
-rwxr----- 1 tecmint tecmint 5931738 Jan 19 12:21 DSC_0319.JPG
Daha sonra tüm görüntüleri bir kerede sıkıştırmak için aşağıdaki komutu çalıştırın.
tecmint@tecmint ~/img $ jpegoptim *.JPG
DSC_0310.JPG 6000x4000 24bit N Exif [OK] 6680532 --> 5987094 bytes (10.38%), optimized.
DSC_0311.JPG 6000x4000 24bit N Exif [OK] 6846248 --> 6167842 bytes (9.91%), optimized.
DSC_0312.JPG 6000x4000 24bit N Exif [OK] 7174430 --> 6536500 bytes (8.89%), optimized.
DSC_0313.JPG 6000x4000 24bit N Exif [OK] 6514309 --> 5909840 bytes (9.28%), optimized.
DSC_0314.JPG 6000x4000 24bit N Exif [OK] 6755589 --> 6144165 bytes (9.05%), optimized.
DSC_0315.JPG 6000x4000 24bit N Exif [OK] 6789763 --> 6090645 bytes (10.30%), optimized.
DSC_0316.JPG 6000x4000 24bit N Exif [OK] 6958387 --> 6354320 bytes (8.68%), optimized.
DSC_0317.JPG 6000x4000 24bit N Exif [OK] 6463855 --> 5909298 bytes (8.58%), optimized.
DSC_0318.JPG 6000x4000 24bit N Exif [OK] 6614855 --> 6016006 bytes (9.05%), optimized.
DSC_0319.JPG 6000x4000 24bit N Exif [OK] 5931738 --> 5337023 bytes (10.03%), optimized.
Ayrıca seçilen birden fazla görüntüyü aynı anda sıkıştırabilirsiniz:
$ jpegoptim DSC_0310.JPG DSC_0311.JPG DSC_0312.JPG
DSC_0310.JPG 6000x4000 24bit N Exif [OK] 6680532 --> 5987094 bytes (10.38%), optimized.
DSC_0311.JPG 6000x4000 24bit N Exif [OK] 6846248 --> 6167842 bytes (9.91%), optimized.
DSC_0312.JPG 6000x4000 24bit N Exif [OK] 7174430 --> 6536500 bytes (8.89%), optimized.
jpegoptim aracı hakkında daha fazla ayrıntı için man sayfalarına göz atın.
man jpegoptim
Komut Satırından PNG Görüntülerini Sıkıştırın veya Optimize Edin
OptiPNG, PNG (taşınabilir ağ grafikleri) dosyalarını orijinal kalitesini kaybetmeden optimize etmek ve sıkıştırmak için kullanılan bir komut satırı aracıdır.
OptiPNG'nin kurulumu ve kullanımı jpegoptim'e çok benzer.
OptiPNG'yi Linux'a yükleyin
Linux sistemlerinize OptiPNG'yi yüklemek için terminalinizden aşağıdaki komutu çalıştırın.
Debian ve Türevleri Üzerine
apt-get install optipng
or
sudo apt-get install optipng
RedHat tabanlı Sistemlerde
yum install optipng
dnf install optipng [On Fedora 22+ versions]
Not: optipng'i yüklemek için RHEL/CentOS tabanlı sistemlerinizde epel deposunu etkinleştirmiş olmanız gerekir. programı.
OptiPNG Resim Optimize Edici Nasıl Kullanılır
optipng'in genel sözdizimi şöyledir:
optipng filename.png
optipng [options] filename.png
tecmint.png
resmini sıkıştıralım, ancak optimizasyondan önce, gösterildiği gibi resmin gerçek boyutunu kontrol edelim:
tecmint@tecmint ~/img $ ls -lh tecmint.png
-rw------- 1 tecmint tecmint 350K Jan 19 12:54 tecmint.png
Yukarıdaki görselin gerçek dosya boyutu 350K'dır, şimdi bu dosyayı çalıştırarak sıkıştırın:
tecmint@tecmint ~/img $ optipng tecmint.png
OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.
** Processing: tecmint.png
1493x914 pixels, 4x8 bits/pixel, RGB+alpha
Reducing image to 3x8 bits/pixel, RGB
Input IDAT size = 357525 bytes
Input file size = 358098 bytes
Trying:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 249211
Selecting parameters:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 249211
Output IDAT size = 249211 bytes (108314 bytes decrease)
Output file size = 249268 bytes (108830 bytes = 30.39% decrease)
Yukarıdaki çıktıda gördüğünüz gibi tecmint.png dosyasının boyutu %30,39'a kadar küçültüldü. Şimdi aşağıdakileri kullanarak dosya boyutunu tekrar doğrulayın:
tecmint@tecmint ~/img $ ls -lh tecmint.png
-rw-r--r-- 1 tecmint tecmint 244K Jan 19 12:56 tecmint.png
Sıkıştırılmış görüntüyü herhangi bir resim görüntüleme uygulamasında açın; orijinal ve sıkıştırılmış dosyalar arasında büyük bir fark bulamazsınız. Kaynak ve sıkıştırılmış görüntüler aynı kalitede olacaktır.
Toplu PNG Görüntü Sıkıştırma ve Optimizasyon
Toplu veya birden fazla PNG görüntüsünü aynı anda sıkıştırmak için tüm görüntülerin bulunduğu dizine gidin ve sıkıştırmak için aşağıdaki komutu çalıştırın.
tecmint@tecmint ~ $ cd img/
tecmint@tecmint ~/img $ optipng *.png
OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.
** Processing: Debian-8.png
720x345 pixels, 3x8 bits/pixel, RGB
Input IDAT size = 95151 bytes
Input file size = 95429 bytes
Trying:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 81388
Selecting parameters:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 81388
Output IDAT size = 81388 bytes (13763 bytes decrease)
Output file size = 81642 bytes (13787 bytes = 14.45% decrease)
** Processing: Fedora-22.png
720x345 pixels, 4x8 bits/pixel, RGB+alpha
Reducing image to 3x8 bits/pixel, RGB
Input IDAT size = 259678 bytes
Input file size = 260053 bytes
Trying:
zc = 9 zm = 8 zs = 0 f = 5 IDAT size = 222479
zc = 9 zm = 8 zs = 1 f = 5 IDAT size = 220311
zc = 1 zm = 8 zs = 2 f = 5 IDAT size = 216744
Selecting parameters:
zc = 1 zm = 8 zs = 2 f = 5 IDAT size = 216744
Output IDAT size = 216744 bytes (42934 bytes decrease)
Output file size = 217035 bytes (43018 bytes = 16.54% decrease)
....
optipng hakkında daha fazla ayrıntı için kılavuz sayfalarını kontrol edin.
man optipng
Çözüm
Bir web yöneticisiyseniz ve web siteniz veya blogunuz üzerinden optimize edilmiş görseller sunmak istiyorsanız bu araçlar çok kullanışlı olabilir. Bu araçlar yalnızca disk alanından tasarruf etmekle kalmaz, aynı zamanda görüntüleri yüklerken bant genişliğini de azaltır.
Aynı şeyi başarmanın başka daha iyi bir yolunu biliyorsanız, yorum yoluyla bize bildirin ve bu makaleyi sosyal ağlarınızda paylaşmayı ve bizi desteklemeyi unutmayın.