gdk_rgb_buf and image loading



Hello,

I have been using gdk_rgb_pixbuf v 0.8.0 for an image displaying
widget that I have been working on and I have a number of comments,
that are related to one of the potential uses of this widget
in a fax displaying program:

* Currently pixbufs are always stored as at least 24 bits per pixel
  internally. This is a waste of memory for grey level and bitmap
  images. It looks like the gdk pixbuf sources have been written in
  anticipation of support for other bit depths. Are there any plans of
  actually implementing this?

* Are there any plans of adding an additional depth parameter in
  addition to width and height to the pixbuf in order to support
  multiple pages? This would mean making gdk_pixbuf stateful in
  order to point to what page is currently displayed. This is needed
  in order to load multi-page tiff and MNG files.

I'm debating whether this functionality should be placed in gdk_pixbuf
or perhaps in another dedicated image loading library. I feel there is
a need for a general purpose image loading and writing library that
allows efficient storage of images in-memory. Such a library may
may then provide the following function:

     image_io_explode_region_to_rgb(
              image_io_buf *image,
              int page_idx, int x0, int y0, int x1, int y1, 
              /* output */
              guchar *rgb);
                              
which would neatly connect to:

     gdk_pixbuf_new_from_data ()
     
Aside from this, I found gdk_rgb_pixbuf a real pleasure to use. But
documentation would be handy. Especially an explanation of the meaning
of the different interpolation types. I figured out what BILINEAR and
NEAREST mean, but what are TILES and HYPER?

Regards,
Dov Grobgeld





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]