PostScriptSurface.createForStream

Creates a PostScript surface of the specified size in points to be written incrementally to the stream represented by write_func and closure. See cairo_ps_surface_create() for a more convenient way to simply direct the PostScript output to a named file. Note that the size of individual pages of the PostScript output can vary. See cairo_ps_surface_set_size(). Since 1.2

class PostScriptSurface
static
createForStream
(
cairo_write_func_t writeFunc
,
void* closure
,,)

Parameters

writeFunc cairo_write_func_t

a cairo_write_func_t 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.

closure void*

the closure argument for write_func

widthInPoints double

width of the surface, in points (1 point == 1/72.0 inch)

heightInPoints double

height of the surface, in points (1 point == 1/72.0 inch)

Return Value

a pointer to the newly created surface. The caller owns the surface and should call Surface.destroy 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 Surface.status to check for this.