support for external surface backends
Sebastian Reichel <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
Hi, We have a Chinese lasercutter at our hackspace, which uses some obscure proprietary format. We are currently reverse engineering the protocol and have written a simple tool, which translates the format into svg using cairo. So far so easy :) But we also want to support translating the other way around. For this we thought about hooking into cairo as surface backend like this: ----- cairo_surface_t *surface; cairo_t *cr; surface = laser_cutter_surface_not_part_of_cairo(some, params); cr = cairo_create(surface); do_some_cairo_stuff(); ----- The backend does not really fit into a default cairo installation and IMHO it does not fit into the cairo repository at all. Thus we would like to put it into an additional library, which implements the surface interface. The problem is, that the cairo API does not allow external surface backends if I'm not mistaken. I mainly see two reasons for this: 1. cairo_surface_type_t is a compile-time-generated enum in cairo's sourcecode 2. cairo_surface_t and cairo_backend_t are not exposed in the public API Are there any plans to make these kind of setups possible with cairo? -- Sebastian -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo
signature.asc
(application/pgp-signature, 836 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBCAAGBQJR20PyAAoJENju1/PIO/qaulQQAICUbuwEYlGQ6BsDXQIq4YTH DluO0jJKCbTRpKTn7/nA97mtqTkIxt0tkJbJRu9xZj+MtSEFQQyM/jl8fwCXfaBL xzWEVZzK4FrTech9Ii6991F4BFLdPcZWileEbFji85fSfb+A7Q/emdLcmyeAx1JG wF+zzO98tQJElcuv+ffqbhAl/62NzJ0nkOhcror5S4Wllz9xsXG/qNt0uvF6pck1 vb785reIDNruHq2zKDC3JnjV1OtpHHV+P/arLa/4FnK/gNnKZH4TvvGaVIAwZTUq u9TqRetgAjKyN1kapAuDOFAZY1GiW+AbaUV6pHgzuvCo1wP2MHwx1t3Feg+lQVg4 XY5URBwYYg2Ae4RXvWkw02TOGYZTtbqMO3en4577hxHDTqZ1q7jXedUo57zmdp0u arxlY5Ac6IEw9Fdeer9HY0gv9rmTR1EbQDe2AL8SPw/OfFfQyXWaqjNmHeGcsY/d /MPX3ykSz+Di9Nlwr3zmXWZolLeowfMWKESgWaW68oHpBd/HNVcHcge0HtcLHe2T mexBQGX7ZibiupYgyNOUoG1MSRU/PW3RPSAQWXCvIdkn5LoZtNpBBXIYZyeBWirN lNs+tXLFupwMu4DWa7ni1GCDWqoWYMpf8/3Q3di3dWB3m3srw9TJ4ZVLOCC8jp9b t9P2S/ef5/7Gw4XnxkzO =B8jL -----END PGP SIGNATURE-----