RasterFontIO.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Michael Plass, May 20, 1985 10:43:46 am PDT
~
BEGIN
InternalFont:
TYPE ~
REF InternalFontRep;
InternalFontRep:
TYPE ~
RECORD [
family: Rope.ROPE ← NIL,
face: [0..255] ← 0,
bitsPerEmQuad: REAL ← 0,
bitsPerInch: REAL ← 72,
defaultChar: InternalCharRep,
charRep: ARRAY CHAR OF InternalCharRep
InternalCharRep:
TYPE ~
RECORD [
fWidth, sWidth: REAL,
pixels: ImagerPixelMap.PixelMap
Load:
PROC [fileName: Rope.
ROPE]
RETURNS [InternalFont];
may raise:
FormatError:
ERROR [byteIndex:
INT];
Create:
PROC [defaultBoxBounds: ImagerPixelMap.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];
WriteAC:
PROC [internalFont: InternalFont, fileName: Rope.
ROPE];