Jos tietokoneellasi on tarpeeksi kuvia ja ne vievät liikaa tilaa, niiden kokoa on varmasti mahdollista pienentää jopa ilman laadun heikkenemistä. Tästä voi olla paljon hyötyä myös silloin, kun lataat kuvia pilvitallennustilaan.
JPEG ja PNG ovat internetin yleisimpiä kuvaformaatteja, joten voit optimoida lähes kaikki kuvat.
On olemassa apuohjelma nimeltä jpegoptim, joka on komentorivityökalu, jota voidaan käyttää JPEG-, JPG- ja JFIF-kuvien pakkaamiseen ilman laadun heikkenemistä. Apuohjelma optimoi kuvat Huffman-taulukoiden perusteella. JPEG-algoritmi käyttää pakkausta sellaisenaan, mutta tämä pakkaus saavutetaan laadun heikkenemisen avulla, ja tässä voidaan optimoida kokoa muuttamatta kuvaa.
Asenna apuohjelma Ubuntuun, Debianiin ja siihen perustuviin jakeluihin suorittamalla:
$ sudo apt install jpegoptim
Fedorassa, Red Hatissa, CentOS:ssa ja muissa niihin perustuvissa jakeluissa asiat ovat hieman monimutkaisempia, sinun on ensin lisättävä epel-release-repository. Voit tehdä tämän seuraavanlaisella komennolla:
$ sudo yum install epel-release
Tai:
$ sudo dnf install epel-release
Sitten voit asentaa jpegoptim juuri lisäämästäsi arkistosta:
$ sudo yum install jpegoptim
Tai:
$ sudo dnf install jpegoptim
Katsotaanpa, miten jpegoptimia käytetään. Linuxin kuvapakkausapuohjelman käyttäminen on hyvin helppoa. Sinun tarvitsee vain suorittaa ohjelma ja antaa sille tiedostonimi. Tämä on syntaksi:
$ jpegoptim optiona file_name.jpeg
Katsotaanpa apuohjelman vaihtoehtoja:
-d
- määritä kansio, johon valmiit kuvat tallennetaan;-f
- pakotettu optimointi;-m
- laatuindikaattori, peruuttaa häviöttömän pakkauksen ja asettaa laatutason 0-100, mitä enemmän sitä parempi;-n
- ei suorita varsinaista optimointia, näyttää vain tuloksen;-S
- asettaa valmiin kuvan koon, voidaan määrittää prosentteina tai kilotavuina;-o
- korvaa lähdetiedoston;-p
- tallentaa aikaleimat;-P
- tallentaa tiedoston oikeudet.Katsotaanpa, miten kuvia voidaan optimoida linuxissa jpegoptimilla. Tarkastellaan ensin alkuperäistä kokoa:
$ du image.jpg
Seuraavaksi tehdään yksinkertaisin optimointi:
$ jpegoptim image.jpg
Sitten tarkastelemme kokoa uudelleen:
$ du image.jpg
Kuten näet, jpg-pakkaus toimi, ja avaamalla kuva missä tahansa grafiikkaohjelmassa ei ole eroa tai laadun heikkenemistä, alkuperäinen ja valmis kuva ovat identtiset. Vasemmalla on optimoitu kuva, oikealla alkuperäinen:
Jos haluat, voit pakata kuvan tiettyyn kokoon, mutta silloin se ei ole häviötön:
$ jpegoptim --size=250k image.jpeg
Kuva pakataan, mutta laatu heikkenee huomattavasti. Jos kuvia on paljon, voit hyvin helposti käyttää eräpakkausta: siirry vain kansioon, jossa kuvat ovat, ja suorita pakkauskomento antamalla esimerkiksi maskin tiedoston sijasta:
$ cd images/
jpegoptim *.jpg
Voit myös listata useamman kuin yhden kuvan kerrallaan:
$ jpegoptim image1.jpg image2.jpg
Jos haluat optimoida kaikki tietyn kansion kuvat, voit käyttää xargs-komentoa yhdessä find-komennon kanssa. Pakkaa esimerkiksi kaikki nykyisen kansion kuvat siirtämällä ne kansioon ~/compressed:
$ find . -name "*.jpg" | xargs jpegoptim -d ~/compressed -p
Se siitä, nyt tiedät, miten jpg-kuvia pakataan Linuxissa. Seuraavaksi puhumme siitä, miten png-kuvia pakataan. Tämäkin on hyvin yksinkertaista.
PNG eli Portable Network Graphics on bittikarttakuvaformaatti, joka on suunniteltu korvaamaan puutteellinen GIF-formaatti pakkauksen ja värintoiston osalta. PNG-kuvien koko voi vaihdella suuresti riippuen useista tekijöistä, kuten värisyvyydestä, lomituksesta, ennen pakkaussuodatinta, käytetystä pakkausalgoritmista jne.
OptiPNG on konsoli-apuohjelma, jonka avulla voit optimoida PNG-kuvia. Nimittäin pakata koko, palauttaa metatiedot, tarkistaa eheyden jne. OptiPNG:n avulla voit pakata tiedostoja laadun kärsimättä, aivan kuten teimme Jpeg-formaatin kanssa.
Jos käytät Ubuntua, ohjelma on virallisissa arkistoissa ja voit asentaa sen hyvin helposti. Asenna optipng Debianiin, Ubuntuun ja johdannaisiin kirjoittamalla:
$ sudo apt install optipng
Red Hatissa, CentOS:ssa tai Fedorassa se tehdään täsmälleen samalla tavalla, vain eri paketinhallinta:
$ sudo yum install optipng
Tai:
$ sudo dnf install optipng
Apuohjelman syntaksi on hyvin yksinkertainen. Voit käyttää sitä täsmälleen samalla tavalla kuin jpegoptimia:
$ optipng ioptions file_name.png
Katsotaanpa apuohjelman asetuksia:
-backup
- tallentaa kopiot muutetuista tiedostoista;-dir
- kansio, johon tiedostot kirjoitetaan;-force
- pakottaa kirjoittamaan lähtevän tiedoston;-out
- kirjoittaa lähtevän
tiedoston määritettyyn tiedostoon;-simulate
- ei suorita mitään toimenpiteitä, vaan näyttää vain tuloksen;-o
- asettaa pakkaustason välillä 0-7.Yritetään nyt optimoida png:tä linuxissa. Katsotaan ensin tiedoston kokoa:
$ df -h image.png
Voit suorittaa kuvan pakkauksen seuraavalla komennolla:
$ optipng image.png
Katso sitten taas kokoa, tässä esimerkissä erot eivät näy, koska kuva on hyvin pieni, mutta suuremmassa koossa ne ovat merkittäviä:
Tässäkin pakkaaminen png linux häviöttömiä kuvia, mikä tarkoittaa, että saat täsmälleen saman kuvan vain pienempänä. Voit myös määrittää pakkaustason, se ei vaikuta kuvan laatuun, mutta vaikuttaa suoraan ohjelman suoritusaikaan. Arvo voi olla 0-7 ja mitä enemmän, sitä voimakkaampi pakkaus ja sitä pidempi käsittely kestää:
$ optipng -o 7 impge.png
Kuvien eräkäsittelyssä voit käyttää samaa periaatetta kuin jpeg:n käsittelyssä:
$ cd images/
$ optipng *.png
Nyt tiedät, miten linux-kuvien optimointi tehdään.