Fonts: How Screen Fonts And PostScript Fonts Are Associated

If I'm not using Fontographer, and the bitmapped font is defined (using ResEdit, for example), and the spline font has been defined in raw PostScript, how are the two fonts "bonded" together?

That is, how are the two fonts connected so that the Macintosh knows when the bitmapped font is referenced it should look for and download the "bonded" PostScript font?
The necessary resources for font reproduction on a LaserWriter, when using a printer font, are:

* The screen FONT
* The printer FONT
* FOND

The screen FONT is used to select the desired font from within an application. The printer FONT is a defined font, either a bit-map or B-spline for a PostScript printer.

The FOND resource is needed to list the associated FONTs for the Font and Printing Managers to select an appropriate font. Because the user does not have a FOND to list the association of the spline font with the screen font, the Print Manager cannot select the printer font to be downloaded.

When you give the LaserWriter driver a screen font to print, the driver queries LaserWriter for a list of available fonts. If a downloadable font is not available but is listed in the screen font's FOND resource, that font is downloaded and used for printing.

The method of designating the downloadable font is to provide the downloadable font within the FOND resource, a font class, and a font name.

A font, previously downloaded, can be "uncoordinated." That is, it does not need to be referenced in the FOND listing, because when querying the LaserWriter, the LaserWriter driver selects the name of the pre-downloaded font. In the case of a font that is temporarily downloaded, the font must be "coordinated" with the screen font in the FOND.

The style-mapping table of the FOND resource contains the font class as the first two bytes. The font class designators of the LaserWriter driver v3.0 contain 16 (0 to 15) values (10 through 15 are reserved).

Font class designators describe the font and allow or disallow encoding functions, like condensing or outlining.

The style-mapping table contains indexes of all downloadable font names for the font's available styles. If the font name is found in the table, the Font Manager searches for the font in root directories of all available volumes. The name is determined by the first five letters of the font name in the style-mapping table and the first three letters of the font style. The first letter of the base name and the first letter of the style suffix are capitalized.

The resource type of the downloadable font must be an unbundled "LWFN" whose creator is "LWRT". It is suggested that the font information be kept in several "POST"-type resources, rather than one with IDs beginning with 501 decimal. This avoids memory conflict during loading of the font resource. Each resource must begin with a two-byte data field containing the data type in the first byte and binary zero in the second. The balance of the resource is the data to be downloaded. The data type consists of
values 0 to 5 and describes the resource data as text, binary, comment, eof, and so on.
Published Date: Feb 20, 2012