PNG

Allikas: Vikipeedia
Example alt text
Näide läbipaistvust kasutavast PNG pildist.

PNG (inglisekeelsest: Portable Network Graphics) on rastergraafika failivorming, mis toetab kadudeta tihendust. PNG loodi parandatud ja patendivaba asendusena GIF-vormingule. PNG on internetis kõige enam kasutatav pilditihendusvorming.[1]

PNG toetab paletipõhiseid pilte (paletid koosnevad kas 24-bitistest RGB või 32-bitistest RGBA värvidest), hallskaalal põhinevaid kuvandeid ning täisvärvilisi mittepaletipõhiseid RGB[A] pilte. PNG kavandati, et võimaldada interneti kaudu mugavamalt pilte üle kanda. Kuna see polnud mõeldud professionaalse printimisgraafika edasiandmiseks, siis ei toeta see mitte puna-rohe-siniseid värvimudeleid nagu CMYK.

PNG failinimelaiend on PNG või png ning nimelaiend image/png. 1996. aastal kiitis selle heaks IESG (Internet Engineering Steering Group)[2] ning 2004. aastal avaldati see ISO/IEC standardina.[3]

Ajalugu[muuda | muuda lähteteksti]

1995. aastal patenteeris IT ettevõte Unisys GIF-vormingu poolt kasutatava Lempel-Ziv-Welch pakendusalgoritmi, mis ajendas alternatiivvormingu otsingut. Samuti puudus GIF-vormingul võimatus kuvada rohkem kui 256 värvi.

1995. aastal algatati useneti uudisterühmas lõng, kus arutati GIF-vormingu võimalikku asendusvormingut. Seal tehti palju ettepanekuid, mis said hiljem PNG-vormingu osaks. Samast lõngast pärineb ka nimi PING (PING is not GIF) ning faililühend PNG, mida pakkus välja Oliver Fromme, DOS operatsioonisüsteemi populaarse JPEG vaaturi QPEG looja.[4]

Ühtlasi otsustati, et PNG ei hakka toetama animatsioone[5]. 2001. aastal avaldasid PNG loojad uue failivormingu MNG (Multiple-image Network Graphics) spetsifikatsiooni[6], mis siiski võimaldas kasutada liikuvaid elemente. MNG ei leidnud laialdast toetust veebibrauserite seas ning tänapäeval on vorming enamjaolt unustatud.

  • 1. oktoober 1996: avaldatakse esimene PNG spetsifikatsioon (Version 1.0), hiljem ilmneb see 2083. kommentaarinõudena. PNG-vormingust saab W3C soovitus.
  • 31. detsember 1998: väikeste muudatustega avaldatakse spetsifikatsiooni järgmine versioon: 1.1.
  • 11. august 1999: avaldatakse spetsifikatsiooni versioon 1.2.
  • 10. november 2003: PNG-vormingust saab rahvusvaheline standard (ISO/IEC 15948:2003).
  • 3. märts 2004: uuendatakse PNG rahvusvaheline standard ISO/IEC 15948:2004[3].

Võrdlus teiste failivormingutega[muuda | muuda lähteteksti]

GIF (Graphics Interchange Format)[muuda | muuda lähteteksti]

  • Väikeste piltide korral saavutab GIF-vorming suurema tihenduse kui PNG-vorming.
  • Välja arvatud ülaltoodud juhtumi korral on GIF-vormingus piltidel suurem failimaht kui hästi indekseeritud PNG-vormingus piltidel.
  • PNG-vorming toetab GIF-vorminguga võrreldes palju laiema läbipaistvusulatuse, kaasaarvatud alfakompositsioonilist läbipaistvust.
  • Kui GIF-vorming on piiratud 8-bitiga indekseeritud värvidega, siis PNG-vorming lubab kasutada palju laiema valiku värvisügavuseid, nagu 24-bitist (8 bitti kanali kohta) ja 48-bitist (16 bitti kanali kohta) True Color, toetades suuremat värvitäpsust, sujuvamaid üleminekuid jms[7]. Juhul, kui PNG-vormingus pildile on lisatud alfakanal, võimaldab see kasutada kuni 64 bitti piksli kohta (enne tihendamst).
  • Juhul, kui PNG-vormingus kasutab pilt rohkem kui 256 värvi, siis selle teisendamisel GIF-vormingusse võib kvaliteet kannatada.
  • Kui GIF-vormingus piltidesse on sisseehitatud liikuvate piltide toetus, siis PNG-vorming võimaldab seda vaid mitteametlike laienduste kaudu.

