home.social

#fontra — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #fontra, aggregated by home.social.

  1. Following the footsteps of upstream #Fontra, we are migrating Colr Pak frontend code from #javascript to #typescript, starting with the in-development Color Graph Panel

  2. Following the footsteps of upstream #Fontra, we are migrating Colr Pak frontend code from #javascript to #typescript, starting with the in-development Color Graph Panel

  3. Following the footsteps of upstream #Fontra, we are migrating Colr Pak frontend code from #javascript to #typescript, starting with the in-development Color Graph Panel

  4. Today's session in ColorFont Editor - combining #fontra-compile with #PythonBuilder and #paintcompiler to create color v1 ttf font binary from json sources

  5. Today's session in ColorFont Editor - combining #fontra-compile with #PythonBuilder and #paintcompiler to create color v1 ttf font binary from json sources

  6. Today's session in ColorFont Editor - combining #fontra-compile with #PythonBuilder and #paintcompiler to create color v1 ttf font binary from json sources

  7. Here comes the neat trick; #Fontra registers a message callback function, which gets called before and after each lookup is applied, and whenever #HarfBuzz is about to apply a lookup that the generated code would have been inserted before, Fontra steps in and modifies the glyph buffer and apply its own positioning logic. Then later lookups will be applied by HarfBuzz and modify the glyph positions as it would have happened with a fully compiled font.

    OK, it is a super nerdy and maybe a very few people can get why I’m so excited about it, but I’m really proud about it.

  8. Here comes the neat trick; #Fontra registers a message callback function, which gets called before and after each lookup is applied, and whenever #HarfBuzz is about to apply a lookup that the generated code would have been inserted before, Fontra steps in and modifies the glyph buffer and apply its own positioning logic. Then later lookups will be applied by HarfBuzz and modify the glyph positions as it would have happened with a fully compiled font.

    OK, it is a super nerdy and maybe a very few people can get why I’m so excited about it, but I’m really proud about it.

  9. Here comes the neat trick; #Fontra registers a message callback function, which gets called before and after each lookup is applied, and whenever #HarfBuzz is about to apply a lookup that the generated code would have been inserted before, Fontra steps in and modifies the glyph buffer and apply its own positioning logic. Then later lookups will be applied by HarfBuzz and modify the glyph positions as it would have happened with a fully compiled font.

    OK, it is a super nerdy and maybe a very few people can get why I’m so excited about it, but I’m really proud about it.

  10. Here comes the neat trick; #Fontra registers a message callback function, which gets called before and after each lookup is applied, and whenever #HarfBuzz is about to apply a lookup that the generated code would have been inserted before, Fontra steps in and modifies the glyph buffer and apply its own positioning logic. Then later lookups will be applied by HarfBuzz and modify the glyph positions as it would have happened with a fully compiled font.

    OK, it is a super nerdy and maybe a very few people can get why I’m so excited about it, but I’m really proud about it.

  11. Here comes the neat trick; #Fontra registers a message callback function, which gets called before and after each lookup is applied, and whenever #HarfBuzz is about to apply a lookup that the generated code would have been inserted before, Fontra steps in and modifies the glyph buffer and apply its own positioning logic. Then later lookups will be applied by HarfBuzz and modify the glyph positions as it would have happened with a fully compiled font.

    OK, it is a super nerdy and maybe a very few people can get why I’m so excited about it, but I’m really proud about it.

  12. However, #Fontra does not generate positioning feature code during live preview, as it does the glyph positioning itself, while the rest of the shaping is done by #HarfBuzz (as explained in the blogpost).

    So how would it do this emulation in the middle of lookup application by HarfBuzz?

    HarfBuzz has a so-called message callback that allows caller to get a message about what HarfBuzz is doing and the HarfBuzz glyph buffer before each shaping step (this is what corvelsoftware.co.uk/crowbar/ uses to debug OpenType layout).

  13. However, #Fontra does not generate positioning feature code during live preview, as it does the glyph positioning itself, while the rest of the shaping is done by #HarfBuzz (as explained in the blogpost).

    So how would it do this emulation in the middle of lookup application by HarfBuzz?

    HarfBuzz has a so-called message callback that allows caller to get a message about what HarfBuzz is doing and the HarfBuzz glyph buffer before each shaping step (this is what corvelsoftware.co.uk/crowbar/ uses to debug OpenType layout).

  14. However, #Fontra does not generate positioning feature code during live preview, as it does the glyph positioning itself, while the rest of the shaping is done by #HarfBuzz (as explained in the blogpost).

    So how would it do this emulation in the middle of lookup application by HarfBuzz?

    HarfBuzz has a so-called message callback that allows caller to get a message about what HarfBuzz is doing and the HarfBuzz glyph buffer before each shaping step (this is what corvelsoftware.co.uk/crowbar/ uses to debug OpenType layout).

  15. However, #Fontra does not generate positioning feature code during live preview, as it does the glyph positioning itself, while the rest of the shaping is done by #HarfBuzz (as explained in the blogpost).

    So how would it do this emulation in the middle of lookup application by HarfBuzz?

    HarfBuzz has a so-called message callback that allows caller to get a message about what HarfBuzz is doing and the HarfBuzz glyph buffer before each shaping step (this is what corvelsoftware.co.uk/crowbar/ uses to debug OpenType layout).

  16. However, #Fontra does not generate positioning feature code during live preview, as it does the glyph positioning itself, while the rest of the shaping is done by #HarfBuzz (as explained in the blogpost).

    So how would it do this emulation in the middle of lookup application by HarfBuzz?

    HarfBuzz has a so-called message callback that allows caller to get a message about what HarfBuzz is doing and the HarfBuzz glyph buffer before each shaping step (this is what corvelsoftware.co.uk/crowbar/ uses to debug OpenType layout).

  17. RE: typo.social/@fontra/1161830165

    The blog post is a very interesting write-up, I suggest everyone interested in the font making to read it.

    The technical part at the end is the most interesting to me. I’m particular proud of the very neat trick that allows #Fontra to emulate glyph positioning while maintaining interaction between it and manually written feature code.

    For context. Font editors will generate positioning features from kerning and anchor data in the font.

    Sometimes one wants to add some other feature code before or after the generated ones (e.g. move a dot contextual after being positioned by the default anchor to avoid a clash that happens only in a certain context). The order of the generated and manual code is important, since one might depend on the output of the other.

  18. RE: typo.social/@fontra/1161830165

    The blog post is a very interesting write-up, I suggest everyone interested in the font making to read it.

    The technical part at the end is the most interesting to me. I’m particular proud of the very neat trick that allows #Fontra to emulate glyph positioning while maintaining interaction between it and manually written feature code.

    For context. Font editors will generate positioning features from kerning and anchor data in the font.

    Sometimes one wants to add some other feature code before or after the generated ones (e.g. move a dot contextual after being positioned by the default anchor to avoid a clash that happens only in a certain context). The order of the generated and manual code is important, since one might depend on the output of the other.

  19. RE: typo.social/@fontra/1161830165

    The blog post is a very interesting write-up, I suggest everyone interested in the font making to read it.

    The technical part at the end is the most interesting to me. I’m particular proud of the very neat trick that allows #Fontra to emulate glyph positioning while maintaining interaction between it and manually written feature code.

    For context. Font editors will generate positioning features from kerning and anchor data in the font.

    Sometimes one wants to add some other feature code before or after the generated ones (e.g. move a dot contextual after being positioned by the default anchor to avoid a clash that happens only in a certain context). The order of the generated and manual code is important, since one might depend on the output of the other.

  20. RE: typo.social/@fontra/1161830165

    The blog post is a very interesting write-up, I suggest everyone interested in the font making to read it.

    The technical part at the end is the most interesting to me. I’m particular proud of the very neat trick that allows #Fontra to emulate glyph positioning while maintaining interaction between it and manually written feature code.

    For context. Font editors will generate positioning features from kerning and anchor data in the font.

    Sometimes one wants to add some other feature code before or after the generated ones (e.g. move a dot contextual after being positioned by the default anchor to avoid a clash that happens only in a certain context). The order of the generated and manual code is important, since one might depend on the output of the other.

  21. RE: typo.social/@fontra/1161830165

    The blog post is a very interesting write-up, I suggest everyone interested in the font making to read it.

    The technical part at the end is the most interesting to me. I’m particular proud of the very neat trick that allows #Fontra to emulate glyph positioning while maintaining interaction between it and manually written feature code.

    For context. Font editors will generate positioning features from kerning and anchor data in the font.

    Sometimes one wants to add some other feature code before or after the generated ones (e.g. move a dot contextual after being positioned by the default anchor to avoid a clash that happens only in a certain context). The order of the generated and manual code is important, since one might depend on the output of the other.

  22. Ultimately success!
    I didn't know that #Fontra , which is so easy to build from sources in a workstation, will be so difficult to build from sources (the recommended way) in #Flatpak builder in #docker sand-boxed environment. But now it will be made available for both x86_64 and aarch64 linux after testing and fine-tuning.

  23. Ultimately success!
    I didn't know that #Fontra , which is so easy to build from sources in a workstation, will be so difficult to build from sources (the recommended way) in #Flatpak builder in #docker sand-boxed environment. But now it will be made available for both x86_64 and aarch64 linux after testing and fine-tuning.

  24. Though released 3 months later, , #fontra #flatpak download has already overtaken the #snap package usage

  25. Though released 3 months later, , #fontra #flatpak download has already overtaken the #snap package usage

  26. I looked extensively but I’m confused about one thing; on the latest Mac desktop build, how may I add handles to a line please? I have a square that I want to modify for instance, I cannot get how to add handles / transform the points to curve points #fontra

  27. I looked extensively but I’m confused about one thing; on the latest Mac desktop build, how may I add handles to a line please? I have a square that I want to modify for instance, I cannot get how to add handles / transform the points to curve points #fontra

  28. I looked extensively but I’m confused about one thing; on the latest Mac desktop build, how may I add handles to a line please? I have a square that I want to modify for instance, I cannot get how to add handles / transform the points to curve points #fontra

  29. I looked extensively but I’m confused about one thing; on the latest Mac desktop build, how may I add handles to a line please? I have a square that I want to modify for instance, I cannot get how to add handles / transform the points to curve points #fontra

  30. I looked extensively but I’m confused about one thing; on the latest Mac desktop build, how may I add handles to a line please? I have a square that I want to modify for instance, I cannot get how to add handles / transform the points to curve points #fontra

  31. Problem of working with both #Fontra and #Fontforge in my project is Fontra follows Glyphs convention in naming glyphs which Fontforge do not like as the contains hyphen in name .
    So created a script to rename all glyphs to uniXXXX format format in Fontforge
    gitlab.com/mitradranirban/font

  32. Problem of working with both #Fontra and #Fontforge in my project is Fontra follows Glyphs convention in naming glyphs which Fontforge do not like as the contains hyphen in name .
    So created a script to rename all glyphs to uniXXXX format format in Fontforge
    gitlab.com/mitradranirban/font

  33. Today, in Things You Can Do With Fontra Pak, featuring @letterror's LTR Very Bauble:
    - Drop variable TTF onto app
    - View glyph set
    - Explore designspace
    - Use filter to find some glyphs
    - Select glyphs, double-click or hit enter
    - Explore designspace with glyphs
    - View outline / points / topology while navigating designspace

    #fontra

  34. Today, in Things You Can Do With Fontra Pak, featuring @letterror's LTR Very Bauble:
    - Drop variable TTF onto app
    - View glyph set
    - Explore designspace
    - Use filter to find some glyphs
    - Select glyphs, double-click or hit enter
    - Explore designspace with glyphs
    - View outline / points / topology while navigating designspace

    #fontra

  35. Today, in Things You Can Do With Fontra Pak, featuring @letterror's LTR Very Bauble:
    - Drop variable TTF onto app
    - View glyph set
    - Explore designspace
    - Use filter to find some glyphs
    - Select glyphs, double-click or hit enter
    - Explore designspace with glyphs
    - View outline / points / topology while navigating designspace

    #fontra

  36. Today, in Things You Can Do With Fontra Pak, featuring @letterror's LTR Very Bauble:
    - Drop variable TTF onto app
    - View glyph set
    - Explore designspace
    - Use filter to find some glyphs
    - Select glyphs, double-click or hit enter
    - Explore designspace with glyphs
    - View outline / points / topology while navigating designspace

    #fontra

  37. Today, in Things You Can Do With Fontra Pak, featuring @letterror's LTR Very Bauble:
    - Drop variable TTF onto app
    - View glyph set
    - Explore designspace
    - Use filter to find some glyphs
    - Select glyphs, double-click or hit enter
    - Explore designspace with glyphs
    - View outline / points / topology while navigating designspace

    #fontra

  38. A dear type-friend just asked me, if I have a recommendation to outsource CJK. I assume for a corporate project.

    Are there smaller studios doing this, or does one have to go with the big established studios like Sandoll?

    (I did mention, that @blackfoundry is including tools for CJK into #Fontra (@justvanrossum).

    Please boost #CJK

  39. TFW your project reaches four digit PR/issue numbers

    Feeling good: a lot got done
    Feeling hopeful: still a lot to do...

    #fontra

  40. Today I'll do a more in-depth online demo of the current state of #Fontra, as part of @Typographics's TypeLab program.

    It starts at 19:00 CEST, but the website will tell you your local time:
    2023.typographics.com/typelab/

    It is free but you must register.

  41. A video isn't available, but here are the slides of our #Fontra presentation at #ATypI: fontra.xyz/Fontra_ATypI_2023.p

  42. If you're at #ATypI: we will be talking about our browser-based font editor #Fontra on Friday, from 12:00 until 12:30 in Salle 108. Perhaps there will be some stickers left! #BlackFoundry

  43. Things aren't real until you've got stickers. Come say hi in Paris! #fontra #atypi

  44. A dear type-friend just asked me, if I have a recommendation to outsource CJK. I assume for a corporate project.

    Are there smaller studios doing this, or does one have to go with the big established studios like Sandoll?

    (I did mention, that @blackfoundry is including tools for CJK into #Fontra (@justvanrossum).

    Please boost #CJK

  45. A dear type-friend just asked me, if I have a recommendation to outsource CJK. I assume for a corporate project.

    Are there smaller studios doing this, or does one have to go with the big established studios like Sandoll?

    (I did mention, that @blackfoundry is including tools for CJK into #Fontra (@justvanrossum).

    Please boost #CJK