Hard ensure that the middle between typo ascender/descender places at SymbolMid (#1398).

This commit is contained in:
be5invis 2022-08-13 03:34:45 -07:00
parent 9eceb9e78b
commit 3c1d245571

View file

@ -215,11 +215,12 @@ export : define [calculateMetrics para] : begin
HSwToV]
export : define [setFontMetrics para metrics fm] : begin
define [object CAP Descender XH Width] metrics
define [object CAP Descender XH Width SymbolMid] metrics
define leading : Math.round para.leading
define asc : Math.round : leading * CAP / (CAP - Descender)
define desc : Math.round : leading * Descender / (CAP - Descender)
define asc : Math.round : SymbolMid + leading / 2
define desc : Math.round : SymbolMid - leading / 2
define descenderPad : Math.round : fallback para.descenderPad 0
define winMetricAscenderPad : Math.round : fallback para.winMetricAscenderPad 0
define winMetricDescenderPad : Math.round : fallback para.winMetricDescenderPad 0