[cairo] Create a new backend

Helge Bahmann hcb at chaoticmind.net
Sun Jan 28 04:50:48 PST 2007


Am Freitag, 26. Januar 2007 20:57 schrieb Carl Worth:
> On Fri, 26 Jan 2007 16:41:04 -0300, "german rodriguez" wrote:
> > I want to know how could I create a new backend for cairo.
>
> To start with, I'm quite curious: What's the motivation for your new
> backend? What are you wanting to do that you can't do with any
> existing backend?
>
> > backend for drawing things. I didn't find any documentation which
> > allow me to understand it, could you instruct me in how to do it??
> >
> > For example, if had a set of interfaces to implement and what that
> > interface had to do?
>
> We've not ever documented the "create a new backend" process fully,
> (which frankly still leaves me somewhat dumbfounded that people have
> successfully contributed original backends).

one question that should be answered soon IMHO is whether cairo 
could "officially" support external backends (with "external" I mean: a) not 
built inside the cairo source tree and b) implemented as a separate shared 
library); I found that the interface is easy enough to understand to create 
new backends without any difficulty, but

- it is not currently possible to do so without access to the internal cairo 
headers files

- some internal cairo functionality has to be duplicated to make up for some 
lacking exports 

are there any thoughts if good support for external backends is a worthwhile 
thing to have, or is it considered too restraining on the internal 
architecture?

Best regards
Helge


More information about the cairo mailing list