Web Open Font Format (.woff)
W3C StandardWeb Open Font Format (WOFF) on ajalooline esimese põlvkonna avatud standardiga veebifondi vorming, mida toetab W3C. See pakib standardsed TrueType- või OpenType-fondid zlib-tihenduse ja XML-litsentsimise metadatanumbritega.
Kontrolli ja metaandmed
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad WOFF faile, kontrollides algset binaarset baidijada:
Baidi-taseme päise allkiri (maagilised baidid)
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad WOFF faile, kontrollides algset binaarset baidijada:
HEX-ALLKIRI (NIHE 0):
77 4F 46 46ASCII-ESITUS: wOFF
Standardiseerimine: W3C Recommendation (2012)
Tehnilised andmed
| Konteineri arhitektuur | 44-byte WOFF header followed by table directory, zlib-compressed table data, optional extended metadata, and private data |
| Tihendamine | Deflate (zlib) compression applied to each individual font table |
| Baitide järjekord (Endianness) | Big-Endian (SFNT standard) |
| Värviruumid | Inherited from underlying font tables |
| Kanalid ja struktuur | TrueType ('glyf') or PostScript ('CFF ') glyph outlines, metrics, and typographic features |
| Max mõõtmed | Up to 65,535 glyphs per font file |
| Läbipaistvus | Inherited from underlying font format |
| Voogedastus ja progressiivsus | Table-by-table decompression enables streaming font loading |
Tehniline võrdlusmaatriks: WOFF vs konkurendid
| Tehniline atribuut | WOFF (Praegune) | WOFF2 | TTF | OTF |
|---|---|---|---|---|
| Tihenduskoodek | Deflate (zlib) tabeli kohta | Brotli tabeli eelneva töötlemisega | Tihendamata SFNT | Tihendamata SFNT |
| Maagiline allkiri | wOFF (0x77 0x4F 0x46 0x46) | wOF2 (0x77 0x4F 0x46 0x32) | 0x00 0x01 0x00 0x00 | OTTO (0x4F 0x54 0x54 0x4F) |
| Suhteline failisuurus | ~40% väiksem kui TTF | ~60% väiksem kui TTF | Baastaseme standard (100%) | Baastaseme standard (100%) |
| Sihtkeskkond | Pärandveebibrauserid (IE9+, Safari 5+) | Kaasaegsed veebibrauserid (universaalne) | Lauaarvuti operatsioonisüsteemid | Lauaarvutikirjastamine ja trükkimine |
Levinud riknemisvead ja heksataaste juhend
Brauseri konsooli hoiatus: 'Failed to decode downloaded font: OTS parsing error'.
Juurpõhjus: Ebakõla deklareeritud tihendamata tabeli pikkuses või kahjustatud zlib-voog.
Taastamine: Tihendage fonditabelid uuesti või teisendage File2File Font Converteri abil WOFF2-vormingusse.
Turvaanalüüs ja parsimisründevektorid
Veebibrauserid pargivad ebausaldusväärsetest veebidomeenidest alla laaditud WOFF-faile OpenType Sanitizeri (OTS) abil, et tõkestada ründekoodi.
Teadaolevad ründavektorid
- Puhvrist ülelugemine rikutud fonditabeli tükkide zlib-tihenduse tühistamisel.
- Mitterahuldavad tabeli pikkuse väljad, mis käivitavad fondirenderites kuhja puhvri ületäitumisi.
- Teenusetõkestus mälu ammendamise kaudu fonditabeli laiendamise ajal.
Kaitsealased parimad tavad:
Ajalooline taust ja verstapostid
Peamised eelised
- Vähendab veebifondi failimahtu 30% kuni 50% võrreldes töötlemata tihendamata TTF- või OTF-failidega.
- Universaalne tagasiühilduvus kõigis alates 2011. aastast välja antud lauaarvuti- ja mobiilibrauserites.
- Sisaldab valikulist XML-metadata plokki fondi litsentsimise, autoritunnustuste ja valukoja autoriõiguste teabe jaoks.
Tehnilised piirangud ja puudused
- Asendatud WOFF2-ga, mis pakib Brotli algoritmi abil umbes 30% väiksemaks.
- Ei saa installida otse lauaarvuti operatsioonisüsteemidesse (Windows/Mac) ilma TTF/OTF-vormingusse teisendamata.
- Vanem zlib-tihendusalgoritm on vähem tõhus kuiasaegsed entroopia kodeerijad.
Huvitavaid tehnilisi fakte
- WOFF 1.0 magic-baidid on 'wOFF' (0x77 0x4F 0x46 0x46), samas kui WOFF 2.0 kasutab 'wOF2'.
- Tüübivalkojad nõustusid oma fonte veebis lubama alles pärast WOFF-i loomist, kuna selle spetsialiseeritud konteiner eristas veebifonde piraatluseks kõlblikest töölauafondidest.
- WOFF rakendati algselt Firefox 3.6-s 2010. aastal, enne kui sellest sai W3C ametlik soovitus.
Korduma kippuvad tehnilised küsimused
Mis vahe on WOFF-il ja WOFF2-l?
WOFF kasutab zlib-tihendust, samas kui WOFF2 kasutab Google'i uuemat Brotli algoritmi ja tabelite teisendusi, mille tulemuseks on failid, mis on WOFF-ist umbes 30% väiksemad.
Kuidas saan WOFF-fondi töölaual kasutamiseks teisendada TTF- või OTF-vormingusse?
Saate WOFF-failid otse oma veebibrauseris File2File.app abil sekunditega installitavateks töölaua TTF- või OTF-fontideks teisendada.
Kas ma vajan kaasaegsetel veebisaitidel ikka veel WOFF 1.0?
Ei. Kõik kaasaegsed brauserid toetavad WOFF2-t vaikimisi. WOFF 1.0 on vaja ainult siis, kui peate toetama aegunud vananenud brausereid, nagu Internet Explorer.