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.

opsz dogma/rationale

See original GitHub issue

The text for the opsz coordinate check is confusing, largely because the source text (Microsoft OT spec variable axes) is confusing:

FB docs:

The variable font ‘opsz’ (Optical Size) axis coordinate should be between 9 and 13 on the ‘Regular’ instance.

Rationale from Microsoft:

According to the Open-Type spec’s registered design-variation tag ‘opsz’ available at https://docs.microsoft.com/en-gb/typography/opentype/spec/dvaraxistag_opsz If a variable font has a ‘opsz’ (Optical Size) axis, then the coordinate of its ‘Regular’ instance is recommended to be a value in the range 9 to 13.

“Regular” as an instance name on the optical size axis doesn’t make any sense. “Regular” is the 400 weight and has nothing to do with the optical size. This implies that a 400 weight on the 9-13 opsz axis would be called “$fontname Regular Regular.”

I know we’ve had this discussion before, but I am still very unsatisfied. I can’t recall a single example of a font that was released before variable font tech was created where the smallest size is called the regular: it’s called something like “Text” or even just by the intended point size. I believe there was some discussion that naming optical size weights by point size is less logical in a digital type world, but that doesn’t stop us from using the traditional “Text”/“Display” model of optical size naming. The spec does not say that the “regular” instance should be named “Regular”; my interpretation is that the origin should be in the 9 to 13 range.

If we’re just going to say in the FB docs that the GF spec is this because Microsoft/developers of the OT spec say so, then that’s a thing and so it is, but I really think we ought to acknowledge the inherent confusion in such a naming scheme somewhere. At the very least, a font without an opsz instance named Regular should be given a WARN and not a FAIL.

Issue Analytics

  • State:open
  • Created 4 years ago
  • Comments:10 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
dberlowcommented, Dec 6, 2019

I don’t think that the instance along the optical size axis that is the default weight, width or any other axes, has a default size of “regular”. I believe it is regular and the optical size value number. As for what that number is, I have defined 14 in two ongoing vfs, with no complaints from clients, authors of the spec, or applications.

0reactions
m4rc1ecommented, Jan 3, 2020

I see now, it’s raising both a FAIL and a WARN if an instance name contains either “Display” or “Text”. Dave, since we want opsz to use point sizes, shall this check raise a FAIL only?

Read more comments on GitHub >

github_iconTop Results From Across the Web

No results found

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