Issue with Corner Components on Angled Contours

I’m using corner components for serifs on a font with an extreme slant. I’ve noticed a bug where some points will move to the side when I attach a corner component to them. Sometimes they move by several units. The more slanted the vertical segment is, the more the corner moves from its original position. I can confirm that the alignment of the corner component does not fix this; it definitely appears to be a bug.

I’ve included a screenshot with the background layer visible to show where the original stem had been drawn, as well as a Glyphs file with the problem isolated. I’m using Glyphs 2 here.

cornercomponent_bug.glyphs (9.3 KB)

1 Like

Using your Glyphs file, I found 2 potential workarounds (I prefer Solution 2). I can’t however explain why your corner component wasn’t working properly—perhaps @GeorgSeifert or @mekkablue can explain if this is a bug or the expected behavior. To me it seems like a bug.

Solution 1: Make the corner component left-facing

The issue goes away if you flip the path in the corner component to look like a left-facing serif. You can still have different corner components for left and right serifs, but both would point toward the left. Of course, then you’ll need to flip the right-serif components wherever you use them (-100% horizontally or vertically). If that’s too inconvenient, try Solution 2.

Solution 2: Add a right anchor

The Glyphs tutorial on Corner Components talks about adding anchors named left or right. I hadn’t used these until now, but it appears that adding a right anchor directly over the final point (where it intersects with the side of the stem) fixes the issue entirely. Again, I’m confused by why this is necessary, and hope that @GeorgSeifert or @mekkablue can explain why.

I’ll have a look why the right facing corner is behaving like this.

But It is a good idea to add the right anchor, anyway, so the visual length of the serif will be more consistent when the slant of the stem changes.

1 Like

awesome, thank you both!