write.func and closure.cairoPdfSurfaceCreateForStream(write.func, closure, width.in.points, height.in.points)write.funcCairoWriteFunc] a CairoWriteFunc to accept the output data, may be NULL
to indicate a no-op write.func. With a no-op write.func,
the surface may be queried or used as a source without
generating any temporary files.closurewrite.funcwidth.in.pointsheight.in.pointsCairoSurface] a pointer to the newly created surface. The caller
owns the surface and should call cairoSurfaceDestroy when done
with it.
This function always returns a valid pointer, but it will return a
pointer to a "nil" surface if an error such as out of memory
occurs. You can use cairoSurfaceStatus to check for this.