PNG-vormingus piltidel on halvem toetus vanemates veebibrauserites nagu Internet Explorer 6.[8]

JPEG (Joint Photographic Experts Group)[muuda | muuda lähteteksti]

Komposiitpilt, mis võrdleb kadudega JPEG tihendust ning kadudeta PNG tihendust.

Kuna JPEG-vorming kasutab kadudega kodeerimismeetodit, mis oli loodud spetsiaalselt fotograafiliste piltide jaoks, siis suudab JPEG-vorming luua väiksema failimahuga pilte võrreldes PNG-vorminguga juhul, kui tegemist on fotode ja fotodega sarnanevate piltidega. Sellistes piltides domineerivad pehmed ja madala kontrastilisusega ülekäigud. Kasutades selliste piltide jaoks kõrgkvaliteetse JPEG-vormingus pildi asemel PNG-vormingus pilti, on tulemuseks märgatavalt suurema mahuga fail, kuid mittearvestatav pildikvaliteedi paranemine. Samas, kui salvestatavad pildid sisaldavad järske üleminekuid ning ulatuslikke ühevärvilisi osi, näiteks teksti või tasapinnagraafikat, siis võib PNG-vorming tihendada pildiandmeid isegi rohkem kui JPEG-vorming. Lisaks sellele tihendab PNG-vorming kadudeta, samas kui JPEG-vorming tekitab kõrgkontrastiliste alade ümber märgatavat pildimüra. Samuti ei toeta JPEG-vorming läbipaistvust.

Kuna JPEG-vorming kasutab kadudega tihendust, siis mõjutab korduvalt kodeeritud pilti genereerimiskahju, mille tõttu kaotab see iga salvestamisel informatsiooni ning pildi kvaliteedi halveneb. PNG-vorming on aga kadudeta ning sobib mitu korda muudetavatele ja salvestavatele piltidele paremini.

PNG ei toeta Exifi metaandmete talletuse vormingut. Metaandemete salvestamiseks kasutab PNG-vorming abiandmestruktuure.

Kuna esimesed veebibrauserid ei toetanud PNG-vormingus pilte, siis kasutati enamasti GIF- ja JPEG-vormingus pilte. JPEG-vormingus piltide tihendus tekitas värviüleminekutes ähmasust, mistõttu mindi üle PNG-vormingus piltidele. Uuemates veebibrauserites on kasutatud värviüleminekute loomiseks CSS-i, mistõttu PNG otsene eelis selles valdkonnas kaob.

TIFF[muuda | muuda lähteteksti]

TIFF (Tagged Image File Format) on vorming, mis hõlmab erakordse hulga valikuid. See teeb TIFF-vormingu kasulikuks professionaalsete pilditöötlusprogrammide vahel piltide vahendamiseks. See toob kaasa ka selle, et pilditöötlusele mittespetsialiseeritud programmid (näiteks veebibrauserid) ei toeta seda nii laialdaselt. Ulatuslik laiendatavus toob kaasa selle, et enamik programme ei suuda kasutada kõiki vormingu võimalusi, mis võib tekitada kasutajate seas segadust ja negatiivselt mõjutada ühilduvust.

Tarkvaratoetus[muuda | muuda lähteteksti]

PNG ametlik baasteostus on programmeerimisteek libpng[9]. Seda avaldatakse vabavarana Permissive free software license litsentsiga.

Toetus pilditöötlusprogrammides[muuda | muuda lähteteksti]

PNG-vormingut toetavad palju pilditöötlusprogrammid, näiteks Adobe Photoshop, Photo-Paint, Paint Shop Pro, GIMP, GraphicConverter, Helicon Filter, ImageMagick, InkScape, IrfanView ning paljud teised[10]. Samuti toetavad PNG-vormingut populaarsete operatsioonisüsteemidega kaasatulevad Windowsi Microsoft Paint ning Apple'i iPhoto ja Preview.[10]

