ImagerPress.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Michael Plass, April 16, 1985 2:09:33 pm PST
ImagerPress:
CEDAR
DEFINITIONS ~
BEGIN
OPEN Imager,
IO, Rope;
Create:
PROC [
outputStream: STREAM,
fileNameForHeaderPage: ROPE ← NIL,
creatorName: ROPE ← NIL,
printerType: PrinterType ← press,
printingMode: PrintingMode ← normal,
pageWidthMicas: INT ← 21590,
pageHeightMicas: INT ← 27940
] RETURNS [context: Context];
Creates a context that will write a press file.
SimpleCreate:
PROC [fileName:
ROPE, printerType: PrinterType ← press]
RETURNS [context: Context];
PrinterType:
TYPE ~ {press, spruce};
PrintingMode:
TYPE = {normal, reverse, solid, transparent};
NewPage:
PROC [context: Context];
Starts a new page; also resets the context to its initial state (no font, initial meter coords).
SetSamplingProperties:
PROC [context: Context, screenAngle:
INT ← 0, screenAmplitude:
INT ← 100, screenFrequency:
INT ← 85, minIntensity:
INT ← 0, maxIntensity:
INT ← 255];
For fine control of the halftone screens; subject to DoSave.
DoWithWarnings:
PROC [context: Context, action:
PROC];
A mechanism to allow for the graceful handling of non-fatal errors; this call should include a catch phrase for the Warning signal.
Warning:
SIGNAL [code:
ATOM, explanation:
ROPE, page, micaX, micaY:
INT];
Called when the implementation needs to make an approximation.
Close:
PROC [context: Context];
Closes the underlying press handle; a NOP if context is the wrong kind.
END.