An In-depth Look at Computer Fonts


About

Meetings

Articles

Links

Contact

Join

Forums

There are two major sorts of fonts: bitmapped and outline (scalable). Bitmapped fonts are falling out of fashion as various outline technologies grow in popularity and support. Bitmapped fonts represent each character as a rectangular grid of pixels. The bitmap for each character indicates precisely what pixels should be on and off. Printing a bitmapped character is simply a matter of blasting the right bits out to the printer. There are a number of disadvantages to this approach. The bitmap represents a particular instance of the character at a particular size and resolution. It is very difficult to change the size, shape, or resolution of a bitmapped character without significant loss of quality in the image. On the other hand, it's easy to do things like shading and filling with bitmapped characters. Outline fonts represent each character mathematically as a series of lines, curves, and 'hints'. When a character from an outline font is to be printed, it must be 'rasterized' into a bitmap "on the fly". PostScript printers, for example, do this in the print engine. If the "engine" in the output device cannot do the rasterizing, some front end has to do it first. Many of the disadvantages that are inherent in the bitmapped format are not present in outline fonts at all. Because an outline font is represented mathematically, it can be drawn at any reasonable size. At small sizes, the font renderer is guided by the 'hints' in the font; at very small sizes, particularly on low-resolution output devices such as screens, automatically scaled fonts become unreadable, and hand-tuned bitmaps are a better choice (if they are available). Additionally, because it is rasterized "on demand," the font can be adjusted for different resolutions and 'aspect ratios'.

Outline Fonts

TrueType (TT) and PostScript Type 1 (PS1) are both multi-platform outline font standards for which the technical specifications are openly available. "Multi-platform" means that both font types are usable on multiple sorts of computer systems. "Outline font" means that they describe letter shapes ("glyphs") by means of points, which in turn define lines and curves. This representation is resolution independent, meaning that outlines, by their very nature, can be scaled to pretty much any arbitrary size. Depending on the particular program being used and the operating system it's run under, there may be upper and lower limits to the size the font can be scaled to, but few users will ever encounter these limits. An outline font must be represented by the dots of the output device, whether it's screen pixels or the dots of a laser, ink-jet or wire-pin printer. The process of converting the outline to a pattern of dots on the grid of the device is called "rasterization." When there aren't enough dots making up the glyph (such as at small sizes or low resolutions), there can be inconsistencies in the representation of certain letter features, at a single size, due to different rounding based on how the outline happens to sit on the grid. A common form of this is that the widths of the letter stems can vary when they shouldn't. Worse, key features of the glyphs can disappear at small sizes. However, PostScript Type 1 and TrueType fonts both have a means of dealing with these inconsistencies, called "hinting." This consists of additional information encoded in the font to help prevent these problems

Postscript Fonts

PostScript predates TrueType by about six years. First, we had many different formats for digital fonts, none of which were standardized. Then Apple adopted Adobe's PostScript page description language (PDL) for its Apple LaserWriter printer in 1985. This, combined with the introduction of desktop publishing software, sparked a revolution in page layout technology. Soon the PostScript language was adopted for use in higher-end imagesetting devices, and became the native operating mode and language of many graphics programs as well. PostScript's dominance seemed assured. Adobe was in complete control of the PostScript technology at this point. Although the command structure of the PostScript language was publicly available, and it was possible for someone to build a PostScript interpreter to compete with Adobe's rasterizing software, it wouldn't be able to interpret the hints. This was because the PostScript font specification for Type 1 fonts, which included hinting, was not publicly available. Adobe had only released the specifications for Type 3 fonts, which had some minor advantages, but did not image well on low resolution devices. It rapidly became obvious to the major system software creators (Apple, Microsoft, and later IBM) that it was important to have scaleable font technology supported at the level of the operating system itself. But neither Apple nor Microsoft wanted to have a key piece of their system software technology controlled by an outside company. So Apple developed their own scaleable font technology, first code-named Royal, and later introduced as TrueType. Apple traded the technology with Microsoft in exchange for the latter's TrueImage PostScript clone technology (which was buggy at the time, and never got used by Apple, although it has surfaced in various later incarnations). The TrueType specifications would be made public, and TrueType would be built into the next versions of the Mac and Windows operating systems.

TrueType fonts

If you are sitting at a computer right now, then you are looking at a TrueType font as you read this! Fonts are the different styles of typefaces used by a computer to display text. If you are like most people, you are probably looking at text in many different sizes and you may even want to print out a document. Early computer operating systems relied on bitmapped fonts for display and printing. These fonts had to be individually created for display at each particular size desired. If you made the font larger or smaller than it was intended to be, it looked horrible. And printed text was almost always very jagged looking.

