Creates a PostScript surface of the specified size in points to be written to filename. See cairo_ps_surface_create_for_stream() for a more flexible mechanism for handling the PostScript output than simply writing it to a named file.

cairo_ps_surface_create(filename, width_in_points, height_in_points)

Arguments

filename

[char *] a filename for the PS output (must be writable), %NULL may be used to specify no output. This will generate a PS surface that may be queried and used as a source, without generating a temporary file.

width_in_points

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

height_in_points

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

Value

[cairo_surface_t *]

Details

Note that the size of individual pages of the PostScript output can vary. See cairo_ps_surface_set_size().

Return value: a pointer to the newly created surface. The caller owns the surface and should call cairo_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 cairo_surface_status() to check for this.

Since: 1.2

C function prototype: cairo_surface_t * cairo_ps_surface_create (const char *filename, double width_in_points, double height_in_points)

See also