Makseviisid Abuse

PNG optimeerimine Linuxis

29.11.2022, 21:46

Eelmises artiklis rääkisime teile, kuidas JPEG-pilte kokku suruda. Nüüd räägime teile, kuidas lahendada sarnane probleem, kuid juba seoses PNG-formaadis piltidega.

Selle formaadi omadused

PNG - väga populaarne piltide laiendus. See formaat töötati välja GIF-i asendajana. PNG-piltide suurus on sageli väga erinev nii värvisügavuse, põimimise kui ka teatud pakkimisalgoritmi tõttu.

OptiPNG on ainulaadne konsooliprogramm, mida saab kasutada PNG-piltide tihendamiseks. Kõik suuremad ja väiksemad ülesanded on OptiPNG abil teostatavad. Seda saab teha sama kiiresti ja ilma kvaliteedikahjuta kui JPEG-piltide puhul.

OptiPNG installimine

Kas te töötate Ubuntus? Saate programmi paigaldada repositooriumist ilma probleemideta. Peate täitma järgmise käsu:

$ sudo apt install optipng

Piltide tihendamine OptiPNG-ga

Utiliidi süntaks on üsna lihtne. Seda saab teostada samamoodi nagu jpegoptim puhul:

$ optipng file_name options.png

Vaatame utiliidi valikuid:

  • -backup - salvestab muudetud failide koopiad;
  • -dir - kaust failide kirjutamiseks;
  • -force - sundida väljamineva faili kirjutamist;
  • -out - väljamineva faili kirjutamine määratud faili;
  • -simulate - ei tee mingeid toiminguid, vaid näitab ainult tulemust;
  • -o - kompressioonitaseme seadmine vahemikus 0 kuni 7.

Teeme png optimeerimise. Saame teada, kui palju fail kaalub:

$ df -h image.png

Faili tihendamiseks kasutame:

$ optipng image.png

Vaatame suurust, me ei näe mingeid erinevusi, pilt on üsna väike, kuid suuruse suurendamisel on erinevus nähtav:

Kompressioon png toimub ilma kvaliteedikahjumita, saad sama pildi, kuid väiksema suurusega. On vaja määrata optimeerimise aste, mis mõjutab aja kadu, mis on seotud programmi optimeerimiseks piltide optimeerimisega. Kraad panna 0 kuni 7. Mida suurem see on, seda rohkem kulu aega ja ressursse vajab arvuti.

$ optipng -o 7 impge.png

Piltide partiitöötlus toimub samamoodi jpegiga:

$ cd images/

$ optipng *.png

See ongi kõik, jälle midagi keerulist.