CatharsisFonts / Cormorant

Cormorant open-source display font family
SIL Open Font License 1.1
542 stars 23 forks source link

Glyph names #47

Closed cmahte closed 5 years ago

cmahte commented 5 years ago

Starting from Cormorant regular,

FontForge complains about glyph names when I build .otf fonts: screen shot 2018-11-02 at 6 41 31 am

But I don't see a ss13 to verify against. I suspect these are now in a character variant, but where? Font forge is pretty good about renaming glyphs, but these are invalid, so I want to check they did rename everywhere, because font forge doesn't deal well with names in feature tables that don't have glyphs.

If the unlikely "actually not in a table" are true.. is this development, or dinosaur?

CatharsisFonts commented 5 years ago

Thanks for pointing that out. Some of the OpenType features were missing from the Cormorant glyphs files. I believe that happened a while ago with a Glyphs version that ate features. Looks like I hadn't recovered all of them.

New commit coming up, I hope that will fix the problem.

Out of interest, what are you doing with FontForge...?

Cheers, Christian

cmahte commented 5 years ago
  1. I'm working on the jalt table I mentioned in an earlier issue to put alternate "optical" or "hanging" justification into opentype feature jalt. This means initially alternate glyphs for punctuation with the sides adjusted and a kerning table to make them 'normal' in the middle of text, but 'hang' when they land on an edge.

Cormorant is already huge, but properly implemented this also means alternates for angled capitals (W A V Y 7) and horizontally flat capitals (T L J) that do similar but more subtle shifts. If this jalt thing works, I'm investing in learning scripting to automagicate it, but as of now I'm keying it all by hand. Once I go to scripting I can deal with 100 flavors of A. For development, proving the punctuation hangs is good enough.

  1. Since I'm opening the font up, I've also messed with all space widths a bit (related to justification, I'm setting them closer to mathematic proportions.) I don't like what I've done so far, so I'll probably put it all back.

  2. And on the subject of spaces I'm pushing the addition of backspace Ux0008 a bit further. Ux0008 doesn't work in LibreOffice as it is (LibreOffice ignores it), so I'm including it in the jalt table to a non-control glyph (EBAC). That is Libreoffice presents a blank glyph. I can move the cursor over it and there's a position for it, but kerning or tracking that glyph has no effect. by alternating it for a 'private use' glyph, early testing suggests I can have the font have a huge negative kern value to actually space backward. This is still untested as a value inside the font. My use for Ux0008 backspace is related to optical vs. strict margins. When a biblical verse number occurs at the start of a line of poetry, it hangs outside the start of the row of poetry. So, It's technically correct that it only works when I'm in optical margin mode, not strict margin mode.

  3. I haven't got to this yet, but superscripts need digits, lowercase letters parens and dashes. I noticed a hole or two in the superscripts unicode locations when working on spaces. I'll suggest a complete list when I get there.


  4. Import fixes. Opening the font up in Font Forge causes issues. I suppose its rounding errors between the programs, but I get a lot of 'non-integral points' and 'point not at extrema' errors that have to be re-integered and re-extremed. (I started with Cormorant Garamond, which had about 1500 errors in the regular face. I switched to Cormorant, and it only had about 120 errors in the regular face.) Going through these, the fix looks exactly like the problem, so I'm guessing its a 1 <>.99999 kind of error. However, fixing these issues breaks truetype hinting as soon as I start (Fontforge didn't warn me at first it deletes them when I change the glyph, but now it does.) So I'm autohinting/autoinstructing the font. In redoing the hinting and instructing, I have no idea what it means, so I've probably wiped out a tiny bit of the 'pretty', but I don't have the glyphs program, and I'm developing on linux for linux, so the truetype stuff is really thrown out anyway. (my primary output is postscript OTF.)

ArchangeGabriel commented 5 years ago

@cmahte You can delete both comments on GitHub web interface. ;)

cmahte commented 5 years ago

Thanks.