Formato de fuente web abierta (.woff)

W3C Standar

Web Open Font Format (WOFF) adalah format font web standar terbuka generasi pertama yang bersejarah dan didukung oleh W3C. Format ini membungkus font TrueType atau OpenType standar dengan kompresi zlib dan metadata lisensi XML.

Pemeriksaan & Metadata

Sistem operasi dan penganalisis file mengenali file WOFF dengan memeriksa urutan byte biner di bagian awal:

Pilih atau letakkan berkas di sini

Privat - file tidak pernah meninggalkan perangkat Anda

atau tempel Ctrl+V
Jaminan Privasi Tanpa Transmisi Jaringan: 0 byte diunggah ke server eksternal. Semua pemrosesan berlangsung secara lokal di sandbox browser Anda.

Tanda Tangan Header per Byte (Byte Penanda)

Sistem operasi dan penganalisis file mengenali file WOFF dengan memeriksa urutan byte biner di bagian awal:

TANDA TANGAN HEX (OFFSET 0):

77 4F 46 46

REPRESENTASI ASCII: wOFF

Standardisasi: W3C Recommendation (2012)

Spesifikasi Teknis

Arsitektur KontainerHeader WOFF 44-byte diikuti direktori tabel, data tabel terkompresi zlib, metadata tambahan opsional, dan data privat
KompresiKompresi Deflate (zlib) diterapkan pada setiap tabel font secara terpisah
Urutan ByteBig-Endian (SFNT standard)
Ruang WarnaDiwarisi dari tabel font yang mendasarinya
Saluran & StrukturKontur glif TrueType ('glyf') atau PostScript ('CFF '), metrik, dan fitur tipografi
Dimensi MaksimumHingga 65,535 glif per file font
TransparansiDiwarisi dari format font yang mendasarinya
Streaming & ProgresifDekompresi per tabel memungkinkan pemuatan font secara streaming

Perbandingan Teknis WOFF dengan Pesaing

Atribut TeknisWOFF (Saat Ini)WOFF2TTFOTF
Kodek KompresiDeflate (zlib) per tabelBrotli dengan pra-pemrosesan tabelSFNT Tanpa KompresiSFNT Tanpa Kompresi
Tanda tangan ajaibwOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
Ukuran File RelatifSering kali lebih kecil daripada TTF; penghematan bergantung pada fontSering kali lebih kecil daripada TTF; penghematan bergantung pada fontStandar dasar (100%)Standar dasar (100%)
Lingkungan TargetPeramban web lama (IE9+, Safari 5+)Dukungan berbeda-beda menurut peramban.Sistem operasi desktopPenerbitan desktop & cetak

Pola Kerusakan Umum dan Panduan Pemulihan Hex

Peringatan konsol browser: 'Failed to decode downloaded font: OTS parsing error'.

Penyebab Utama: Ketidakcocokan panjang tabel tidak terkompresi yang dideklarasikan atau aliran zlib rusak.

Pemulihan: Kompres ulang tabel font atau konversikan ke WOFF2 menggunakan File2File.app Font Converter.

Analisis Keamanan & Vektor Serangan Parser

Browser web memparsing file WOFF yang diunduh dari domain web yang tidak tepercaya menggunakan OpenType Sanitizer (OTS) untuk memblokir payload eksploitasi.

Vektor Serangan yang Diketahui

  • Pembacaan berlebih buffer (buffer over-read) selama dekompresi zlib dari potongan tabel font yang rusak.
  • Bidang panjang tabel yang tidak cocok memicu luapan buffer heap (heap buffer overflows) pada perender font.
  • Penolakan layanan melalui kehabisan memori selama ekspansi tabel font.

Praktik Terbaik Defensif: Selalu bersihkan file WOFF yang diunduh dengan OTS sebelum meneruskannya ke mesin font sistem operasi.

Asal-Usul & Tonggak Sejarah

2018Digantikan oleh WOFF2 sebagai standar font web pilihan karena kompresi Brotli yang lebih unggul.
2012W3C secara resmi menerbitkan WOFF 1.0 sebagai Rekomendasi Standar Web formal.
2009Henrik Rydgård, Tal Leming, dan Jonathan Kew merancang WOFF untuk menyelesaikan masalah perizinan font web.

Keunggulan & Kelebihan Utama

  • Dapat mengurangi ukuran file font web dibandingkan file TTF atau OTF mentah; jumlahnya bergantung pada font dan encoder.
  • Kompatibilitas mundur universal di setiap browser web desktop dan seluler yang dirilis sejak tahun 2011.
  • Menyertakan blok metadata XML opsional untuk lisensi font, kredit penulis, dan informasi hak cipta perusahaan pembuat font.

Keterbatasan Teknis & Kekurangan

  • Dalam banyak alur kerja web, format ini telah digantikan oleh WOFF2 yang menggunakan kompresi Brotli dan transformasi tabel font; penghematan ukuran file bervariasi.
  • Tidak dapat diinstal langsung ke sistem operasi desktop (Windows/Mac) tanpa konversi ke TTF/OTF.
  • Algoritma kompresi zlib yang lebih lama kurang efisien dibandingkan enkoder entropi modern.

Fakta Teknis Menarik

  • Byte ajaib (magic bytes) untuk WOFF 1.0 adalah 'wOFF' (0x77 0x4F 0x46 0x46), sedangkan WOFF 2.0 menggunakan 'wOF2'.
  • Perusahaan pembuat huruf setuju mengizinkan font mereka digunakan di web setelah WOFF dibuat, karena kontainer khususnya membedakan font web dari font desktop yang mudah dibajak.
  • WOFF awalnya diterapkan di Firefox 3.6 pada tahun 2010 sebelum menjadi rekomendasi resmi W3C.

Pertanyaan Teknis yang Sering Diajukan

Apa perbedaan antara WOFF dan WOFF2?

WOFF menggunakan kompresi zlib, sedangkan WOFF2 menggunakan algoritma Brotli yang lebih baru dari Google serta transformasi tabel, menghasilkan file yang berukuran sekitar 30% lebih kecil daripada WOFF.

Bagaimana cara mengonversi font WOFF ke TTF atau OTF untuk penggunaan desktop?

Anda dapat mengonversi file WOFF menjadi font desktop TTF atau OTF yang dapat diinstal dalam hitungan detik menggunakan File2File.app langsung di peramban web.

Apakah saya masih memerlukan WOFF 1.0 pada situs web modern?

Tidak. Semua peramban modern mendukung WOFF2 secara bawaan. WOFF 1.0 hanya diperlukan jika Anda harus mendukung peramban lama yang sudah usang seperti Internet Explorer.