[mpeg-OTspec] Re: [OpenType] RE: Proposal: deprecate ReqFeatureIndex

Sairus Patel sppatel at adobe.com
Thu Aug 23 17:27:40 CEST 2012


On 08/22/2012 08:59 PM, Peter Constable wrote:
> But the bigger issue is that there's an important distinction between ReqFeatureIndex and mandatory r* features, as I've tried to point out already: ReqFeatureIndex is a property of a language system, whereas mandatory r* features are applicable to all language systems or, perhaps, even all scripts.

I'm not sure I understand this either, Peter.

The LangSys table, including the DefaultLangSys (http://www.microsoft.com/typography/otspec/chapter2.htm), includes:
(1) a ReqFeatureIndex, and
(2) a bunch of "regular" feature indices.

Architecturally, the only difference between (1) and (2) is some notion of "requiredness" for (1), and the fact that (1) has no standard feature tag associated with it.

*** Other than that, they are identical and participate equally in script- or language-specific behavior. (Recall the DefaultLangSys doesn't have any language tag associated with it, and so ReqFeatureIndex can be used for script-specific behavior as well.) ***

As you point out, *some* feature tag needs to be present in the associated FeatureRecord for (1). However, this tag can be anything -- it could even be set to 0 (zero). It doesn't have to be set to anything unique in the font at all (though it might happen to be human-readable like 'RQD ' because of the font generating tool's user-facing syntax). The caller of the GSUB/GPOS engine should never be specifying this tag, because, well, there's no standard tag associated with ReqFeatureIndex. The GSUB/GPOS engine should *always* be applying (1).
 
The other "regular" feature indices in the LangSys of course are associated with FeatureRecords with well-known tags, well-known because they need to be invoked by tag name by the caller of the GSUB/GPOS engine. Thus, any particular feature tag can be associated with a different set of lookups for each script+language and script+dflt combination supported by the font.

I hope this helps.

Sairus

 
-----Original Message-----
From: listmaster at indx.co.uk [mailto:listmaster at indx.co.uk] On Behalf Of Behdad Esfahbod 
Sent: Thursday, August 23, 2012 6:05 AM
To: multiple.recipients.of.OpenType at inbound-smtp-2.adobe.com
Subject: Re: [mpeg-OTspec] Re: [OpenType] RE: Proposal: deprecate ReqFeatureIndex

Message from OpenType list:


On 08/22/2012 08:59 PM, Peter Constable wrote:
> But the bigger issue is that there's an important distinction between ReqFeatureIndex and mandatory r* features, as I've tried to point out already: ReqFeatureIndex is a property of a language system, whereas mandatory r* features are applicable to all language systems or, perhaps, even all scripts.

I'm not sure I understand this.  Each feature has to be enumerated for each language system too.

behdad




More information about the mpeg-otspec mailing list