TrueType is an outline font standard originally developed by Apple Computer in the late 1980s as a competitor to Adobe's Type 1 fonts used in PostScript. The primary strength of TrueType was originally that it offered font developers a high degree of control over precisel y how their fonts are displayed, right down to particular pixels, at various font heights.(With widely varying rendering technologies in use today, pixel-level control is no longer certain.)
Technical notes Edit
The outlines of the characters (or glyphs) in TrueType fonts are made of straight line segments and quadratic Bézier curves. These mathematically simpler curves are slightly more efficient to process than the cubic Bézier curves prevalent in the PostScript-centered world of graphic design, and also used in Type 1 fonts. However, most shapes require more points to describe with quadratic curves than cubics. This difference also means that it is not possible to convert Type 1 losslessly to the TrueType format, although in practice it is often possible to do a lossless conversion from TrueType to Type 1.
Hinting language Edit
TrueType systems include a virtual machine that executes programs inside the font, processing the "hints" of the glyphs. These distort the control points which define the outline, with the intention that the rasterizer produces fewer undesirable features on the glyph. Each glyph's hinting program takes account of the size (in pixels) at which the glyph is to be displayed, as well as other less important factors of the display environment.
Although incapable of receiving input and producing output as normally understood in programming, the TrueType hinting language does offer the other prerequisites of programming languages: conditional branching (IF statements), looping an arbitrary number of times (FOR- and WHILE-type statements), variables (although these are simply numbered slots in an area of memory reserved by the font), and encapsulation of code into functions. Special instructions called delta hints are the lowest level control, moving a control point at just one pixel size.
Good TrueType glyph programming techniques are meant to do as much as possible using variables defined just once in the whole font (e.g., stem widths, cap height, x-height). This means avoiding delta instructions as much as possible. This helps the font developer to make major changes (e.g., the point at which the entire font's main stems jump from 1 to 2 pixels wide) most of the way through development.
Making a very well-hinted TrueType font remains a significant amount of work, despite the increased user-friendliness of programs for adding hints to fonts compared with the early 1990s. Many TrueType fonts therefore have only rudimentary hints, or have hinting automatically applied by the font editor, with variable end results.
The TrueType format allows for the most basic type of Digital rights management - an 'embeddable flag' that specifies if author allows embedding of the font file into things like PDF files and websites.
TrueType Collection (TTC) is an extension of TrueType format that allows combining multiple fonts into a single file, creating substantial space savings for collection of fonts that only use different glyphs on some characters. They were first available in Chinese, Japanese, and Korean versions of Windows, and supported for all regions in Windows 2000 and later.
Mac OS included support of TTC starting with Mac OS 8.5. In Mac OS, TTC has file type ttcf.
A basic font is composed of multiple tables specified in the header. A table name can have up to 4 letters.
In a TTC file, it contains a ttcf table that tells how many fonts are within the collection. Multiple fonts within a collection use the same glyph table.
A regular TrueType font comes with .ttf extension, while a TTC comes with .ttc extension.
In Mac OS, it is one of several formats called data–fork fonts, as they lack the Mac resource fork.
The suitcase format for TrueType is used on Mac OS. It adds additional Apple-specific information.
Like TTC, it can handle multiple fonts within a single file. But unlike TTC, those fonts need not be within the same family.
Suitcases come in resource–fork and data–fork formats. The resource-fork version was the original suitcase format. Data–fork-only suitcases, which place the resource fork contents into the data fork, were first supported in Mac OS X. A suitcase packed into the data–fork-only format has the extension dfont.