Harmonize the tailed shapes of i
/l
with t
. (#2048)
This commit is contained in:
parent
25ee9c6d25
commit
ed00d984ab
2 changed files with 11 additions and 36 deletions
|
@ -1,3 +1,4 @@
|
||||||
|
* Make the tailed variants of `i` and `l` use the fully-tailed shape even when upright, as is consistent with `t = bent-hook` (#1692).
|
||||||
* Fix `cv44` and `cv99` for `ss13`.
|
* Fix `cv44` and `cv99` for `ss13`.
|
||||||
* Fix `cv48` and `cv54` for `ss17`.
|
* Fix `cv48` and `cv54` for `ss17`.
|
||||||
* Fix `cv52` and `cv58` for `ss15`.
|
* Fix `cv52` and `cv58` for `ss15`.
|
||||||
|
|
|
@ -29,10 +29,10 @@ glyph-block Letter-Latin-Lower-I : begin
|
||||||
set-base-anchor 'topRight' (xMiddle + df.rightSB - df.middle) yTop
|
set-base-anchor 'topRight' (xMiddle + df.rightSB - df.middle) yTop
|
||||||
|
|
||||||
# Support shapes
|
# Support shapes
|
||||||
define [TailedDotlessXMiddle df addTopSerif] : df.middle - [if addTopSerif 0 : IBalance2 df]
|
define [FlatTailedDotlessIXMiddle df addTopSerif] : df.middle - [if addTopSerif 0 : IBalance2 df]
|
||||||
define [ItalicDotlessIShift df] : (1 - df.div) * 0.2
|
define [TailedDotlessIShift df] : (1 - df.div) * 0.2
|
||||||
define [ItalicDotlessIXMiddle df] : begin
|
define [TailedDotlessIXMiddle df addTopSerif] : begin
|
||||||
return : mix df.leftSB df.rightSB ([StrokeWidthBlend 0.42 0.46] - [ItalicDotlessIShift df])
|
return : mix df.leftSB df.rightSB ([StrokeWidthBlend 0.42 0.46] - [TailedDotlessIShift df])
|
||||||
|
|
||||||
###########################################################################################
|
###########################################################################################
|
||||||
# Implementations
|
# Implementations
|
||||||
|
@ -42,14 +42,10 @@ glyph-block Letter-Latin-Lower-I : begin
|
||||||
export : define [Hooky df] : df.middle + [IBalance2 df]
|
export : define [Hooky df] : df.middle + [IBalance2 df]
|
||||||
export : define [HookyBottom df] : df.middle - [IBalance2 df]
|
export : define [HookyBottom df] : df.middle - [IBalance2 df]
|
||||||
export : define [Serifed df] : df.middle + [IBalance df]
|
export : define [Serifed df] : df.middle + [IBalance df]
|
||||||
export : define [Tailed df] : if para.isItalic
|
export : define [Tailed df] : TailedDotlessIXMiddle df false
|
||||||
ItalicDotlessIXMiddle df
|
export : define [TailedSerifed df] : TailedDotlessIXMiddle df true
|
||||||
TailedDotlessXMiddle df false
|
export : define [FlatTailed df] : FlatTailedDotlessIXMiddle df false
|
||||||
export : define [TailedSerifed df] : if para.isItalic
|
export : define [SerifedFlatTailed df] : FlatTailedDotlessIXMiddle df true
|
||||||
ItalicDotlessIXMiddle df
|
|
||||||
TailedDotlessXMiddle df true
|
|
||||||
export : define [FlatTailed df] : TailedDotlessXMiddle df false
|
|
||||||
export : define [SerifedFlatTailed df] : TailedDotlessXMiddle df true
|
|
||||||
export : define [PhoneticLeft df] : df.leftSB + [HSwToV Stroke]
|
export : define [PhoneticLeft df] : df.leftSB + [HSwToV Stroke]
|
||||||
|
|
||||||
define Body : namespace
|
define Body : namespace
|
||||||
|
@ -70,9 +66,9 @@ glyph-block Letter-Latin-Lower-I : begin
|
||||||
HSerif.mb df.middle 0 (LongJut * df.div)
|
HSerif.mb df.middle 0 (LongJut * df.div)
|
||||||
set-base-anchor 'trailing' (df.middle + LongJut * df.div) 0
|
set-base-anchor 'trailing' (df.middle + LongJut * df.div) 0
|
||||||
|
|
||||||
define [IalicTailed df top xMiddle] : glyph-proc
|
export : define [Tailed df top xMiddle] : glyph-proc
|
||||||
local fine : AdviceStroke 3
|
local fine : AdviceStroke 3
|
||||||
local shift : ItalicDotlessIShift df
|
local shift : TailedDotlessIShift df
|
||||||
local left : xMiddle - [HSwToV : 0.5 * df.mvs]
|
local left : xMiddle - [HSwToV : 0.5 * df.mvs]
|
||||||
local right : mix df.leftSB df.rightSB (1.1 - shift)
|
local right : mix df.leftSB df.rightSB (1.1 - shift)
|
||||||
local rightTerm : Math.max right (left + HookX + df.mvs)
|
local rightTerm : Math.max right (left + HookX + df.mvs)
|
||||||
|
@ -90,28 +86,6 @@ glyph-block Letter-Latin-Lower-I : begin
|
||||||
set-base-anchor 'trailing' [mix left rightTerm 0.5] 0
|
set-base-anchor 'trailing' [mix left rightTerm 0.5] 0
|
||||||
set-base-anchor 'palatalHookMask' [mix left rightTerm 0.5] (HalfStroke + O)
|
set-base-anchor 'palatalHookMask' [mix left rightTerm 0.5] (HalfStroke + O)
|
||||||
|
|
||||||
define [UprightTailed df top xMiddle] : glyph-proc
|
|
||||||
local tailLength : LongJut * 1.05 * [mix 1 df.div 0.75]
|
|
||||||
local hookScaleX : mix 1 df.div 0.5
|
|
||||||
local hookScaleY : mix 1 df.div 1.25
|
|
||||||
local x0 : mix (0.5 * df.mvs) (0.5 * df.mvs + (Hook - df.mvs + 1) * 0.85 * df.div + [IBalance2 df]) hookScaleX
|
|
||||||
local x1 : mix (0.5 * df.mvs) ([Math.max (Hook - 0.5 * df.mvs + 1) tailLength] + [IBalance2 df]) hookScaleX
|
|
||||||
include : dispiro
|
|
||||||
widths.center df.mvs
|
|
||||||
flat xMiddle top [heading Downward]
|
|
||||||
curl xMiddle [Math.max (df.mvs * 1.1) : mix df.mvs Hook hookScaleY]
|
|
||||||
arcvh 16
|
|
||||||
g2.right.mid (xMiddle + x0) (0.5 * df.mvs + O) [heading Rightward]
|
|
||||||
g4 (xMiddle + x1) (0.5 * df.mvs + (1 - 2 * hookScaleY) * O) [heading Rightward]
|
|
||||||
|
|
||||||
include : OverrideILMarks df xMiddle top
|
|
||||||
set-base-anchor 'trailing' (xMiddle + x0) 0
|
|
||||||
set-base-anchor 'palatalHookMask' (xMiddle + x0) (HalfStroke + O)
|
|
||||||
|
|
||||||
export : define [Tailed df top xMiddle] : if para.isItalic
|
|
||||||
IalicTailed df top xMiddle
|
|
||||||
UprightTailed df top xMiddle
|
|
||||||
|
|
||||||
export : define [FlatTailed df top xMiddle] : glyph-proc
|
export : define [FlatTailed df top xMiddle] : glyph-proc
|
||||||
local tailLength : LongJut * 1.05 * [mix 1 df.div 0.75]
|
local tailLength : LongJut * 1.05 * [mix 1 df.div 0.75]
|
||||||
local hd : FlatHookDepth df
|
local hd : FlatHookDepth df
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue