Open miguelsousa opened 3 years ago
psstemhist --version
2.3.0
I just took a look at the O
glyph in stem_2.otf. The height of the outer contour is 699 and the width is 517. So this explains a bit the values that the tool is producing, and makes me think that it's not "seeing" the inside contour for some reason.
From https://github.com/adobe-type-tools/psautohint/blob/master/doc/AC.md
There are many thresholds used when evaluating stems, pruning, and finding the best values. The thresholds used throughout the program are just “best guesses” according to Bill Paxton.
Supposedly, the very minimum hinting a glyph will get is its bounding box values.
If no good hints are found use bounding box hints.
I'm going to be looking at this in the (relatively) near future but depending on how many heuristics need to be changed for very thin stems it might wind up being easier to provide a "pre-scale" option when generating stem info, which would scale the path elements up by N times and then scale the resulting stem data down by the same amount.
(OTOH it may be as simple as providing an option to adjust the equivalent of gMinDist, which is currently hard-coded to 7. We'll need a bit of experimentation to see whether very low values results in a lot of noise.)
I'm not sure we'll wind up looking at this anytime soon, but the general solution for cases like this is to provide a means of overriding the many constants in afdko/otfautohint/hinter.py:dimensionHinter.
The attached ZIP contains 3 fonts. The digit in the file name represents the average stem thickness of the glyphs. When I run this command
psstemhist -a stem_*.otf
on each of the fonts, excessively big numbers are reported for the two thinnest ones. Results below.thin_stems.zip
stem_2.otf
stem_4.otf
stem_8.otf