Portable Network Graphics

Vikipedi, özgür ansiklopedi
Atla: kullan, ara
Portable Network Graphics
Dosya uzantısı: .png
MIME kodu: image/png
Type code: PNGf
Üretici: W3C
Biçimin türü: Kayıpsız sıkıştırma biteşlem grafik biçimi
Extended to: APNG, JNG ve MNG
Standart: ISO 15948, IETF RFC 2083

PNG, "Taşınabilir Ağ Grafiği" anlamındaki (Portable Network Graphics) 'in kısaltmasıdır ve kayıpsız sıkıştırarak görüntü saklamak için kullanılan bir saklama biçimidir. PNG biçiminde paletli ya da gerçek renkte görüntüler seçimlik bir saydamlık kanalıyla saklanabilir.

Halihazırda GIF gibi kabul edilebilir başarımda ve yaygın bir kayıpsız sıkıştırma algoritması varken PNG'nin geliştirilmesini motive eden şey, Unisys'in GIF'de kullanılan LZW algoritması üstündeki patent hakkının ihlallerini takip edeceğini duyurması oldu. Gelişen ve yaygınlaşan donanım teknolojisiyle beraber GIF biçimi yetersiz kalmaya da başlamıştı. PNG, bir W3C tavsiyesi olarak 1.0 sürümüyle 1 Temmuz 1996'da yayımlandı. 1.1 ve 1.2 sürümleriyle yeni genişletmeler tanımlandı ve 1.2 sürümü küçük değişikliklerle ISO/IEC 15948:2003 adıyla bir ISO standardı oldu.

PNG'nin kabulü Unisys'in Ağustos 1999'da ticari olmayan veya özgür yazılım için telif ücretlerinden muaf LZW lisansını kaldırmasıyla daha da hızlandı.

Teknik özellikleri[değiştir | kaynağı değiştir]

Saydamlık kanalı içeren bir PNG resim
Aynı PNG resim damalı fon üzerinde

Veri sıkıştırma[değiştir | kaynağı değiştir]

GIF'deki patent sorunlu LZW yerine PNG'de zip, gzip ve türevlerince de kullanılan LZ77 algoritması kullanılmaktadır. zlib gibi yaygın olarak kullanılan gerçeklemelerinin de bulunması bu seçimin bir nedeni olmuştur. Benzer ayarlar kullanıldığında, bu algoritma LZW'ye göre çok daha iyi sonuçlar vermektedir. Ancak, her iki algoritma da resmin iki boyutlu doğasını gözardı ederek, resimleri bir boyutlu veri akımları kabul edip sıkıştırdıklarından optimum kayıpsız iki boyutlu sıkıştırmadan uzaktırlar.

Renkler ve saydamlık[değiştir | kaynağı değiştir]

GIF gibi PNG de paletli resimleri destekler, piksel başına 1, 2, 4 ya da 8 bitlik paletli resimler oluşturulabilir. Bunun dışında, gerçek renkli resimler için kanal başına 8 ya da 16 bit kullanılır. PNG gri ton ya da kırmızı, yeşil ve mavi renkli kanalların yanı sıra renk kanallarıyla aynı duyarlılıkta bir saydamlık kanalı da destekler; GIF'de saydamlık bir renk değerinin saydam olarak işaretlenmesiyle elde ediliyordu.

Tarama ve animasyon[değiştir | kaynağı değiştir]

PNG biçimi hareketli resimleri desteklemez. PNG tabanlı MNG ve APNG biçimleriyle (GIF stili) hareketli resimler desteklenmektedir, ancak bu biçimlerin ikisi de küçük kitleler tarafından kullanılmaktadır.

Uygulama desteği[değiştir | kaynağı değiştir]

İçlerinde GIMP, Inkscape, Adobe Photoshop, Macromedia Fireworks, Microsoft Paint ve Apple iPhoto'nun da bulunduğu birçok program PNG biçiminde görüntü saklamayı desteklemektedir.

PNG biçiminde görüntü üretirken, görüntünün istenen kalite seviyesinin gerektirdiği en az renk derinliğinde saklanması gerektiği unutulmamalıdır, ör. siyah-beyaz bir çizimi 8-bit gri tonlamada saklamak dosya büyüklüğünü çok artıracaktır. PNG görüntüyü üreten programın sakladığı meta verinin çokluğu da dosyanın şişmesinde bir etkendir. Çoğu programlar sadece program adı ve zaman bilgisi gibi şeyleri saklarken Macromedia Fireworks gibi programların ayrıntılı ve büyük miktarda veriyi PNG dosyalarında tuttuğu bilinmektedir.

Web tarayıcı desteği[değiştir | kaynağı değiştir]

