Is it possible to use both cubic (OTF) and quadratic (TTF) curves in a Glyphs file and within a single master?
I have a Glyphs file with cubic OTF curves and would like to copy Asian glyphs from an existing TTF font into the master. Is it possible for a master to contain glyphs with different curve types? Also, when opening the TTF font, does the hinting (if present) remain intact? Is there anything else to consider when combining OTF and TTF?
I would like to have both OTF and TTF glyphs in a single file so that there is one working file. This way, if there are any future modifications or adjustments, a new font can simply be exported.
However, the final exported font should only contain one curve type (either OTF or TTF).
Mixing curve types in a font should be fine. (In some instances it might even be possible to mix in a glyph).
When you open a .ttf, the low level instructions are preserved there should be some custom parameters in the master settings. And each layer stores its instructions.
It becomes tricky when you move all this into another file (you need to manually copy the custom parameters). But then the problems start. You should be able to export the .ttf with hinting in the glyphs that already had hinting. But adding hinting for the latin glyphs is not easily possible. The problem is that the existing hinting (in the CJK glyphs) and the new hinting in the latin each rely on a specific prep and function table. And I don’t know how it would be possible to merge them.
I have been working a lot with a combination of TT and PS curves (in one glyph) recently.
Maybe not what you need at the moment but here is what I experienced anyway. You may want to have a look at the scripts Delete BCP, Make Cubic Curve, and Make Quadratic Curve in my Freemix package that help when working with TT and PS curves:
Some notes:
On TTF or OTF export, the curve types are converted automatically. So, generally working with both type of curves is feasible (and I have come to appreciate it a lot).
Overlap removal (or open corners, i.e. anything that involves determining intersections between curves, and cutting them off) is not natively supported for TT curves yet (although I heard this is in the works). If you have intersections that involve TT curves, and want to export as TTF, you can use a custom export filter that first converts everything to PS curves, then removes the overlaps, then converts everything to TT again. It may seem a bit unelegant to do this even for glyphs that do don’t have any intersections but it works reliably, and the TT curves are precisely retained during the back-and-forth conversion, even multi-BCP curves.
Manual TT hinting works with mixed paths unless intersections with TT curves are involved. Another note: In case the first curve in the path is TT, the preview of the shape in Glyphs is wrong but the export is correct. Changing the starting node is usually a feasible solution.
RMX now (almost) fully supports TT curves. I will issue an update later today. This means that nodes which connect curves, and tangent points, are correctly dekinked, whether TT or PS curves are involved, or both. Nodes next to single-BCP curves are also harmonized (no supersmooth and no multi-BCP TT curve harmonization yet, though).