As I understand from Erwin's old post one em is equal to the current point size, and the em-units are to enable us to define a font w.r.t. that. For example, in a font with units_per_em=1024, a point with y=512 will be half the point size above the baseline. On screen that is translated into so many pixels as per the formula indicated by Erwin in that post.
Now I have seen that not all fonts at the same point size have the same vertical advance. When I use two fonts at 12 pt size, it is possible that one font is "taller" than the other. Even when both fonts are being typeset in "single" line spacing, this is so. This has always baffled me. I mean, then what is the meaning of the point size? I have had to say "Line Spacing: Exactly 18 pt" or some such arbitrary size (which "looks OK" for me) to get evenly spaced lines even when I am using the same point size.
I hope I understand correctly that:
- the vertical advance is the sum of the ascent and descent.
- if ascent + descent == units_per_em, then the actual vertical advance would be the same as the defined point size
- if ascent + descent != units_per_em (it can be > units_per_em or < units_per_em), then the actual vertical advance would be: (ascent+descent)/(units_per_em) -- this can even be smaller than the define point size!
In which case, what is the meaning of the line spacing setting in word processors? Do I understand correctly that double line spacing in fact means double the vertical advance (which is ascent + descent) and not double the point size?
[Just thinking out loud to ensure my understanding is correct...]