Vertical Metrics - AmIright?
Jason Campbell
Posts: 100
So I've been struggling against versus vertical metrics issues for what seems like my entire career. So since you all know what you're talking about, I wanted to double check that one assumption I make is correct.
In OpenType fonts we've got 3 sets of places to set the ascent and descent (and sometimes linegap), not counting the Ymin and Ymax reported. From what I've seen many applications/programs/systems use one set of these values to space type, but they use the chosen set to set line to line distance as well as the clipping zone. Doesn't this not make sense? It seem that the clipping zone should be set from the Ymax and Ymin values, while the Ascent and Descent values ahould be used for line to line distance.
If that doesn't make sense, picture a block of three lines of text set in Upper and lower case. If for some reason in your font you have an accented lower case character that's exceptionally high, that raises the Ymax considerably. But you might not want to set the ascent to the same value, as the odds of that character appearing directly below a descender are slim. So you've set the ascent to something more reasonable. But you wouldn't want that tall glyph to be cut off if it appeared on the first line of your text block. So in that case, the first line should be placed based on the Ymax in the font, but the following lines should be placed based on the Ascent+descent.
It seems like I've seen the metrics values used for both too often. I should note that there is another way to identify the clipping zone, by using the cached values in the VDMX table. This obviously works well if the calculating and caching program is good, but isn't used often.
In OpenType fonts we've got 3 sets of places to set the ascent and descent (and sometimes linegap), not counting the Ymin and Ymax reported. From what I've seen many applications/programs/systems use one set of these values to space type, but they use the chosen set to set line to line distance as well as the clipping zone. Doesn't this not make sense? It seem that the clipping zone should be set from the Ymax and Ymin values, while the Ascent and Descent values ahould be used for line to line distance.
If that doesn't make sense, picture a block of three lines of text set in Upper and lower case. If for some reason in your font you have an accented lower case character that's exceptionally high, that raises the Ymax considerably. But you might not want to set the ascent to the same value, as the odds of that character appearing directly below a descender are slim. So you've set the ascent to something more reasonable. But you wouldn't want that tall glyph to be cut off if it appeared on the first line of your text block. So in that case, the first line should be placed based on the Ymax in the font, but the following lines should be placed based on the Ascent+descent.
It seems like I've seen the metrics values used for both too often. I should note that there is another way to identify the clipping zone, by using the cached values in the VDMX table. This obviously works well if the calculating and caching program is good, but isn't used often.
1
Comments
-
10
-
It’s also a good idea to consider the Font BBox metrics, and standardize the vertical values in a type family.
As I understand it, some layout apps will use the top vertical value to position type in a text box, rather than anything else.
I've found this to be a problem in newspaper systems.0 -
@Matthew: I know, I'm familiar with that. My complaint is more the use of them in applications.
@Nick, I actually agree with using the BBox limits to position the first line, that's a good way to prevent clipping. But getting them the same across families is a good point.
OK, this was really just a rant, and probably directed to the wrong audience. Please continue...0
Categories
- All Categories
- 43 Introductions
- 3.7K Typeface Design
- 799 Font Technology
- 1K Technique and Theory
- 617 Type Business
- 444 Type Design Critiques
- 541 Type Design Software
- 30 Punchcutting
- 136 Lettering and Calligraphy
- 83 Technique and Theory
- 53 Lettering Critiques
- 483 Typography
- 301 History of Typography
- 114 Education
- 68 Resources
- 498 Announcements
- 79 Events
- 105 Job Postings
- 148 Type Releases
- 165 Miscellaneous News
- 269 About TypeDrawers
- 53 TypeDrawers Announcements
- 116 Suggestions and Bug Reports