GIF, yani Graphics Interchange Format, çevrimiçi hizmet CompuServe tarafından 1980'lerin sonlarında, resimlerin yavaş çevirmeli bağlantılardan gönderilebilmesi ve hemen her konuda birbiriyle uyuşmayan bilgisayarlarda görüntülenebilmesi için oluşturuldu. İkinci ve son sürümü saydamlık ve birden fazla kare desteği ekledi ve bugün hâlâ kullanılan sürüm budur. Aradan onlarca yıl geçmesine rağmen GIF tek bir nedenle varlığını sürdürüyor: Düz bir resim bekleyen bir yere kısa, sessiz, döngüsel bir animasyon yerleştirmenin en basit yolu olması.
Bir GIF resmini nasıl saklar
Bir GIF kayıpsızdır ancak ciddi kısıtlamaları vardır. LZW adı verilen sıkıştırması, tekrarlanan piksel dizilerini kısa kodlarla değiştirir ve içeri girenin aynısını geri verir. Sınır renklerdedir: Her kare, dosyada saklanan bir paletten seçilen en fazla 256 renk kullanabilir. Bir fotoğrafta bunun çok üzerinde ton bulunur, bu nedenle fotoğrafı GIF olarak kaydetmek kodlayıcıyı 256 rengi seçmeye ve geri kalanını yaklaşık olarak üretmeye zorlar; genellikle kırpma (dithering) ile, yani iki rengin noktalarını dağıtarak üçüncü bir rengi taklit ederek. Bu yüzden fotoğrafik GIF'ler benekli ve şeritli görünür.
Saydamlık ya hep ya hiçtir. Paletteki girdilerden biri saydam olarak işaretlenebilir, bu yüzden bir piksel ya tamamen görünürdür ya da tamamen opaktır. Yumuşak, yarı saydam bir kenar oluşturmanın bir yolu yoktur; bu da GIF logolarının beklenmedik arka planlarda sıkça sert bir saçak göstermesinin nedenidir.
Animasyon, yalnızca art arda saklanan birkaç görüntüdür; her birinin kendi paleti, saniyenin yüzde biri cinsinden kendi gecikmesi ve kendisinden önceki kareyle ne yapılacağını belirten bir temizleme talimatı vardır. Küçük bir ek blok, görüntüleyiciye kaç kez döngü yapılacağını söyler. Ses yoktur.
Bir GIF hangi metadataları taşır
Bu kısa bir bölüm ve yanıt gerçekten sıra dışı: bir GIF neredeyse hiç meta veri taşımaz. Meta veri, bir dosyanın kendisi hakkında tuttuğu tanımlayıcı bilgilerdir ve GIF'in buna pek alanı yoktur. Kamera ayarları, yazar, tarih, başlık için bir alan yoktur ve GPS koordinasyonlarını saklayacak hiçbir yer yoktur. Fotoğraflarda bu bilgileri taşıyan standartlar olan EXIF ve IPTC, GIF için hiç tanımlanmamıştır.
Bir raporun size gösterebileceği şeyler, geçmişten çok yapıyla ilgilidir:
- Görüntü boyutları, renk tablosunun boyutu ve gerçekte kullanılan renk sayısı.
- Kare sayısı, her karenin gecikmesi ve temizleme yöntemi ile döngü sayısı.
- Varsa, hangi palet girdisinin saydam olduğu.
- Görüntünün satır atlamalı (interlaced) olup olmadığı; dosya tam yüklenmeden kaba bir ön izlemenin görünmesini sağlayan eski bir yöntem.
- Yorum blokları. GIF serbest biçimli metin yorumlarına izin verir ve yazılımlar bazen kendi adını, bir telif hakkı satırını veya bir kaynak adresini buraya yazar. Bir ismin görünmesinin en olası tek yeri burasıdır.
- Uygulama blokları. Döngü için kullanılan blok dışında, Adobe bir GIF'in içine tam bir XMP meta veri paketi taşıyabilen bir blok tanımlamıştır. Nadir görülür, ancak bir raporun bir GIF içinde XMP gösterebilmesinin nedeni budur.
Bu durumun iki yönü vardır. Bir GIF'in konumunuzu veya kameranızın seri numarasını sızdırması pek olası değildir; çünkü bunları koyacak bir yeri yoktur. Ancak bu anonimliğe eşit değildir: Bir fotoğraftan veya videodan oluşturulan bir animasyon, piksellerin gösterdiği her şeyi göstermeye devam eder ve herhangi bir yorum bloğu, biri silene kadar dosyada kalır.
GIF ne zaman kullanılmalı
Bir GIF'i, sıradan bir resim gibi çalışması gereken kısa, döngüsel bir animasyon için, örneğin bir sohbet penceresinde, forum gönderisinde veya e-postada kullanın. Durağan bir görsel içinse onu seçmek için artık iyi bir neden yok: PNG, aynı düz grafikler için daha küçüktür ve tam rengi korur; JPG ise fotoğraflar için çok daha küçüktür.
Animasyon için dürüst karşılaştırma videoyladır. Aynı birkaç saniyelik sahnenin bir MP4 veya WebM klibi genellikle boyutun küçük bir kısmı kadardır ve akıcı renklere sahiptir. WebP ve APNG de tam renk ve doğru saydamlıkla animasyon sunar. GIF'in avantajı ne kalite ne de boyuttur; avantajı, her yerde ve her şeyin onu zaten kabul ediyor olmasıdır.