[cairo] cairo_gstate_t?

Fred Kiefer fredkiefer at gmx.de
Mon Oct 10 04:38:22 PDT 2011


On 10.10.2011 12:31, Chris Wilson wrote:
> On Sat, 8 Oct 2011 21:40:33 +0200, Fred Kiefer<fredkiefer at gmx.de>
> wrote:
>> I would highly welcome that addition to cairo. This is the
>> interface we need for GNUstep to easily implement the display
>> Postscript interface we need to provide. Up to now we needed to
>> work around this restrictin by adding a rather ugly and inefficent
>> layer ourselves.
>
> I am a little wary of exposing what I consider an internal
> implementation detail of Cairo. More so now that we have
> opportunities for semi-native backends that may not be using
> cairo_gstate_t in their fast paths.
>
> Can we have a bit of discussion on the concrete use-cases people
> have for a named gstate?

In GNUstep we use cairo in one of our different drawing backends to
implement a drawing concept similar to display Postscript. One
requirement there is to be able to store a gstate (for example in 
NSWindow) to use it later on. That is not just to push and pop gstates, 
which is available in cairo easily, but to capture a gstate and reuse it 
later on. As far as I know this isn't currently possible that easy with 
cairo and we have some horrible code to extract all internal state from 
a gstate and apply it later on.

Fred


More information about the cairo mailing list