sig
  type colspec =
      NoCol
    | RGB of float * float * float
    | Grey of float
    | CYMK of float * float * float * float
  type drawops =
      Rect of float * float * float * float
    | Bezier of float * float * float * float * float * float
    | Bezier23 of float * float * float * float
    | Bezier13 of float * float * float * float
    | To of float * float
    | Line of float * float
    | ClosePath
    | SetFill of Cpdfdraw.colspec
    | SetStroke of Cpdfdraw.colspec
    | SetLineThickness of float
    | SetLineCap of int
    | SetLineJoin of int
    | SetMiterLimit of float
    | SetDashPattern of float list * float
    | Matrix of Pdftransform.transform_matrix
    | Qq of Cpdfdraw.drawops list
    | Fill
    | FillEvenOdd
    | Stroke
    | FillStroke
    | FillStrokeEvenOdd
    | Clip
    | ClipEvenOdd
    | FormXObject of float * float * float * float * string *
        Cpdfdraw.drawops list
    | Use of string
    | ImageXObject of string * Pdf.pdfobject
    | Image of string
    | NewPage
    | Opacity of float
    | SOpacity of float
    | FontPack of string * Cpdfembed.cpdffont * (int, unit) Stdlib.Hashtbl.t
    | Font of string * float
    | TextSection of Cpdfdraw.drawops list
    | Text of string
    | SpecialText of string
    | Newline
    | Leading of float
    | CharSpace of float
    | WordSpace of float
    | TextScale of float
    | RenderMode of int
    | Rise of float
  val draw :
    ?fast:bool ->
    ?underneath:bool ->
    filename:string ->
    bates:int ->
    batespad:int option ->
    int list -> Pdf.t -> Cpdfdraw.drawops list -> Pdf.t
end