Tag Archives: libspiro

Don’t underestimate the importance of good curves. I stumbled across this Buddhist “Dream Flag” a while back, and while it’s a great design, the final execution of the curves immediately stood out as needing improvement. And it was the perfect excuse to use Raph Levien’s Spiro curves in Inkscape to try to get a better-than-Bézier curve. Here’s my revised version:

dream flag

Here’s a comparison (using ImageMagick’s compare tool) between my version and the original:


And just for reference, here’s the original:

Good curves are important, and it’s much easier to get controlled, smooth, symmetric curves with spiros than with Béziers. With a spiro, you only really need a new control point at every point where the curvature changes, and you’ll get pretty close. And you can use a control point to force a curve through a certain position without having to adjust the curvature of adjacent points by fiddling with Bézier control points.

Spiros in Inkscape

Inkscape 0.47 and later will support curve editing via Raph Levien’s vastly superior Spiro curves:

I round-tripped through FontForge when I drew the Seal of Rassilon for a recent t-shirt design, just so I could use spiros to do it:

Achieving nearly perfectly tangent and parallel curves using spiros is trivial, compared the the fragile finickiness of Béziers.