Web Open Font Format (.woff)

W3C Standard

Web Open Font Format (WOFF) er det historiske førstehånds åpne standard-webfontformatet godkjent av W3C. Det pakker inn standard TrueType- eller OpenType-skrifter med zlib-komprimering og XML-lisensieringsmetadata.

Undersøk og metadata

Operativsystemer og filanalysatorer identifiserer WOFF-filer ved å undersøke den innledende binære bytesekvensen:

Velg eller slipp filer her

100 % privat in-browser-konvertering - filer forlater aldri enheten din

eller lim inn Ctrl+V
Personverngaranti uten nettverksoverføring: 0 byte lastet opp til eksterne servere. All behandling skjedde lokalt i nettlesersandkassen din.

Byte-nivå hodesignatur (Magic Bytes)

Operativsystemer og filanalysatorer identifiserer WOFF-filer ved å undersøke den innledende binære bytesekvensen:

HEX-SIGNATUR (OFFSET 0):

77 4F 46 46

ASCII-REPRESENTASJON: wOFF

Standardisering: W3C Recommendation (2012)

Tekniske spesifikasjoner

Beholderarkitektur44-byte WOFF header followed by table directory, zlib-compressed table data, optional extended metadata, and private data
KomprimeringDeflate (zlib) compression applied to each individual font table
BytterekkefølgeBig-Endian (SFNT standard)
FargeromInherited from underlying font tables
Kanaler og strukturTrueType ('glyf') or PostScript ('CFF ') glyph outlines, metrics, and typographic features
Maks. dimensjonerUp to 65,535 glyphs per font file
GjennomsiktighetInherited from underlying font format
Strømming og progressivTable-by-table decompression enables streaming font loading

Teknisk sammenligningsmatrise: WOFF vs konkurrenter

Teknisk attributtWOFF (Gjeldende)WOFF2TTFOTF
KomprimeringskodekDeflate (zlib) per tabellBrotli med tabellforbehandlingUkomprimert SFNTUkomprimert SFNT
Magisk signaturwOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
Relativ filstørrelse~40 % mindre enn TTF~60 % mindre enn TTFBaselinestandard (100 %)Baselinestandard (100 %)
MålmiljøEldre nettlesere (IE9+, Safari 5+)Moderne nettlesere (Universell)Stasjonære operativsystemerSkrivebordspublisering og trykk

Vanlige korrupsjonsmoduser og heksadesimal gjenopprettingsveiledning

Nettleserkonsolladvarsel: 'Failed to decode downloaded font: OTS parsing error'.

Underliggende årsak: Uoverensstemmelse i deklarert ukomprimert tabellengde eller skadet zlib-strøm.

Utbedring: Komprenner skrifttabeller på nytt eller konverter til WOFF2 ved hjelp av File2File Font Converter.

Sikkerhetsanalyse og parser-angrepsvektorer

Nettlesere analyserer WOFF-filer lastet ned fra utrygge nettsteder ved hjelp av OpenType Sanitizer (OTS) for å blokkere utnyttelsesnyttelast.

Kjente angrepsvektorer

  • Buffer over-read under zlib-dekomprimering av korrupte skrifttabellbiter.
  • Mismatchede tabelllengdefelt som utløser heap buffer overflows i skriftgjengivere.
  • Denial of service gjennom minneutmattelse under utvidelse av skrifttabeller.

Beste praksis for forsvar:

Historisk opprinnelse og milepæler

2018Erstattet av WOFF2 som foretrukket webfontstandard på grunn av overlegen Brotli-komprimering.
2012W3C publiserer offisielt WOFF 1.0 som en formell Web Standard Recommendation.
2009Henrik Rydgård, Tal Leming og Jonathan Kew spesifiserer WOFF for å løse bekymringer rundt webfontlisensiering.

Viktige fordeler

  • Reduserer webfontfiler med 30 % til 50 % sammenlignet med rå, ukomprimerte TTF- eller OTF-filer.
  • Universell bakoverkompatibilitet på tvers av alle stasjonære og mobile nettlesere utgitt siden 2011.
  • Inkluderer en valgfri XML-metadatablokk for skriftlisensiering, forfatterkreditter og opphavsrettsinformasjon for skriftstøperi.

Tekniske begrensninger og ulemper

  • Erstattet av WOFF2, som komprimerer omtrent 30 % mindre ved hjelp av Brotli-algoritmen.
  • Kan ikke installeres direkte på stasjonære operativsystemer (Windows/Mac) uten konvertering til TTF/OTF.
  • Eldre zlib-komprimeringsalgoritme er mindre effektiv enn moderne entropikodere.

Interessante tekniske fakta

  • Magiske byte for WOFF 1.0 er 'wOFF' (0x77 0x4F 0x46 0x46), mens WOFF 2.0 bruker 'wOF2'.
  • Skriftstøperier gikk med på å tillate skriftene sine på nettet først etter at WOFF ble opprettet, fordi den spesialiserte beholderen skilte webskrifter fra piratkopierbare stasjonære skrifter.
  • WOFF ble opprinnelig implementert i Firefox 3.6 i 2010 før det ble en offisiell W3C-anbefaling.

Ofte stilte tekniske spørsmål

Hva er forskjellen mellom WOFF og WOFF2?

WOFF bruker zlib-kompresjon, mens WOFF2 bruker Googles nyere Brotli-algoritme og tabelltransformasjoner, noe som resulterer i filer som er omtrent 30 % mindre enn WOFF.

Hvordan kan jeg konvertere en WOFF-skrift til TTF eller OTF for skrivebordsbruk?

Du kan konvertere WOFF-filer til installerbare TTF- eller OTF-skrifter for skrivebordet på sekunder ved hjelp av File2File.app direkte i nettleseren din.

Trenger jeg fremdeles WOFF 1.0 på moderne nettsteder?

Nei. Alle moderne nettlesere støtter WOFF2 innfødt. WOFF 1.0 er bare nødvendig hvis du må støtte utdaterte eldre nettlesere som Internet Explorer.