TrueType Hinting (5 of 5): Shape modification TrueType affords the designer or engineer more flexibility and control over the final bitmap appearance than any other font format in use today. Through the use of the extensive range of commands in the TrueType instruction set, the designer is able to move any point on a glyph's outline as little or as much as necessary to turn on or off any pixel on the bitmap grid. This provides as much control as a simple bitmap editor. Commands can be used not only to improve legibility of fonts at small sizes, but also to fundamentally alter the appearance of any bitmap at any size - enabling the production, for example, of a font where different sizes will produce a different shape. Because TrueType is a programming language (at the assembly level), the format offers font designers and engineers an amazing degree of versatility. The sizes affected by the hinting commands can also be determined by setting low and high size thresholds, or cut-ins. A practical example of this flexibility was demonstrated recently in a Microsoft font designed specifically for display on television under the NTSC signal. During preliminary work it became clear that at small sizes it would be impossible to render certain character features satisfactorily - such as the diagonal bar of the uppercase N. The designer, conscious of making every glyph as individual as possible, established a threshold below which he programmed certain characters to change shape. Illustrated below are the outlines and resulting bitmaps from 21 and 22 ppem.
Optical scaling Since TrueType enables the designer or programmer to alter a letterform at every single size, it follows that optical scaling can be built into the TrueType font, allowing the subtle adjustment of characters at different sizes to ensure their correct appearance. The designing of bitmap letterforms has always involved a degree of optical scaling, with each and every size having to be rasterized - and often designed - separately. Unfortunately, these modifications have always involved, even been determined by, an element of compromise; this pixel or that pixel? In a TrueType font, the ability to create optically correct letterforms is extended up to very large sizes (up to 2048 ppem) and by the capabilities of TrueType Open, a new extension to the TrueType specification (EDITOR: This eventually evolved into the OpenType initiative). Non-linear scaling Non-linear scaling is often (understandably) confused with optical scaling. Whereas the concept of optical scaling involves altering the shapes of characters in order to ensure a correct appearance at particular sizes, non-linear scaling in TrueType simply enables the widening or narrowing of the widths of a glyph and its side-bearings at sizes where, were the widths to scale in a linear fashion (for example, increasing in a regular pattern from small to large sizes) we might encounter spacing or weight problems. In a situation where, for example, the lowercase 'i' would normally scale to occupy an advance width of four pixels, we might elect to force it to fit within three pixels, placing one pixel of white space on either side of a one pixel black stem. In such cases, we are clearly forcing the font to scale in a non-linear fashion. In effect, non-linear scaling means that TrueType hinting is not limited merely to controlling the shape of each character. The type designer is able to adjust the inter character spacing by varying the amount of white space to either side of a letterform. This facility is critical in helping maintain an even, consistent color across lines of text, and is a highlight of TrueType hinting not available in other font formats. Diagonal control Diagonal control is another feature of TrueType hinting that helps lead to better visual quality in a font. Keeping diagonal strkes as symmetrical as possible helps to avoid unnecessary jaggedness or 'stepping'. The use of separate vectors for measuring distances and moving points on a glyph's outline enables a very fine degree of control over point positioning in a diagonal stroke element. In the example shown below it can be seen that the distance a point must be moved to ensure a correct bitmap stroke is measured in one direction, while it is actually moved in a slightly different direction. This feature allows us to measure the true width of an element such as a diagonal stroke, and to maintain it, rather than basing our judgments inaccurately on a straight horizontal measure. Attaining stroke weight consistency with this feature can also aid the color, spacing and symmetry of a font at small sizes and low resolutions.
Controlling diagonals in this manner enables TrueType fonts to represent italic and oblique letterforms with much greater fidelity than other font formats. The illustration below shows how much more even TrueType diagonal control can make a setting.
Intelligence in the hints With TrueType, the intelligence is in the hints rather than in the rasterizer. That is, all alterations to the original outline description are performed through instructions contained in the font rather than by the rasterizer acting on its own. This approach has three important implications. First, it means that the bulk of the calculations takes place during font production rather than at runtime. In this sense, TrueType is similar to a compiled language, while outline font technologies that perform most of their work during execution are more like interpreters. Second, having the intelligence in the hints means that font vendors can precisely control the final appearance of the fonts - because they apply the hints. In contrast, with approaches that rely on the rasterizer to apply hints or perform other outline adjustments, font vendors have less control over the final appearance of the fonts. Finally, having the intelligence in the hints allows tool vendors to improve their hinting technology without requiring users to buy a new rasterizer or additional printer ROM. This means that end users can upgrade their fonts for just the price of the fonts themselves, without incurring any other hardware or software costs.
|