DIRECTORY ImagerTransform USING [Scale], RefText USING [Append, New], Rope USING [ROPE], RopeInline USING [InlineFlatten], UnifiedFonts USING [Create], VFonts; VFontsImpl: CEDAR MONITOR IMPORTS ImagerTransform, RefText, RopeInline, UnifiedFonts EXPORTS VFonts = BEGIN prefix: REF TEXT = "Xerox/PressFonts/"; postfix: REF TEXT _ "/MRR"; scratch: REF TEXT _ RefText.New[100]; EstablishFont: PUBLIC ENTRY PROC [family: Rope.ROPE, size: CARDINAL, bold, italic: BOOL _ FALSE, defaultOnFailure: BOOL _ TRUE] RETURNS [VFonts.Font] = BEGIN scratch.length _ prefix.length; TRUSTED {RefText.Append[scratch, LOOPHOLE[RopeInline.InlineFlatten[family]]]}; postfix[1] _ IF bold THEN 'B ELSE 'M; postfix[2] _ IF italic THEN 'I ELSE 'R; RefText.Append[scratch, postfix]; RETURN[UnifiedFonts.Create[scratch, ImagerTransform.Scale[size, size], $Screen]]; END; defaultFont: PUBLIC VFonts.Font; RefText.Append[scratch, prefix]; defaultFont _ EstablishFont["Tioga", 10]; END. †VFontsImpl.mesa; Written by S. McGregor Last Edited by McGregor, July 21, 1983 10:53 am Michael Plass, August 16, 1983 9:19 am Κ– "cedar" style˜JšΟc'™'Jš/™/J™&J™šΟk ˜ Jšœžœ ˜Jšœžœ˜Jšœžœžœ˜Jšœ žœ˜!Jšœ žœ ˜Jšœ˜J˜—Jšœ žœž˜Jšžœ3˜:Jšžœ ž˜J˜Jšœžœžœ˜'Jšœ žœžœ ˜Jšœ žœžœ˜%J˜šΟn œžœžœžœžœžœžœžœžœžœžœž˜Jšœ˜Jšžœžœ%˜NJšœ žœžœžœ˜%Jšœ žœžœžœ˜'Jšœ!˜!JšžœK˜QJšžœ˜J˜—Jšœ žœ ˜ J˜Jšœ ˜ J˜Jšœ)˜)J˜Jšžœ˜J˜J˜—…—Ζι