[Cairo] Color transforms

David Forster dforste at arbornet.org
Wed Jul 16 19:51:47 PDT 2003

On Wed, Jul 16, 2003 at 08:26:14PM -0400, Carl Worth wrote:
> On Jul 16, Bill Spitzak wrote:
> > Converting a path to a stroke outline is actually really complex and
> > maybe should be in the device-independent portion.
> Yes, it is complex. One nice thing about taking care of tasks like
> this in the device-independent piece is that we can have better
> guarantees of matching output on different devices, (especially when
> some backend devices have shortcomings in their own implementations
> of similar algorithms).

(I'm getting into an argument I don't want to be in..But since I've
opened my mouth on the subject... ;)

But what's the best way to fix PostScript?  Emit a stream of lineto's
or define a fixed `cairo_curveto' operator?  Defining the operator
would keep things compact.  The problem with implementing curves as
device-independent is the backend might have a better way of fixing
things (if they need to be fixed at all). 

Now, I'm taking ``in the device-independent piece'' to mean in the
pipeline and before the backend ever sees things.  Cairo could just
pass things along to the backend, and then provide a curves-on-lines
function for broken/incomplete renders.

Oh well...It's been sometime since I've looked at PostScript.  All I'm
saying though, is it'd be a shame to through a renderer's perfectly
good optimized curves implementation out because most renderers got it
wrong.  Cairo should leave it up to the backend to decide what's
broken, how to fix it, and what's the best way to provide `consistent
Cairo' output.


More information about the cairo mailing list