#!/usr/bin/env python3 from utils import mathfont import fontforge breveCodePoint = 0x2D8 # accent operator degreeCodePoint = 0xB0 # nonaccent operator accentBaseHeight = 4 * mathfont.em v = 3 * mathfont.em f = mathfont.create("underover-accentbaseheight%d-overbarextraascender%d" % (accentBaseHeight, v), "Copyright (c) 2016 MathML Association") mathfont.createSquareGlyph(f, breveCodePoint) mathfont.createSquareGlyph(f, degreeCodePoint) f.math.AccentBaseHeight = accentBaseHeight f.math.LowerLimitBaselineDropMin = 0 f.math.LowerLimitGapMin = 0 f.math.OverbarExtraAscender = v f.math.OverbarVerticalGap = 0 f.math.StretchStackBottomShiftDown = 0 f.math.StretchStackGapAboveMin = 0 f.math.StretchStackGapBelowMin = 0 f.math.StretchStackTopShiftUp = 0 f.math.UnderbarExtraDescender = 0 f.math.UnderbarVerticalGap = 0 f.math.UpperLimitBaselineRiseMin = 0 f.math.UpperLimitGapMin = 0 mathfont.save(f) v = 11 * mathfont.em f = mathfont.create("underover-accentbaseheight%d-overbarverticalgap%d" % (accentBaseHeight, v), "Copyright (c) 2016 MathML Association") mathfont.createSquareGlyph(f, breveCodePoint) mathfont.createSquareGlyph(f, degreeCodePoint) f.math.AccentBaseHeight = accentBaseHeight f.math.LowerLimitBaselineDropMin = 0 f.math.LowerLimitGapMin = 0 f.math.OverbarExtraAscender = 0 f.math.OverbarVerticalGap = v f.math.StretchStackBottomShiftDown = 0 f.math.StretchStackGapAboveMin = 0 f.math.StretchStackGapBelowMin = 0 f.math.StretchStackTopShiftUp = 0 f.math.UnderbarExtraDescender = 0 f.math.UnderbarVerticalGap = 0 f.math.UpperLimitBaselineRiseMin = 0 f.math.UpperLimitGapMin = 0 mathfont.save(f) v = 5 * mathfont.em f = mathfont.create("underover-accentbaseheight%d-underbarextradescender%d" % (accentBaseHeight, v), "Copyright (c) 2016 MathML Association") mathfont.createSquareGlyph(f, breveCodePoint) mathfont.createSquareGlyph(f, degreeCodePoint) f.math.AccentBaseHeight = accentBaseHeight f.math.LowerLimitBaselineDropMin = 0 f.math.LowerLimitGapMin = 0 f.math.OverbarExtraAscender = 0 f.math.OverbarVerticalGap = 0 f.math.StretchStackBottomShiftDown = 0 f.math.StretchStackGapAboveMin = 0 f.math.StretchStackGapBelowMin = 0 f.math.StretchStackTopShiftUp = 0 f.math.UnderbarExtraDescender = v f.math.UnderbarVerticalGap = 0 f.math.UpperLimitBaselineRiseMin = 0 f.math.UpperLimitGapMin = 0 mathfont.save(f) v = 7 * mathfont.em f = mathfont.create("underover-accentbaseheight%d-underbarverticalgap%d" % (accentBaseHeight, v), "Copyright (c) 2016 MathML Association") mathfont.createSquareGlyph(f, breveCodePoint) mathfont.createSquareGlyph(f, degreeCodePoint) f.math.AccentBaseHeight = accentBaseHeight f.math.LowerLimitBaselineDropMin = 0 f.math.LowerLimitGapMin = 0 f.math.OverbarExtraAscender = 0 f.math.OverbarVerticalGap = 0 f.math.StretchStackBottomShiftDown = 0 f.math.StretchStackGapAboveMin = 0 f.math.StretchStackGapBelowMin = 0 f.math.StretchStackTopShiftUp = 0 f.math.UnderbarExtraDescender = 0 f.math.UnderbarVerticalGap = v f.math.UpperLimitBaselineRiseMin = 0 f.math.UpperLimitGapMin = 0 mathfont.save(f)