[cairo] Making Cairo friendlier for embedded use

Carl Worth cworth at cworth.org
Thu Mar 23 15:55:39 PST 2006


On Thu, 23 Mar 2006 16:25:07 -0500, "Sean Kelley" wrote:
> I was wondering if anyone has been considering the long-term impact of
> the floating point intensive Cairo on embedded products wishing to
> make use of Gtk+?  In general, resource limited processors like ARM
> lack an fpu.  Recent improvements such as softfloat in gcc have
> helped.  But just curious if there are other developers on this list
> who have a long term interest in staying in step with Gtk+
> improvements beyond 2.6.  Currently I am doing an embedded design
> based on Gtk+ 2.6.10.  I just was curious if there are other embedded
> developers on this list.

Hi Sean,

I've had a lot of fun doing embedded stuff with X in the past,
including very early versions of cairo.

I haven't touched that stuff recently, but I don't think the
floating-point requirements should have gotten much worse.

Are you finding cairo to be particularly unfriendly due to
floating-point arithmetic it does? Or was it more just the large
percentage of floating-point arguments in the API that made you
nervous?

Cairo does accept all coordinates in floating-point and does run them
through a floating-point transformation matrix. But very soon after
that, the path coordinates are stored in fixed point, and most of the
things like path stroking, path filling, trapezoid tessellation,
trapezoid rasterization, and compositing all happen in fixed-point.

So hopefully the bulk of the important work is happening in
fixed-point already, (perhaps with the notable exception of gradient
computations).

But do let me know if you see specific problems in this area as it
would certainly be possible for some effort to be put into moving some
remaining floating-point pieces to fixed-point.

And to answer part of your more general question. Yes, I for one am
interested in seeing cairo continue to be an interesting thing to use
for cool, embedded applications.

-Carl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20060323/9b21d2fc/attachment.pgp


More information about the cairo mailing list