Cairo backend prospects

I propose this new version of buffer_bgra32 (and

    > buffer_argb32). I tested it with cairo and it seems to work
    > OK.

This looks good -- please test it with one of the memleak scripts, eg
a variant of units/memleak_hawaii.py to make sure everything is being
cleaned up properly. If you feel motivated, please port these over to
the other buffer methods. One way to do this cleanly would be to set
up an enum of the agg pixel formats supported by agg::color_conv and
then simply allow the user to pass in the pixel format desired. Ie,
support

    color_conv_rgba32_to_abgr32
    color_conv_rgba32_to_argb32
    color_conv_rgba32_to_bgra32

in a single function with a single arg.

JDH

I've replaced buffer_argb32() and buffer_bgra32() with
Image::color_conv(format) and tested it for memory leaks and it seems
OK. I think this only affects the cairo backend, since the other
backends seem to use rgba and don't need to use a color conversion
method.

Steve

Send instant messages to your online friends http://au.messenger.yahoo.com

···

On Fri, 2007-01-12 at 08:44 -0600, John Hunter wrote:

    > I propose this new version of buffer_bgra32 (and
    > buffer_argb32). I tested it with cairo and it seems to work
    > OK.

This looks good -- please test it with one of the memleak scripts, eg
a variant of units/memleak_hawaii.py to make sure everything is being
cleaned up properly. If you feel motivated, please port these over to
the other buffer methods. One way to do this cleanly would be to set
up an enum of the agg pixel formats supported by agg::color_conv and
then simply allow the user to pass in the pixel format desired. Ie,
support

    color_conv_rgba32_to_abgr32
    color_conv_rgba32_to_argb32
    color_conv_rgba32_to_bgra32

in a single function with a single arg.