Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site uw-beaver Path: utzoo!watmath!clyde!cbosgd!ihnp4!mhuxn!mhuxr!mhuxt!houxm!vax135!cornell!uw-beaver!laser-lovers From: laser-lovers@uw-beaver Newsgroups: fa.laser-lovers Subject: font spacing and scaling Message-ID: <1098@uw-beaver> Date: Sat, 27-Apr-85 20:00:23 EDT Article-I.D.: uw-beave.1098 Posted: Sat Apr 27 20:00:23 1985 Date-Received: Sun, 28-Apr-85 09:01:19 EDT Sender: daemon@uw-beaver Organization: U of Washington Computer Science Lines: 80 From: adobe!taft@Glacier (Ed Taft) Since a lot of information, misinformation, and speculation has been flying around concerning character spacing, it's time to set the record straight about how spacing is actually done in the Apple LaserWriter and other PostScript printers. Most of the issues about spacing derive from the methods used to scale characters to different sizes. Considerable misunderstanding can arise from confusing "geometric" (or "optical") scaling with "typographic" scaling. Since PostScript actually supports both, an explanation is in order. First, the PostScript imaging model allows for arbitrary linear transformations to be performed on any part of a page, including any text that happens to be there. This geometric scaling capability is absolutely essential in the graphic arts world, CAD/CAM applications, and many other environments in which components of a page are composed independently and later incorporated into an overall layout. Traditionally this has been done by optical means (photographic reduction and enlargement), which preserves the relative sizes, shapes, and positions of marks on the page. Geometric scaling has an important ramification: all font metrics (widths and spacings) are mapped via the linear transformation. This is essential, since otherwise the relative positions of elements of a page would change. In a digital implementation, this implies that font metrics have fractional components. Because of this, each character is originally placed on a fractional pixel position, which must then be rounded to the nearest pixel (e.g., 1/300 inch on the LaserWriter). As characters become small relative to the pixel size, this rounding begins to have visible effects on inter-character spacing. Increasing the resolution (e.g., to 1270 or 2540 pixels per inch on the Linotronic 300/P typesetter) reduces the effects of rounding, resulting in much more accurate spacing. Another kind of scaling is "typographic". Various aspects of typographic scaling have been discussed in laser-lovers on a number of occasions. Having different "design sizes" for a font is an aspect of typographic scaling. As characters become small, type designers would like them to change in several ways to improve appearance and legibility. Typical changes are to increase the x-height, open up the counters, and increase the inter-character spacing relative to the size of the character. In the old days of hot type, these kinds of design changes from point size to point size were the rule. But since the advent of phototypesetting, such changes are the exception. For instance, ITC offers only one design for a given face (except that some faces have a very large "display" size). It is intended that the letter shapes be geometrically scaled and that the relative spacing between characters be increased as the letters are made smaller. Both geometric scaling and typographic scaling are useful in their appropriate contexts. In PostScript, geometric scaling is the default, because it minimizes the burden on composition programs (only one set of metrics per face are required for determining placement and justification of any size of text). However, given designs for fonts to be used at small sizes, it is quite easy to make inter-character spacing be a function of both the target point size and the device resolution. Sumner Stone (Adobe's directory of typography) has done some of this to illustrate how PostScript users can control typographic spacing. The point of all this discussion is that there is no single "correct" approach to character scaling and spacing. There are several approaches which are incompatible to some degree and each of which is appropriate in different contexts. PostScript uses one approach by default, but provides users the flexibility to employ other approaches. Ed Taft Adobe Systems, Inc. Notices: PostScript is a trademark of Adobe Systems, Inc. LaserWriter is a trademark of Apple Computer, Inc. Linotronic 300/P is a trademark of Allied Corp.