I'm making a custom GUI on a custom device (7 inch 800x600). It supports .otf and .ttf fonts.
The customer supplied us with a custom font in otf format.The font is not monospaced, which is fine. It is based on the font "Letters from Sweden".
But the digits are not monospaced so text on the display is dancing when digit values change. This is the issue. I'm hoping making at least the digits the same width would resolve this.
I used fontforge to set the width of the digits to the same width and save it as tff. This appeared to work. But I noticed that the digit 4 is slightly less wide. Digits dance when when a digit changes to or from '4'. I set it to an extreme width, but that didn't help. In MS word and custom hardware I see that 4 is indeed slightly less wide. Both with right align and left align. But the effect is more noticeable on the custom hardware.
digits on custom hardware (simulator):
digits in MS Word (notice the position of the period):
I'm a lay person in terms of font design. Could the error in width be due to rounding numbers? Are kerning-pairs related to this?
But my main question is how to prevent dancing text?
There are no copyright issues in making the modification as the fnt files themselves would not be accessible/published, but converted /compiled to bitmap on an embedded device. So the font itself will not be modified, just the rendering will be tweaked.