View Single Post
Old 07-06-2014, 04:11 AM   #216
mandy314
Connoisseur
mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.mandy314 ought to be getting tired of karma fortunes by now.
 
Posts: 71
Karma: 200092
Join Date: Mar 2014
Device: kindle pw1
Here some of my experiences with font's metrics and line-height:

Values for line-height computation are stored in different places within the font, mainly
-- WINAscent and WINDescent pair
-- hhea Ascender, hhea Descender and Line-Gap trio
-- Typo Ascender, Typo Descender and Typo Line-Gap trio

Afaik the Kindle (only ?) uses the hhea values but ignores the Line-Gap.

So for all practical purposes:
- check the EM Unit Size of your font (should be 1000 or 2048 - all other values are relative to the unit size)
- compare WINAscent/WINDescent with hhea Ascender/hhea Descender (should be identical in most cases but the hhea Descender must be a negative value)
- if your font has a Line-Gap>0 you may add the Line-Gap to the hhea Ascender and set the Line-Gap to zero

Font's metrics vary considerably - for example Times New Roman has a Caps-Height of 1341, Caecila of 1434 (both with 2048 EM Unit Size), so Caecilia is quite a bit larger than Times New Roman even with the same point size.
Concerning line-height some fonts (like Georgia or Droid) have "tight lines" (for example Georgia 2 with Asc=1878 and Desc=-449, which gives a line-height of 2327), other have "loose lines" (for example Caecilia with Asc=2183 and Desc=-559, which gives a line-height of 2742). To get some kind of comparison for the line-heights it may be feasible to compute the line-height/caps-height ratio: Georgia 2 has 1.64 / Caecila has 1.91.

If you want to edit the metrics of your font to look at the Kindle fonts may be a good starting point. Caecilia's Asc/Desc I've already mentioned, for Baskerville the values are 1907/-588.

Finally come caveats: I tried to fine-tune the line-height for some font lately and found there must be additional information (besides hhea values) used by the kindle as I lost a complete line on the page by reducing the asc by only 1 (some kind of threshold perhaps). Some fonts use the Y-Max/Y-Min for all glyphs as hhea values which may result in "large" line-heights (Charis with its extensive glyph set is an example for this). Some fonts may be converted from/to TTF/OTF etc and the values may be screwed up. But besides the Line-Gap thing I always would give the original font's metric a chance. All this has been tested on PW1 with FW 5.3.9.
mandy314 is offline   Reply With Quote