[cairo] CAIRO_FORMAT_ARGB32 Usage Problem

Antonio Scuri scuri at tecgraf.puc-rio.br
Fri Sep 30 10:31:34 PDT 2011


  Hi,

  I'm successfully using Cairo in X-Windows, GDK and Win32 with the
functions:

cairo_xlib_surface_create
gdk_cairo_create
cairo_win32_surface_create

  To draw an image I use:

cairo_image_surface_create
cairo_image_surface_get_data
cairo_set_source_surface
cairo_paint

  Everything works fine. But I have 24bpp and 32bpp images, so I use
CAIRO_FORMAT_RGB24 and CAIRO_FORMAT_ARGB32 accordingly. 

  In Cairo 1.8 both flags were working fine, but in Cairo 1.10 the flag
CAIRO_FORMAT_ARGB32 causes "cairo_paint" to draw nothing. This behavior
occurs is all the systems mentioned above. Other primitives work fine.

  Before calling "cairo_paint" I called cairo_surface_write_to_png as a test
and the surface has all the right pixels with their respective alpha. Even
setting alpha to 255 the problem remains.

  I tested all status codes and they are all CAIRO_STATUS_SUCCESS. So I'm a
bit lost. It seems that from 1.8 to 1.10 there is something I have to do for
this to work. Is it?

  Any clues?

Thanks in Advance,
Antonio Scuri




More information about the cairo mailing list