IsFixedPitch to disable metrics adjustment

I have been making monospaced fonts for coding and I have noticed that ticking “IsFixedPitch” custom parameter is not enough for the font to be recognised as monospaced. One of the pitfalls were combining diacritics that are made zero width on export and thus failing the monospace test, and I had to manually mark them as spaced.

This gave me the idea; can the custom parameter automatically ensure the resulting fonts to be truly technically monospaced? i.e. disable automatic metrics adjustment in some glyphs (e.g. zero width glyphs), and auto-adjusting the glyphs that are not set to the same width. As for the latter case, I could see two ways of implementing: The custom parameter has additional field (or replacement new text box) where the user needs to specify the width. If the custom parameter does not exist or the value is set to zero, the font won’t be flagged as monospaced. The value will apply file-wide, and will take away the ability to adjust spacing from the grey info box (or give a warning dialog and cancel spacing changes). If that custom parameter is introduced later and finds inconsistency, it could give a warning or apply the most popular width value in the file.

2 Likes

This is how it should be handled. I see what I can do.

Do you have any update on this @GeorgSeifert?

Not yet.

I wonder what would be the best approach. I see two ways: A switch in font info and then all glyphs will have the same width as some key glyph like space. Or a setting that defines the width right in font info.

1 Like