WinAscent, WinDescent, and Font Metrics

Post general font related questions (e.g. how to install, convert and use fonts) and requests (looking for fonts, designers etc.) here.
Post Reply
Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 9878
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK
Contact:

WinAscent, WinDescent, and Font Metrics

Post by Bhikkhu Pesala »

I often use the Gentium font and recommend it for Pāli publications as it is a well designed font with a full range of characters for many languages. Because I only use it for Pāli, I never noticed any problems with it. However, if you tried to use some characters you would notice that they are clipped. Latin Capital A with ring above and acute (decimal codepoint 506) looks instead just like A ring. The acute accent is completely clipped in Windows applications such as Page Plus 11 and Wordpad.

This is because that glyph is higher than the Win Ascent.
WinAscent.png
WinAscent.png (3.46 KiB) Viewed 19650 times
Similarly, Combining double low line (decimal codepoint 819) is partly clipped, as it sits below the WinDescent.
WinDescent.png
WinDescent.png (2.82 KiB) Viewed 19657 times
In Font Creator we can easily fix this with Format, Settings, Metrics, Maximum, Calculate. However, this greatly increases the font's default line-spacing. I wonder why the font was designed like this? Is it just a mistake, or will fonts like this work fine without being clipped in modern Windows or Macintosh Applications?

In my fonts, I redesign the stacking diacritics so that they take up much less vertical space, but this makes them looked cramped.
Last edited by Bhikkhu Pesala on Sat Jun 10, 2006 10:58 am, edited 1 time in total.
My FontsReviews: MainTypeFont CreatorHelpFC15 + MT12.0 @ Win 10 64-bit build 19045.2486
William
Top Typographer
Top Typographer
Posts: 2038
Joined: Tue Sep 14, 2004 6:41 pm
Location: Worcestershire, England
Contact:

Post by William »

I found the following in the GENTIUM-FAQ.txt file which is included in the Gentium download zip package.

quote

What is GentiumAlt?

It is a version of the font with redesigned diacritics (flatter
ones) to make it more suitable for use with stacking diacritics, and
for languages such as Vietnamese. The Greek glyphs also use the
Porsonic (single-curve) design for the circumflex. Since Gentium
does not currently include any 'smart' rendering routines, there is
no easy way to access these alternate diacritic shapes from within
the regular Gentium font. The encoding of the fonts are the same, so
the same text can be viewed with either one. There is also no
problem with having both font families installed at the same time.

end quote

Is this anything to do with the matter which you have raised?

William Overington
Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 9878
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK
Contact:

Post by Bhikkhu Pesala »

Gentium Alt uses the same flat acute that you see above, and it suffers from the same problem as Gentium Regular. A Ring Acute and a few other glyphs cross over the WinAscent or WinDescent lines.

Image

Download the Gentium font and take a look. It is still a very nice font, but it won't work fully unless the metrics are corrected. I wonder if the designer is aware that the glyphs he designed so carefully, won't print as he intended. Most characters are fine, just some of the capitals are too tall. If you use FontCreator to fix the metrics, default line-spacing for 10 point text will change from 11.3 points to about 14.5 points — much too widely spaced for regular English text. I aim to get 12 point line-spacing for 10 point text. Of course, you can apply fixed line-spacing in your word-processor, but you shouldn't have to.

Gentium Regular

Gentium Alt

The metrics you need are WinAscent +WinDescent + LineGap = 2048 * 1.2 = 2458

WinDescent is negative, so you add its positive value.
My FontsReviews: MainTypeFont CreatorHelpFC15 + MT12.0 @ Win 10 64-bit build 19045.2486
Dick Pape
Top Typographer
Top Typographer
Posts: 1360
Joined: Wed Oct 01, 2003 1:19 pm
Location: North Dallas, Texas

Hmm

Post by Dick Pape »

(Rather slow in thinking about this).

Apparently, Font Creator doesn't take into account composite figures when it recalculates the Metrics, so the font remains unprintable unless you manually fix the values as so many of the tall glyphs are composites.

I too am surprised the font isn't "normal" in this aspect. There must have been some other motives for designing this.
Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 9878
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK
Contact:

Re: Hmm

Post by Bhikkhu Pesala »

Dick Pape wrote:Apparently, Font Creator doesn't take into account composite figures when it recalculates the Metrics
No. It's not that. If you use the default setting, and click calculate, FontCreator will calculate metrics based on the ANSI character set. However, the stacking diacritics such as those illustrated above are not in the ANSI character set, so you have to use the maximum setting to include all glyphs in the font during the calculation.

As far as I know, the manual doesn't make this clear. The maximum option is not explained.

The reason for using the default setting would be to maintain a more aesthetically pleasing default line-spacing for the font. What I assume is that Word and some other important applications — maybe PageMaker and InDesign — will not crop the accents that extend beyond the WinAscent and WinDescent line, although many other applications do crop them. If that were not the case, I cannot see how these fonts could be useful to anyone for type-setting Vietnamese.

Try setting this text in Word using the Gentium font to see if it gets cropped as it does in Wordpad.

Ả Ấ Ầ Ẩ Ẫ Ậ Ắ Ằ Ẳ Ẵ
Stacking Diacritics.png
Stacking Diacritics.png (17.72 KiB) Viewed 19654 times
My FontsReviews: MainTypeFont CreatorHelpFC15 + MT12.0 @ Win 10 64-bit build 19045.2486
Dick Pape
Top Typographer
Top Typographer
Posts: 1360
Joined: Wed Oct 01, 2003 1:19 pm
Location: North Dallas, Texas

Truncated and gone

Post by Dick Pape »

ahhhh. Very good. Now I'm surprised FC doesn't always use Maximum. Surprised there are two choices.

