[pygtk] Xcomposite pixmap, convert to pixbuf with alpha channel
gnomelists at sstuhr.dk
Mon Feb 16 00:55:56 WST 2009
I am making some code to take screenshots on X11. It works very well,
and now I want to take advantage of the Xcomposite extension, get the
offscreen pixmap of a window and convert it to a pixbuf, alpha channel
The example attached to this mail works, but I am using
pixbuf.get_from_drawable to convert the pixmap, and it doesn't include
the alpha channel in the pixbuf.
I am using the ctypes module to access the Xcomposite library.
This is the function I am using (from the Xcomposite man page):
Pixmap XCompositeNameWindowPixmap(Display *dpy, Window window);
XCompositeNameWindowPixmap creates and returns a pixmap id that
serves as a reference to the off-screen storage for window. This
pixmap will remain allocated until freed, even if the window is
unmapped, reconfigured or destroyed. However, the window will get
a new pixmap allocated each time it is mapped or resized, so this
function will need to be reinvoked for the client to continue to
refer to the storage holding the current window contents.
Generates a BadMatch error if window is not redirected or is not
The X server must support at least version 0.2 of the Composite
Extension for XCompositeNameWindowPixmap.
How do I get the contents of the pixmap into a pixbuf, preserving the alpha channel? Any ideas?
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2510 bytes
Url : http://www.daa.com.au/pipermail/pygtk/attachments/20090215/5edea4ac/attachment.py
More information about the pygtk