ImagerType1Typeface.mesa
Copyright Ó 1991 by Xerox Corporation. All rights reserved.
Michael Plass, May 31, 1991 12:45 pm PDT
This interface is to allow subclassing of the Type1 Typeface class, and to provide a means of installing FontSolution rasterization.
DIRECTORY
CardTab USING [Ref],
ImagerBox USING [Extents],
ImagerFont USING [XChar],
ImagerMaskCache USING [MakeCharMaskProc],
ImagerTypeface USING [TypefaceClass],
Type1Font USING [Type1Data],
Vector2 USING [VEC];
ImagerType1Typeface: CEDAR DEFINITIONS
~ BEGIN
CharData: TYPE ~ REF CharDataRep;
CharDataRep: TYPE ~ RECORD [name: ATOM, escapement: Vector2.VEC, extents: ImagerBox.Extents];
SetFlags: TYPE = PACKED ARRAY BYTE OF BOOL ¬ ALL[FALSE];
Type1TypefaceData: TYPE ~ REF Type1TypefaceDataRep;
Type1TypefaceDataRep: TYPE ~ RECORD [
type1Data: Type1Font.Type1Data,
charDataForCode: CardTab.Ref ¬ NIL,
charSetNonempty: REF SetFlags ¬ NIL,
fsext: REF ¬ NIL, -- For FontSolution-provided rasterization
ext: REF ¬ NIL -- For use by subclasses
];
DataFromType1Data: PROC [type1Data: Type1Font.Type1Data] RETURNS [Type1TypefaceData];
MakeType1TypefaceClass: PROC [type: ATOM] RETURNS [ImagerTypeface.TypefaceClass];
GetCharData: PROC [data: ImagerType1Typeface.Type1TypefaceData, char: ImagerFont.XChar] RETURNS [CharData];
RegisterMakeCharMask: PROC [makeCharMask: ImagerMaskCache.MakeCharMaskProc];
For installation of FontSolution rasterization.
END.