Scaling an unmodified outline's control point co-ordinates to the small
sizes of a computer screen can result in severe quality control problems. At low
resolutions, with few pixels available to describe the character shapes,
features such as stem weights, crossbar widths and serif details can become
irregular, inconsistent or even missed completely. These irregularities detract
substantially from the legibility and overall attractiveness of a text setting.
These problems are a result of the absolute and finite size of the
pixel. Mathematically scaling a character outline presents no problem until the
pixel grid of the output device is introduced; at this point it is possible that
parts of the outline will pass through only a fraction of a pixel, rather than
containing the pixel completely. If the pixel is turned on in such a case, that
part of the curve will be wider than the original outline; if it is left off, it
will be narrower.
The decision whether or not to turn such a pixel on or to leave it off is a
crucial one. On systems and displays utilizing the capabilities of a grayscale
rasterizer, the difficulty is lessened somewhat by the possibility of using
different levels of gray, but when the text is displayed as a monochrome bitmap,
the rasterizer can only make a binary choice (on or off,
black or white, 1 or 0). In this case, if the
outline has not been grid-fitted by hints, the bitmap will be produced by
the results of point co-ordinates being mathematically rounded up or down. The
introduction of the 'chance' effects of rounding up and down can significantly
impair the quality of type at low resolutions. As figure 2 below shows,
rounding can have some unpleasant side effects. If you would like more
information about using levels of gray to improve the appearance of text on the
screen, see our information about Smooth fonts in Windows 95
(also known as grayscaling or anti-aliasing).
Figure 2a. Note how heavy the upper serif has become in comparison with the stem weights.
Figure 2b. Here, rounding of points has resulted in uneven vertical stem weights and missing serif details.
Figure 2c. This lowercase 'm' has uneven stems and arches.