Hello from an amateur

I am Anirban, a physician from West Bengal India. Though I have no training in typography or visual arts, I took up making fonts as a hobby as volunteer member of Free Bangla Font Project (https://nongnu.org/freebangfont), part of an initiative to enable Bengali in Linux desktop. Though none of my fonts are of professional quality, many of them are part of standard Linux distributions due to historical reasons. 
I am interested in learning newer font technologies such as variable font and colour fonts and how to use open source tools to create them. I came to Typedrawer forum to learn from members regarding them.

Comments

  • Hello Anirban, welcome to Typedrawers! Probably the best open source tool for variable fonts right now is Fontra. I would be interested to see what you think of it.

    I hope this forum is a good resource for you; let us know if you have any specific questions.
  • mitradranirban
    mitradranirban Posts: 28
    edited November 19
    I am already using fontra to create two variable fonts and also providing feedback to the developers with bugs. But it doesn't support OpenType tables like GSUB GPOS  and also does not have many required featured like apply a transformation to multiple glyphs at once. So I have to do to and fro conversion with fontforge, which on the other hand does not support newer technologies like variable font and color font. So it's always a challenge to correct the bugs introduced during interconversion. 
  • Fontra doesn’t seem quite ready for serious font design/development, yet.
  • welcome, anirban! variable fonts are very tough outside of mac and windows ecosystems right now. I have seen some clever programmatic approaches like Metapost -> SVG -> UFO -> build with fontmake. maybe that's an approach you could take, if you're comfortable with the more technical side of things, writing some python; font editing within fontforge, but with a UFO conversion and post processing step? not sure how viable that is. I'm grateful you're using fontra and submitting bugs, it's definitely not ready yet. I wish I had more time or I'd be trying to help with various aspects of that project...
  • The problem is mainly with buggy ufo export of fontforge. Every time I make a change in fontforge, after exporting I have to edit the ufo, either manually or through scripts. Again after working with fontra, the ufo has to be loaded and saved in sfd in fontforge to work with it.
    However I have been able to create a working variable font in ubuntu with this approach. 
  • I'm working on a source conversion tool called babelfont; it handles FontForge to UFO export reasonably well enough to have put a few fonts into production, but it doesn't currently handle FontForge features (which are expressed in some binary-equivalent magic format I don't quite understand). Maybe give it a go?
  • Simon Cozens said:
    I'm working on a source conversion tool called babelfont; it handles FontForge to UFO export reasonably well enough to have put a few fonts into production, but it doesn't currently handle FontForge features (which are expressed in some binary-equivalent magic format I don't quite understand). Maybe give it a go?
    But as per your github page it does not support ufo write yet! 

  • Oops, looks like I didn't update the documentation. Thankfully the code tells the truth:


  • mitradranirban
    mitradranirban Posts: 28
    edited November 21
    unfortunately babelfont did not serve my purpose
    $ babelfont --filter cubicToQuadratic Samaano-Bold.sfd Samaano-Bold2.ufo [11:41:12] INFO Reading Samaano-Bold.sfd __main__.py:59 ERROR Couldn't read Samaano-Bold.sfd: Bad __main__.py:62 font.props file - Vpublic.openTypeMeta
    As fontforge does not support meta table, I have created a separate lib.plist file and repalcing that in my ufo folders
  • The meta table is an unusual case! It was originally Apple-specific TrueType (1994), but after many years it made its way into the OpenType spec (2016).

    Although, to be fair, you could also say this about most of the underpinnings of variable fonts as well, descended from Apple’s GX Variations. Same dates, too, I think.
  • But the meta table is for completely different purpose in OpenType. Apple stored binary data in appl and bild tags, whereas in OpenType it is used to set design language (dlng) and supported languages (slang). Rather the table is repurposed in OpenType.