-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fontmake -i destroys geometry when off curve points coincide with on curve points #961
Comments
justvanrossum
added a commit
to justvanrossum/fontmake
that referenced
this issue
Dec 8, 2022
This fixes googlefonts#961, and makes instantiator.py as strict as varLib when interpolating. Depends on robotools/fontMath#305, though, as fontMath doesn't properly propagate its "strict" flag down to copies. So this PR should probably also update its fontMath version dependency, once a new fontMath is out.
bmwiedemann
pushed a commit
to bmwiedemann/openSUSE
that referenced
this issue
Dec 14, 2022
https://build.opensuse.org/request/show/1042823 by user dgarcia + dimstar_suse - Remove python_module macro definition - Update to version 0.9.3 * What's Changed Pass "strict" flag down to copies, so strict remains strict. By @justvanrossum in #305, as required to fix googlefonts/fontmake#961
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The enclosed archive contains a .designspace file using two ufos. Running the "generate_instances.py" script writes a third master, based on the instance defined in the .designspace file.
The single glyph shape in those ufos have a cluster of points at each corner: an on-curve point, two off-curve point, another on-curve point, all at the same (x, y) position. (These could then be used to interpolate to a sharp corner with rounded-corner sources.)
The output of the script has all off-curve point stripped, so is no longer compatible with the sources. (The purpose here is to insert the generated ufo as a new source in the designspace.)
The fontmake instantiator uses
fontMath.MathGlyph
to do the interpolation, which messes with the topology of the shapes. In this case it filters out off-curve points that coincide with neighboring on-curve points.MathGlyph
recently got a "strict" flag to disable this behavior, and I think fontmake should use it.That said, fontMath has a bug of its own here: robotools/fontMath#305
fontmake_test.zip
The text was updated successfully, but these errors were encountered: