imageSurfaceCreateFromPngStream

fncairo.surface.Surface imageSurfaceCreateFromPngStream(cairo.types.ReadFunc readFunc)

Creates a new image surface from PNG data read incrementally via the read_func function.

Parameters

readFuncfunction called to read the data of the file

Returns

a new #cairo_surface_t initialized with the contents

of the PNG file or a "nil" surface if the data read is not a valid PNG image or memory could not be allocated for the operation. A nil surface can be checked for with cairo_surface_status(surface) which may return one of the following values:

[cairo.types.Status.NoMemory] [cairo.types.Status.ReadError] [cairo.types.Status.PngError]

Alternatively, you can allow errors to propagate through the drawing operations and check the status on the context upon completion using [cairo.context.Context.status].