
The graphics-state object associated with each port holds values for the following parameters:
| ||
|
An object which determines the coordinate transformation applying to the graphics port. The default value leaves the port coordinates unchanged from those used by the host window system -- origin at top left, X increasing to the right and Y increasing down the screen. Graphics state transforms describes these objects.
Determines the foreground color used in drawing functions. A color can be a pixel value, a color name symbol, a color name string or a color object. Using pixel values results in better performance.
Determines the background color used in drawing functions which use a stipple. Valid values are the same as for foreground .
The combination function used in the drawing primitives. Valid values are 0 to 15, being the same logical values as the op arg to the Common Lisp function boole (CLtL2).
A 1-bit pixmap ("bitmap") or nil . The bitmap is used in conjunction with the fill-style when drawing. Here, nil means that all pixels are drawn in the foreground color. A stipple is not transformed by the transform parameter. Its origin is assumed to coincide with the port's. The stipple is tiled across the drawing. stipple is ignored if a pattern is given. If no fill-style is given, or it is specified as :solid , when a Stipple is given, then fill-style defaults to :opaque-stippled .
One of :solid :opaque-stippled or :stippled . Its value determines how the drawing is done. The default value :solid means that the foreground is used everywhere. :opaque-stippled means that the stipple bitmap is used with stipple 1s giving the foreground and 0s the background . :stippled means that the stipple bitmap is used with foreground where there are 1s and where the are 0s, no drawing is done. If you specify a stipple but no fill-style , or a fill-style of :solid , it defaults to :opaque-stipple .
A pixmap the same depth as the port. It is used as the source of color for drawing instead of the foreground and background parameters. A pattern is not transformed by the transform parameter. The pattern is tiled across the drawing. When pattern is specified, the stipple value is ignored.
The thickness of lines drawn. If scale-thickness is non- nil , the value is in port (transformed) coordinates, otherwise it is in pixels.
If non- nil means interpret the thickness parameter in transformed port coordinates, otherwise interpret it in pixels.
If non- nil draws a dashed line using dash as the mark-space specifier.
If non- nil should be a two element list specifying the mark and space for dashed lines. The mark and space values are interpreted in pixels only.
One of :butt :round or :projecting and specifies how to draw the ends of lines.
One of :bevel :miter :round and specifies how to draw the areas where the edges of polygons meet.
Either nil or a list of the form ( x y width height ) , defining a rectangle inside which the drawing is done. The mask is not tiled. A mask is not transformed by the transform parameter.
An integer specifying where in the port the X coordinate of the mask origin is to be considered to be. The value is in window coordinates.
An integer specifying where in the port the Y coordinate of the mask origin is to be considered to be. The value is in window coordinates.
Either nil or a valid font name or font object to be used by the draw-character and draw-string functions. A valid font is a portable font description. See Portable font descriptions.