Özgür yazılım olan tarayıcıların hemen hepsi libpng kullanarak PNG desteklerini gerçekledikleri halde sürüm 6 itibariyle Internet Explorer'ın tüm sürümleri tam PNG desteği vermemektedir. Internet Explorer 6, saydamlık kanallı PNG'leri desteklemezken (Bu durum ufak bir CSS özelliğiyle aktif hale getirilebiliyor(filter:progid:DXImageTransform.Microsoft.AlphaImageLoader('src=xxx.png'))), daha düşük sürümler bazı gri tonlamalı resimleri gösterememekte ve bazı resimlerle de çakılmaktadır. Bu nedenle PNG hâlâ GIF tabanlı saydam web görüntüleri yerinden edememiştir. Internet Explorer 7 ile PNG'ye iyileştirilmiş bir destek verilmektedir.

Diğer görüntü biçimleriyle karşılaştırması[değiştir | kaynağı değiştir]

JPEG ve PNG[değiştir | kaynağı değiştir]

Soldaki JPEG resimde bulanıklıklar varken, PNG çok daha keskin ve temiz

Fotoğraf ve fotoğraf benzeri resimlerde JPEG, PNG'ye göre çok daha küçük dosyaları küçük kalite kayıpları bedeliyle üretecektir. Ancak çizim ya da metin gibi keskin geçişler içeren resimlerde PNG çok daha iyi sonuç verecektir, çünkü bu tür resimler frekans domaininde kompakt biçimde gösterilemezler. JPEG ile sıkıştırıldıklarında bu resimlerdeki çizgi ve metinlerin etraflarında basamaklanmalar ve bulanıklıklar görülür.

PNG'nin JPEG'e genelde tercih edilmemesindeki en büyük etken, kayıplı bir sıkıştırma algoritmasını kullanan JPEG'e kıyasla, PNG dosyalarının kimi zaman 4-5 kat daha büyük alan kaplamasıdır. PNG keskin kenarlı, vektörel ve metin içeren resimlerde daha başarılı sonuç verirken, İnternet'teki yüklenme hızının kabul edilebilir kalite kaybına tercih edildiği durumlarda JPEG kullanılmaktadır.

JPEG, kullanılan sıkıştırma algoritmasının yüksekliğiyle orantılı olarak, özellikle kenar ve renk geçişlerinde (gradient) kalite kaybına uğrayan bir biçimdir. Ancak yüksek sıkıştırma yeteneği ve EXIF bilgilerini saklayabilmesi gibi üstünlükleri, sayısal kameralarda JPEG biçiminin yaygınlaşmasını sağlamıştır.

TIFF ve PNG[değiştir | kaynağı değiştir]

TIFF de patent problemli LZW algoritmasını kullanmaktadır. Web tarayıcılarının çoğu, genel kitlelerin kullanımı için çok detaylı olan TIFF biçimini dahili olarak desteklememektedir. TIFF destekleyen uygulamaların büyük bir kısmı da standardın altkümelerini desteklediğinden uyum problemleri çıkabilmektedir. Ancak TIFF, CCITT Grup 4 gibi özelleşmiş algoritmalar sayesinde siyah-beyaz görüntüleri PNG'den daha iyi sıkıştırmaktadır.

GIF ve PNG[değiştir | kaynağı değiştir]

Küçük görüntüler için GIF biçimi, PNG'ye göre daha fazla sıkıştırma olanağı sağlar. PNG biçimi, GIF'e göre daha geniş şeffaflık seçenekleri sunar. PNG biçimindeki görüntüler, GIF'e göre daha az program tarafından desteklenir (örneğin eski office yazılımları ve internet tarayıcıları). PNG görüntüleri, GIF biçimindekilere göre bilgisayar ekranında daha hızlı belirir.

Dış bağlantılar[değiştir | kaynağı değiştir]

PNG dosya biçimi ile ilgili teknik bilgiler


Çoklu ortam sıkıştırma biçimleri
Görüntü sıkıştırma biçimleri
ISO/IEC: MPEG-1 | MPEG-2 | MPEG-4 | H.264/MPEG-4 AVC | ITU-T: H.261 | H.262 | H.263 | H.264 | SMPTE: VC-1
VP7 | RealVideo | WMV | Indeo | MJPEG |Theora
Ses sıkıştırma biçimleri
ISO/IEC MPEG: MPEG-1 Katman III (MP3 olarak bilinir) | MPEG-1 Katman II | AAC | HE-AAC | ITU-T: G.711 | G.722 | G.722.1 | G.722.2 | G.723 | G.723.1 | G.726 | G.729 | G.729a
FLAC | iLBC | RealAudio | WMA | Speex | Vorbis | ATRAC3 | AC3 | AIFF-C | MT9
Resim sıkıştırma biçimleri
ISO/IEC/ITU-T: JPEG | JPEG-2000 | JPEG-LS | JBIG | JBIG 2
GIF | PNG | APNG | TIFF | PCX | TGA | BMP | WMP | ILBM
Ortam içeriği biçimleri
AU | AVI | ASF | WAV | MP4 | Ogg | Ogg Media | Matroska | QuickTime | RealMedia | 3GP