typemytype / booleanOperations

Boolean operations on paths
MIT License
39 stars 18 forks source link

Exterior node lost unexpectedly in RoboFont, AFDKO, and FontMake overlap removal #59

Open arrowtype opened 4 years ago

arrowtype commented 4 years ago

Crosspost from https://github.com/arrowtype/recursive/issues/319

I think this may be a booleanOps issue, but I'm not quite sure. If it's not, can you please close this? (Also, if you have an idea of what the source of the issue might be and/or how I might get past it, please let me know!)

Problem description

When I attempt to build static fonts, the arrowNW glyph loses one of its tips:

image

This was probably an issue in overlap removal. It occurs in the main (AFDKO) static build, but also occurs when I try to build static OTFs with FontMake.

I thought it might be possible to work around this by removing overlaps in the sources, before building. However, the result is exactly the same:

Kapture 2020-02-27 at 15 57 20

Expected behavior

I expect the arrow to keep its same outer shape when overlaps are removed.

To Reproduce

Try to "Remove Overlap" in the following UFO, in RoboFont:

Overlap Removal Test.ufo.zip

...or try to build this into a static font (be sure to "Remove Overlaps" when you generate).

Environment (please complete the following information):

arrowtype commented 4 years ago

Huh. The solution was moving that node 1 unit to the left. It now works as expected.