Webfont problem with istroke


When exporting webfonts I have a strange problem with istroke. The stroke seems to always be somewhere below the glyph, even when hard encoded. It happens to every instance of the font… any ideas?

I generated the Test HTML file with Rainer’s script.


Maybe the character is decomposed by the script or the browser and then displayed from i+and a combing stroke?


So is there anything I can or should do?


Try to add anchors to the i and the stroke glyph (should be “strokeshortcomb”). Or remove the stroke glyph altogether.


That’s what I just did and it does the trick. Somehow there was a missing anchor there. Thanks Georg.


The decomposition of istroke is done in the autogenerated ccmp feature by Glyphs:

lookup ccmp_latn_1 {
script latn;
sub itildebelow by i tildebelowcomb;
sub istroke by i strokeshortcomb;
} ccmp_latn_1;

This is probably done so the i can lose its dot if more combining marks are added to it later.

I think it would be less confusing to include an additional ‘istroke.dotless’ which could then be used for further combining marks.

For example, I would space the istroke wider than the i so the stroke doesn’t collide with surrounding letters. When it is decomposed to a normal i plus the combining stroke, this adjustment is lost unless you add contextual kerning or do other complicated adjustments.


Good suggestion.


Glyphs 2.5b still adds the wrong code to the automated ccmp:
lookup ccmp_latn_1 { sub istroke by i strokeshortcomb; } ccmp_latn_1;

Adding to what jkutilek suggested, the contextual dotless substitution should also happen to istroke, jstroke, i-cy, je-cy, etc. That is all the characters that have the Unicode Soft_Dotted property (see Unicode Utilities: Unicodeset Soft_Dotter=Yes). I guess any of those with the “dotless” or “.dotless” suffix should be used.