PNG (Portable Network Graphics/Taşınabilir Ağ Grafikleri), bitmapler için patent dışı kayıpsız sıkıştırma algoritmasına dayalı bir grafik dosya formatıdır.
PNG Dosya Formatı Nedir?
PNG dosyası, büyük ölçüde GIF formatının eksikliklerinin üstesinden gelmek için geliştirilmiştir ve görüntüleri daha derin bir kontrast ve diğer önemli verilerle birlikte saklamaya izin verir ve bir görüntü dosyası .png uzantısını kullanır.
Tarihi
PNG, Unisys şirketinin GIF tarafından kullanılan LZW veri sıkıştırma algoritması için yazılım patentini uygulayacağını duyurmasının ardından 1995 yılında oluşturuldu.
GIF formatıyla ilgili başka sorunlar da vardı, örneğin, bilgisayarlar zaten binlerce veya milyonlarca rengi desteklediğinde, bunu maksimum 256 renkten oluşan 8 bitlik paletlerle sınırlandırmak zorundaydı.
Başlangıçta, PNG’nin GIF olmadığı anlamına gelen yinelemeli bir kısaltma olarak adlandırılmaktaydı.
GIF, animasyonu desteklese de, bu dosya türü statik bir görüntü formatı olarak geliştirildi ve MNG formatı animasyonlu varyantı olarak oluşturuldu.
PNG, Ağustos 1999’da Unisys ücretsiz veya ticari olmayan yazılım geliştiricileri için telifsiz patent lisansları politikasını sona erdirdiğinde daha fazla kullanılan bir dosya türü oldu.
PNG Sürüm 1.0 spesifikasyonu 1 Temmuz 1996’da yayınlandı ve daha sonra RFC 2083 olarak çıktı. 1 Ekim 1996’da çok kısa bir sürede W3C tarafından önerilir duruma geldi.
31 Aralık 1998’de bazı küçük değişiklikler içeren 3 yeni uzantı veya chunks/yığın içeren sürüm 1.1 yayınlandı. Sürüm 1.2 sürümü 11 Ağustos 1999’da yayınlandı. PNG uluslararası bir standart olduğu için 10 Kasım 2003’te W3C tarafından herkese tavsiye edildi.
Dosya Segmentleri Özelliği
Her bir görüntü hakkında belirli bilgileri saklayan bir dizi bölüm vardır. Segmentler, yardımcı bir segmentle karşılaşan ve onu anlamayan bir programın güvenli bir şekilde görmezden gelebilmesi için kendilerini kritik veya yardımcı ilan ederler.
Segment tabanlı yapı, eski sürümlerle uyumluluğu korurken PNG formatını genişletmek için tasarlanmıştır.
Bölümlerin her biri, boyutunu ve türünü belirten bir başlığa ve ayrıca verilerin sağlama toplamına sahiptir. Bölümlerin büyük/küçük harf duyarlı 4 harfli bir adı vardır.
Bu isimde büyük veya küçük harf kullanımı, kod çözücülere tanınmayan bölümler hakkında bilgi sağlar. İlk harf büyükse bu bölümün gerekli olduğunu gösterir, aksi takdirde yardımcı olur.
Dosyayı okumak için bölümler gereklidir, kod çözücü tanımadığı önemli bir bölüm bulursa okumayı iptal etmelidir.
İkinci harfin büyük harfle yazılması durumunda, bu, bölümün özel amaçlı bölümlerin şartnamesi veya kaydında kamuya açık veya özel olduğu anlamına gelir.
Bu büyük ve küçük harf kullanımı, genel ve özel bölümler arasında hiçbir zaman çatışma olmamasını sağlar. PNG özelliklerini karşılamak için üçüncü harf büyük harfle yazılmalıdır ve bu gelecekteki genişletme için ayrılmıştır.
Dördüncü harf, tanınmaması durumunda bölümün kopyalanmasının güvenli olup olmadığını belirtir.
Küçük harf ise, dosyanın geçirdiği değişiklik miktarına bakılmaksızın bölümü kopyalamak güvenlidir, büyük harf ise yalnızca değişikliklere uğramış kritik bölümler yoksa kopyalanabilir.
Meta Veri Bölümlerini Anlama
PNG görüntüsünde kaydedilebilecek diğer öznitelikler gama değerleri, arka plan rengi ve metin bilgileridir. Ayrıca sRGB gibi renk yönetimi sistemleri tarafından kullanılan renk düzeltmesini de kullanır ve Adobe‘nin Photoshop gibi bazı programları da bu sisteme sahiptir.
bKGD
Görüntü görüntüleyicide olduğu gibi görüntülenebilecek en iyi renk olmadığında ancak bir web tarayıcısında olmadığında kullanılan varsayılan arka plan rengini içerir.
cHRM
Beyaz dengesini oluşturur.
gAMA
Gama değerini belirtir.
hIST
Görüntüdeki her rengin histogramını veya toplam miktarını kaydeder.
iCCP
ICC renk profilini içerir.
iTXt
Sıkıştırılmış veya sıkıştırılmamış metin (UTF-8) içerir.
pHYs
Beklenen piksel boyutunu ve görüntü oranını içerir.
sBIT
Görüntüdeki renklerin doğruluğunu gösterir.
sPLT
Tüm renk yelpazesinin mevcut olmaması durumunda kullanılacak bir palet önerir.
sRGB
sRBG renk alanı standardının kullanıldığını gösterir.
tEXt
ISO 8859-1’de her bölüm için bir ad = değer ile temsil edilebilen metni depolar.
tIME
Son değişikliğin tarihini kaydeder.
tRNS
Şeffaflık hakkında bilgi içerir ve dizine alınmış görüntüler için bir veya daha fazla palet için alfa kanalını, gerçek renkli ve gri tonlamalı görüntüler için ise tamamen şeffaf olarak kabul edilmesi gereken tek bir pikselin bilgilerini depolar.
zTXt
tEXt ile aynı sınırlara sahip sıkıştırılmış metin içerir.
Bu bölümlerdeki ilk küçük harf bunların PNG spesifikasyonunda gerekli olmadığını, son küçük harf ise söz konusu uygulama bunları anlamasa bile kopyalamanın güvenli olduğunu belirtir.
Renk Derinliği Özelliği
PNG formatındaki görüntüler, dizinlenmiş palet görüntüleri olabilir ve daha fazla kanaldan oluşabilir. Birden fazla kanal varsa, tüm kanallar piksel başına aynı sayıda bite sahiptir.
Resmi PNG spesifikasyonu kanal başına bit derinliği normalde düzenleme programları yalnızca piksel başına toplam bit sayısını (renk derinliğini) adlandırır.
Kanal sayısı, görüntünün gri tonlamalı veya renkli olmasına ve bir alfa kanalına sahip olup olmadığına bağlıdır.
İndekslenmiş görüntüler maksimum 256 renkle sınırlandırılır. Bu renk paleti, 8 bitlik bir kanal derinliği ile saklanır. Palet, bit derinliği ile işaretlenenlerden daha fazla renge, yani 28 = 256 renge sahip olamaz.
Görüntüde Şeffaflık Oranı
PNG çok çeşitli saydamlık seçenekleri sunar ve gerçek renk veya gri tonlama ile tek bir piksel bile saydam olabilir veya bir alfa kanalı eklenebilir.
Paletleri kullanan görüntüler için, palet girişlerine bir alfa kanalı eklenebilir. Bu tür saklanan değerlerin sayısı, paletteki toplam giriş sayısından daha az olabilir ve girişlerin geri kalanı tamamen opak kabul edilecektir.
İkili saydamlığa sahip piksellerin aranması, bazı piksellerin yanlışlıkla saydamlaşmasını önlemek için herhangi bir renk azaltmadan önce yapılabilir.
Sıkıştırma Özelliği
Bu formatta kullanılan sıkıştırma yöntemi, deflasyon olarakta bilinir.
Filtreleme yöntemlerinde spesifikasyon 1.2, görüntünün her satırı için görüntünün rengini tahmin eden bir filtreleme yönteminin seçildiği sıkıştırmayı geliştirmek için çok yararlı olan 5 piksel değer tahmin modlarını içeren tek bir filtre türünü tanımlar.
Böylece her piksel önceki piksel renklerini temel alır ve tahmin edilen rengi geçerli piksel renginden çıkarır. Bu beş yöntem ise None (Yok), Sub (Alt), Up (Yukarı), Average (Ortalama) ve Paeth’dir.
Bu filtreler, giriş görüntüsüne büyük ölçüde son dosya boyutunu önemli ölçüde azaltabilir. Sıkıştırma algoritması, en büyük indirgemeyi sunan uygun yöntem seçimiyle ilgilenebilir.
MIME ortam türü image/png’dir ve 14 Ekim 1996’da onaylanmıştır.
Animasyon/Hareketli Görüntü Özelliği
APNG, animasyonu destekleyen PNG tabanlı bir formattır ve kod çözücünün bu biçimi anlamaması durumunda tek bir görüntünün görüntülenmesini destekler. Firefox ve Chrome gibi tarayıcılar tarafından kabul edilir ve dosya uzantısı .png’dir.
MNG, animasyonu destekleyen, fikirlere ve PNG’nin bazı bölümlerine dayanan bir görüntü formatıdır. Ancak karmaşık bir sistemdir ve GIF ve APNG’nin yapması durumunda tek bir görüntünün görüntülenmesine izin vermez.
Diğer Formatlarla Karşılaştırma
GIF ile PNG Karşılaştırma
Çoğu durumda, GIF’den daha iyi sıkıştırma sağlar, ancak bazı uygulamalar filtreleme yöntemlerinde yetersiz seçim yapar ve daha büyük dosya boyutlarına neden olur.
GIF gibi, 1 bitlik veya ikili saydamlıkla indekslenmiş görüntüleri destekler. Bu tür bir şeffaflık, ek bir kanal gerektirmez ve paletteki yalnızca bir rengin %100 şeffaf görünmesine izin verir.
Bu format, milyonlarca renk derinliğine sahip formatları ve GIF’den çok daha zengin ve daha doğru renk aralıkları sağlayan ve aralarında şeffaflık değerleri olan bir alfa kanalı özelliğini sunar.
GIF animasyonu desteklerken bu format bunu desteklemez.
JPEG ile PNG Karşılaştırma
PNG ve JPEG farklı amaçlar için tasarlanmış görüntü formatlarıdır ve bu nedenle yalnızca genel bir karşılaştırma yapılabilir.
JPEG, görüntü kalitesinin zararına büyük bir sıkıştırma oranına sahiptir ve büyük görüntüler ve fotoğraflar için ideal bir dosya formatıdır fakat şeffaflığı kabul etmez.
Mükemmel sıkıştırmaya sahip kayıpsız bir formattır ve geniş düz renkli alanlardan oluşan veya az renk varyasyonu olan görüntüler için idealdir.
Ek olarak, alfa kanalını ve gama düzeltmesi gibi bazı ekstra özellikleri destekler.
Avantajları
Popüler GIF grafik formatını kullanan LZW sıkıştırma algoritması, Unisys şirketine aittir.
GIF formatı patentli olmasına rağmen, bu, web sayfalarında kullanılmak için İnternet’te en yaygın kullanılan grafik formatı olmasını engellemez.
Bu durumun bireysel tasarımcıları ve hatta kurumsal web sitelerinin profesyonellerini ve yöneticilerini etkilemesi pek olası olmamasına rağmen bu formatın Web alanında daha fazla kullanımı kanıtlanmıştır.
Bu format, World Wide Web Konsorsiyumu tarafından resmi olarak Ekim 1996’da yayınlandı.
Bu uluslararası konsorsiyumun diğer görüntü formatlarında olduğu gibi görüntüleri kullanan, oluşturan veya düzenleyen uygulamalar için herhangi bir lisans gerektirmeyen, kullanımı ücretsiz bir dosya türüdür.
PNG formatı, yüksek boyutlu sıkıştırma oranına sahip bit eşlem görüntüleri oluşturmanıza olanak sağlar. GIF formatı gibi kalite kaybı oluşturmaz, ancak daha yüksek bir ortalama sıkıştırma özelliğine sahiptir.
GIF’e benzemesine rağmen görüntünün web sayfasının gerçek arka planıyla iyi bir entegrasyonuna izin veren şeffaf arka planları destekler.
PNG, 16,7 milyon renge kadar renk derinliğini desteklemesi açısından GIF’ten daha üstündür. GIF, aynı görüntüde yalnızca maksimum 256 farklı rengi destekler. PNG’nin ayrıca standart ve aşamalı olmak üzere iki sıkıştırma modu vardır.
İlgili Yazılar
♦ TIFF Formatı
♦ CMYK Nedir?
♦ RGB Renkleri
♦ Bitmap/BMP
♦ Algoritma Nedir?