Veebitoetus[muuda | muuda lähteteksti]

Esimesed veebibrauserid, mis toetasid PNG-vormingus pilte, olid Internet Explorer 4.0b1 ning Netscape 4.04[11]. Vormingu omaksvõtmine oli aeglustatud, kuna varajastel Internet Exploreri versioonidel esines PNG-vormingus piltide kasutamisel palju probleeme. Tänapäeval toetavad PNG-vormingus pilte peaaegu kõik nüüdisaegsed veebibrauserid nagu Apple Safari, Mozilla Firefox, Opera, Google Chrome ja paljud teised[11].

Ikoonide toetus operatsioonisüsteemides[muuda | muuda lähteteksti]

Enamik Linuxi distributsioone toetab PNG-vormingus ikoone läbi GNOME töölauakeskkonna[12]. Windowsis ilmus see funktsioon koos Windows Vistaga 2006[13]. aastal. Ka Mac OS X[14], iOS[14], MorphOS[15] ja Android[16] toetavad PNG-vormingus ikoone.

Viited[muuda | muuda lähteteksti]

  1. Matthias Gelbmann. "The PNG image file format is now more popular than GIF". 31. jaanuar 2013. Q-Success. Kasutatud 28.01.2016. Inglise keeles.
  2. Glenn Randers-Pehrson. "Registration of new Media Type image/png". 06. mai 2015. Failitüüp: txt. Kasutatud 28.01.2016. Inglise keeles.
  3. 3,0 3,1 International Organization for Standardization. "ISO/IEC 15948:2004". 19. september 2012. International Organization for Standardization. Kasutatud 28.01.2016. Inglise keele.
  4. Tom Lane. "Thoughts on a GIF-replacement file format". Google. Kasutatud 28.01.2016. Inglise keeles.
  5. Boutell, et. al.. "PNG (Portable Network Graphics) Specification Version 1.0". (lk 39). Boutell.Com, Inc.. Kasutatud 28.01.2016. Inglise keeles.
  6. Glenn Randers-Pehrso, et. al.. "MNG (Multiple-image Network Graphics) Format Version 1.0". PNG development group. Kasutatud 28.01.2016. Inglise keeles.
  7. Greg Roelofs. "A Basic Introduction to PNG Features". 14. märts 2009. Greg Roelofs. Kasutatud 28.01.2016. Inglise keeles.
  8. Jennifer Farley. "GIF, PNG, JPG. Which One To Use?". 03. august 2009. SitePoint Pty. Ltd.. Kasutatud 28.01.2016. Inglise keeles.
  9. Guy Eric Schalnat, Andreas Dilger, John Bowler, Glenn Randers-Pehrson, et. al.. "libpng". 15. jaanuar 2016. Greg Roelofs. Kasutatud 28.01.2016. Inglise keeles.
  10. 10,0 10,1 Greg Roelofs. "Image Editors with PNG Support". 20. september 2015. Greg Roelofs. Kasutatud 28.01.2016. Inglise keeles.
  11. 11,0 11,1 Greg Roelofs. "Browsers with PNG Support". 11. aprill 2011. Greg Roelofs. Kasutatud 28.01.2016. Inglise keeles.
  12. Alexander Larsson, Frans Englich. "Icon Theme Specification". The GNOME Project. Kasutatud 28.01.2016. Inglise keeles.
  13. Axialis Software Team. "Introducing Windows Vista™ Icons". 21. mai 2007. Axialis Software. Kasutatud 28.01.2016. Inglise keeles.
  14. 14,0 14,1 "Designing App Icons". Apple Inc.. Kasutatud 28.01.2016. Inglise keeles.
  15. Elena. "NEW! 32bit PNG icons on your Amiga !!! (68K and MorphOS)". 06. juuni 2004. Aminet. Kasutatud 01.28.2016. Inglise keeles.
  16. "Supporting Multiple Screens". Google Inc.. Kasutatud 28.01.2016. Inglise keeles.