IIMaskCapture.mesa
Copyright © 1985, 1986 by Xerox Corporation. All rights reserved.
Michael Plass, November 21, 1986 12:46:31 pm PST
Doug Wyatt, March 7, 1986 2:59:58 pm PST
DIRECTORY
II USING [Context, SampleMap, Transformation, XChar],
IIDevice USING [FontTuner],
IIMaskCache USING [CharMask],
IIFont USING [Font],
IIManhattan USING [Polygon],
SF USING [Box, BoxAction];
IIMaskCapture: CEDAR DEFINITIONS
~ BEGIN
CaptureChar: PROC [font: IIFont.Font, char: II.XChar, ratio: REAL, fontTuner: IIDevice.FontTuner ← NIL, metricsOnly: BOOLFALSE] RETURNS [IIMaskCache.CharMask];
The transformation in font is into device coordinates, with x~s and y~f.
Returns NIL if the operator must be re-executed each time, and nothing can be said about the bounding box and/or width.
Returns culled variant if metricsOnly=TRUE.
Returns maskNotCacheable variant if the operator cannot be cached for some reason, but its bounding box and escapement are known.
Otherwise returns cached variant; raster IFF (size of raster rep) <= ratio*(size of runs rep).
CaptureBounds: PROC [operator: PROC [II.Context], m: II.Transformation] RETURNS [SF.Box];
Cant: SIGNAL [why: ATOM];
Raised by the following whenever a situation is detected where the result would not be well-defined; If checkColor is TRUE on the following, attempts to change color will rasie this signal.
CaptureBoxes: PROC [operator: PROC [II.Context], m: II.Transformation, boxAction: SF.BoxAction, checkColor: BOOLFALSE];
CaptureBitmap: PROC [operator: PROC [II.Context], m: II.Transformation, checkColor: BOOLFALSE] RETURNS [II.SampleMap];
CaptureManhattan: PROC [operator: PROC [II.Context], m: II.Transformation, checkColor: BOOLFALSE] RETURNS [IIManhattan.Polygon];
END.