question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Include proportional spacing information

See original GitHub issue

Hi…I really appreciate all your work on this project and am excited to be able to generate COLR v1 fonts with it!

I see that there was talk about a proportional space flag in issue #230, but that issue was closed and I didn’t find any ongoing discussion. I hope it is okay that I create this issue to revive that discussion, as I would very much appreciate and use a feature like this when generating non-Emoji COLR v1 fonts.

I could imagine it using the width of each SVG’s viewbox as the glyph’s width in the hmtx table, and avoid modifying the left offset so that the glyph positioned is retained from the SVG. I understand nanoemoji is a tool for making emoji fonts, so feel free to close this issue if you feel this is out of scope.

In case you are interested in how I am using nanoemoji, here is a font I released this week (with a custom written hmtx table for the proportional spacing): https://tools.djr.com/misc/bradley-initials/

Thank you for your time, and thanks again for the opportunity to play with this exciting format!

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:11 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
khaledhosnycommented, Jan 3, 2022

Your workflow got me to wondering, are you able to adequately design an ot-svg font without leaving Glyphs (I think it has gradients and so on?)

I’d love to try this. AFAIK the big limitation right now is that there isn’t a way to connect gradients etc on Color layers to CPAL palettes yet (in a search to confirm this, I found that @khaledhosny recently posted about it)

Yes. Please leave a comment on that thread to show there is more interest in using palettes directly. Fontmake setup will create color palettes on the fly from the colors used, but it will not try to use existing palette indices even if the colors match (this was deliberate to avoid using unrelated colors if multiple palettes are set).

FWIW, I don’t mind the existing folder o’ SVGs as a workflow option. It gives me flexibility in what editor I use (right now, Glyphs seems to name every color layer as “Color”, which can get confusing) as well as access to external SVG compression/cleanup tools and the ability to find/replace hex colors with variables directly in the SVG code. But I love the idea of being able to bring over all of the other table data from an existing font file.

I have an earlier setup (see the make file for pointers) using picosvg, nanoemoji and separate SVG files. It works, but it felt a bit hacky and I figured out I didn’t need much beyond what Glyphs Color Layers provide.

FWIW, if you are using Glyphs 3 color layers with gradients, you can create a font with COLRv1 table using fontmake out of box.

I didn’t know fontmake was doing this! I might have some questions for you about Color and Color Palette layers coexisting, but I’ll try a simpler test case and maybe post an issue over there. Thanks so much for letting me know @khaledhosny!

It supports mixing them in the font (since COLRv1 can have COLRv0-style layers) and will always create a COLRv1 table in this case, but not in the same glyph.

1reaction
PeterConstablecommented, Dec 24, 2021

It’s great that Glyphs has support for colour layers and gradients. COLRv1 also has other significant capabilities:

  • transforms
  • compositing modes
  • blending modes
  • variability in VFs

The variability isn’t available in a bag o’ SVGs, but the others are. Hopefully we’ll see ask of these supported in Glyphs and other apps.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Definition of proportional spacing - PCMag
In this encyclopedia, the default text is a proportional typeface, and tables are "monospaced," in which all characters have the same fixed width....
Read more >
What is Proportional Spacing? - Webopedia
The opposite of proportional spacing is monospacing. In a monospaced font, each character has the same width. Non-graphics display screens, display text in ......
Read more >
proportional spacing | SpringerLink
1. The spacing occupied by printed characters according to their natural width. Note: The letter m may require three units of spacing escapement ......
Read more >
Proportional vs. Tabular Figures - Fonts.com
Proportional figures have variable spacing, comparable to that of upper and lowercase characters. This spacing maintains the even, balanced color of the rest...
Read more >
Proportional Spacing with Auto Layout - Use Your Loaf
Building The Constraints In Interface Builder. We need to add two constraints for each image view. Using either the document outline or directly ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found