googlefonts / googlefonts/fontmake
Add user-friendly error message when removing overlaps from quadratic UFO (unsupported)
- Dominant language
- Python
- Stars
- 888
- Forks
- 97
- Avg merge
- 4d 52m
- Merged PRs (30d)
- 1
Description
I tried inputting a .glyphs file I'm working on and got this error:
```
INFO:fontmake.font_project:Building master UFOs and designspace from Glyphs source
INFO:glyphsLib:Parsing .glyphs file
INFO:glyphsLib:Casting parsed values
INFO:glyphsLib:Loading to UFOs
INFO:glyphsLib.util:Writing master_ufo/Cantarell-Light.ufo
INFO:glyphsLib.util:Writing master_ufo/Cantarell-Regular.ufo
INFO:glyphsLib.util:Writing master_ufo/Cantarell-SemiBold.ufo
Traceback (most recent call last):
File "/home/nikolaus/.local/bin/fontmake", line 11, in
sys.exit(main())
File "/home/nikolaus/.local/lib/python3.5/site-packages/fontmake/__main__.py", line 183, in main
project.run_from_glyphs(glyphs_path, **args)
File "/home/nikolaus/.local/lib/python3.5/site-packages/fontmake/font_project.py", line 376, in run_from_glyphs
glyphs_path, family_name, mti_source=mti_source)
File "/home/nikolaus/.local/lib/python3.5/site-packages/fontTools/misc/loggingTools.py", line 372, in wrapper
return func(*args, **kwds)
File "/home/nikolaus/.local/lib/python3.5/site-packages/fontmake/font_project.py", line 77, in build_master_ufos
family_name=family_name)
File "/home/nikolaus/.local/lib/python3.5/site-packages/glyphsLib/__init__.py", line 94, in build_masters
ufos, master_dir, designspace_instance_dir, instance_data)
File "/home/nikolaus/.local/lib/python3.5/site-packages/glyphsLib/interpolation.py", line 74, in build_designspace
write_ufo(font, master_dir)
File "/home/nikolaus/.local/lib/python3.5/site-packages/glyphsLib/util.py", line 41, in write_ufo
ufo.save(out_path)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/font.py", line 749, in save
self.layers.save(writer, saveAs=saveAs, progressBar=progressBar)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/layerSet.py", line 317, in save
layer.save(glyphSet, saveAs=saveAs, progressBar=progressBar)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/layer.py", line 561, in save
self.saveGlyph(glyph, glyphSet, saveAs=saveAs)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/layer.py", line 577, in saveGlyph
glyphSet.writeGlyph(glyph.name, glyph, glyph.drawPoints)
File "/home/nikolaus/.local/lib/python3.5/site-packages/ufoLib/glifLib.py", line 345, in writeGlyph
data = writeGlyphToString(glyphName, glyphObject, drawPointsFunc, formatVersion=formatVersion)
File "/home/nikolaus/.local/lib/python3.5/site-packages/ufoLib/glifLib.py", line 575, in writeGlyphToString
drawPointsFunc(pen)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/glyph.py", line 464, in drawPoints
contour.drawPoints(pointPen)
File "/home/nikolaus/.local/lib/python3.5/site-packages/defcon/objects/contour.py", line 603, in drawPoints
pointPen.addPoint((point.x, point.y), segmentType=point.segmentType, smooth=point.smooth, name=point.name, identifier=point.identifier)
File "/home/nikolaus/.local/lib/python3.5/site-packages/ufoLib/glifLib.py", line 1485, in addPoint
raise GlifLibError("offcurve occurs before %s point." % segmentType)
ufoLib.glifLib.GlifLibError: offcurve occurs before line point.
```
I now know that I have to look into my semibold, but have no idea which glyph is the culprit. It would be great if fontmake would report this.
Contributor guide
Assessment
This issue has not been assessed yet.