Code Monkey home page Code Monkey logo

Comments (7)

madig avatar madig commented on August 22, 2024 3

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.

from public-sans.

madig avatar madig commented on August 22, 2024 2

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.

from public-sans.

thisisdano avatar thisisdano commented on August 22, 2024 2

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.

from public-sans.

davelab6 avatar davelab6 commented on August 22, 2024 1

@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.

from public-sans.

thisisdano avatar thisisdano commented on August 22, 2024

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

from public-sans.

moyogo avatar moyogo commented on August 22, 2024

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.

from public-sans.

eliheuer avatar eliheuer commented on August 22, 2024

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

from public-sans.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.