Kako optimizirati in stisniti slike JPEG ali PNG v ukazni vrstici Linuxa
Imate veliko slik in jih želite optimizirati in stisniti, ne da bi pri tem izgubili njihovo prvotno kakovost, preden jih naložite v katero koli oblačno ali lokalno shrambo? Na voljo je veliko GUI aplikacij, ki vam bodo pomagale optimizirati slike. Vendar sta tukaj dva preprosta pripomočka za ukazno vrstico za optimizacijo slik:
- jpegoptim - je pripomoček za optimizacijo/stiskanje datotek JPEG brez izgube kakovosti.
- OptiPNG - je majhen program, ki slike PNG PNG optimizira na manjše velikosti, ne da bi izgubil informacije.
Z uporabo teh dveh orodij lahko hkrati optimizirate eno ali več slik.
Stisnite ali optimizirajte slike JPEG iz ukazne vrstice
jpegoptim je orodje ukazne vrstice, ki ga lahko uporabimo za optimizacijo in stiskanje datotek JPEG, JPG in JFIF, ne da bi pri tem izgubili svojo dejansko kakovost. To orodje podpira optimizacijo brez izgub, ki temelji na optimizaciji Huffmanovih tabel.
Če želite v svoje sisteme Linux namestiti jpegoptim, na terminalu zaženite naslednji ukaz.
# apt-get install jpegoptim or $ sudo apt-get install jpegoptim
V sistemih, ki temeljijo na RPM, kot so RHEL, CentOS, Fedora itd., Morate namestiti in omogočiti repozitorij EPEL ali pa lahko repel v epel namestite neposredno iz ukazne vrstice, kot je prikazano:
# yum install epel-release # dnf install epel-release [On Fedora 22+ versions]
Nato namestite program jpegoptim iz repozitorija, kot je prikazano:
# yum install jpegoptim # dnf install jpegoptim [On Fedora 22+ versions]
Sintaksa jpegoptm je:
$ jpegoptim filename.jpeg $ jpegoptim [options] filename.jpeg
Zdaj stisnimo naslednjo sliko tecmint.jpeg
, vendar preden jo optimiziramo, najprej z ukazom du ugotovimo dejansko velikost slike, kot je prikazano.
$ du -sh tecmint.jpeg 6.2M tecmint.jpeg
Tu je dejanska velikost datoteke 6,2 MB, zdaj jo stisnite tako, da zaženete:
$ jpegoptim tecmint.jpeg
Odprite stisnjeno sliko v kateri koli aplikaciji za pregledovanje slik, ne boste našli večjih razlik. Izvorne in stisnjene slike bodo enake kakovosti.
Zgornji ukaz slike optimizira na največjo možno velikost. Lahko pa dano sliko stisnete v določeno velikost, vendar onemogoči optimizacijo brez izgub.
Na primer, stisnimo nad sliko s 5,6 MB na približno 250 k.
$ jpegoptim --size=250k tecmint.jpeg
Lahko vprašate, kako stisnete slike v celotnem imeniku, tudi to ni težko. Pojdite v imenik, kjer imate slike.
[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
Nato zaženite naslednji ukaz, da stisnete vse slike hkrati.
[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.
Hkrati lahko stisnete tudi več izbranih slik:
$ 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.
Za več podrobnosti o orodju jpegoptim si oglejte strani z navodili.
$ man jpegoptim
Stisnite ali optimizirajte slike PNG iz ukazne vrstice
OptiPNG je orodje ukazne vrstice, ki se uporablja za optimizacijo in stiskanje datotek PNG (prenosne omrežne grafike) brez izgube prvotne kakovosti.
Namestitev in uporaba OptiPNG je zelo podobna jpegoptim.
Če želite namestiti OptiPNG v vaše sisteme Linux, zaženite naslednji ukaz iz terminala.
# apt-get install optipng or $ sudo apt-get install optipng
# yum install optipng # dnf install optipng [On Fedora 22+ versions]
Opomba: Za namestitev programa optipng morate imeti v svojih sistemih, ki temeljijo na RHEL/CentOS, omogočeno repozitorij epel.
Splošna sintaksa optipng je:
$ optipng filename.png $ optipng [options] filename.png
Stisnite sliko tecmint.png
, vendar pred optimizacijo najprej preverite dejansko velikost slike, kot je prikazano:
[email ~/img $ ls -lh tecmint.png -rw------- 1 tecmint tecmint 350K Jan 19 12:54 tecmint.png
Tu je dejanska velikost zgornje slike 350K, zdaj stisnite to datoteko tako, da zaženete:
[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)
Kot vidite v zgornjem izhodu, je bila velikost datoteke tecmint.png zmanjšana na 30,39%. Zdaj znova preverite velikost datoteke z uporabo:
[email ~/img $ ls -lh tecmint.png -rw-r--r-- 1 tecmint tecmint 244K Jan 19 12:56 tecmint.png
Odprite stisnjeno sliko v kateri koli aplikaciji za pregledovanje slik, ne boste našli večjih razlik med izvirno in stisnjeno datoteko. Izvorne in stisnjene slike bodo enake kakovosti.
Če želite stisniti paketne ali več slik PNG naenkrat, preprosto pojdite v imenik, v katerem so vse slike, in za stiskanje zaženite naslednji ukaz.
[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) ....
Za več podrobnosti o optipng preverite strani z man.
$ man optipng
Zaključek
Če ste spletni skrbnik in želite na svojem spletnem mestu ali spletnem dnevniku prikazovati optimizirane slike, so lahko ta orodja zelo priročna. Ta orodja ne prihranijo le prostora na disku, temveč tudi zmanjšajo pasovno širino med nalaganjem slik.
Če poznate kakšen drug boljši način za dosego istega, nam to sporočite s komentarji in ne pozabite deliti tega članka na svojih socialnih omrežjih in nas podpirati.