how to construct large math operators

user9812user9812 Posts: 7
edited April 2023 in Technique and Theory
Hi, I'm trying to create a math typesetting engine for a font I have and am after some advice regarding the theory of how large glyphs (i.e. glyphs well over 1 line) are constructed.

In the font file I have, looking at say a large parentheses, there are 3 glyphs to make up say the left parenthesis - there is the top curve section, the bottom curve section and then the center section which is just a straight, vertical line. I'm assuming that to create the left parenthesis I'm supposed to combine those 3 glyphs. But then, how do I ensure that it is exactly the right height? I'm assuming I'm supposed to lengthen the straight, vertical line section. But how is this typically done?

FYI I'm using fontforge.


  • This is handled by the MATH table in the font. The MathGlyphConstruction subtable tells the typesetting engine how to construct large or wide versions of a glyph, either directly through variant glyphs (the MathGlyphVariantRecord subtable) or by constructing it out of overlapping parts (the GlyphAssembly subtable). Before creating a math typesetting engine I would strongly advise spending a lot of quality time reading the standard for the MATH table.

    You might also want to read the code for SILE's math typesetter, particularly this file which deals with arranging the base elements using the font data. It's very long, but it's relatively straightforward and well commented.
  • John SavardJohn Savard Posts: 1,091
    Since SILE is in version zero point something, I shouldn't be too surprised that there isn't yet a working Windows installer (however, apparently that's only because it's not currently being actively maintained; they've already at least started one).
    I find this to be a very interesting project.
  • The reason it's zero point something is because I've got extremely optimistic views of what I want from a 1.0 release. (Typeset a USX Bible file without human intervention to the same standard that a human would.)

    The reason there isn't a working Windows installer is that there are very few people working on open source projects who run Windows...
  • ...

    The reason there isn't a working Windows installer is that there are very few people working on open source projects who run Windows...
    Curious, given this assessment:

    "Despite building its name on proprietary software, Microsoft is the largest contributor to open-source projects in the world."

    Top Open Source Companies 2023 | Datamation
  • Simon CozensSimon Cozens Posts: 724
    That's talking about corporate contributors, not individuals. But I'd love it if any Microsoft folks would help with packaging SILE on Windows!
Sign In or Register to comment.