Web Open Font Format (.woff)

W3C Standardi

Web Open Font Format (WOFF) on W3C:n tukema historiallinen ensimmäisen sukupolven avoin verkkofonttimuoto, joka paketoi tavalliset TrueType- tai OpenType-fontit zlib-pakkauksella ja XML-lisensointimetatiedoilla.

Tarkastele tiedostoa ja sen metatietoja

Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat WOFF-tiedostot tarkistamalla tiedoston alun binäärisarjan:

Valitse tai pudota tiedostot tähän

Yksityisesti - tiedostot eivät koskaan poistu laitteeltasi

tai liitä Ctrl+V
Tietosuojatakuu: 0 % verkkosiirtoa Ulkoisille palvelimille ei ole ladattu yhtään tavua. Kaikki käsittely tapahtui paikallisesti selaimen hiekkalaatikossa.

Otsaketunniste tavutasolla (tunnistetavut)

Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat WOFF-tiedostot tarkistamalla tiedoston alun binäärisarjan:

HEKSADEKSIMAALINEN TUNNISTE (SIJAINTI 0):

77 4F 46 46

ASCII-ESITYSTAPA: wOFF

Standardointi: W3C Recommendation (2012)

Tekniset tiedot

Säiliöarkkitehtuuri44 tavun WOFF-otsake, jota seuraavat taulukkohakemisto, zlib-pakatut taulukkotiedot, valinnaiset laajennetut metatiedot ja yksityiset tiedot
PakkausDeflate (zlib) -pakkaus käytetään kuhunkin fonttitaulukkoon erikseen
Tavujärjestys (Endianness)Big-Endian (SFNT-standardi)
VäriavaruudetPeriytyy fontin alla olevista taulukoista
Kanavat ja rakenneTrueType- (”glyf”) tai PostScript- (”CFF ”) -ääriviivat, metriikat ja typografiset ominaisuudet
Suurimmat mitatEnintään 65 535 glyfiä fonttitiedostoa kohden
LäpinäkyvyysPeriytyy pohjana olevasta fonttimuodosta
Suoratoisto ja progressiivinen latausTaulukoiden purkaminen yksi kerrallaan mahdollistaa fontin lataamisen tietovirrasta

Tekninen vertailumatriisi: WOFF vs. kilpailijat

Tekninen attribuuttiWOFF (Nykyinen)WOFF2TTFOTF
PakkauskoodekkiTaulukoittain pakattu Deflate (zlib)Brotli ja taulukoiden esikäsittelyPakkaamaton SFNTPakkaamaton SFNT
TunnistetavutwOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
Suhteellinen tiedostokokoUsein TTF:ää pienempi; säästö vaihtelee fontin mukaanUsein TTF:ää pienempi; säästö vaihtelee fontin mukaanPerustaso (100 %)Perustaso (100 %)
KohdeympäristöVanhat verkkoselaimet (IE9+, Safari 5+)Tuki vaihtelee selaimen mukaan.TyöpöytäkäyttöjärjestelmätTyöpöytäjulkaiseminen ja painotyöt

Yleiset vioittumistavat ja heksadesimaalinen palautusopas

Selaimen konsolissa näkyy varoitus: 'Failed to decode downloaded font: OTS parsing error'.

Perussyy: Virhe ilmoitetun pakkaamattoman taulukon pituudessa tai vioittunut zlib-virta.

Korjaus: Pakkaa fonttitaulukot uudelleen tai muunna WOFF2-muotoon File2File.app Font Converterilla.

Tietoturva-analyysi ja tiedostojäsentimien hyökkäysvektorit

Verkkoselaimet jäsentävät epäluotettavilta verkkotunnuksilta ladatut WOFF-tiedostot OpenType Sanitizer (OTS) -puhdistimen avulla hyökkäyshyötykuormien estämiseksi.

Tunnetut hyökkäysvektorit

  • Puskurin yliluku zlib-pakkauksen purkamisen aikana vioittuneista fonttitaulukon lohkoista.
  • Vastaamattomat taulukon pituuskentät, jotka laukaisevat keon puskuriylivuotoja fonttien renderöintimoottoreissa.
  • Palvelunesto muistin loppumisen vuoksi fonttitaulukon laajennuksen aikana.

Tietoturvan parhaat käytännöt: Puhdista ladatut WOFF-tiedostot aina OTS:llä ennen niiden välittämistä käyttöjärjestelmän fonttimoottoreille.

Historia ja virstanpylväät

2018Korvattu WOFF2:lla ensisijaisena verkkofonttistandardina ylivoimaisen Brotli-pakkauksen ansiosta.
2012W3C julkaisee WOFF 1.0 -standardin verkkostandardisuosituksena.
2009Henrik Rydgård, Tal Leming ja Jonathan Kew määrittelevät WOFF:n verkkofonttien lisensointihuolten ratkaisemiseksi.

Tärkeimmät edut

  • Voi pienentää verkkofonttitiedostoja raakoihin TTF- tai OTF-tiedostoihin verrattuna; säästö riippuu fontista ja kooderista.
  • Monet selaimet tukevat WOFF-muotoa, myös vanhemmat versiot; yhteensopivuus riippuu selaimen versiosta ja alustasta.
  • Sisältää valinnaisen XML-metatietolohkon fonttien lisensointia, tekijätietoja ja valimon tekijänoikeustietoja varten.

Tekniset rajoitukset

  • WOFF2 on syrjäyttänyt WOFFin monissa verkkotyönkuluissa. Se käyttää Brotli-pakkausta ja fonttitaulukoiden muunnoksia; tiedostokoon säästö vaihtelee.
  • Ei voi asentaa suoraan työpöytäkäyttöjärjestelmiin (Windows/Mac) ilman muuntamista TTF/OTF-muotoon.
  • Vanhempi zlib-pakkausalgoritmi on vähemmän tehokas kuin nykyaikaiset entropiakooderit.

Mielenkiintoisia teknisiä faktoja

  • WOFF 1.0:n taikatavut ovat 'wOFF' (0x77 0x4F 0x46 0x46), kun taas WOFF 2.0 käyttää tunnusta 'wOF2'.
  • Kirjasinvalimot suostuivat sallimaan fonttinsa verkossa vasta WOFF:n luomisen jälkeen, koska sen erikoistunut säiliö erotti verkkofontit kopioitavista työpöytäfonteista.
  • WOFF toteutettiin alun perin Firefox 3.6 -selaimessa vuonna 2010 ennen kuin siitä tuli virallinen W3C-suositus.

Usein kysytyt tekniset kysymykset

Mitä eroa on WOFF- ja WOFF2-muodoilla?

WOFF käyttää zlib-pakkausta, kun taas WOFF2 käyttää Brotli-pakkausta ja fonttitaulukoiden muunnoksia. Tiedostokokojen ero riippuu fontista ja kooderista.

Miten voin muuntaa WOFF-fontin TTF- tai OTF-muotoon työpöytäkäyttöä varten?

Voit muuntaa WOFF-tiedostot asennettaviksi työpöytä-TTF- tai OTF-fonteiksi sekunneissa File2File.app-palvelun avulla suoraan verkkoselaimessasi.

Tarvitsenko enää WOFF 1.0 -muotoa nykyaikaisilla verkkosivustoilla?

Nykyiset suuret selaimet tukevat WOFF2:ta. WOFF-varatiedosto voi silti olla hyödyllinen vanhoissa selaimissa tai tietyissä sulautetuissa ympäristöissä.