I am trying to port a Clean graphics library (specifically, ObjectIO) to Linux with GDK. The library consists of a non-OS-specific part, which I don't want to touch because of compatibility issues, and an OS-specific part which I can touch.
One of the functions I have to implement is one that takes raw data from a .bmp file and has to build a GdkPixbuf
from this. This function has to be written in C.
I am aware of the function gdk_pixbuf_new_from_file()
, but I do not get the file name (and can't change that, as it's in the non-OS-specific part of the library). I only get the raw data.
I saw this manual entry, and I guess I could use gdk_pixbuf_new_from_data()
, but this requires that you know the row stride of the image, of which I'm unsure how to get it.
Is there a way to get the row stride from the file? If not, the only possibility I see is to create a temporary file with the data and then call gdk_pixbuf_new_from_file()
- but that would be really ugly.
You want to use the function: