Rounding interpolated values FLS5-style


#1

If you have an axis from 0 to 1000, and a value of 520@0 and 590@1000 and an instance at 450; then that value will be 551.5. Glyphs rounds this value according to the rules of the universe&math => 552.

BUUUUT

Imaging you have a big library of FLS5 files and since that app rounds 551.5 to 551, we have a problem.

Is it possible to have a Custom Parameter “Round interpolation like FLS5” that rounds values of .5 to .0? :’)

Asking for a friend boss.


#2

What’s the actual problem of not getting that super tiny detail mismatched? Let’s say if you have a Regular and Bold whose stem thicknesses are 100 and 200 respectively, and you assign weight master values as such. In FontLab, you had to use 0–1000 for everything, so the fractional values mean almost nothing when you interpolate between 100 to 00 units, 1 unit at worst. And I do not think that level of difference is worth losing sleep over.
Having said that, a practical solution would be to use more digits in interpolation, like 0–10000.


#3

The problem is:

Imagine the client uses the old font and carefully made a book with it. Now we deliver the updated font, extra scripts support and what not, AND in the Latin some glyphs with a different advance width… The typographer can do her/his work all over again.

As far as I know: you can never ever ever change advance widths of glyphs or change kerning for already released fonts.


#4

Okay, then I guess those particular instances need to be respected regardless (I suspect FontLab 5 will fail to recreate the same instance). My solution then is to import the advance width and kerning from the existing font. I still think 1 unit of width difference is not big enough at all to change the design. This kind of paranoia only exists in our perfectionist mind.


#5

Hm, I thought Monotype would have had enough big clients to know that even a single unit of width or kerning difference spells disaster. Because it means that not a single document in which the fonts are used can be trusted to output exactly as it did before.
Certainly we have an update disclaimer “these updated fonts might produce different line lengths” for the library packages, but I want the type that has been implemented in big corporations to remain 100% widths compatible.
In the meantime, Jens has built us a rounding solution :slight_smile:


#6

I said the above because normally we do not need to re-interpolate the same font. If there’s a font that we need to use as basis, that becomes the master.