




Binds the graphics state values of a port to a list of arguments and executes a body of code.
with-graphics-state ( port &rest args &key transform foreground background operation thickness scale-thickness dashed dash line-end-style line-joint-style mask font state fill-style stipple pattern mask-x mask-y shape-mode text-mode compositing-mode mask-transform ) body => result
The macro with-graphics-state binds the graphics state values for the specified port to the values specified in the 
args
 list. The keyword arguments 
args
 correspond to the slots in the graphics state, as described in graphics-state.
(with-graphics-state (port :thickness 12 :foreground my-color ) ...)
Arguments that are not supplied default to the current state of that slot in the graphics-state. The argument stipple is used only on X11/Motif.
mask-x
 and 
mask-y
 are deprecated. They work only when the 
drawing-mode
 is :compatible and the platform is GTK+ or X11/Motif.
An extra keyword argument :state can be used. The value must be a graphics-state object created by a call to make-graphics-state. The contents of the graphics-state object passed are used instead of the 
port
's state.
(setf gstate (make-graphics-state))
(setf (graphics-state-foreground gstate) 
my-color
)
(with-graphics-state (port :state gstate)
(draw-rectangle port image-1 100 100))
graphics-state
set-graphics-state
with-graphics-translation
with-graphics-post-translation
with-graphics-scale
with-graphics-rotation
with-graphics-transform
with-graphics-transform-reset
with-graphics-mask
Drawing - Graphics Ports
CAPI User Guide and Reference Manual (Windows version) - 3 Aug 2017