The Pen constructor associates a set of graphical (attribute,value) pairs with a picture. The attributes currently supported are (the definition of the types used by some of the attributes have been elided for lack of space):
type PenModifier = [PenAttr] data PenAttr = | LineWidth Ixont | Foreground Colour | LineStyle LineStyle -- dashed lines or not? | JoinStyle JoinStyle -- for polyline joints | CapStyle CapStyle -- end point caps. | Fill Bool -- fill picture or not? | Invisible Bool -- should the picture be drawn? | Font Font -- what font to use. | Function PenFunction -- blit op to eventually apply