Draft (hidden)

Implementation of quadratic beziers in RoboFont

RoboFont offers a simplified implementation of quadratic contours, with 2 off-curve points for all quadratic segments. This implementation is very similar to the one in FogQA customized version of RoboFog with support for quadratic curves. – not a coincidence, since both FontQ and the initial version of RoboFont were commissioned by David Berlow.

This approach to quadratic curves makes it possible to maintain some structural compatibility between the two curve types. When converting from cubic to quadratic, RoboFont adds an (implied) on-curve point and splits each curve in two parts.

Other cubic-to-quadratic conversion algorithms are possible using code libraries or extensions.

Cubic or quadratic, not both

While it’s possible to have mixed cubic and quadratic contours in the same UFO, this is strongly discouraged in RoboFont.

If mixed contour types are found in a font, a dialog to Resolve curve conflicts will appear: you can use it to convert all glyphs to cubic or quadratic.

Default curve type

The default Bézier curve type can be set in the Glyph View Preferences.

Use the pop-up button at the top-right of the Display section to choose between:

  • Cubic (PostScript)
  • Quadratic (TrueType)

This setting applies to all new and open fonts.

Display colors for quadratic points

The color of quadratic points in the Glyph Editor can also be configured in the Glyph View Preferences. Look for the following settings in the section Appearance:

  • Off-curve Stroke Color (Quadratic Beziers, TrueType)
  • Handle Stroke Color (Quadratic Beziers, TrueType)

The same two settings are also available in the Preferences Editor:

  • glyphViewHandlesQuadStrokeColor
  • glyphViewOffCurveQuadPointsStroke
cubic curves (PostScript)
quadratic curves (TrueType)

Choose distinctive colors for PostScript and TrueType points, to avoid confusion between the two.

Last edited on 02/06/2020