DIRECTORY ImagerFont USING [Font], Rope USING [ROPE]; VFonts: CEDAR DEFINITIONS ~ BEGIN Font: TYPE ~ ImagerFont.Font; ROPE: TYPE ~ Rope.ROPE; defaultFont: Font; DefaultFont: PROC [font: Font ¬ NIL] RETURNS [Font] ~ INLINE { RETURN[IF font=NIL THEN defaultFont ELSE font] }; EstablishFont: PUBLIC PROC [family: ROPE, size: CARDINAL, bold: BOOL ¬ FALSE, italic: BOOL ¬ FALSE, defaultOnFailure: BOOL ¬ TRUE ] RETURNS [Font]; CharWidth: PROC [char: CHAR, font: Font ¬ NIL] RETURNS [NAT]; StringWidth: PROC [string: ROPE, font: Font ¬ NIL] RETURNS [NAT]; FontHeight: PROC [font: Font ¬ NIL] RETURNS [NAT]; FontAscent: PROC [font: Font ¬ NIL] RETURNS [NAT]; Error: ERROR [code: ErrorCode]; ErrorCode: TYPE ~ {illegalFormat, fontNotFound}; END. f VFonts.mesa Copyright Σ 1985, 1986, 1991 by Xerox Corporation. All rights reserved. Last Edited by McGregor, September 1, 1982 2:37 pm Last Edited by: Maxwell, January 3, 1983 12:12 pm Doug Wyatt, March 29, 1985 2:20:40 pm PST Build a (possibly) new font. The default font will be returned on any error condition unless defaultOnFailure is FALSE. Κρ–(cedarcode) style•NewlineDelimiter ™codešΟc ™ Kšœ Οeœ=™HKš2™2Kšœ1™1K™)K™—šΟk ˜ Kšœ Ÿœ˜KšœŸœŸœ˜—K˜KšΠblœŸ˜KšœŸ˜K˜KšœŸœ˜KšŸœŸœŸœ˜K˜K˜K˜šΟn œŸœŸœŸœ˜3Kš œŸœŸœŸœŸœŸœ Ÿœ ˜