public-sans icon indicating copy to clipboard operation
public-sans copied to clipboard

Open-source tools

Open gosh-darn opened this issue 5 years ago • 7 comments

As much as I love Glyphs, is it not against the idea of an open-source project to require proprietary software to edit the source directly?

gosh-darn avatar Apr 09 '19 23:04 gosh-darn

This was the source I inherited, but I'd be open to switching to Font Forge or something similar

thisisdano avatar Apr 10 '19 00:04 thisisdano

One can use the Python library glyphsLib’s glyphs2ufo and ufo2glyphs tools to roundtrip between Glyphs.app format and designspace+UFOs, and the fontmake tool can be used to build fonts from either. UFO is a more widely supported font source format but those tools make the choice a preference.

moyogo avatar Apr 10 '19 05:04 moyogo

Me an @moyogo work for the same company where we use a variety of font design applications but store the fonts in the UFO v3 plus Designspace format, with a custom build system relying on fontmake and a bunch of other tools to produce final binaries.

I think the format is a good choice in general but must caution that UFO support is sadly often an afterthought in non-RoboFont design applications. If you want to use Glyphs but store things as UFOs, I strongly recommend using glyphsLib's ufo2glyphs and glyphs2ufo commands to do the round-tripping work, do not use Glyphs' built-in mechanisms.

I recently converted my Cantarell project from a .glyphs file to UFOs and a Designspace, with custom scripts to make variable and static fonts (as a learning experience): https://gitlab.gnome.org/GNOME/cantarell-fonts. Maybe it can serve as an inspiration.

madig avatar Apr 10 '19 11:04 madig

@thisisdano If you want to move the canonical source files to UFO, it's a little bit more in the spirit of the software user freedom movement, but it will complicate your workflow, and since glyphsLib allows anyone without macOS or Glyphsapp to work with the data, it might not be worth it.

Where I think it can pay off is to move the canonical sources to quadratic bezier format UFO and make the build process scripted with fontmake, and then you have better control over making variable fonts, and more point stability for a TTFAutohint Control File to not get stale.

davelab6 avatar Apr 12 '19 03:04 davelab6

I personally like how the UFO format splits up everything into its own file, it helps with a git workflow. Oh, and I have trust issues with the .glyphs format, UFO is specified and has reliable open source implementations, even though the format has some problems.

madig avatar Apr 12 '19 10:04 madig

It's still in the early stages and probably won't be fully useable until next year, but I am currently contributing to a new open-source, cross-platform font editor project that aims to address these concerns.

My hope is projects like this one that might want a more inclusive community of contributors will consider adopting it when it is ready. Contributions and feedback are welcome.

https://github.com/linebender/runebender

UFO support is in the works, this is the only part of the code I have touched so far, but I would be happy to help anyone else get started if they want to work on UFO support as well.

https://github.com/linebender/norad

eliheuer avatar Jun 07 '19 11:06 eliheuer

Slowly making progress on this. We now include UFOs and Designspace files in our src folder. These files are generated by fontmake as part of our new-ish build script. The canonical version (for us) is still Glyphs, but a contributor would be able to use these UFOs in their software of choice, and we'd be able to accept UFOs in new work.

This still needs documentation and testing, but I wanted to check in and assure you all that it's on our radar and is currently a work in progress. Thanks for your help.

thisisdano avatar Aug 08 '19 22:08 thisisdano