GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengoptimalkan dan Mengompresi Gambar JPEG atau PNG di Commandline Linux

Anda memiliki banyak gambar, dan ingin mengoptimalkan dan mengompres gambar tanpa kehilangan kualitas aslinya sebelum mengunggahnya ke cloud atau penyimpanan lokal? Ada banyak aplikasi GUI yang tersedia yang akan membantu Anda mengoptimalkan gambar. Namun, berikut adalah dua utilitas baris perintah sederhana untuk mengoptimalkan gambar dan itu adalah:

  1. jpegoptim – adalah utilitas untuk mengoptimalkan/mengompresi file JPEG tanpa kehilangan kualitas.
  2. OptiPNG – adalah program kecil yang mengoptimalkan gambar PNG ke ukuran yang lebih kecil tanpa kehilangan informasi apa pun.

Dengan menggunakan dua alat ini, Anda dapat mengoptimalkan satu atau beberapa gambar sekaligus.

Kompres atau Optimalkan Gambar JPEG dari Baris Perintah

jpegoptim adalah alat baris perintah yang dapat digunakan untuk mengoptimalkan dan mengompresi file JPEG, JPG, dan JFIF tanpa kehilangan kualitas sebenarnya. Alat ini mendukung pengoptimalan lossless, yang didasarkan pada pengoptimalan tabel Huffman.

Instal jpegoptim di Linux

Untuk memasang jpegoptim pada sistem Linux Anda, jalankan perintah berikut dari terminal Anda.

Di Debian dan Derivatifnya
# apt-get install jpegoptim
or
$ sudo apt-get install jpegoptim
Pada Sistem berbasis RedHat

Pada sistem berbasis RPM seperti RHEL , CentOS , Fedora dll., Anda perlu menginstal dan mengaktifkan repositori EPEL atau sebagai alternatif, Anda dapat menginstal repositori epel langsung dari baris perintah seperti yang ditunjukkan:

# yum install epel-release
# dnf install epel-release    [On Fedora 22+ versions]

Selanjutnya instal program jpegoptim dari repositori seperti yang ditunjukkan:

# yum install jpegoptim
# dnf install jpegoptim    [On Fedora 22+ versions]

Cara Menggunakan Pengoptimal Gambar Jpegoptim

Sintaks jpegoptm adalah:

$ jpegoptim filename.jpeg
$ jpegoptim [options] filename.jpeg

Sekarang mari kita kompres tecmint.jpeg berikut ini gambar, tetapi sebelum mengoptimalkan gambar, cari tahu dulu ukuran sebenarnya dari gambar menggunakan perintah du seperti yang ditunjukkan.

$ du -sh tecmint.jpeg 

6.2M	tecmint.jpeg

Di sini ukuran file sebenarnya adalah 6.2MB , sekarang kompres file ini dengan menjalankan:

$ jpegoptim tecmint.jpeg 

Buka gambar terkompresi di aplikasi penampil gambar apa pun, Anda tidak akan menemukan perbedaan besar. Sumber dan gambar terkompresi akan memiliki kualitas yang sama.

Perintah di atas mengoptimalkan gambar ke ukuran maksimum yang mungkin. Namun, Anda dapat mengompresi gambar yang diberikan ke ukuran tertentu, tetapi ini menonaktifkan pengoptimalan lossless.

Misalnya, mari kita kompres di atas gambar dari 5,6 MB menjadi sekitar 250rb .

$ jpegoptim --size=250k tecmint.jpeg

Kompresi dan Pengoptimalan Gambar JPEG Batch

Anda mungkin bertanya bagaimana cara mengompres gambar di seluruh direktori, itu juga tidak sulit. Buka direktori tempat Anda menyimpan gambar.

[email protected] ~ $ cd img/
[email protected] ~/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

Dan kemudian jalankan perintah berikut untuk mengompres semua gambar sekaligus.

[email protected] ~/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.

Anda juga dapat mengompres beberapa gambar yang dipilih sekaligus:

$ 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.

