Family Stem Weights Calculator
Options
PabloImpallari
Posts: 788
This is a simple little tool that will help you plan the stems weights values across a 9 styles family.
Input your thinnest and boldest stems values, and it will show you a wide range of possibilities to get you started.
The first column will provide steps of equal size.
The last column will provide progressive steps.
The 3 columns in the middle will provide intermediate steps.
You can use this values as a starting point to plan your family.
The final decision, of course, is up to you!
http://www.impallari.com/familysteps/
Input your thinnest and boldest stems values, and it will show you a wide range of possibilities to get you started.
The first column will provide steps of equal size.
The last column will provide progressive steps.
The 3 columns in the middle will provide intermediate steps.
You can use this values as a starting point to plan your family.
The final decision, of course, is up to you!
http://www.impallari.com/familysteps/
Tagged:
9
Comments

This is a great tool. One thing you should add is an option to specify the number of steps.0

Thanks Georg!
Currently I've chosen those 9 weights as to match the CSS3 specs.
The option to specify the number of steps is in my ToDo list, maybe in the next update.
4 
The user and all related content has been deleted.0

I agree, it's a great tool. And if there's any possibility to start with Regular weight and thinest (or boldest) and it calculate the rest. Some kind of extrapolated calculation.0

@ mean?0

The user and all related content has been deleted.2

Thanks for the explanation, James. And a very merry ### to you.2

Updated, now you can choose form 3 to 10 steps7

Lovely! Thanks for that addition.0

Nice! and timely for me too. Thanks, Pablo.0

Updated once again (version 4), with lots of goodies!
Please, take a few minutes to analyze the results, compare to your own families, and let me know what you think, or what can be done to improve it.
If you wants to contribute the data from your own fonts (will be helpful to further improve the results) you can do it like this:
MyFontName = 20, 40, 60, 80, 120, 1400 
v3 has already been of great benefit to me by using it to validate the manually selected numbers I already had set up for a family of six weights. It let me know that one of my numbers was out of range and needs redoing.
Thanks so much for this tool; it's saved me a lot of wasted time.1 
Let's not forgot to trust our eyeballs. Formulas are great to start but I've found some instances seem to need adjustment, either for an smooth transition across weights or for the intended size/use (regular being used more in text, thins more in displays, etc).2

Yep, exactly.
That's why I made this, my eyes were not happy with the Lucas formula. It works great when the difference from BlackThin is small, but it fails when the range is bigger, as the Thin steps get too close together, while the Bolder weights get too far apart.
I hope this ones get closer to better result, but of course there is room for improvements.
All in all, I think my tool offers a good starting point, and then we can refine from there. That's the whole idea.0 
Pablo, it is a good tool for the planning stages, and along that line, do you think it would be useful to allow the user to tweak the numbers for one or perhaps two fields and display an overlay curve showing how it would affect the chosen curve?0

Goerge, Thanks.
I'm open to make modifications and improvements.
Which values would you like to be able to tweak?
0 
As an example, suppose you had calculated eight steps and you wanted to adjust one or two of the intervening steps to see what effect it would have on the curve. It might be useful enough to let one know that a deviation from the calculated numbers would not be that detrimental to the curve.0

Interesting idea. I will try to implement it.0

This has come at just the right time for me. Thank you I'm looking forward to playing happy families.0

Pablo, here's another idea. Assuming, of course, that it would be a desirable thing for the sidebearings to follow a similar somewhat smooth curve, this tool might be used to calculate proposed sidebearings for interval font weights based on the curves generated for the weight numbers.
As it exists, it won't do this and generate similar curves based on a test I did. One additional bit of information it would require would be the EM size. Is it doable?0 
If you input a bigger value in the Thin input field, and a smaller value in the Black input field, the tool will still work (surprisingly!)
A) Thin 220, Black 20, Steps 8 will produce:
200, 148, 116, 95, 79, 62, 43, 20
As another option, you can load your thin sidebearing value in the Black input field, and your black sidebearing value in the Thin input field, and sort the result in reverse.
Thin 20, Black 220, Steps 8, reversed results will produce:
200, 170, 136, 102, 72, 48, 30, 20
One will be and Sshape, the other an Inverteds shape (not sure which is which).
Try both options, and let us know which one works best for sidebearings... or if both fail0 
I had tested that earlier and the results were a "curve" with straight lines and peaks. I did try it both ways too and was happy to see it worked in reverse.
Try these values and you will see what I saw: 7 steps, 105, 101, 97, 93, 89, 86, 78. If you invert it then it becomes quite different.0 
Excuse me, I just made a huge mistake. I gave you the results, not the input. Input would be 7 Steps, Thin 105, Black 78. My apologies.0

No problem.
The "lines and peaks" are the effect of rounding values in small ranges.
Choose "2 decimals" and the graph will be smooth again
In the "Decimals" option you can choose: to use 1 or 2 decimals, to round numbers, to roundup (ceil) and to round down (floor).0 
That works although the curve is much more shallow than I would have thought it would be, likely because the numbers are so close together. Interesting thing, though, if one chooses "Round Down" rather than one of the decimals you end up with 1 less than the input value  not a deal breaker, though.
Forget what I wrote about specifying an EM value. Since the resulting curves are so different from the weight curves it won't matter, everything being relative. The tool is perfectly useful as it is.1 
This is very handy! Thank you.
BTW, the Lucas formula numbers break down if I enter 0 and 1000 as the two numbers.
Why would I do that, you ask? Because I don't want to know what the stem thicknesses are, I want to know what values to use in FontLab Studio for the instances in a multiple master space which uses labels of zero and 1000 by default....
Mind you, I can just enter 1000 and 2000 instead. Easy enough to subtract 1000 from the results.0 
MM! I hadn't thought of that but I can see how it might be useful.0

Thanks Thomas.
Lucas formula numbers break down if I enter 0 and 1000 as the two numbers.
Yep, as there are divisions involved and division by zero is not possible.I want to know what values to use in FontLab Studio for the instances ... Mind you, I can just enter 1000 and 2000 instead. Easy enough to subtract 1000 from the results.
I'm not sure you will get the same results. Let us know if it works.
I always struggle with decimals in FL/Superpolator to get the instances in the exact point. In Superpolator is easier than FL, as you can livepreview the stem weight measurements. Georg's Glyphs app is super nice, as you can simply use the stem values for creating the instances.
0 
In Superpolator is easier than FL, as you can livepreview the stem weight measurements. Georg's Glyphs app is super nice, as you can simply use the stem values for creating the instances.
You can work around to use stem values in Superpolator:
Insert your masters with a value == stem width
Insert your lightest master a second time with a value == 0
Easy
1 
I want to know what values to use in FontLab Studio for the instances
In Fontlab’s masters graph move your masters to positions that match stem weight values. Now you can set instance values that equal your stem weight.2
Categories
 All Categories
 40 Introductions
 3.6K Typeface Design
 780 Font Technology
 1K Technique and Theory
 601 Type Business
 437 Type Design Critiques
 530 Type Design Software
 30 Punchcutting
 135 Lettering and Calligraphy
 82 Technique and Theory
 53 Lettering Critiques
 468 Typography
 293 History of Typography
 112 Education
 63 Resources
 485 Announcements
 76 Events
 105 Job Postings
 147 Type Releases
 156 Miscellaneous News
 264 About TypeDrawers
 53 TypeDrawers Announcements
 112 Suggestions and Bug Reports