Constructor

GdkPixbufPixbufnew_from_data

Declaration [src]

GdkPixbuf*
gdk_pixbuf_new_from_data (
  const guchar* data,
  GdkColorspace colorspace,
  gboolean has_alpha,
  int bits_per_sample,
  int width,
  int height,
  int rowstride,
  GdkPixbufDestroyNotify destroy_fn,
  gpointer destroy_fn_data
)

Description [src]

Creates a new GdkPixbuf out of in-memory image data.

Currently only RGB images with 8 bits per sample are supported.

Since you are providing a pre-allocated pixel buffer, you must also specify a way to free that data. This is done with a function of type GdkPixbufDestroyNotify. When a pixbuf created with is finalized, your destroy notification function will be called, and it is its responsibility to free the pixel array.

See also: gdk_pixbuf_new_from_bytes()

Parameters

data An array of guchar
 

Image data in 8-bit/sample packed format.

 The data is owned by the caller of the function.
colorspace GdkColorspace
 

Colorspace for the image data.

has_alpha gboolean
 

Whether the data has an opacity channel.

bits_per_sample int
 

Number of bits per sample.

width int
 

Width of the image in pixels, must be > 0

height int
 

Height of the image in pixels, must be > 0

rowstride int
 

Distance in bytes between row starts.

destroy_fn GdkPixbufDestroyNotify
 

Function used to free the data when the pixbuf’s reference count drops to zero, or NULL if the data should not be freed.

 The argument can be NULL.
destroy_fn_data gpointer
 

Closure data to pass to the destroy notification function.

 The argument can be NULL.
 The data is owned by the caller of the function.

Return value

Returns: GdkPixbuf
 

A newly-created pixbuf.

 The caller of the function takes ownership of the data, and is responsible for freeing it.