Untuk detail selengkapnya tentang jpegoptim alat, periksa halaman manual.

$ man jpegoptim 

Kompres atau Optimalkan Gambar PNG dari Baris Perintah

OptiPNG adalah alat baris perintah yang digunakan untuk mengoptimalkan dan mengompresi file PNG (grafik jaringan portabel) tanpa kehilangan kualitas aslinya.

Pemasangan dan penggunaan OptiPNG sangat mirip dengan jpegoptim .

Instal OptiPNG di Linux

Untuk memasang OptiPNG pada sistem Linux Anda, jalankan perintah berikut dari terminal Anda.

Di Debian dan Derivatifnya
# apt-get install optipng
or
$ sudo apt-get install optipng
Pada Sistem berbasis RedHat
# yum install optipng
# dnf install optipng    [On Fedora 22+ versions]

Catatan :Anda harus memiliki repositori epel diaktifkan di RHEL/CentOS . Anda sistem berbasis untuk menginstal opting program.

Cara Menggunakan Pengoptimal Gambar OptiPNG

Sintaks umum memilih adalah:

$ optipng filename.png
$ optipng [options] filename.png

Mari kita kompres tecmint.png gambar, tetapi sebelum mengoptimalkan, periksa terlebih dahulu ukuran gambar yang sebenarnya seperti yang ditunjukkan:

[email protected] ~/img $ ls -lh tecmint.png 
-rw------- 1 tecmint tecmint 350K Jan 19 12:54 tecmint.png

Di sini ukuran file sebenarnya dari gambar di atas adalah 350K , sekarang kompres file ini dengan menjalankan:

[email protected] ~/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)

Seperti yang Anda lihat pada output di atas, ukuran tecmint.png file telah dikurangi hingga 30,39% . Sekarang verifikasi ukuran file lagi menggunakan:

[email protected] ~/img $ ls -lh tecmint.png 
-rw-r--r-- 1 tecmint tecmint 244K Jan 19 12:56 tecmint.png

Buka gambar terkompresi di aplikasi penampil gambar apa pun, Anda tidak akan menemukan perbedaan besar antara file asli dan terkompresi. Sumber dan gambar terkompresi akan memiliki kualitas yang sama.

Kompresi dan Pengoptimalan Gambar PNG Batch

Untuk mengompresi kumpulan atau beberapa gambar PNG sekaligus, cukup buka direktori tempat semua gambar berada dan jalankan perintah berikut untuk mengompresi.

[email protected] ~ $ cd img/
[email protected] ~/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)
....

Untuk detail selengkapnya tentang memilih periksa halaman manual.

$ man optipng

Kesimpulan

Jika Anda seorang webmaster dan ingin menyajikan gambar yang dioptimalkan melalui situs web atau blog Anda, alat ini bisa sangat berguna. Alat ini tidak hanya menghemat ruang disk, tetapi juga mengurangi bandwidth saat mengunggah gambar.

Jika Anda mengetahui cara lain yang lebih baik untuk mencapai hal yang sama, beri tahu kami melalui komentar dan jangan lupa untuk membagikan artikel ini di jejaring sosial Anda dan dukung kami.


Linux
  1. Cara Menemukan dan Mengurutkan File Berdasarkan Tanggal dan Waktu Modifikasi di Linux

  2. Cara Mengoptimalkan dan Mengompresi Gambar JPEG atau PNG di Commandline Linux

  3. Cara Mengurai Dan Mencetak JSON Dengan Alat Baris Perintah Linux

  1. Cara Kompres Dan Dekompresi File Di Linux

  2. Cara Mengarsipkan dan Mengompresi File di Linux

  3. Bagaimana Cara Mengompres dan Mengekstrak File Menggunakan Perintah tar di Linux?

  1. Cara Kompres dan Dekompresi File .bz2 di Linux

  2. Cara Memutar dan Mengompresi File Log di Linux dengan Logrotate

  3. Cara Membandingkan Perintah Dan Program Linux Dari Commandline