[mpeg-OTspec] CFR ascender and descender

Levantovsky, Vladimir vladimir.levantovsky at monotype.com
Tue Nov 19 16:46:43 CET 2013


Hi Ken,

I am not sure if using OS/2 sTypo... values would be a good choice because in the majority of fonts the actual values recorded in those fields can't really be trusted. Back in 2008, when the new OS/2 version 4 was introduced - one of the changes was an additional flag (bit 7) in OS/2.fsSelection field (http://www.microsoft.com/typography/otspec/os2.htm#fss) that is supposed to indicate whether the sTypo metrics can be used. So far, in the Win7 font folder there is only one font that introduces support for OS/2 ver.4 - all other fonts use older OS/2 versions.

So, for these reasons I would hesitate to recommend using the sTypoAscender and sTypoDescender values unless the bit 7 of OS/2.fsSelection is set. It may be more prudent to consider going with the approach that is outlined in the "Recommendations" clause, "Baseline to Baseline Distances" section that suggests using values that are platform-specific. In particular, I would suggest to at least consider the following strategy:
- if the CFR <FontMetrics> element defines ascender and descender values - the implementation will use the values defined by a CFR author;
- if the ascender and descender values are not explicitly defined, the implementation will use the first, highest-priority component font to determine the ascender and descender values according to the algorithm defined in the "Baseline to Baseline Distances" section of the OT/OFF "Recommendations" clause.

Comments?

Thank you,
Vlad



> -----Original Message-----
> From: Ken Lunde [mailto:lunde at adobe.com]
> Sent: Monday, November 18, 2013 11:45 PM
> To: Levantovsky, Vladimir
> Cc: Chapman, Christopher; OTspec (mpeg-OTspec at yahoogroups.com)
> Subject: Re: [mpeg-OTspec] CFR ascender and descender
> 
> Vladimir,
> 
> I feel that the most reasonable *default* (meaning when the values are
> not explicitly specified) values should come from OS/2.sTypoAscender
> and OS/2.sTypoDescender. If the CFR object author wants anything else,
> they should explicitly set the values. A CFR object author should have
> access to the fonts that are referenced, and if OS/2.sTypoAscender and
> OS/2.sTypoDescender are not set to the values that they desire, they
> should be overridden.
> 
> -- Ken
> 
> On Nov 19, 2013, at 6:09 AM, Levantovsky, Vladimir
> <vladimir.levantovsky at monotype.com> wrote:
> 
> > Thank you Christopher, you brought up a very good point.
> >
> > Folks, just FYI - the latest corrigendum is currently under ballot so
> if there are any additional changes needed we can introduce them via
> ballot comments but we need to finalize the comments and do it quickly.
> >
> > Ken, Tony - what are your thoughts on this particular issue, should
> we add a clarification in the spec language so that both CFR authors
> (when the ascender/descender values are provided by them) and the
> implementers (when the values are inherited from a highest priority
> component) would have a clear guidance on what fields to use as a
> reference?
> >
> > Thank you,
> > Vlad
> >
> > > -----Original Message-----
> > > From: mpeg-OTspec at yahoogroups.com
> > > [mailto:mpeg-OTspec at yahoogroups.com]
> > > On Behalf Of Chapman, Christopher
> > > Sent: Monday, November 18, 2013 4:02 PM
> > > To: OTspec (mpeg-OTspec at yahoogroups.com)
> > > Subject: RE: [mpeg-OTspec] CFR ascender and descender
> > >
> > > Hi Folks,
> > >
> > > Ken and John, thanks for your responses to my question.
> > >
> > > The word "typographic" was not so helpful a clue because the
> > > Microsoft typography webpage for the hhea table has:
> > > FWORD	Ascender	Typographic ascent. (Distance from baseline of
> > > highest ascender)
> > > FWORD	Descender	Typographic descent. (Distance from baseline of
> > > lowest descender)
> > > [source: http://www.microsoft.com/typography/otspec/hhea.htm]
> > >
> > > I checked 556 fonts that I had in my \Windows\Fonts directory and
> > > found that in 395 of them (i.e. about 71%) hhea.ascender and
> > > hhea.descender were not identical to OS/2.sTypoAscender and
> > > OS/2.sTypoDescender, so it seems that not all font tools follow the
> > > practice of making those attributes match.
> > >
> > > I think it would be helpful to add some text to the CFR spec.
> > > clarifying from which OpenType font metrics a CFR should inherit
> its
> > > metrics if they are not explicitly specified in the CFR's XML,
> > > especially in the case of ascender and descender. Thanks.
> > >
> > > Cheers,
> > > Christopher
> > >
> > >
> > > ------------------------------------
> > >
> > > Yahoo Groups Links
> > >
> > >
> > >
> >
> > 




More information about the mpeg-otspec mailing list