Add compact/descending variants for J
(#876).
This commit is contained in:
parent
c700d6f9d1
commit
1320b76cca
4 changed files with 89 additions and 13 deletions
|
@ -4,4 +4,5 @@
|
|||
* Add bar-interrupted variants for Dollar and Cent sign (#863).
|
||||
* Add bend and curly variants for `7` (#866).
|
||||
* Add variant selectors for Greek lower Alpha and Iota (#873).
|
||||
* Add tail to Greek lower Pi and Tau (#875).
|
||||
* Add tail to Greek lower Pi and Tau (#875).
|
||||
* Add compact/descending variants for `J` (#876).
|
|
@ -79,39 +79,38 @@ glyph-block Letter-Latin-Lower-J : begin
|
|||
set-base-anchor 'above' (Middle + JBalance - Stroke * 0.166 * HVContrast) XH
|
||||
set-base-anchor 'overlay' (Middle + JBalance - Stroke * 0.166 * HVContrast) (XH / 2)
|
||||
|
||||
define [FlatHookDotlessJShape] : params [df crossLeft crossRight barCenter serif] : glyph-proc
|
||||
glyph-block-export FlatHookDotlessJShape
|
||||
define [FlatHookDotlessJShape] : params [df dfHook top crossLeft barCenter serif] : glyph-proc
|
||||
local terminal : crossLeft - OX * 2
|
||||
local bar : barCenter + HalfStroke * HVContrast
|
||||
local hd : FlatHookDepth df
|
||||
if serif : include : LeftwardTopSerif barCenter XH (LongJut * df.div)
|
||||
local hd : FlatHookDepth dfHook
|
||||
if serif : include : LeftwardTopSerif barCenter top (LongJut * df.div)
|
||||
include : dispiro
|
||||
widths.lhs
|
||||
flat [Math.min terminal (bar - hd.x - [Math.max (Stroke / 3) (df.width / 6)])] Descender
|
||||
curl (bar - hd.x) Descender
|
||||
archv.superness DesignParameters.tightHookSuperness
|
||||
flat bar (Descender + hd.y)
|
||||
curl bar XH [heading Upward]
|
||||
set-base-anchor 'above' barCenter XH
|
||||
set-base-anchor 'overlay' barCenter (XH / 2)
|
||||
curl bar top [heading Upward]
|
||||
set-base-anchor 'above' barCenter top
|
||||
set-base-anchor 'overlay' barCenter (top / 2)
|
||||
|
||||
create-glyph 'dotlessj.flatHookSerifless' : glyph-proc
|
||||
local df : DivFrame para.diversityII
|
||||
local dfHook : DivFrame para.diversityI
|
||||
set-width df.width
|
||||
include : df.markSet.p
|
||||
include : FlatHookDotlessJShape df
|
||||
crossLeft -- [mix 0 SB dfHook.div]
|
||||
crossRight -- [mix df.width df.rightSB df.div]
|
||||
barCenter -- (df.middle + 0.5 * JBalance * df.div * [mix 1 df.div 2])
|
||||
include : FlatHookDotlessJShape df dfHook XH
|
||||
crossLeft -- (df.middle - (dfHook.middle - [mix 0 dfHook.leftSB : mix 1 dfHook.div 2]))
|
||||
barCenter -- (df.middle + 0.25 * JBalance * df.div * [mix 1 df.div 2])
|
||||
serif -- false
|
||||
|
||||
create-glyph 'dotlessj.flatHookSerifed' : glyph-proc
|
||||
local df : DivFrame para.diversityI
|
||||
set-width df.width
|
||||
include : df.markSet.p
|
||||
include : FlatHookDotlessJShape df
|
||||
include : FlatHookDotlessJShape df df XH
|
||||
crossLeft -- [mix 0 SB : mix 1 df.div 2]
|
||||
crossRight -- [mix df.width df.rightSB : mix 1 df.div 2]
|
||||
barCenter -- (df.middle + JBalance * df.div)
|
||||
serif -- true
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ glyph-block Letter-Latin-Upper-J : begin
|
|||
glyph-block-import CommonShapes
|
||||
glyph-block-import Common-Derivatives
|
||||
glyph-block-import Letter-Blackboard : BBS BBD
|
||||
glyph-block-import Letter-Latin-Lower-J : FlatHookDotlessJShape
|
||||
|
||||
create-glyph 'J.serifless' : glyph-proc
|
||||
include : MarkSet.capital
|
||||
|
@ -54,6 +55,51 @@ glyph-block Letter-Latin-Upper-J : begin
|
|||
include [refer-glyph 'J.serifless'] AS_BASE ALSO_METRICS
|
||||
include : CenterTopSerif (RightSB - HalfStroke * HVContrast - JBalance2 + O) CAP (Jut + JBalance2)
|
||||
|
||||
create-glyph 'J.descendingSerifless' : glyph-proc
|
||||
include : MarkSet.if
|
||||
local center : Middle + JBalance + HalfStroke * HVContrast
|
||||
set-base-anchor 'above' (center - HVContrast * HalfStroke) XH
|
||||
set-base-anchor 'overlay' (center - HVContrast * HalfStroke) (XH / 2)
|
||||
local hookx : center - (Width * 0.5) - Stroke * HVContrast + OXHook
|
||||
local turn : [mix center hookx 0.5] + CorrectionOMidS
|
||||
include : dispiro
|
||||
widths.rhs
|
||||
flat center CAP [heading Downward]
|
||||
curl center (Descender + SmoothA)
|
||||
hookend (Descender + O)
|
||||
g4 hookx (Descender + JHook)
|
||||
|
||||
create-glyph 'J.descendingSerifed' : glyph-proc
|
||||
include [refer-glyph 'J.descendingSerifless'] AS_BASE ALSO_METRICS
|
||||
include : LeftwardTopSerif (Middle + JBalance) CAP LongJut
|
||||
|
||||
create-glyph 'J.descendingSerifedBothSides' : glyph-proc
|
||||
include [refer-glyph 'J.descendingSerifed'] AS_BASE ALSO_METRICS
|
||||
include : RightwardTopSerif (Middle + JBalance) CAP Jut
|
||||
|
||||
create-glyph 'J.descendingSerifedSymmetric' : glyph-proc
|
||||
include [refer-glyph 'J.descendingSerifless'] AS_BASE ALSO_METRICS
|
||||
include : CenterTopSerif (Middle + JBalance) CAP (Jut + JBalance)
|
||||
|
||||
create-glyph 'J.descendingFlatHookSerifless' : glyph-proc
|
||||
local df : DivFrame para.diversityII
|
||||
local dfHook : DivFrame para.diversityI
|
||||
set-width df.width
|
||||
include : df.markSet.if
|
||||
include : FlatHookDotlessJShape df dfHook CAP
|
||||
crossLeft -- (df.middle - (dfHook.middle - [mix 0 dfHook.leftSB : mix 1 dfHook.div 2]))
|
||||
barCenter -- (df.middle + 0.25 * JBalance * df.div * [mix 1 df.div 2])
|
||||
serif -- false
|
||||
|
||||
create-glyph 'J.descendingFlatHookSerifed' : glyph-proc
|
||||
local df : DivFrame para.diversityI
|
||||
set-width df.width
|
||||
include : df.markSet.p
|
||||
include : FlatHookDotlessJShape df df CAP
|
||||
crossLeft -- [mix 0 SB : mix 1 df.div 2]
|
||||
barCenter -- (df.middle + JBalance * df.div)
|
||||
serif -- true
|
||||
|
||||
select-variant 'J' 'J'
|
||||
alias 'cyrl/Je' 0x408 'J'
|
||||
alias 'grek/Yot' 0x37F 'J'
|
||||
|
|
|
@ -394,6 +394,36 @@ rank = 4
|
|||
description = "J with symmetric at both sides and is symmetric"
|
||||
selector.J = "serifedSymmetric"
|
||||
|
||||
[prime.capital-j.variants.descending-serifless]
|
||||
rank = 5
|
||||
description = "J with hook goes below descender and without serif"
|
||||
selector.J = "descendingSerifless"
|
||||
|
||||
[prime.capital-j.variants.descending-serifed]
|
||||
rank = 6
|
||||
description = "J with hook goes below descender and top serif"
|
||||
selector.J = "descendingSerifed"
|
||||
|
||||
[prime.capital-j.variants.descending-serifed-both-sides]
|
||||
rank = 7
|
||||
description = "J with hook goes below descender and top serif at both sides (asymmetric)"
|
||||
selector.J = "descendingSerifedBothSides"
|
||||
|
||||
[prime.capital-j.variants.descending-serifed-symmetric]
|
||||
rank = 8
|
||||
description = "J with hook goes below descender and top serif at both sides (symmetric)"
|
||||
selector.J = "descendingSerifedSymmetric"
|
||||
|
||||
[prime.capital-j.variants.descending-flat-hook-serifless]
|
||||
rank = 9
|
||||
description = "J with flat hook goes below descender and without serif"
|
||||
selector.J = "descendingFlatHookSerifless"
|
||||
|
||||
[prime.capital-j.variants.descending-flat-hook-serifed]
|
||||
rank = 10
|
||||
description = "J with flat hook goes below descender and top serif"
|
||||
selector.J = "descendingFlatHookSerifed"
|
||||
|
||||
|
||||
|
||||
[prime.capital-k]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue