`sig
type pos = float * float
type width = float
type height = float
type size = int
type align = Left | Center | Right
type style_attr =
Filled
| Invisible
| Diagonals
| Rounded
| Dashed
| Dotted
| Solid
| Bold
| StyleString of string
type operation =
Filled_ellipse of XDotDraw.pos * XDotDraw.width * XDotDraw.height
| Unfilled_ellipse of XDotDraw.pos * XDotDraw.width * XDotDraw.height
| Filled_polygon of XDotDraw.pos array
| Unfilled_polygon of XDotDraw.pos array
| Polyline of XDotDraw.pos array
| Bspline of XDotDraw.pos array
| Filled_bspline of XDotDraw.pos array
| Text of XDotDraw.pos * XDotDraw.align * XDotDraw.width * string
| Fill_color of string
| Pen_color of string
| Font of float * string
| Style of XDotDraw.style_attr list
val string_scale_size :
string -> float -> string -> XDotDraw.width * XDotDraw.height
val parse : string -> XDotDraw.operation list
type draw_state = private {
mutable fill_color : string;
mutable pen_color : string;
mutable font : float * string;
mutable style : XDotDraw.style_attr list;
}
val draw_with :
(XDotDraw.draw_state -> XDotDraw.operation -> unit) ->
XDotDraw.operation list -> unit
val normalize_color : string -> string
end`