Filed on [Cyan]<Imaging>Documentation>CCDoc.tioga
Package: CC
Maintainer: Lamming
Date: March 4, 1985
DF file: [Cyan]<Imaging>Top>CC.df
Purpose: Temporary brittleware for color correcting AIS files
This is probably only of interest to imaging group folks
Description: This hack provides all the hooks for adjusting the color of an image so that what gets printed looks mildly like whats on your color CRT. The command file CC loads the color corrector. e.g.

% cc

The command DoCC <instem> <outstem> converts <instem>-red/grn/blu to <outstem>-cyan/mag/yel/black.ais using a set of correction profile files. e.g.

% DoCC drip dripcc

You might want to fiddle with these to improve tone reproduction or color correction. In which case I suggest that you make your own version of DoCC

VersaCC uses my correction data for the Versatec
PlateCC uses my correction data for 150 dot screen Cromalin
Running CC:
First, Bringover the public portions of [Indigo]<Cedar5.3>Top>CC.df. Start the color corrector by saying CC to the commander. Correct your ais files by saying DoCC <inStem> <outStem>. The command file DoCC is currently set up to produce 4-color output for the Versatec. It can also do UCR and 3-color work.

The module CCImpl provide 3 routines that DoCC calls thru the interpreter:
ReadTRC: PROC [trcFn:Rope.ROPE] RETURNS [trc: TRCTable]
- reads in a TRC created with the tool BuildTRC
ReadMatrix: PROC [matrixFn:Rope.ROPE] RETURNS [matrix: Matrix.MatrixN]
- reads in a 3 by 3 color correction matrix. The format of the matrix is described below.
ApplyMatrix: PROC [
inStem, outStem: Rope.ROPE,   -- input and output file stems
matrix: Matrix.MatrixN,    -- matrix from ReadMatrix
inTRCRed: TRCTable ← NIL,  -- maps red sep to device density space
inTRCGrn: TRCTable ← NIL,  -- maps grn sep to device density space
inTRCBlu: TRCTable ← NIL,  -- maps blu sep to device density space
outTRCCyan: TRCTable ← NIL, -- device linearisation for cyan
outTRCMag: TRCTable ← NIL,  -- device linearisation for mag
outTRCYel: TRCTable ← NIL,  -- device linearisation for yel
outTRCBlack: TRCTable ← NIL, -- device linearisation for black - black printer profile
ucrTRC: TRCTable ← NIL,   -- UCR profile
bpTRC: TRCTable ← NIL,   -- black printer trc
mode: CCMode ← Color4,   -- UCR / Color4 / Color3
normalize:BOOLEANTRUE,  -- matrix needs normalizing
invertMatrix: BOOLEANFALSE] -- matrix needs inverting before application
-- applies profiles to input file to produce output file
User profile options: The separation extension names of the source files are looked up from your user profile. For general information on this read the UPOps documentation. Otherwise blind faith and the following addition to yout profile should do the trick!
AISseparationKeys.red: "-red" "-r"
AISseparationKeys.green: "-grn" "-green" "-g"
AISseparationKeys.blue: "-blu" "-blue" "-b"
AISseparationKeys.cyan: "-cyan" "-cya" "-c"
AISseparationKeys.magenta: "-magenta" "-mag" "-m"
AISseparationKeys.yellow: "-yellow" "-yel" "-y"
AISseparationKeys.black: "-black" "-blk" "-k" ""