[OTVar] What privileges do "registered" axes have?

Dave CrosslandDave Crossland Posts: 858
edited November 26 in Technique and Theory
In another thread Peter Constable said,
A bit of feedback on this font -- which also applies to Amstelvar: these are using custom axes, but are not following the spec requirements for custom axis tags:
Like other OpenType tags, axis tags are four unsigned bytes that can equivalently be interpreted as a string of four ASCII characters. Axis tags must begin with a letter (0x41 to 0x5A, 0x61 to 0x7A) and must use only letters, digits (0x30 to 0x39) or space (0x20). Space characters must only occur as trailing characters in tags that have fewer than four letters or digits.

Privately-defined axis tags must begin with an uppercase letter (0x41 to 0x5A), and must use only uppercase letters or digits. Registered axis tags must not use that pattern, but can be any other valid pattern.
https://www.microsoft.com/typography/otspec/fvar.htm has details on axis tag requirements.
I am curious about the part I have marked in bold above. 

I can see that "Privately-defined" axis tags can only use uppercase letters or digits in order to differentiate them from "Registered axis" tags at-a-glance. 

But this makes me concerned about what kinds of privileges "registered" axes have over what were, last time I looked, called "custom" axes? 
Tagged:

Comments

  • John HudsonJohn Hudson Posts: 1,236
    edited February 11
    Registered axes have standardised scales to enable interoperability with various kinds of layout functionality, e.g. CSS weight classes. Indeed, the principal reason for registering an axis is to establish such a scale.

    The process of registering an axis is really a process of specification. It's not enough to say, 'I'm using this axis tag in my fonts, and would like it to be registered.' The OT font variations model for registered axes in the fvar table (and corresponding entries in the stat table) requires a lot of decisions to be made about how the thing should work, what dependencies it will produce, how it should be interpreted. And of course, every new registered axis implies an fvar and stat table version update, so quite a different kettle of fish to e.g. OpenType Layout feature tags, which exist as a separate repository external to the GSUB and GPOS tables.

    There are going to be plenty of custom axes that are never going to be candidates for inclusion in the specification at that level, and I think that's fine. Some of them will simply be too design-specific and not generalisable. Some will not have an obvious scale, or will not commend themselves to interoperable functionality. And that's all fine, because an ecosystem of fonts with custom and perhaps unique design spaces is one of the things that variable font technology should encourage.

    Now, what I do think would be helpful, for both developers and users of variable fonts, is a repository of custom axis names, tags, descriptions, and examples. This would be external to the OT specification, and would be a place for the font maker community to document the kinds of things they are putting into fonts, and how they are designed to work. It offers the possibility of ad hoc standardisation of names and tags for axes that do the same thing, and even of interoperability between fonts if similar scales are employed. I think it would also provide a means to identify axes that would be candidates for registration in the OT specification.
  • Thank you John! I note that you keep using the word "custom" while the spec now uses the word "private." Is there a material difference in these terms, or is a rose a rose? :)
  • John HudsonJohn Hudson Posts: 1,236
    I don't think there's a material difference in the terms. I suppose 'private' makes the point that, like the Unicode Private Use Area, custom axes can make no claims or assumptions of interoperability. So, if I make a font with a Funky axis—how unlikely is that!— and David Jonathan Ross makes a font with a Funky axis, no one should assume that they do the same kind of things or use the same kind of scale.
Sign In or Register to comment.