RasterFontWriter.mesa
Michael Plass, September 7, 1983 2:37 pm
DIRECTORY ImagerPixelMaps, Rope;
RasterFontWriter: CEDAR DEFINITIONS ~ BEGIN
InternalFont: TYPE ~ REF InternalFontRep;
InternalFontRep: TYPE ~ RECORD [
defaultChar: InternalCharRep,
charRep: ARRAY CHAR OF InternalCharRep
];
InternalCharRep: TYPE ~ RECORD [
fWidth, sWidth: INTEGER,
pixels: ImagerPixelMaps.PixelMap
];
Load: PROC [fileName: Rope.ROPE] RETURNS [InternalFont];
may raise:
FormatError: ERROR [byteIndex: INT];
Create: PROC [defaultBoxBounds: ImagerPixelMaps.DeviceRectangle, defaultWidth: INTEGER] RETURNS [InternalFont];
ComputeFontMetrics: PROC [internalFont: InternalFont] RETURNS [bc, ec: CHAR, sMin, fMin, sMax, fMax: INTEGER, maxWidth, totalWidth, fSizeStrike: CARDINAL];
Trim: PROC [internalFont: InternalFont];
Removes extra zero bits from all the rasters.
WriteStrike: PROC [internalFont: InternalFont, fileName: Rope.ROPE];
WriteKernedStrike: PROC [internalFont: InternalFont, fileName: Rope.ROPE];
END.