[cairo] X11 image data rendering problems (Xrender ?)

Julien Danjou julien at danjou.info
Sun Mar 23 08:23:30 PDT 2008


Hi people,

Well, I've been using cairo for some time and had no problem. Until now.

I used to render PNG data onto Xlib Drawable using the
cairo_image_surface_create_from_png().
Some others pictures were rendered using
cairo_image_surface_create_for_data().

Everything was fine.

Now, I dropped the usage of cairo_image_surface_create_from_png() since
I heard that is was not the Good Way To Go anyway, and use only
cairo_image_surface_create_for_data() for all types of data file I
get. FWIW, I use Imlib2 to get image data in ARGB32 format.

Everything seems to be ok, except that rendering is bugged. My small
finger tell me it might be Xrender connected but I've no idea.

I first though that data I passed to cairo were wrong, but well, after
all they seems to be good, see below.

Here's a screenshot:
http://naquadah.org/~jd/screenshots/cairo-xlib-problem.png

In top of this screenshot, you can see that the GNUstep terminal icon
(get from an XPM format, FWIW) has pink[1] background.
Under, there's the same application running inside Xephyr, and here the
alpha channel is well used.

On the last image with the squares, it's even more weird as you can see,
some squares are drawn filled but inside Xephyr it's correcly drawn.
(this is a picture, not something draw via cairo primitives).

I tried cairo 1.5.14 and 1.4.14 without any difference.
Any pointer, advice, thing to try to debug this would be welcome.

[1] here it's pink but it changes randomly on every application start:
yellow, pink, orange...

Cheers,
-- 
Julien Danjou
// ᐰ <julien at danjou.info>   http://julien.danjou.info
// 9A0D 5FD9 EB42 22F6 8974  C95C A462 B51E C2FE E5CD
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.cairographics.org/archives/cairo/attachments/20080323/df6bfeb9/attachment.pgp 


More information about the cairo mailing list