WOFF
Web Open Font Format — web için özel olarak tasarlanan ilk font formatı.
WOFF Nedir?
WOFF 1.0, web için sıfırdan tasarlanan ilk font formatı olarak Mozilla, Opera ve Microsoft tarafından ortaklaşa geliştirildi. Aralık 2012'de W3C Tavsiyesi haline gelerek web tipografisinde bir dönüm noktası oldu.
Özünde WOFF, mevcut TrueType veya OpenType font verilerini saran bir kapsayıcıdır. Dosya boyutunu azaltmak için zlib sıkıştırması uygular ve lisanslama ile atıf için isteğe bağlı meta veri alanları içerir. WOFF'tan önce web geliştiricileri ham TTF veya OTF dosyaları sunmak zorundaydı — büyük, sıkıştırılmamış ve lisans bilgilerini yerleştirmenin standart bir yolundan yoksun.
Temel yenilik, üç sorunu aynı anda çözen amaca yönelik bir web font kapsayıcısı oluşturmaktı: sıkıştırma yoluyla daha küçük dosya boyutları, font lisanslama için standart bir meta veri bloğu ve tarayıcıların güvenlik amacıyla kolayca doğrulayabileceği ve sanal alana alabildiği bir format.
Nasıl Çalışır
WOFF kapsayıcısı, mevcut font tablolarını (TTF veya OTF kaynak dosyalarından) tablo başına zlib sıkıştırmasıyla sarar. Orijinal fonttaki her tablo — gliph konturları, kerning verileri, adlandırma kayıtları — bağımsız olarak sıkıştırılır; bu da tarayıcının yalnızca ihtiyaç duyduğu tabloları açmasına olanak tanır.
WOFF başlığı dört baytlık bir imzayla (wOFF) başlar, ardından font türü (sarılı verinin TrueType mi yoksa CFF mi olduğunu belirler), toplam sıkıştırılmış boyut ve isteğe bağlı meta veri bloğuna işaretçi gelir. Tarayıcı bu başlığı okur, ayrı tabloları özgün biçimlerine açar ve yeniden oluşturulan font verilerini metin oluşturma motoruna iletir.
Oluşturma motoru açısından, açılmış bir WOFF dosyası özgün TTF veya OTF ile aynıdır — sıkıştırma tamamen şeffaftır.
Tipik @font-face kullanımı@font-face {
font-family: 'MyIcons';
src: url('icons.woff2') format('woff2'),
url('icons.woff') format('woff');
}
Tarayıcı her src girişini sırayla dener. Modern tarayıcılar WOFF2 dosyasını (daha küçük, daha hızlı) yükler; WOFF2'yi desteklemeyen eski tarayıcılar WOFF dosyasına geri döner. Bu basamaklı yaklaşım, maksimum uyumlulukla optimum performans sağlar.
Artılar ve Eksiler
- İyi sıkıştırma — ham TTF'den yaklaşık %40 daha küçük
- IE 9+ dahil geniş destek
- W3C Tavsiyesi (resmi web standardı)
- Meta veri ve lisanslama desteği içerir
- TTF veya OTF kaynaklarından kolay dönüştürme
- Daha iyi sıkıştırmaya sahip WOFF2 tarafından geride bırakıldı
- Eşdeğer WOFF2 dosyasından ~%30 daha büyük
- zlib sıkıştırması Brotli'den daha az verimli
Tarayıcı Desteği
WOFF, 2010'ların başından beri tüm büyük tarayıcılar tarafından desteklenmektedir; bu da onu web fontları için en güvenli yedek format yapmaktadır. Internet Explorer'ın eski sürümlerini de kapsadığından WOFF2'den bile daha geniş bir tarayıcı yelpazesini kapsar.
| Tarayıcı | Minimum Sürüm |
|---|---|
| Chrome | 6+ |
| Firefox | 3.5+ |
| Safari | 5.1+ |
| Internet Explorer | 9+ |
| Edge | Tüm sürümler |
| Opera | 11.1+ |
%98+ küresel tarayıcı kapsamıyla WOFF, aktif kullanımdaki neredeyse her tarayıcı tarafından anlaşılır. Tek dikkat çekici boşluk, EOT gerektiren IE 6-8'dir.
WOFF ve WOFF2
WOFF2, WOFF'un halefidir ve pratik açıdan bakıldığında kesin bir gelişmedir. İşte nasıl karşılaştırıldıkları:
| Özellik | WOFF | WOFF2 |
|---|---|---|
| Sıkıştırma | zlib (deflate) | Brotli |
| Sıkıştırma Oranı | TTF'den ~%40 daha küçük | WOFF'tan ~%30 daha küçük |
| Ön işleme | Yok | Gliph veri dönüşümü |
| Açma Hızı | Hızlı | Daha hızlı |
| IE Desteği | IE 9+ | Yalnızca Edge (IE yok) |
| W3C Standardı | 2012 | 2018 |
WOFF2, Brotli ve gliph verilerini daha sıkıştırılabilir hale getiren özel bir ön işleme adımı sayesinde WOFF'tan yaklaşık %30 daha iyi sıkıştırma sağlar. Açma hızı da daha yüksektir. Modern tarayıcılarda WOFF2 desteği de aynı derecede geniştir — tek boşluk, WOFF'u destekleyen ancak WOFF2'yi desteklemeyen Internet Explorer 9-11'dir.
2024 ve sonrasındaki tarayıcıları hedefleyen çoğu proje için yalnızca WOFF2 yeterlidir. WOFF'un tek kalan avantajı IE 9-11 kapsamıdır.
WOFF Ne Zaman Kullanılır
WOFF2 tarafından geride bırakılmış olsa da, font yığınınıza WOFF eklemenin hâlâ geçerli nedenleri vardır:
- WOFF2 ile birlikte yedek olarak —
@font-facebildiriminizde WOFF2'yi ilk, WOFF'u ikinci sıraya koyun; modern tarayıcılar daha küçük dosyayı alırken eski tarayıcılar da fontu alabilir. - IE 11 desteği gerektiğinde — IE 11 WOFF'u destekler ancak WOFF2'yi desteklemez; bu nedenle bu tarayıcı için mevcut en iyi sıkıştırılmış format WOFF'tur.
- Brotli olmayan ortamlarda — bazı eski derleme araçları, proxy'ler veya CDN'ler WOFF2'nin Brotli sıkıştırmasını doğru işleyemeyebilir; WOFF'un zlib sıkıştırması evrensel olarak desteklenir.
Bunların hiçbiri projeniz için geçerli değilse, WOFF'u güvenle atlayabilir ve yalnızca WOFF2 kullanabilirsiniz.