Testing my version of Gentium Alt (Vn 1.02) in MS Word 2002 the glyphs ARE truncated ...

Nothing but surprises today!
Last edited by Dick Pape on Sat Feb 10, 2007 2:42 pm, edited 1 time in total.
Erwin Denissen
Moderator
Moderator
Posts: 11158
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Post by Erwin Denissen »

I'll add some more information about this topic in the user manual.

FWIW Microsoft and other font and application suppliers are aware of the problem related to the vertical font metrics. That's why Microsoft has proposed a solution for problems with defining text line height that font and application developers experience on Windows platform. It will probably take several years before such a solution is widely adopted, but right now it is just a proposal and we first have to wait and see whether is makes it into a future release of the OpenType specifications.
Erwin Denissen
High-Logic
Proven Font Technology
William
Top Typographer
Top Typographer
Posts: 2038
Joined: Tue Sep 14, 2004 6:41 pm
Location: Worcestershire, England
Contact:

Post by William »

> ... Microsoft has proposed a solution for problems with defining text line height ...

Do you have any further information on this please?

William
Erwin Denissen
Moderator
Moderator
Posts: 11158
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Post by Erwin Denissen »

Win Ascent and Win Descent are used to define glyph clipping areas. Almost all applications make use of this, but unfortunately many applications also use these values to calculate default line spacing. To prevent to a too large line height, font designers often decide to lower the Win Ascent and Win Descent values. This way text looks better, as long as you don't use characters that are clipped.

Microsoft wants to introduce a special compatibility flag in the font, which will tell applications that Typo Ascender/ Typo Descender / Typo Line Gap values are correct and can be used to calculate line height. I received the first message about this proposal exactly one year ago!
Erwin Denissen
High-Logic
Proven Font Technology
Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 9878
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK
Contact:

Post by Bhikkhu Pesala »

Back in 1994, when I was using PageMaker Classic, it used to calculate line-spacing based on the point size. That is, if you set the type at 10 points, line-spacing was 12 points by default regardless of the font metrics. If you wanted something different, you could set the default line-spacing to 130% or whatever. It seems like a more reliable solution than calculating leading from the font metrics.

If using Gentium, it wouldn't matter if its default leading was 11.3 points or 14.5 points — PageMaker would still have set 10 point text at 12 points — and one would have adjusted the leading to 13 or 14 points if typesetting Vietnamese text.

Again, for Small Captials, Superscript, or Subscript, there was a default value of 60% or 70% of the point size which the user could change if necessary.

The aesthetically "correct" leading for any given font also depends on the line length — wider blocks of text require more generous leading to look right than do narrow columns. Smaller point sizes may need more leading than larger ones — point size + 2 was a rule of thumb that we used, which is 120% at 10 points, but 125% at 8 points.

I don't think there is any substitute for proper training. Trying to make typesetting and page layout idiot-proof will only breed a new generation of super-idiots.
My FontsReviews: MainTypeFont CreatorHelpFC15 + MT12.0 @ Win 10 64-bit build 19045.2486
William
Top Typographer
Top Typographer
Posts: 2038
Joined: Tue Sep 14, 2004 6:41 pm
Location: Worcestershire, England
Contact:

Post by William »

I have never really understood the font metrics.

Using Format Settings... Metrics one has eight numbers which need setting.

My Sonnet to a Renaissance Lady font might be of interest as a sample font with which to learn about metrics.

http://www.users.globalnet.co.uk/~ngo/SONNETRL.TTF

As I don't really undersatnd the font metrics I have got into the habit of usually setting them as follows.

Typo Ascender, Win Ascent and Ascender are set to 2048.

Typo Descender, Win Descent and Descender are all set to the same negative number, that number being a multiple of 256 and set at or below the value of the lowest point in the font. It is typically -768 or -1024, but is sometimes 0 and in the Chronicle font is -1536.

Typo Line Gap and Line Gap are set to 0.

In passing, the Chronicle font is available from the following link.

http://www.users.globalnet.co.uk/~ngo/CHRONICL.TTF

Using a copy of the Sonnet to a Renaissance Lady font and using FontCreator to calculate the metrics produces numbers different from those which I had chosen.

In particular, the values for Typo Line Gap and Line Gap are not the same and Line Gap changes when calculating using Maximum rather than Default, though Typo Line Gap does not change. Yet removing the contours from the .notdef glyph also changes that!

What are the implications of this please? Will the fonts display differently, and if so, which is better design?

How is line spacing calculated please?

If I am wanting to have FontCreator calculate the metrics, using the Maximum setting for the calculation, it appears that I would need to redesign the .notdef glyph of the font as it overrules the otherwise maximum value!

> Microsoft wants to introduce a special compatibility flag in the font, which will tell applications that Typo Ascender/ Typo Descender / Typo Line Gap values are correct and can be used to calculate line height.

It seems to me that if someone would want to set that flag if it were available for use now, then maybe we could devise a convention of a piece of XML-like code to put in the Format Naming... Macintosh Roman Advanced... Description section now, so that the font contains information of that intention. I am suggesting using the Macintosh Roman section as the text in that section is included as plain text within the font file. The same text could also be included in the corresponding Description section of the Microsoft Unicode BMP Only platform section for completeness, though that is encrypted within the font file.

William
Erwin Denissen
Moderator
Moderator
Posts: 11158
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Post by Erwin Denissen »

Ascender, Descender and Line Gap all Macintosh-specific metrics.

Typo Line Gap is set to 10% of the Units Per Em. If you want to know more about the other metrics, send me a private message.
Erwin Denissen
High-Logic
Proven Font Technology
Post Reply