[cairo] Flipped GL surfaces

Heiko Lewin hlewin at gmx.de
Thu Sep 12 00:05:16 UTC 2019

cairo flips gl-surfaces vertically, except if they are textures.
I think this makes interop with OpenGL unnecessarily difficult.
E.g. if using glReadPixels() to read from a framebuffer the spec says
0,0 is the lower left corner ALWAYS, it does not matter if the FB is
attached to a texture, a window or whatever.  This is messed up if cairo
flips things around conditionally.
Are there any specific reasons this is so?
I managed to make cairo flip ALL gl stuff quickly - there were only few
references, and it seems to work so far.
But I have no idea if this could have any impact on features I did not
take a look at or on performance.
Any thoughts on this?

- Heiko

More information about the cairo mailing list