public CairoImageSurface(int width, int heigth, CairoFormat format) { surface = cairo_image_surface_create ((int)format, width, heigth); if (surface == IntPtr.Zero) throw new ArgumentException ("could not create surface"); int status = cairo_surface_status (surface); if (status != 0) { Dispose (); throw new ArgumentException ("could not create surface"); } }