Alternative Nodes

This is just an idea for a feature – not sure if it’s already been proposed before.

Could it be possible to have alternative “special nodes” that would affect only one master in a multiple master setup? Imagine having six masters and only in one of them, in one glyph, there’s a curve that would benefit from an additional node. Then you add a special node there, that does not disturb the master compatibility. I’m not sure how it would technically work, but I would really find it useful. :grin:

This is kindof what bracket layer are there for.

Well, not really. Bracket layers still have to have compatible outlines. What I am proposing is a way to add a different number of nodes to the outlines but still keep compatibility in general.

Brace layers need to be compatible. Bracket layers can be different.

Only if you add two additional masters for the glyph you want to change, right? And bracket tricks only work in single-axis set-ups.

What I’m proposing would be a far more elegant solution. Something similar to adding a delta hint in TT hinting. But I presume it would be really hard technically to implement the feature.

Sort of like a “custom parameter node” :blush:

Yes, simply duplicate the outline to the other layers. If you only use it in one weight, you only need to draw that weight and duplicate the outline to the other master.

Yeah… I get what you’re saying and I’ve been using the Bracket trick before, you’re right. And that does the trick for certain situations.

I guess what bothers me is keeping the outlines compatible with the same number of nodes when the masters have extremely different shapes. Solving the Extra Wide Italic master and the Compressed Italic master with the same number of nodes is somewhat ugly. So I just made a “shot in the dark” idea, for a more elegant solution, but I admit I did not think it through. I imagined something like first making all the masters compatible and then adding special nodes that would just correct the curve tension in the Compressed instances, but would not affect the Normal width or Wide instances. But I guess that could never work in Variable fonts.