Just noticed that in Glyphs, it’s possible to use cubic and quadratic Bézier curves in one path. Nice! Feels like FontLab in the late 90s. It takes a bit of trickery like cutting and re-joining paths but it seems to work.
Is it okay to do so? Or are there any risks? Is it too hacky?
I feel that for simple, shallow curves, this is the perfect solution, as two cubic handles give unnecessary (and unwanted) control. Retracted cubic BCPs – another long-time favourite of mine even though advised against by some – generally give shallower and more asymmetrical curves than a single-BCP quadratic curve.
Just wrote a small script that helps play around with quadratic curves:
Two things I noticed:
On export, Glyphs’ overlap removal fails if cubic and quadratic curves are mixed. I tried all possible combinations for the path directions; none of them worked. Maybe this could be fixed by changing the order in which the paths are processed (curve conversion vs overlap removal), or skipping an incorrect change of path direction?
When using “Convert to Cubic” from the menu, Glyphs likes to duplicate the starting node. Seems to be a little bug.
The overlap removal code doesn’t handle quadratic curves at all. because intersecting quadratic curves is quite tricky. In the last few month I wrote some code that might help with this, but I didn’t integrate it with the remove overlap code, yet.
If the font is exported as OTF then all curves are converted to cubic in any case. If you do this before you apply the overlap removal this should fix the problem. No need to support overlap removal with quadratic curves.