In current project, I'm considering 23 weights per subfamily, six subfamilies. I thought it might be useful to be able to equalize stroke weight between words in different point sizes, like stacked vertically and sized so that they fill the container horizontally. I'm not all that sure if that's a common use case. But I've seen families with as many as 18 weights, so why not?
My question is regarding what naming scheme would be most readable. I tried something like this:
- 5 Hairline
- 11 Ultrafine
- 17 Extrafine
- 24 Fine
- 31 Ultrathin
- 38 Extrathin
- 45 Thin
- 52 Ultralight
- 59 Extralight
- 66 Light
- 73 Demilight
- 80 Regular
- 87 Demidark
- 94 Dark
- 102 Extradark
- 110 Ultradark
- 118 Demibold
- 126 Bold
- 134 Extrabold
- 142 Ultrabold
- 150 Black
- 158 Extrablack
- 165 Ultrablack
Weights are prefixed with stem weight, so that it is clear how much one differs from the next, and also what is the ratio of their stroke weight. Technically this makes it possible to mathematically calculate the appropriate weight for the given font size.
The main reason for adding in the numbers though, is simply the amount of weights. Without the numbers, it would be daunting to find the file for the desired weight in a directory, let alone decide whether Thin is thinner than Fine.
I found that it works fine, but I'm concerned whether style linking is feasible with this scheme. I linked 80 Regular and 126 Bold successfully I tested in InDesign and LibreOffice (and GIMP, MS Paint...), but:
* The Windows "Fonts" folder only displays one at a time instead of a neat font group. It is possible to uninstall them one after the other, as when one is removed, the other appears in its place.
* Doesn't work in MS Notepad. Only '80 Regular' is shown and accessible.
How much of a concern would you assess this is, given it's a display-exclusively font? Also, as I don't own a Mac yet, would you expect any roadbumps there?
Is it better to just neglect style linking at all in this case? Or the contrary, would you link even more styles together, e.g. Light with Ultradark, Thin with Demidark, etc.?
Comments
When you say “six subfamilies” do you mean six separate families, perhaps by width? So that they have completely separate menu listings in apps? As for “why not” it is because fonts with a zillion styles become pretty unmanageable, AND splitting up fonts like that into separate families really sucks for the user.
Adobe did that split for Acumin, and it stinks. I hate it with a passion. I was trying to switch between Acumin and another family, in InDesign, and the style mapping was broken because Acumin is a separate family for each width. I had my styles all set up so that with a “normal” family I would just have had to change one style and everything else would cascade.
On the other hand, with my current team’s Science Gothic variable font, once we added the italic (slant) axis, that final doubling of instances makes for over 200 predefined instances. Which is too damn many in one family, for apps that use font menus. Around 100 is still useable on a jumbo monitor. But 200+ not so much.
Hence, I am thinking about actually un-defining some stops on the SG width axis, so as to make for fewer predefined instances.
2. Well demibold is certainly lighter than bold. Then again, “Thick” seems like it would be heavier than demibold. Heck, maybe even heavier than bold.
3. No worries about sticking to some particular multiples. I am a bit perturbed by things like Medium at 421 instead of 500, and Light at 344 instead of 300. As far as I understand it, WeightClass is a set of labels that also have numbers, but not a scale that has a direct relationship to stem thickness. I understand you want to make it so, and that's not a bad thing, except that it means sacrificing the label<>number relationship that people expect. Not convinced that’s a good thing.
font-weight is a CSS property that (in CSS 3) can take numeric values 100-900 in 100-unit increments. This is in no way restricted to “automatic CSS generators” but is a standard property that any CSS author can use.
(In CSS 4, it will be any number from 1-1000)
- Ultra-Light
- Extra Light
- Light
- Semi-Light
- Regular
- Semi-Bold
- Bold
- Heavy
- Black
- Extra-Black
- Ultra-Black
If you need to go extreme on the ends, add obviously extreme names like Mega-Black, Blackout, Singularity, Nano-Light, Hairline, Razor or whatever. But keep the core simple. The heavies might logically track better as Extra-Bold, Ultra-Bold, Semi-Black, Black, Extra-Black etc. but I think it's already well established that Heavy is heavier than Bold and Black is heavier than Heavy...I assume.I wanted to drop in a PDF as well but it appears I chose the wrong thread category to do so.
I think it always depends a lot on the actual dimensions in which it will be used. Clearly on screens it’s pretty relative and device-depending, but in general you still have a rough idea (i.e. it will be hardly used under certain point sizes).
In that way, you’ll come up with a good economy of weights, keeping the family stronger (I would do with six weights max myself).