Whole document tree
Image Data in MemorySynopsis
DescriptionThe most basic way to create a pixbuf is to wrap an existing pixel buffer with a GdkPixbuf structure. You can use the gdk_pixbuf_new_from_data() function to do this You need to specify the destroy notification function that will be called when the data buffer needs to be freed; this will happen when a GdkPixbuf is finalized by the reference counting functions If you have a chunk of static data compiled into your application, you can pass in NULL as the destroy notification function so that the data will not be freed. The gdk_pixbuf_new() function can be used as a convenience to create a pixbuf with an empty buffer. This is equivalent to allocating a data buffer using malloc() and then wrapping it with gdk_pixbuf_new_from_data(). The gdk_pixbuf_new() function will compute an optimal rowstride so that rendering can be performed with an efficient algorithm. As a special case, you can use the gdk_pixbuf_new_from_xpm_data() function to create a pixbuf from inline XPM image data. You can also copy an existing pixbuf with the gdk_pixbuf_copy() function. This is not the same as just doing a gdk_pixbuf_ref() on the old pixbuf; the copy function will actually duplicate the pixel data in memory and create a new GdkPixbuf structure for it. Detailsgdk_pixbuf_new ()
Creates a new GdkPixbuf structure and allocates a buffer for it. The buffer has an optimal rowstride. Note that the buffer is not cleared; you will have to fill it completely yourself.
gdk_pixbuf_new_from_data ()
Creates a new GdkPixbuf out of in-memory image data. Currently only RGB images with 8 bits per sample are supported.
gdk_pixbuf_new_from_xpm_data ()
Creates a new pixbuf by parsing XPM data in memory. This data is commonly the result of including an XPM file into a program's C source. |