מהו קובץ TTF?
קובץ עם סיומת ttf מייצג קובצי גופן המבוססים על טכנולוגיית הגופן של מפרט TrueType. זה תוכנן והושק בתחילה על ידי Apple Computer, Inc עבור Mac OS ומאוחר יותר אומצה על ידי Microsoft עבור מערכת ההפעלה Windows. גופני TrueType מספקים תצוגה באיכות הגבוהה ביותר במסכי מחשב ובמדפסות ללא כל תלות ברזולוציה. כל היישומים המודרניים המשתמשים בגופנים מסוגלים לעבוד עם קבצי TTF. קובצי גופן TTF זמינים באופן חופשי דרך האינטרנט וניתן גם להמיר אותם לפורמטים אחרים של קבצי גופן כגון OTF ו-WOFF.
היסטוריה קצרה
תוכנן על ידי Apply Computer, Inc בשנות ה-80 עבור MacOS, פורמט הגופן TTF נועד לפתור כמה מגבלות טכניות על ידי פורמט Type 1 של Adobe. אפל כללה תמיכה בגופני TrueType ב-Mac בשנת 1991. מטרת העיצוב מאחורי גופני TTF הייתה יעילות באחסון ובעיבוד, והרחבה. בהתבסס על יכולת הרחבה זו, ניתן להמיר גופנים קיימים לפורמט TrueType.
מיקרוסופט השתמשה לראשונה בגופני TrueType ב-Windows 3.1 באפריל 1992 לאחר שאפל הסכימה לתת רישיון TrueType למיקרוסופט. הוא שיפר את מנגנון הרסטר, ושיפר את היעילות והביצועים שלו.
מפרט פורמט קובץ מסוג True Type
קובץ גופן TrueType הוא קובץ בינארי המורכב מרצף של טבלאות משורשרות. כל טבלה היא רצף של מילים ויש לה שם המכונה ‘תג’. כל תג הוא מסוג נתונים uint32 ומורכב מארבעה תווים. הטבלה הראשונה בקובץ היא ספריית גופנים שנותנת גישה לטבלאות אחרות בקובץ הפונטים. נתוני גופנים כלולים בטבלאות אחרות ואחריהן טבלת ספריות הגופנים. מכיוון שכל טבלה נגישה באמצעות התג שלה, הטבלאות יכולות להופיע בכל סדר בקובץ.
הטבלאות הנדרשות ושמות התגים שלהן מוצגים בטבלה הבאה.
תייג | טבלה |
---|---|
‘cmap’ | מיפוי תווים לגליפים |
‘גליף’ | נתוני גליפים |
‘ראש’ | כותרת גופן |
‘hhea’ | כותרת אופקית |
‘hmtx’ | מדדים אופקיים |
’loca’ | אינדקס למיקום |
‘maxp’ | פרופיל מקסימלי |
‘שם’ | מתן שמות |
‘פוסט’ | PostScript |
סוגי מידע
גופני TrueType משתמשים במספרים השלמים הסטנדרטיים ובסוגי נתונים נוספים כפי שמופיעים בטבלה הבאה.
סוג נתונים | תיאור |
---|---|
shortFrac | שבר חתום של 16 סיביות |
תוקן | מספר נקודה קבועה חתומה של 16.16 סיביות |
FWord | מספר שלם בסימן 16 סיביות המתאר כמות ב-FUnits, המרחק הנמדד הקטן ביותר במרחב em. |
uFWord | מספר שלם ללא סימן של 16 סיביות המתאר כמות ב-FUnits, המרחק הנמדד הקטן ביותר במרחב em. |
F2Dot14 | מספר קבוע בסימן 16 סיביות כאשר 14 הסיביות הנמוכות מייצגות שבר. |
longDateTime | הפורמט הפנימי הארוך של תאריך בשניות מאז 12:00 חצות, 1 בינואר 1904. הוא מיוצג כמספר שלם של 64 סיביות חתום. |
ספריית גופנים
הטבלה הראשונה בגופן TrueType היא ספריית הגופנים המספקת גישה למידע הנדרש לגישה לנתונים בטבלאות אחרות. זה עוד מורכב מ:
- ‘טבלת משנה אופסט’ - שומרת תיעוד של הטבלאות בגופן ומספקת מידע אופסט כדי לגשת לכל טבלה בספרייה
Table Directory
- מכיל ערכים עבור כל טבלה בגופן
תת טבלת היסט
טבלת המשנה להיסט מוצגת להלן.
סוג | שם | תיאור |
---|---|---|
uint32 | סוג scaler | תג המציין את קנה המידה של OFA שישמש ליצירת רסטר של גופן זה; למידע נוסף, עיין בהערה על סוג ה-scaler להלן. |
uint16 | numTables | מספר שולחנות |
uint16 | טווח חיפוש | (חזקה מקסימלית של 2 <= numTables)*16 |
uint16 | entrySelector | log2(עוצמה מקסימלית של 2 <= numTables) |
uint16 | rangeShift | numTables*16-searchRange |
ספריית טבלאות
ספריית הטבלה מגיעה מיד אחרי טבלת המשנה האופסט. המבנה שלו הוא כפי שמוצג בטבלה הבאה.
סוג | שם | תיאור |
---|---|---|
uint32 | תג | מזהה 4 בתים |
uint32 | checkSum | סכום בדיקה עבור טבלה זו |
uint32 | קיזוז | היסט מתחילת sfnt |
uint32 | אורך | אורך טבלה זו בבייט (אורך בפועל לא אורך מרופד) |
לכל טבלה בקובץ גופן חייבת להיות ערך ספריית טבלה משלה. יש למיין ערכים בטבלה בסדר עולה לפי תג.