File Format Docs
NO

TTF - TrueType Font File Format

Oppdatert

Hva er en TTF-fil?

En fil med filtypen .ttf representerer skriftfiler basert på TrueType-spesifikasjonene skriftteknologi. Den ble opprinnelig designet og lansert av Apple Computer, Inc for Mac OS og ble senere adoptert av Microsoft for Windows OS. TrueType-fonter gir visning av høyeste kvalitet på dataskjermer og skrivere uten noen avhengighet av oppløsning. Alle moderne applikasjoner som bruker fonter er i stand til å jobbe med TTF-filer. TTF-fontfiler er fritt tilgjengelig over internett og kan også konverteres til andre fontfilformater som OTF og WOFF.

Kort historie

Designet av Apply Computer, Inc på 1980-tallet for MacOS, var TTF-skriftformatet rettet mot å løse noen tekniske begrensninger av Adobes Type 1-format. Apple inkluderte støtte for TrueType-fonter i Mac i 1991. Designmålet bak TTF-fonter var effektivitet i lagring og prosessering, og utvidbarhet. Basert på denne utvidbarheten kan eksisterende fonter konverteres til TrueType-format.

Microsoft brukte først TrueType-fontene i Windows 3.1 i april 1992 etter at Apple gikk med på å lisensiere TrueType til Microsoft. Det forbedret rasteriseringsmekanismen, og forbedret effektiviteten og ytelsen.

True Type filformatspesifikasjoner

En TrueType-fontfil er en binær fil som består av en sekvens av sammenkoblede tabeller. Hver tabell er en sekvens av ord og har et navn kjent som “Tag”. Hver tag er av uint32-datatypen og består av fire tegn. Den første tabellen i filen er fontkatalog som gir tilgang til andre tabeller i fontfilen. Skriftdata finnes i andre tabeller fulgt etter fontkatalogtabellen. Siden hver tabell er tilgjengelig med taggen sin, kan tabellene vises i hvilken som helst rekkefølge i filen.

De nødvendige tabellene og etikettnavnene vises i tabellen nedenfor.

TagTable
‘cmap’character to glyph mapping
‘glyf’glyph data
‘head’font header
‘hhea’horizontal header
‘hmtx’horizontal metrics
’loca'index to location
‘maxp’maximum profile
’name'naming
‘post’PostScript

Data Types

TrueType-fonter bruker standard heltall og tilleggsdatatyper som er oppført i tabellen nedenfor.

Data TypeDescription
shortFrac16-bit signed fraction
Fixed16.16-bit signed fixed-point number
FWord16-bit signed integer that describes a quantity in FUnits, the smallest measurable distance in em space.
uFWord16-bit unsigned integer that describes a quantity in FUnits, the smallest measurable distance in em space.
F2Dot1416-bit signed fixed number with the low 14 bits representing fraction.
longDateTimeThe long internal format of a date in seconds since 12:00 midnight, January 1, 1904. It is represented as a signed 64-bit integer.

Font Directory

Den første tabellen i TrueType-fonten er fontkatalogen som gir tilgang til informasjonen som kreves for å få tilgang til data i andre tabeller. Den består videre av:

  • Offset subtable - keeps record of the tables in the font and provides offset information to access each table in the directory
  • Table Directory - Contains entries for each table in the font

Offset SubTable

Offset-undertabellen er vist nedenfor.

TypeNameDescription
uint32scaler typeA tag to indicate the OFA scaler to be used to rasterize this font; see the note on the scaler type below for more information.
uint16numTablesnumber of tables
uint16searchRange(maximum power of 2 <= numTables)*16
uint16entrySelectorlog2(maximum power of 2 <= numTables)
uint16rangeShiftnumTables*16-searchRange

Table directory

Tabellkatalogen kommer rett etter forskyvningsundertabellen. Strukturen er som vist i tabellen nedenfor.

TypeNameDescription
uint32tag4-byte identifier
uint32checkSumchecksum for this table
uint32offsetoffset from beginning of sfnt
uint32lengthlength of this table in byte (actual length not padded length)

Hver tabell i en fontfil må ha sin egen tabellkatalogoppføring. Oppføringer i en tabell må sorteres i stigende rekkefølge etter tag.

Referanser

Se også