[cairo] Cairo Win32 draws only some simple lines.
roman at mikronika.com.pl
Wed Feb 13 23:49:34 PST 2013
On Tue, 12 Feb 2013, Theo Veenker wrote:
> On 02/12/2013 10:03 AM, Roman Bednarek wrote:
>> After some more tries I found out that both functions work ok on
>> surfaces created with cairo_win32_surface_create_with_dib and
>> cairo_win32_surface_create_with_ddb, they do not work only on surfaces
>> created with cairo_win32_surface_create. Therefore I think that cairo is
>> compiled anf build correctly, just some function (requiring fallbacks?)
>> do not work on surfaces drawing directly on a window.
>> I am using buffer anyway, so it is not a problem for me anymore, but it
>> may be some bug in newer cairo versions.
> I also recall a problem with using a win32 surface. Could be the same
> thing I suppose. Haven't had the time to work out a test case. I used
> a win32 similar buffer for a backbuffer and in an application showing
> some gradient filled rectangles some of the rectangles didn't get
> filled. I worked around it by switching to a dib surface (image surface
> of course worked too). I do see cairo_surface_mark_dirty() and
> cairo_surface_flush() being used in the code.
> I don't regularly use a Windows system but once I get to it I'll try
> to make test thingy that demonstrates the problem. Or maybe you can
Creating a new simpel test case was a good idea, writing it I noticed
that somehow I used cairo_surface_mark_dirty and cairo_surface_flush in
the wrong way. After applying it in the correctly it works fine :)
Thanks for help.
> Is there a performance penalty using a dib surface instead of a regular
> win32 surface?
More information about the cairo