TrueType technology actually involves two parts:

  • The TrueType Rasterizer
  • TrueType fonts

The Rasterizer is a piece of software that is embedded in both Windows and Mac operating systems. It gathers information on the size, color, orientation and location of all the TrueType fonts displayed and converts that information into a bitmap that can be understood by the graphics card and monitor. It is essentially an interpreter that understands the mathematical data supplied by the font and translates it into a form that the video display can render.

The fonts themselves contain data that describes the outline of each character in the typeface. Higher quality fonts also contain hinting codes. Hinting is a process that makes a font that has been scaled down to a small size look its best. Instead of simply relying on the vector outline, the hinting codes ensure that the characters line up well with the pixels so that the font looks as smooth and legible as possible.

There are literally thousands of TrueType fonts available, many of them for free on the Web. A lot of these fonts have simply been scanned and converted from other sources. While most fonts should be perfectly fine, an improperly created TrueType font can include errors that could potentially crash your computer. Professionally designed fonts can cost a hundred dollars apiece but usually are heavily hinted and have been tested at a variety of sizes and angles for optimum quality. These features are important for advertising firms and publishing houses. For most of us, the free or inexpensive fonts work just fine.

Differences between Postscript and Truetype

The first difference between TrueType and PostScript fonts is their use of different sorts of mathematics to describe their curves. Conversions between the two formats are typically imperfect: although mathematically speaking the quadratic B-splines of TrueType are a subset of the cubic Bézier curves of PostScript, there are usually small rounding errors no matter which direction one converts fonts; however, the errors are greater in going from PostScript to TrueType than vice versa. More importantly, hinting information does not directly translate in either direction between the two formats. Some articles have said that TrueType fonts require more points than PostScript, or that they take longer to rasterize because the math is more complicated. In fact, the math is simpler (quadratics are simpler than cubics), and a few shapes take fewer points in TrueType than in PostScript (a circle takes twelve points in PostScript vs. eight in TrueType). The primary advantage of TrueType over PS1 fonts is the fact that TrueType allows better hinting. PostScript Type 1 fonts can hint vertical and horizontal features, overshoots, stem snaps, equal counters, and shallow curves ("flex"). Several of these can have a threshold pixel size at which they activate. TrueType hints can do all that PostScript can, and almost anything else, as defined by the very flexible instructions. Another factor is the fact that TrueType rasterizing is built into several operating systems. Both the Mac OS and all the current incarnations of Windows support TrueType directly. These operating systems will rasterize TrueType fonts for the screen, and handle the sending of them to the printer, whether as bitmaps or as fonts in some format the printer can understand.

Scaling PostScript fonts on current versions of the Mac or Windows essentially requires the Adobe Type Manager (ATM) software, which handles the rasterizing to the screen, and rasterizes or converts the fonts for non-PostScript printers. Technically, ATM is not required to use PostScript fonts on PostScript printers, but ATM is required to display the font accurately on screen at arbitrary sizes. Although ATM is commercial software, it comes with virtually every Adobe application, and with every commercial Adobe typeface package. At this point, it's still an add-on, rather than an integral part of current Windows and Mac operating systems.

A smaller, but consistent, advantage has to do with the physical storage of the fonts. TrueType fonts have all the data in a single file. However, PostScript fonts require two separate files: one contains the character outlines, and the other contains metrics data (character widths and kern pairs). On the Macintosh, the current system software (System 7.5.5 and earlier) requires PS1 fonts to have not only the outline font, but also a bit-mapped screen font in at least one size, which contains the metrics data. On the other hand, PostScript's pair of Files are often smaller than TrueType's single file. The size difference ranges from only a 5% savings for an average font, to as much as a doubling of size for TrueType fonts that actually have extensive "hinting" instructions. Also, most high-end output devices use PostScript as their internal page description language. PostScript fonts can be sent directly to these devices. It used to be the case that TrueType fonts were either downloaded as bitmaps or required that the TrueType rasterizer be downloaded as a PostScript program, which slowed printing a bit. More recently, many PostScript Level 2 printers (and all PostScript 3 printers) have the TrueType rasterizer in ROM, built in.

Additional information can be obtained at http://www.faqs.org/faqs/fonts-faq/part1/

Below are links to some websites that offer free fonts and various font management tools.

http://fonts.tom7.com/

http://www.philsfonts.com/

http://www.sil.org/computing/fonts/

http://shareware.lycos.com/mac/fonttools.shtml

 

The above was compiled from articles by Marshall Brain, Norman Walsh, Thomas W. Phinney and Laurence Penney.


Home | About | Meetings | Links | Contact | Join | Forums

Wellington Macintosh Society Inc. 2002