Re: Very confused with pixbufs, pixmaps, images, rgbs and drawables



Great. Thanks for the clarification.

If these names (any many of the classes themselves) are only around because of the history of X, when are we planning to update them? At the moment the entire architecture of the image system in Gdk reflects the history of one supported platform. That can't be good.

Chris

John Cupitt wrote:
A lot of the names come from Xlib and ancient history.

On 8/8/05, Chris Seaton <chris chrisseaton com> wrote:

GdkPixmap - server side pixel map
GdkBitmap - server side pixel map, 1bpp


Bingo! Exactly right. Names from X history. Bitmap was the original,
pixmap was added later when the first colour displays appeared. They
are close to the hardware, so they have a bunch of extra stuff like
visuals and colormaps associated with them.


GdkPixbuf - client side pixel map


The big thing here is that pixbuf is not so close to the hardware.
It's just a 24 bit RGB buffer (they have some hooks for other colour
spaces, but I don't know if there are plans to add them).

Pixbuf is a nice clean (fairly) high level API added by the gtk team
that hides client-side complexity from you.


GdkImage - not really sure, but it says it's redundant to GdkRGB


XImage is what used to be used for client-side images. It is close to
the hardware and changes annoying between different displays. Just
awful to work with, avoid it if you possibly can.


GdkRGB - seems to render raw pixel data from a simple pointer


This is (sort of) the thing GdkPixbuf uses to hide the insides of
GdkImage from you. You can (sometimes) get a little speed by using it
directly, but usually you should go through GdkPixbuf.


Is that right? Please set me straight. What are they all for? And which
do I want to solve my problem in the first paragraph?


Summary: use GdkPixbuf client-side and GdkPixmap server-side.





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