[cairo] Should Cairo support non-bitmap memory surfaces?

Emmanuel Pacaud emmanuel.pacaud at lapp.in2p3.fr
Sat May 22 02:40:14 PDT 2010


Hi,

Le samedi 22 mai 2010 à 07:54 +0200, Adrian Lopez a écrit :
> Drawing a filled shape with a solid border and transparency applied to
> the whole currently requires the creation of an intermediate surface
> (so the fill doesn't show through the border). Likewise, compositing a
> group of objects separately from other objects already on a surface
> requires the creation of an intermediate surface containing only the
> objects to be composited. Unless I'm mistaken about the way Cairo
> works, such intermediate surfaces assume the form of a bitmap with a
> given resolution, adding to the memory footprint during rendering and
> making it impossible to export these images as 100%
> resolution-independent SVGs.

When rendering to a vector surface, Cairo should only use a bitmap when
the desired feature is not available in the target surface. Drawing a
stroked and filled rectangle with transparency is supported by SVG,
which means the resulting file should only contain vector instructions.

If not, it's a bug.

Emmanuel.



More information about the cairo mailing list