תבנית גופני רשת פתוחה (.woff)

W3C תקן

פורמט גופני האינטרנט הפתוח (WOFF) הוא פורמט גופני האינטרנט הפתוח ההיסטורי מהדור הראשון שאושר על ידי W3C, ועוטף גופני TrueType או OpenType סטנדרטיים באמצעות דחיסת zlib ומטא-דאטה של רישוי XML.

בדיקה ומטא-דאטה

מערכות הפעלה ומנתחי קבצים מזהים קבצי WOFF על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

המרה פרטית ב-100% בתוך הדפדפן - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברה ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד מתבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (Magic Bytes)

מערכות הפעלה ומנתחי קבצים מזהים קבצי WOFF על ידי בדיקת רצף הבייטים הבינארי הראשוני:

חתימת HEX (היסט 0):

77 4F 46 46

ייצוג ASCII: wOFF

תקינה: W3C Recommendation (2012)

מפרט טכני

ארכיטקטורת מעטפת44-byte WOFF header followed by table directory, zlib-compressed table data, optional extended metadata, and private data
דחיסהDeflate (zlib) compression applied to each individual font table
סדר בתים (Endianness)Big-Endian (SFNT standard)
מרחבי צבעInherited from underlying font tables
ערוצים ומבנהTrueType ('glyf') or PostScript ('CFF ') glyph outlines, metrics, and typographic features
ממדים מרבייםUp to 65,535 glyphs per font file
שקיפותInherited from underlying font format
הזרמה ופרוגרסיביותTable-by-table decompression enables streaming font loading

מטריצת השוואה טכנית: WOFF מול מתחרים

תכונה טכניתWOFF (נוכחי)WOFF2TTFOTF
קודק דחיסהDeflate (zlib) לכל טבלהBrotli עם עיבוד מקדים של טבלאותSFNT לא דחוסSFNT לא דחוס
חתימת זיהויwOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
גודל קובץ יחסיקטן בכ-40% מ-TTFקטן בכ-60% מ-TTFתקן בסיס (100%)תקן בסיס (100%)
סביבת יעדדפדפני אינטרנט ישנים (IE9+, Safari 5+)דפדפני אינטרנט מודרניים (אוניברסלי)מערכות הפעלה שולחניותהוצאה לאור שולחנית והדפסה

מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)

אזהרת קונסולת דפדפן: 'Failed to decode downloaded font: OTS parsing error'.

גורם שורש: אי התאמה באורך הטבלה הלא דחוסה המוצהרת או זרם zlib פגום.

התאוששות: דחס מחדש את טבלאות הגופן או המר ל-WOFF2 באמצעות File2File Font Converter.

ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)

דפדפני אינטרנט מנתחים קבצי WOFF שהורדו מדומיינים לא מהודרים באינטרנט באמצעות OpenType Sanitizer (OTS) כדי לחסום עומסי ניצול לרעה.

ווקטורי תקיפה ידועים

  • קריאת יתר של חוצץ (Buffer over-read) במהלך דחיסת zlib של נתחי טבלת גופנים פגומים.
  • שדות אורך טבלה לא תואמים המפעילים גלישת חוצץ בערימה (heap buffer overflows) במעבדי גופנים.
  • מניעת שירות עקב מיצוי זיכרון במהלך הרחבת טבלת גופנים.

השיטות המומלצות להגנה:

היסטוריה ואבני דרך

2018מוחלף על ידי Wonavir2 כתקן מועדף לגופני אינטרנט בשל דחיסת Brotli עדיפה.
2012ארגון W3C מפרסם באופן רשמי את WOFF 1.0 כהמלצת תקן אינטרנט רשמית.
2009הנריק רידגורד, טאל למינג וג'ונתן קיו מגדירים את WOFF כדי לפתור חששות לגבי רישוי גופני אינטרנט.

יתרונות מרכזיים

  • מפחית את גדלי קבצי גופני האינטרנט ב-30% עד 50% בהשוואה לקבצי TTF או OTF גולמיים ולא דחוסים.
  • תאימות לאחור אוניברסלית בכל דפדפן אינטרנט שולחני ונייד ששוחרר מאז 2011.
  • כולל בלוק מטא-דאטה אופציונלי של XML עבור רישוי גופנים, קרדיטים ליוצרים ומידע זכויות יוצרים של יציקות גופנים.

מגבלות טכניות וחסרונות

  • הוחלף על ידי WOFF2, אשר דוחס בכ-30% קטן יותר באמצעות אלגוריתם Brotli.
  • לא ניתן להתקנה ישירות במערכות הפעלה שולחניות (Windows/Mac) ללא המרה ל-TTF/OTF.
  • אלגוריתם דחיסת zlib הישן פחות יעיל ממקודדי אנטרופיה מודרניים.

עובדות טכניות מעניינות

  • בייטים הקסדצימליים (Magic bytes) עבור WOFF 1.0 הם 'wOFF' (0x77 0x4F 0x46 0x46), בעוד ש-WOFF 2.0 משתמש ב-'wOF2'.
  • יציקות גופנים הסכימו לאפשר את הגופנים שלהם באינטרנט רק לאחר שנוצר WOFF, מכיוון שהמיכל הייעודי שלו הבדיל בין גופני אינטרנט לגופנים שולחניים הניתנים להעתקה בלתי חוקית.
  • WOFF הוטמע במקור ב-Firefox 3.6 בשנת 2010 לפני שהפך להמלצה רשמית של W3C.

שאלות טכניות נפוצות

מה ההבדל בין WOFF ל-WOFF2?

WOFF משתמש בדחיסת zlib, בעוד ש-WOFF2 משתמש באלגוריתם Brotli החדש יותר של Google ובהמרות טבלה, מה שמוביל לקבצים שהם קטנים בכ-30% מ-WOFF.

איך אני יכול להמיר גופן WOFF ל-TTF או OTF לשימוש שולחני?

אתה יכול להמיר קבצי WOFF לגופני TTF או OTF שולחניים הניתנים להתקנה בתוך שניות באמצעות File2File.app ישירות בדפדפן האינטרנט שלך.

האם אני עדיין צריך WOFF 1.0 באתרי אינטרנט מודרניים?

לא. כל הדפדפנים המודרניים תומכים ב-WOFF2 באופן טבעי. WOFF 1.0 נדרש רק אם עליך לתמוך בדפדפנים ישנים ומיושנים כמו Internet Explorer.