Linux buýruk setirinde JPEG ýa-da PNG suratlaryny nädip optimizirlemeli we gysmaly


Suratlaryňyz köp, suratlary haýsydyr bir buluda ýa-da ýerli ammarlara ýüklemezden ozal asyl hilini ýitirmän optimizirlemek we gysmak isleýärsiňizmi? Suratlary optimizirlemäge kömek etjek GUI programmalary köp. Şeýle-de bolsa, suratlary optimizirlemek üçin iki sany ýönekeý buýruk setiri bar we olar:

  1. jpegoptim - JPEG faýllaryny hilini ýitirmezden optimizirlemek/gysmak üçin peýdalydyr.
  2. OptiPNG - PNG şekillerini hiç hili maglumat ýitirmän has kiçi göwrümde optimallaşdyrýan kiçijik programma.

Bu iki guraly ulanyp, bir gezekde bir ýa-da birnäçe suraty optimizirläp bilersiňiz.

Buýruk setirinden JPEG suratlaryny gysyň ýa-da optimizirläň

jpegoptim, JPEG, JPG we JFIF faýllaryny hakyky hilini ýitirmän optimizirlemek we gysmak üçin ulanyp boljak buýruk setiridir. Bu gural, Huffman tablisalaryny optimizirlemäge esaslanýan ýitgisiz optimizasiýany goldaýar.

Linux ulgamlaryňyza jpegoptim gurmak üçin terminalyňyzdan aşakdaky buýrugy işlediň.

# apt-get install jpegoptim
or
$ sudo apt-get install jpegoptim

RHEL, CentOS, Fedora we ş.m. ýaly RPM ulgamlarynda EPEL ammaryny gurmaly we işletmeli ýa-da başgaça, epel ammaryny görkezilişi ýaly göni buýruk setirinden gurup bilersiňiz:

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

Indiki görkezilişi ýaly ammardan jpegoptim programmasyny guruň:

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

Jpegoptm-iň sintaksisi:

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

Geliň indi aşakdaky tecmint.jpeg şekilini gysalyň, ýöne şekili optimizirlemezden ozal görkezilişi ýaly du buýrugy ulanyp şekiliň hakyky ululygyny biliň.

$ du -sh tecmint.jpeg 

6.2M	tecmint.jpeg

Ine, faýlyň hakyky ölçegi 6.2MB, indi bu faýly işledip gysyň:

$ jpegoptim tecmint.jpeg 

Gysylan şekili islendik surat tomaşaçy programmasynda açyň, düýpli tapawutlary tapmarsyňyz. Çeşme we gysylan şekiller birmeňzeş hile eýe bolar.

Aboveokardaky buýruk şekilleri mümkin boldugyça ulaldýar. Şeýle-de bolsa, berlen şekili belli bir ululykda gysyp bilersiňiz, ýöne ýitgisiz optimizasiýany öçürýär.

Mysal üçin, suratyň üstünde 5.6MB-den 250k töweregi gysyp göreliň.

$ jpegoptim --size=250k tecmint.jpeg

Suratlary tutuş katalogda nädip gysmalydygyny sorap bilersiňiz, bu hem kyn däl. Suratlaryňyz bar bolan kataloga gidiň.

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

Soň bolsa ähli suratlary birbada gysmak üçin aşakdaky buýrugy işlediň.

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

Şeýle hem, birnäçe saýlanan suratlary birbada gysyp bilersiňiz:

$ 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 guraly barada has giňişleýin maglumat üçin adam sahypalaryna göz aýlaň.

$ man jpegoptim 

Buýruk setirinden PNG suratlaryny gysyň ýa-da optimizirläň

OptiPNG, PNG (göçme tor grafikasy) faýllaryny asyl hilini ýitirmän optimizirlemek we gysmak üçin ulanylýan buýruk setiri guralydyr.

OptiPNG-i gurmak we ulanmak jpegoptime gaty meňzeýär.

Linux ulgamlaryňyza OptiPNG gurmak üçin terminalyňyzdan aşakdaky buýrugy işlediň.

# apt-get install optipng
or
$ sudo apt-get install optipng
# yum install optipng
# dnf install optipng    [On Fedora 22+ versions]

Bellik: optipng programmasyny gurmak üçin RHEL/CentOS esasly ulgamlaryňyzda epel ammary açyk bolmaly.

Optipng-iň umumy sintaksisi:

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

Geliň, tecmint.png şekilini gysalyň, ýöne optimizirlemezden ozal suratyň hakyky ululygyny görkezilişi ýaly barlaň:

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

Ine, ýokardaky suratyň hakyky faýl ölçegi 350K, indi bu faýly işledip gysyň:

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

Aboveokardaky çykyşdan görnüşi ýaly, tecmint.png faýlynyň göwrümi 30.39% -e çenli azaldyldy. Indi faýlyň ululygyny barlaň:

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

Gysylan şekili islendik surat tomaşaçy programmasynda açyň, asyl we gysylan faýllaryň arasynda düýpli tapawut tapmarsyňyz. Çeşme we gysylan şekiller birmeňzeş hile eýe bolar.

Topary ýa-da birnäçe PNG şekilini birbada gysmak üçin, ähli suratlaryň ýaşaýan katalogyna giriň we gysmak üçin aşakdaky buýrugy işlediň.

[email  ~ $ cd img/
[email  ~/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 hakda has giňişleýin maglumat üçin adam sahypalaryny barlaň.

$ man optipng

Netije

Webmaster bolsaňyz we web sahypaňyzda ýa-da blogyňyzda optimal suratlara hyzmat etmek isleseňiz, bu gurallar gaty amatly bolup biler. Bu gurallar diňe bir disk ýerini tygşytlaman, eýsem suratlar ýüklenende geçirijilik giňligini hem azaldar.

Şol bir zada ýetmegiň başga bir gowy usulyny bilýän bolsaňyz, teswirler arkaly bize habar beriň we bu makalany sosial ulgamlaryňyzda paýlaşmagy we bize goldaw bermegi ýatdan çykarmaň.