Should ascenders/descenders match the "Ascender" and "Descender" vertical metric values?

Rishi Murugesan
Rishi Murugesan Posts: 7
edited February 2023 in Technique and Theory
(I am a student in the TypeWest program so please forgive any basic questions.)

I have a question about metrics: Should the ascenders/descenders match the metrics we are using? For example: If my Ascender metric is 800, should the stem of the “b” touch/reach the 800 position?

I’ve seen various typefaces use different types of alignment and I’ve made my findings into a diagram below. You can right-click and "Open Image in New Tab" to make the image bigger.



I’d love to know about best practices since not “reaching” the metric value leaves more space. Let me know if this question is confusing and I can try to clarify.

(I am using a 1000 UPM grid by the way.)

Comments

  • Thomas Phinney
    Thomas Phinney Posts: 2,889
    edited February 2023
    First off, the relative sizes of your actual caps, x-height and actual glyph ascender and descender should be dictated by the design, not by any theoretical metrics requirements. There is no need or reason to compromise the typography/design in this sense.

    Especially true for things like whether your ascenders (of the actual glyphs) are higher than your caps and by how much.

    Afterwards, you can scale glyphs, or change the em, if the relationship to “standard” sizes is out of whack. Obviously best to figure this out before you have too many glyphs!

    And then… there isn’t just one ascender metric value (and descender, etc.), but technically three, in the font data.  

    Google Fonts’ detailed advice about setting these values can be found here: https://github.com/googlefonts/gf-docs/blob/main/VerticalMetrics/README.md

    That is not the ONLY possible scheme, but it is at least one of the reasonably sane ones.   :D
  • Thank you for the quick answers! 

    Should I start drawing first and add metrics after? Or should I set up some general metrics before drawing and modify them at the end?

    I've been setting up my metrics first and drawing to fit them but I don't know if that's the best way to do things.
  • John Hudson
    John Hudson Posts: 3,204
    You want to start by ensuring that the size of the tallest and deepest glyphs that are used in most common text—e.g. Latin lowercase ascender and descender letters—do not exceed the em height of the typeface design space. So if, for example, you are designing on a 1000 UPM grid, then these glyphs should not exceed that height, and in common practice will be slightly shorter.

    See also this detailed thread on vertical metrics.
  • @Rishi Murugesan: Set up some sort of metrics after drawing your first few glyphs. Review occasionally, during the early stages of design. Recheck again once the design is reasonably locked down.
  • Igor Freiberger
    Igor Freiberger Posts: 275
    edited February 2023
    Suggestion: design an n, create a h from it. Flip the h and create a sort of p. Draw a diacritic over the h and below the p. Ideally, the measurements of (ascender) + (diacritics) + (descender) should sum 1000.

    Almost surely you will change these early designs, but here you have a start point with room for diacritics. And please note that this sum is a possible approach, not a definitive rule. Many designers prefer to work with different criteria.

    Most fonts are drawn with equal values to ascender and descender. Some, like me, prefer to make descenders a bit shorter than ascenders. It's a design choice, not a rule.

    Another item is the existence of stacked diacritics in some languages. I do not consider them in the vertical metrics because it compromises the design too much. And people who use these languages can avoid line collision just increasing the text leading.

    Finally, all what I wrote is good for Latin, Greek, and Cyrillic scripts. But for other scripts the needs are different and you need other criteria.
  • Cristóbal Henestrosa
    edited February 2023
    Related question: I am updating my Espinosa Nova, and I totally forgot that the Regular and the Italic have different vertical metrics and why I decided that at that time (2010). The Regular is inside the 1000 UPM grid, but the Italic is not (see the red lines).
    I imagine four possibilities:
    a) To use the Regular vertical metrics for the Italic, even if the ascenders and descenders exceed the 1000 units (760 + 307 = 1067).
    b) To use different vertical metrics for Regular and Italic, (i. e., 1000 UPM for the Regular and 1067 UPM for the Italic), which is the current state of the family, and it seems to work OK.
    c) To use the 1067 UPM Italic vertical metrics for the Regular, even if the Regular doesn’t need those 67 extra units.
    d) To reduce ascenders and descenders in the Italic… although I’d like to keep them as they are, in order to be faithful to the original Renaissance types I used for reference, and because it emphasizes the fact that presumably they were not to be thought as a family, but rather as independent fonts.
    What are your thoughts on this?
  • John Hudson
    John Hudson Posts: 3,204
    @Igor Freiberger
    Suggestion: design an n, create a h from it. Flip the h and create a sort of p. Draw a diacritic over the h and below the p. Ideally, the measurements of (ascender) + (diacritics) + (descender) should sum 1000.
    Relatively few natural language orthographies involve diacritic marks over the ascender height or below the descender depth, and what you propose would make the letters unusually small on the em.

    Even when making specialist fonts that support unusual notation systems and vertical stacks, I try to avoid making the basic letter shapes too small on the em, and instead accommodate the taller space requirements elsewhere in the vertical metrics. I try to design my basic letters relative to the em such that at e.g. 12pt the size of the letters is within a conventional range of what people think of as 12pt visual size.
  • John Hudson
    John Hudson Posts: 3,204
    @Cristóbal Henestrosa

    Your (d) option seems reasonable given the historic sources and your desire to be faithful to them and what they represent about the way roman and italic typefaces were combined. I suppose the question is really what experience you want users to have, and whether it is important to cater to expectations based on established conventions of harmonised type families?

    From your illustration, I would say that the italic looks quite massive relative to the roman—not only in terms of the extenders but also the x-height and some stem weights—, so rather than shortening the ascenders and descenders, you could perhaps keep the design as it is, but scale it completely to harmonise with the proportions of the roman.

    [I often make my italic x-height slightly shorter than that of the roman, because the slanted strokes are longer than the vertical ones, and create the optical effect of italic x-height looking larger than the roman when actually the same size.]
  • Igor Freiberger
    Igor Freiberger Posts: 275
    edited February 2023
    @Igor Freiberger
    Suggestion: design an n, create a h from it. Flip the h and create a sort of p. Draw a diacritic over the h and below the p. Ideally, the measurements of (ascender) + (diacritics) + (descender) should sum 1000.
    Relatively few natural language orthographies involve diacritic marks over the ascender height or below the descender depth, and what you propose would make the letters unusually small on the em.

    Diacritics above ascender are very near to the diacritics above uppercases in traditional design. This small difference will not make letters unusually small. Even if the font has no support for languages with diacritics above the ascenders, the suggestion I gave will allow room for UC diacritics plus a small free space.

    As I said, it's a start point suggestion to new designers establish their own criteria, not a rule. I believe that, when we are starting in type design, almost no font will preserve its initial metrics. We always improve them as long as we advance.
  • John Hudson
    John Hudson Posts: 3,204
    As I said, it's a start point suggestion to new designers establish their own criteria, not a rule. I believe that, when we are starting in type design, almost no font will preserve its initial metrics. We always improve them as long as we advance.
    We should be clear about different kinds of metrics. Lots of things will change over the course of a design, as you say, but scaling everything relative to the UPM is best avoided if at all possible, because it introduces small rounding errors in coordinate location all over the design that then need to be found and fixed.* So establishing the scale of the outlines relative to the UPM is something that should be done at the beginning of the design process, and shouldn’t be considered something that can easily be changed later.

    With regard to diacritics above uppercase letters, I typically allow these to extend beyond the UPM height, because making them fit does require ‘casting the letters small on the body’. For example, the red lines in this image show the UPM height in the Brill types, and that is an example of a design that I deliberately made slightly shorter than usual on the body because I knew it would frequently be used with a lot of diacritics:

    This, from Constantia, is more typical of what I do for a general purpose text font, with the body height close to the lowercase ascender + descender:




     * Yes, it is possible to work with fractional coordinates, but a) this is messy to work with and b) you end up having to round elsewhere in the production chain for some font formats, so I always work in full UPM coordinate integers.
  • jeremy tribby
    jeremy tribby Posts: 246
    edited April 2023
    If you're making a neo-grot, make the dimensions similar to SF Text/Roboto. If it's a geo, whichever Futura is on your system. Mono: Courier. Serif, Times or Georgia. Etc.
    I wonder what the user expectations are for a typeface with a compressed/ultracondensed width are? is it just to fit in with a hypothetical full family of widths,  e.g. SF compressed and regular width? I've been playing around with a few different strategies that all have pros and cons in typesetting, but I think I would ultimately defer to the "Times" etc method you're suggesting
  • PabloImpallari
    PabloImpallari Posts: 806
    edited April 2023
    This are the ones I typically use as reference: 
    Ǻ ķ - for Basic Latin
    ẲṌ Ṏ Ṑ Ṓ Ṥ Ṧ ỵ - for Latin Extended