Weight Classes differences in Glyphs 2.5


I just updated to Glyphs Version 2.5 (1131) and I noticed something changed in the weight classes for Thin, which used to be 250 and now is 100 and Extra Light and Ultra Light, which used to be 250 and now are 200. FDK Compare Family is flagging the Thin weight (I didn’t have any Extra or Ultra Lights in my test file) :

Single Face Test 9: Check that no OS/2.usWeightClass is less than 250
Error: OS/2.usWeightClass is 100 for Font Test-Thin
This may cause the font glyphs to be smear-bolded under Windows 2000.

The issue with Windows was already mentioned in this thread: Font Menu Order, Thin <> Extralight

Is it now safe to keep the weightClass at 100 or is it better to change it back to 250 with weightClass custom parameter even if we are 18 years away from Windows 2000?

The weight class issue is with some old apps on windows that would add a fake bold effect to fonts that are thinner then 250. I kept that for some time but with variable fonts, there is a push to correct weight class values and nobody is complaining about problems any more.

If you really need (and I don’t expect that to be the case) you can set the weight class with a custom parameter.

1 Like

Yes, thanks Georg, I just wanted confirmation that it’s ok to keep the value below 250.

1 Like

Windows 7 still does this (I tested for instance in Word 2013), so I assume there are quite a number of people still using this “old” software.

Thanks for testing this.

I’ve tested right now the latest demo from Microsoft and Wordpad on Windows 10 still has the 200 issue. Setting to 250 fixes the problem.

Hi Georg,

I am reviving this because I was wondering why the AxisMapping parameter is not overriding the WeightClass of the instances.

With a single file I want to export a variable font and statics as well. For the statics I want my Thin and Extralight to have 250 and 275 (or whatever) for the WeightClass. But I want my VF to export with a range from 100 to 900 for the wght axis. However, even after I add the AxisMapping parameter with mapping for 100 for whatever my thin is and 200 for whatever my ExtraLight is, the produced VF is still showing a range from 250 to 900.

Keep the new values and tell end users that Microsoft is the problem. Type designers shouldn’t have to use hacks to work around Microsoft’s incompetence.


Actually Axis Mappings does nothing but fuck up the values. I have no clue how it is supposed to work and every possible thing I have tried resulted in a broken VF.

Important to know:

The axis mapping values take the master location parameters into account. And the range provided by those cannot be exceeded.

The weightClass values stored in the static fonts are completely separate from the wght values of the OTVar. The one has nothing to do with the other (cannot appear together in the same file).

I am not sure I get your answer.

Let’s say I have a Thin Master with wght=30 and a Black Master with wght=220, and instances at 30, 46, 64, 82, 108, 130, 155, 185, 220.

How should I set the AxisMapping so that the axis is showing a value from 100 to 900 instead of 30 and 200 and the inbetween values in the VF correspond with the instances values?

Can you give an example?
I tried 30 = 100, 46 = 200, 64 = 300, 82 = 400, 108 = 500, 130 = 600, 155 = 700, 185 = 800, 220 = 900 (and the other way around) and nothing is happening.

I also tried to just make 30 = 35… 220 = 200, to see if it can compress the axis value. No matter what, the exported font displays the axis from 30 to 220 and just occasionally fucks up the inbetween values.

Can you send me the file?


Hi, there!

I am getting a similar issue and don’t seem to be able to fix the problem.
I have tried using both Glyphs 2.6.6 and Glyphs 3.0.3.

I am working on a typeface that has 8 masters in total (4 uprights and 4 italics) and 22 instances (11 uprights and 11 italics).

What I am trying to achieve is to set my variable font weights to be the same as the defined usWeightClass on the static font files.

They are as follows:
Hairline - 50 (this weight is a master)
Thin - 100
Light - 200
Book - 300
Regular - 400 (this weight is very similar to a master but not exactly the same)
Medium - 500
Bold - 700
Extra Bold - 800 (this weight is very similar to a master but not exactly the same)
Heavy - 850
Black - 900
Fat - 950 (this weight is a master)

My upright masters are set in Glyphs as follows 14-84-192-300 weight, and to make the variable font slider to go up to 950 I have set the custom parameter Axis Location on each master as follows 50-400-800-950. Up to here, everything is working correctly, and the slider is indeed from 50-950.

But when I try to set my other instances with the correct weight class using the Axis Mappings, I don’t see any good results and it seems that I don’t fully understand how to use it.

What I have tried so far is to calculate all the 11 locations of the instances between Fat and Hairline (14-300) as stated in the tutorial: “Calculate the gap size between styles: divide the difference between extremes by the number of styles minus one,” and mapped those to the correct weight class. But this, unfortunately, is not giving me the desired results.

I have also tried to use all the four masters and calculate between every one of them (14-84, 84-192, 192-300) but this is also not working.

What am I supposed to do?

P.S.: The only workaround I could think about it to make all the instances into masters and to set Axes Location on every single one of them, but I am not sure if this is going to cause any problems with the interpolation/spacing/kerning.

the combination of Axis Location and Axis Mappings is not 100% functioning. You can try to get it working with just the Axis Mappings.

Thank you for the quick response!
I could try to map them with Axis Mapping, but as my masters are ranging from 14-300, how to make the displayed slider weights something else (in my case 50-950)?

You can map the 14 > 50, 300 > 950 …

I have tried that in Glyphs 2.6.6 and Glyphs 3.0.3 but, unfortunately, see no results.

It is visualized properly on the graph in Glyphs

But in Illustrator it is still 14-300 image

Am I missing something?

I’ll have a look.