ColorizeViewPointDoc.tioga
Eric Nickell, May 23, 1989 1:39:25 am PDT
Bob Coleman, December 14, 1989 2:37:04 pm PST
COLORIZE VIEWPOINT
CEDAR 7.0 — FOR INTERNAL XEROX USE ONLY
ColorizeViewPoint
Injecting Color into VP Interpress masters
Eric Nickell
© Copyright 1988 Xerox Corporation. All rights reserved.
Abstract: ColorizeViewPoint provides an interface and commands for converting b/w interpress masters created by ViewPoint into color interpress masters.
Created by: Eric Nickell
Maintained by: Bob Coleman <MontereyImplementors^.pasa>
Keywords: Interpress, Color, Colorize, ViewPoint, Graphics, Pro Illustrator
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
Standard Colorizing
To be added later
To be added later
Profile Entries
What is a profile, anyway?
As a user, if you use the WRC palette patterns and simple strikeouts and underlines, you will find that these map to a wide variety of colors and features. You can get colored graphics (except for lines), different colors of text, yellow background highlights, or red strikeouts. It turns out, however, that the correspondence between features in a VP document and the colorization done to them is customizable. With this sort of customization, it is possible to get graphics to be any printable color, rather than the 100 in the palette; it is possible to get drop shadows on text; it is even possible to have objects colored with a color sweep of any angle.
This correspondence, or mapping, between VP features and the colorization performed is controlled by a set of commands, called a profile. Each of these commands consists of a line of text, which is a profile entry. The form of a profile entry is
key: value
where key is a text string, without blanks, related to the VP feature being colorized, and value, possibly containing spaces, describes or modifies the colorization taking place. For example, in the profile entry
DoubleUnderline: 1.0 0.0 0.0
the key is "DoubleUnderline" and the value is "1.0 0.0 0.0".
A colorizing printer has a default profile built in. It is this default profile which provides the features described in the previous section. It is possible to override any profile entry in the default profile, or to add new profile entries. One way to do this is by including an embedded profile in your VP document. This involves adding an extra page to your VP document to contain profile entries. See the next section for further details. A second way to add or modify profile entries is to place these entries in the message portion of the VP printer icons. This method is convenient for making temporary changes to colorization without permanently effecting the document.
If two entries in a profile have character-for-character identical keys (case differences allowed), then only the second value will have any effect. This is not considered to be an error, as it allows an embedded profile entry to override a default profile entry.
Embedded Profiles
To include an embedded profile, create an extra page in your VP document. It may be any page, including the last. The first line of the page should be: "CustomColorsPage" (no quotes). The page will be parsed but then deleted from the document. If you wish the page to be printed, add the word "(Keep)" to the first line (eg, "CustomColorsPage (Keep)". This keep feature is useful for palette design or printer calibration to remember which embedded profile entries created which colors. The rest of the page should consist of profile entries and will be interpreted as such.
It is permissible to have more than one embedded profile page in a document. Each such page should have "CustomColorsPage" as its first line. Also note that all embedded profiles are extracted first before the document is processed; this means that all the profile entries take effect on all the pages - it is not possible to change the value for some profile key midway through the document.
The pair of characters "--" can be used to place comments on the page. These comments will be ignored by the colorizer. If found at the beginning of a line, the entire line will be ignored. A comment can also be placed after the value for a line which is a profile entry. Finally, a comment can be interspersed with the value itself, if the comment is placed between pairs of "--". For example, all of the following produce the same profile entry:
Example #1
-- Map rounded ends to red
RoundEndsColor: 1.0 0.0 0.0
Example #2
RoundEndsColor: 1.0 0.0 0.0 --Map rounded ends to red
Example #3
-- Map rounded ends to red
RoundEndsColor: --R-- 1.0 --G-- 0.0 --B-- 0.0
Note that one application of using comments is the ability to disable a profile entry without removing it from the page. In the following example, the rounded ends are mapped to green, but could be changed to a variety of colors easily.

-- Red
-- RoundEndsColor: 1.0 0.0 0.0
-- Green
RoundEndsColor: 0.0 1.0 0.0
-- Blue
-- RoundEndsColor: 0.0 0.0 1.0
Another way to comment out a section of an embedded profile is to enclose the section in a matching pair of "<<" and ">>". These may be nested. Be careful in the use of these, as their effect may extend across multiple lines and even across multiple pages.
One significant, but subtle, point is that the colorizer knows nothing about VP paragraphs or hard carriage returns. When determining what constitutes a single profile entry, it can't tell new paragraphs from long entries that spill over to the next line. Therefore, to differentiate new profile entries from long entries, the colorizer assumes that non-comment lines which contain no colon should be considered as part of the previous entry.
Profile Entries which Control Colorization
It is possible to turn off or on the colorization of different elements of a document. All control profile entries should have value of either "TRUE" or "FALSE"(eg, ColorizeText: FALSE to turn off text colorization). The following is the list of control keys, the default value, and what the entry controls. Note that the only use of the default is to supply this information to the software calling the colorizer. This means that some client may override this default for a particular printer or environment, with the result that users for some machines may see different defaults. Some implementations of the CheckSystemSettingProc may even interrogate "sticky" system settings, allowing the SA for a particular printer to set the value of these defaults.
Key  DefaultEffect
ColorizeColorVP TRUE Enable (re-)colorization of ColorVP (Bitmapper) files
AmbushAllYESColors FALSE Turn all Color VP YES colors into RGB (some
   printers need this)
ColorizeProIllustrator TRUE Enable colorization of Pro Illustrator graphics
ColorizeBasicGraphics TRUE Enable colorization of VP Basic Graphics
ColorizeText  TRUE Enable colorization of text in ViewPoint via
   strikeouts and underlines
ColorizeRoundEnds FALSE Enable colorization of graphic lines with round ends
DeInterleave  FALSE For printers which don't print interleaved pixel arrays
   (RGBRGB..RGB), turns them into RRR...GGG..BBB
OptimizeInterpress TRUE Take out redundancies and unnecessary code to
   speed printing (for now only deals with unnecessary
   sampledblacks, eg used for text frames)
In addition to the above control profile entries which may be embedded in the document or sent through a client, there are other control profile entries which may only be set through the client. (Some clients of the Colorizer may allow profile entries to be set through, for example, the message portion of VP printer icons, eg). These may not, however, be set in the document's embedded profile since in order to be found in the embedded profile, colorization would have to be initiated, but they control whether colorization should be initiated or not:
Colorize1  TRUE Enables colorization of interpress masters
   with heading "Interpress/Xerox/1.x"
Colorize2  TRUE Enables colorization of interpress masters
   with heading "Interpress/Xerox/2.x"
Colorize3  FALSE Enables colorization of interpress masters
   with heading "Interpress/Xerox/3.0"
FindCustomColorsPage TRUE Enables extraction/utilization of embedded profiles
ColorizeOnlyIfCustomColors Disables all colorization unless an embedded profile
  FALSE is found in the master
The decision logic for deciding whether or not to do any colorization, and if so, which colorizations are to be performed is described by the pseudo-code:
IF  (MasterIs[1.x] AND Colorize1) OR
 (MasterIs[2.x] AND Colorize2) OR
 (MasterIs[3.x] AND Colorize3) THEN {
IF FindCustomColorsPage THEN <process embedded profile>;
IF (NOT ColorizeOnlyIfCustomColors) OR <has embedded profile> THEN {
IF ColorizeText THEN <colorize text>;
IF ColorizeColorVP THEN <re-colorize Color ViewPoint files: all colors if AmbushAllYESColors, only CustomColorsPage colors if not>;
IF ColorizeProIllustrator THEN <colorize Pro Illustrator>;
IF ColorizeBasicGraphics THEN <colorize VP Basic Graphics>;
IF ColorizeRoundEnds THEN <colorize round ends>;
IF DeInterleave THEN <deInterleave all interleaved pixel arrays>;
IF OptimizeInterpress THEN <optimize the Interpress Master>;
};
};
Technical Detail: Control profile entries differ from default profile entries in that the colorizer does not interrogate for control info the palette profile passed to ColorizeViewPoint.Do or ColorizeViewPoint.DoRope. Instead, it will check embedded profile entries and, failing that, will call the CheckSystemSettingProc supplied. This behavior is intentional. It prevents modification of the standard palette on the print service from affecting these switches.
Specifying Colors
As mentioned above, the form of a profile entry is property: value. The value in most cases is a color. How are colors specified on a CustomColorsPage?
The low-level way is to list a color's numeric values under a given color model. If three numbers are listed, the colorizer assumes RGB values (Red, Green, Blue). Red, for example, is 1 0 0. Yellow is 1 1 0. If four numbers are listed, the colorizer assumes CMYK (Cyan, Magenta, Yellow, blacK). Thus, while 0 0 1 is blue, 0 0 1 0 is yellow. Finally, using one number is interpreted with SetGrey. 0=white, .25=light gray, .5=mid-gray, .75=dark gray, 1=black. To summarize:
Color may be produced via SETGRAY, the Xerox/Research/RGBLinear or the Xerox/Research/CMYK color model operators. Here's how:
ValueRange  Produces
f [0.0 .. 1.0]  Gray color, via SETGRAY. 0.0 is white.
r g b [0.0 .. 1.0], each RGB. <0 0 0> is black, <1 1 1> white.
c m y k [0.0 .. 1.0], each CMYK. 0.0 means no ink, 1.0 means full.
Many users of the Colorizer won't want to know the RGB or CMYK values of their colors. The Colorizer also allows three higher-level descriptions of colors. First, a color name, like "light blue" or "pale yellow green" (no quotes), may be used from the Named Color Palette (106 colors available). Second, the WRC Palette has 100 numbered colors, referred to as C1 to C100. C59, for example, is a blue color. Equivalently, the same 100 WRC colors may be referred to by their black and white pattern definitions (explained more fully below). These definitions, like 25%AE or 0%CDE, refer to the way in ViewPoint that the black and white stipple pattern is created, by specifying a gray level (0% - 100%) combined with any of five striped patterns (A - E). C48 could thus be referred to by its pattern, 50%BC. The WRC Palette shows the pattern definition of each numbered color.
As a final note, it is possible to name or number colors beyond the named/numbered color palettes. For example, ProIllustrator allows the use of a wide range of grays in its black and white graphics -- an object may be a 13% gray. To be able to call 13% by a color number (eg, C101), include in the CustomColorsPage the entry C101Pattern: 13%, and also define C101 to be a particular color, as in: C101: .4 1 0 or C101: brilliant greenish blue.
Specifying Palettes of Colors
The WRC Palette actually contains a number of sub-palettes. The Default sub-palette is assumed, so that color numbers C1 - C100 refer to the default palette normally. However, a different sub-palette may be specified by the command "Palette: <sub-palette>", eg Palette: BW for the black and white palette or Palette: Spring for the spring colors palette. Then any mention of the numbered colors C1 - C100 will refer to that color number within the specified sub-palette (eg, BW or Gray or Spring, etc.).
It is even possible for each separate colorization to use a different sub-palette. For example,
TextPalette: Gray
BGPalette: Default
ProPalette: Spring
ColorVPPalette: Winter
will cause Text to be colorized with the Gray palette, BasicGraphics to use the Default palette, ProIllustrator to use the Spring palette and ColorViewPoint to use the Winter palette.
Two sub-palettes need an additional note. The "BW" (black & white) and "Grey" (or "Gray") sub-palettes were created to allow the easy production of black and white, simple, handouts from color presentation viewgraphs. The very simple algorithm for the BW palette is that all colors become white and all text plain black. To allow production of the black and white handout without changing the original color document or CustomColorsPage, whenever "Palette: BW" or "Palette: Grey" is found, all other custom colorizing commands on the CustomColorsPage are suspended. Thus, it is possible to print a color document with the printer message "Palette: BW" and produce a black and white handout without changing the document's CustomColorsPage. Furthermore, if there are any colors (C1 - C100 or their associated patterns) which should be turned black instead of the default white, they may be listed following the BW. For example, "Palette: BW c37 25%ADE" will cause all text to turn black, as default, and all colors to turn white except c37 and 25%ADE, which will turn black.
Text Colorization
Text is colorized on the basis of underlines and strikeouts. Since ViewPoint text supports a single strikeout and either single or double underline, there are six possible combinations. One of these, no underlines and no strikeout, is not colorizable, leaving these five: Underline, Strikeout, DoubleUnderline, StrikeoutUnderline, and StrikeoutDoubleUnderline. These, in fact, are the five textKeys which affect the colorization of text. The form of each such text profile entry is
textKey: <highlight stuff> <drop shadow stuff> <strikeout stuff> <underline stuff> <text color>
eg, StrikeoutUnderline: highlight [c34] dropShadow [light green] 1 .5 0
will color all strikeoutUnderlined text to be orange (RGB = 1 .5 0), with light green dropShadow & magenta (c33) highlight. (Consult an artist or optometrist (or psychologist) if this looks good to you.)
The <highlight stuff> is optional. If present, it consists of the word "highlight", optionally followed by a color (1, 3, or 4 numbers, C1 - C100, or a named color) enclosed in square brackets. If present, a background highlight of the specified color will be placed behind the text. The default color for the highlight is black.
The <drop shadow stuff> is optional. If present, it consists of the word "dropShadow", optionally followed by a color (1, 3, or 4 numbers, C1 - C100, or a named color) enclosed in square brackets. If present, a drop shadow of the specified color will be placed behind the text. The default color for the drop shadow is black. The offset for the drop shadow will be determined by the profile entry
textKey.DropShadowOffset: <x offset> <y offset>
where textKey is the feature being colorized. Each offset is either a positive or negative real-valued number (expressed in points), or a positive or negative real-valued percentage, marked with a percent sign ("%") after the number. The default offset is "-5% 5%". Positive x is to the right; positive y is down.
The <strikeout stuff> is optional. It is ignored when the textKey is Underline or DoubleUnderline (i.e., when there is no strikeout component). If present, it consists of the word "strikeout", optionally followed by a color (1, 3, or 4 numbers, C1 - C100, or a named color) enclosed in square brackets. If present, a strikeout of the specified color will be placed over the text. The default color for the strikeout is black.
The <underline stuff> is optional. It is ignored when the textKey is Strikeout. If present, it consists of the word "underline" or "doubleUnderline", optionally followed by a color (1, 3, or 4 numbers, C1 - C100, or a named color) enclosed in square brackets. If present, an underline of the specified color will be placed below the text. The default color for the underline is black. The word "doubleUnderline" should not be used unless the textKey is DoubleUnderline or StrikeoutDoubleUnderline.
The <text color> is also optional. It consists of 1, 3, or 4 numbers, C1 - C100, or a named color specifying a color for the text. If not present, <text color> defaults to white in Basic Graphics and Pro Illustrator. In ColorVP, the default color is the current text color. This allows easy drop shadows: white (or current color) text with black shadow is easily done with (eg):
   Underline: DropShadow
Graphics Colorization Profile Entries
Technical Detail: Graphics colorization takes place through the colorizer finding and reinterpreting MAKESAMPLEDBLACK or SETGRAY operators in an interpress master, or through finding and reinterpreting the YES colors of Color ViewPoint. The colorizer treats Color VP, VP Basic Graphics and Pro Illustrator quite similarly, although the actual work is done in three separate passes, and the passes are enabled/disabled separately.
Most of the graphics colorization profile entries are of the form
propertyDescription: colorValue
where propertyDescription is an optional prefix (the sub-palette) concatenated with a coded description of the sampledBlack, gray, or named color to be sought in the VP-produced interpress master, and colorValue describes the color which is to replace it. Basic Graphics and Pro Illustrator colorization allow different values for propertyDescription, because Pro Illustrator provides more color options to the user. Color ViewPoint allows the user to search for and change any of the 106 named colors it uses. The colorValue is the same for all three (see "Specifying Colors").
Specifying the propertyDescription for Basic Graphics
The propertyDescription may be preceded by a prefix specifying the sub-palette whose color is being redefined, like Default, or BW, or Spring. Then the propertyDescription itself can take two forms: a color number c1 - c100, or a pattern description of the form <shading selection><texture selections> for Basic Graphics. The <shading selection> corresponds to the value of shading in the object property sheet in Basic Graphics. It should have one of the following values: "0%", "25%", "50%", or "75%", corresponding to white, light gray, gray, and dark gray. Note that Basic Graphics colorization cannot change the color of black. The optional <texture selections> correspond to the values of the texture settings in the object property sheet. We have arbitrarily labeled these textures, left to right, as "A" through "E". The value for <texture selections>, then, is the set of textures selected in the property sheet, in alphabetical order. The propertyDescription "0%", although it satisfies the above requirements, is not permitted. Legal propertyDescriptions would be "75%E", "0%DE", "Spring50%", and "25%BCD".
Fine point #1: Actually, the colorizer will take a broader range of inputs for the propertyDescription. The <texture selections> may be out of order, duplicated, or even precede the <shading selection>. The <shading selection> must evaluate to one of the four values above, but could be specified as "25.0%", or possibly even "24.999999999%". Doing any of these things, however, is likely to generate a Colorizer.Warning, which will complain about the presence of two conflicting propertyDescriptions. This is because the colorizer will see two keys in the profile which correspond to the same setting of the property sheet, and is not sure which one the user intended. If the conventions specified above are followed, then the colorizer will only see one profile entry, because the second will occlude the first.
Fine point #2: The BasicGraphics colorizer will quietly ignore a propertyDescription which contains letters between "F" and "L". This is because the same palette of colors may be used by both Basic Graphics and Pro Illustrator, and Pro Illustrator has 12 textures, in contrast with Basic Graphic's 5.
Fine point #3: It is also permissible to include "O" or "T" as described in the Pro Illustrator. "T" is unneeded because it is already assumed for Basic Graphics. "O" is useless because Basic Graphics cannot produce objects which correspond to it.
Specifying the propertyDescription for Pro Illustrator
The propertyDescription may be preceded by a prefix specifying the sub-palette whose color is being redefined, like Default, or BW, or Spring. Then the propertyDescription itself can take two forms: a color number c1 - c100, or a pattern description of the form <shading selection><texture selections><opacity selection> for Pro Illustrator. The <shading selection> corresponds to the value of shading in the object property sheet in Pro Illustrator. It may have any real value between 0 and 1. Note that Pro Illustrator colorization can change the color of black (or white!), but that this is discouraged, since black (or white) will be changed for the entire document, not just the Pro Illustrator frames. The optional <texture selections> correspond to the values of the texture settings in the object property sheet. We have arbitrarily labeled these textures, left to right, top to bottom, as "A" through "L". The value for <texture selections>, then, is the set of textures selected in the property sheet, in alphabetical order. The <opacity selection> may be "O", for opaque, "T", for transparent, or empty, for either. If either "O" or "T" are specified, then the mapping will only be affected when then color is of that particular sort. Legal propertyDescriptions would be "61.5%E", "Spring0%DLO", "50%T", and "25%BCD".
Fine point: As for Basic Graphics, the Pro Illustrator colorizer will actually take a broader range of inputs for the propertyDescription. The <texture selections> and <opacity selection> may be out of order, duplicated, or even precede the <shading selection>. The same value of <shading selection> may be specified with different character strings. It is the user's responsibility, however, to ensure that different propertyDescription values are distinguishable in the interpress. When two propertyDescription values would be indistinguishable in the interpress, the colorizer generates a Warning. On most printers this will produce an Appearance Warning on a separate page.
Specifying the propertyDescription for Color ViewPoint
Because ColorViewPoint already allows customization of color palettes, normally the Colorizer will not be used to provide multiple prefixes (sub-palettes). Instead, the CustomColorsPage is used customize a few colors for a particular document, or to change a ColorViewPoint constant color to a color sweep, etc. For example:
 very light blue: .4 1 1
 deep green: Sweep 0 .8 .2 , .6 1 .6
changes very light blue to a slightly different light blue (in RGB), and changes deep green to a color sweep from a deep green to a light green.
Specifying the colorValue for Constant Colors (Basic Graphics, Pro Illustrator, ColorVP)
Basic Graphics, Pro Illustrator, and ColorVP profiles use exactly the same means for describing "constant" (ie, flat, unchanging) colors to be substituted into the colorized interpress master. See the section "Specifying Colors".
Some examples of propertyDescriptions with their associated colorValues for constant colors:
61.5%E: 1 0 0 --Red, interpreted as RGB
25%BD: brilliant yellow green --a named color
C19: .61 --a mid-gray; = .61 SETGRAY. Look for "Palette: foo" to see which palette
SpringC32: 0 1 1 0 --redefining SpringC32 to Red, interpreted as CMYK because 4 values
30%: SpringC32 -- the new CMYK values for SpringC32 will be used for 30% as well
Specifying the colorValue for Sweeps (Basic Graphics, Pro Illustrator, ColorVP)
Sweep colors start at one color, and gradually change (sweep) to another color. In order of difficulty:

1. The most common case is nearly as easy as constant colors: simply specify the beginning color and the end color for the sweep. A BasicGraphics, Pro Illustrator, or ColorVP rectangle or triangle object swept gradually from one color (RGB 0 .4 1) at the top to another (light green) at the bottom, might have the following CustomColorsPage entry:

0%BC: Sweep 0 .4 1, light green -- Vertical sweep: dark blue (0 .4 1) to light green

2. To tilt a sweep by 23 degrees (any number of degrees, negative or positive, may be used):

c46: Sweep23 c51, c55 -- c46 redefined as an angled sweep: from c51 to c56

No spaces are allowed in the word Sweep23 (or Sweep145, Sweep-30, etc.)

3. To redefine "bluish white" to be a two-direction sweep, eg a horizontal dark blue to light blue sweep sweeping down to a magenta to light magenta row at the bottom:

bluish white: Sweep 0 .4 1 - .7 .82 1, 1 0 1 - 1 .6 1
or, writing the above Sweep to allow easier visualization of the structure of the resulting sweep:
bluish white: Sweep 0 .4 1 - .7 .82 1, --top row: dark blue to lt blue horiz. sweep, sweeping
   1 0 1 - 1 .6 1 --vertically to bottom row: magenta to lt. mag sweep

In a two-direction sweep, hyphens specify colors to sweep between horizontally, and commas specify vertical direction sweeps. Any number of colors may be specified horizontally, each separated by hyphens, and any number of rows may be specified vertically, each separated by commas. (If the number of colors in a row is less than the row above, the colors above will be carried down; the final specification is always interpreted as a rectangular grid.)

In fact, if you have two horizontal sweeps, say C11: Sweep violet - yellow, and C16: Sweep c41 - c45, it is possible to combine them vertically (with a comma) to produce a two-direction sweep: C21: Sweep C11, C16.

As before, the word "Sweep" may be replaced with Sweep<Angle> to produce an angled two-direction sweep.

4.
Non-Rectangles or Triangles. In the case of objects to be swept which are not rectangles or triangles, two more steps are needed. First, a rectangle or triangle must be drawn around the object, and moved below it in the document. The colorizer will use this defining object to define the spatial dimensions of the sweep and then will remove it from the document. Second, in the <angled> sweep definition, add the phrase "RemoveDefiningObject" (no spaces):

c32: Sweep30 RemoveDefiningObject 0 .4 1 - c17, light blue - 1 .6 1
or pink: Sweep30 ....(same)
The word "RemoveDefiningObject" is actually "Remove*", and may be placed anywhere in the Sweep definition.

With a defining rectangle, the horizontal dimension of the sweep will be defined by the width of the rectangle; the vertical dimension by the height, and the sweep will start at the upper left corner. (Use the BasicGraphics or Pro Illustrator rectangle object to define the rectangle - drawing four separate sides won't work - and use transparent borders, since the object will be automatically removed but not its borders.)

With a defining triangle, the sweep will start where you start drawing the triangle, the "horizontal" ( the rows defined by hyphens) will follow the first side drawn, and the "vertical" (separated by commas) will follow the second side drawn. Triangles are used to define sweeps which are not orthogonal between the horizontal and vertical sides; ie, the tiling is with parallelograms rather than rectangles.
Fine points: All of the colors specified in a sweep definition must be high or low level descriptions of the same kind: one of the three kinds of constant colors (specified by 1 number for Xerox/GrayLinear, 3 for Xerox/Research/RGBLinear, or 4 for Xerox/Research/CMYK).
Color sweeps generate large sampledcolor pixelarrays; having a large sweep definition may strain printer resources, depending on the printer. The size of the pixel array is also affected by the size of the color jumps defined in the sweep. A large jump anywhere in the sweep definition will cause a large number of steps to be used everywhere in interpolating between the colors in order to achieve a smooth transition. Thus the MaxVerticalColorDistance and the MaxHorizontalColorDistance strongly affect the resulting pixel array.
Rounded Ends Colorization Profile Entries
USE AT YOUR OWN RISK.
This colorization maps the use of round ends into a user-specified color. As such, it can be used to achieve colored lines using only Basic Graphics, as long as a single color per document is reasonable. The nature of the colorization is such that it is quite possible for extra objects to be unintentionally colorized. Therefore, this feature is not guaranteed or supported as to effect. (It is guaranteed to produce complete and legal interpress master without bugs.)
To use this feature from Basic Graphics, for the lines in question set the line end properties for both ends to be round. The line will be colored. The profile entries related to rounded ends colorization are:
  ColorizeRoundEnds: TRUE (to turn on colorization - normally off)
  RoundEndsColor: <constant color>
where <constant color> is the standard 1, 3, or 4 numbers, c1-c100, or a named color. The default color is red, "1.0 0.0 0.0".
DeInterleaving interleaved pixel arrays
One "colorization" which will not affect the document appearance but can make it possible for some printers to print color sweeps is DeInterleave. If a sweep won't print, it may be that the printer doesn't handle interleaved pixel arrays. An RGB pixel array must describe the value of R,G,&B for every pixel. It can choose to do that a plane at a time, as in RRR..RGGG..GBBB..B (non-interleaved) or a pixel at a time, as RGBRGBRGB...RGB (interleaved). "DeInterleave" is normally off; to turn it on for a document, put in the embedded palette DeInterleave: TRUE.
Optimizing the Interpress Master
Another "colorization" which will not affect the document appearance but can speed printing time makes final passes over the Interpress Master in an effort to optimize it for printing. Basic Graphics, ProIllustrator, ColorVP, and Gargoyle all create masters which include redundant or unnecessary Interpress commands. OptimizeInterpress currently only 1) searches for and erases the empty transparent sampledblack rectangles which ViewPoint puts in for text frames, and 2) replaces pure black or pure white opaque sampledblacks with their corresponding Setgrays. Imaging sampledblacks can slow the printer down tremendously. Future optimizations may include eliminating redundant color calls, building and grouping colors in the preamble, and so on. "OptimizeInterpress" is normally on; to turn it off for a document, put in the embedded palette OptimizeInterpress: FALSE.