Make Greek Archaic Sampi (Ͳ
/ͳ
) slightly narrower under QP. (#2785)
This commit is contained in:
parent
80470d26eb
commit
6fefad3158
3 changed files with 65 additions and 58 deletions
|
@ -1,4 +1,5 @@
|
||||||
* Refine shape of the following characters:
|
* Refine shape of the following characters:
|
||||||
|
- GREEK CAPITAL LETTER ARCHAIC SAMPI (`U+0372`) ... GREEK SMALL LETTER ARCHAIC SAMPI (`U+0373`).
|
||||||
- GREEK CAPITAL LETTER GAMMA (`U+0393`).
|
- GREEK CAPITAL LETTER GAMMA (`U+0393`).
|
||||||
- GREEK LETTER DIGAMMA (`U+03DC`) ... GREEK SMALL LETTER DIGAMMA (`U+03DD`).
|
- GREEK LETTER DIGAMMA (`U+03DC`) ... GREEK SMALL LETTER DIGAMMA (`U+03DD`).
|
||||||
- CYRILLIC CAPITAL LETTER GHE (`U+0413`).
|
- CYRILLIC CAPITAL LETTER GHE (`U+0413`).
|
||||||
|
@ -14,8 +15,6 @@
|
||||||
- NUMERO SIGN (`U+2116`).
|
- NUMERO SIGN (`U+2116`).
|
||||||
- DOUBLE STRUCK CAPITAL GAMMA (`U+213E`).
|
- DOUBLE STRUCK CAPITAL GAMMA (`U+213E`).
|
||||||
- TILDE WITH RING ABOVE (`U+2E18`).
|
- TILDE WITH RING ABOVE (`U+2E18`).
|
||||||
- TILDE WITH DOT ABOVE (`U+2E1E`).
|
- TILDE WITH DOT ABOVE (`U+2E1E`) ... TILDE WITH DOT BELOW (`U+2E1F`).
|
||||||
- TILDE WITH DOT BELOW (`U+2E1F`).
|
|
||||||
- LATIN CAPITAL LETTER LAMBDA WITH STROKE (`U+A7DC`).
|
- LATIN CAPITAL LETTER LAMBDA WITH STROKE (`U+A7DC`).
|
||||||
- LATIN SMALL LETTER SCRIPT R (`U+AB4B`).
|
- LATIN SMALL LETTER SCRIPT R (`U+AB4B`) ... LATIN SMALL LETTER SCRIPT R WITH RING (`U+AB4C`).
|
||||||
- LATIN SMALL LETTER SCRIPT R WITH RING (`U+AB4C`).
|
|
||||||
|
|
|
@ -5,27 +5,6 @@ import [DesignParameters] from "../../meta/aesthetics.mjs"
|
||||||
|
|
||||||
glyph-module
|
glyph-module
|
||||||
|
|
||||||
glyph-block Letter-Greek-Arachaic-Sampi : begin
|
|
||||||
glyph-block-import CommonShapes
|
|
||||||
|
|
||||||
define KSampiDepth 0.45
|
|
||||||
define [SampiShape df top bottom fDoSerifs] : glyph-proc
|
|
||||||
include : VBar.l df.leftSB top [mix (top - Stroke) bottom KSampiDepth] df.mvs
|
|
||||||
include : VBar.r df.rightSB top [mix (top - Stroke) bottom KSampiDepth] df.mvs
|
|
||||||
include : VBar.m df.middle top bottom df.mvs
|
|
||||||
include : HBar.t df.leftSB df.rightSB top
|
|
||||||
if (fDoSerifs && SLAB) : include : HSerif.mb df.middle 0 MidJutSide
|
|
||||||
|
|
||||||
create-glyph 'grek/SampiArchaic' 0x372 : glyph-proc
|
|
||||||
local df : include : DivFrame para.advanceScaleM 3
|
|
||||||
include : df.markSet.capital
|
|
||||||
include : SampiShape df CAP 0 true
|
|
||||||
|
|
||||||
create-glyph 'grek/sampiArchaic' 0x373 : glyph-proc
|
|
||||||
local df : include : DivFrame para.advanceScaleM 3
|
|
||||||
include : df.markSet.p
|
|
||||||
include : SampiShape df XH Descender false
|
|
||||||
|
|
||||||
glyph-block Letter-Greek-Sampi : begin
|
glyph-block Letter-Greek-Sampi : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
|
|
||||||
|
@ -38,8 +17,8 @@ glyph-block Letter-Greek-Sampi : begin
|
||||||
define [LeftSideMask] : spiro-outline
|
define [LeftSideMask] : spiro-outline
|
||||||
corner (RightSB - [HSwToV HalfStroke] + O) 0
|
corner (RightSB - [HSwToV HalfStroke] + O) 0
|
||||||
corner Middle CAP
|
corner Middle CAP
|
||||||
corner (-2 * Width) CAP
|
corner ((-2) * Width) CAP
|
||||||
corner (-2 * Width) 0
|
corner ((-2) * Width) 0
|
||||||
include : intersection
|
include : intersection
|
||||||
MaskBelow CAP
|
MaskBelow CAP
|
||||||
MaskAbove 0
|
MaskAbove 0
|
||||||
|
|
|
@ -15,13 +15,14 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
glyph-block-import Letter-Shared-Shapes : LetterBarOverlay UpwardHookShape
|
glyph-block-import Letter-Shared-Shapes : LetterBarOverlay UpwardHookShape
|
||||||
glyph-block-import Letter-Shared-Shapes : CyrDescender SerifFrame FlatHookDepth LeftHook RetroflexHook
|
glyph-block-import Letter-Shared-Shapes : CyrDescender SerifFrame FlatHookDepth LeftHook RetroflexHook
|
||||||
|
|
||||||
define ox : 0.75 * OX
|
|
||||||
define [TLeftX df] : df.leftSB + 0.75 * OX
|
define [TLeftX df] : df.leftSB + 0.75 * OX
|
||||||
define [TRightX df] : df.rightSB - 0.75 * OX
|
define [TRightX df] : df.rightSB - 0.75 * OX
|
||||||
define [TShape df top doTopSerifs doBottomSerifs] : glyph-proc
|
define [TShape df top doTopSerifs doBottomSerifs] : glyph-proc
|
||||||
include : tagged 'strokeV' : VBar.m df.middle 0 top
|
include : tagged 'strokeV' : VBar.m df.middle 0 top
|
||||||
|
|
||||||
local l : TLeftX df
|
local l : TLeftX df
|
||||||
local r : TRightX df
|
local r : TRightX df
|
||||||
|
|
||||||
include : tagged 'strokeLT' : HBar.t l df.middle top
|
include : tagged 'strokeLT' : HBar.t l df.middle top
|
||||||
include : tagged 'strokeRT' : HBar.t df.middle r top
|
include : tagged 'strokeRT' : HBar.t df.middle r top
|
||||||
|
|
||||||
|
@ -39,8 +40,10 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
local xTopBarLeft : df.leftSB - SideJut
|
local xTopBarLeft : df.leftSB - SideJut
|
||||||
local xTopBarRightSym : 2 * left + [HSwToV df.mvs] - xTopBarLeft
|
local xTopBarRightSym : 2 * left + [HSwToV df.mvs] - xTopBarLeft
|
||||||
local xTopBarRight : Math.max xTopBarRightSym : mix left df.rightSB 0.475
|
local xTopBarRight : Math.max xTopBarRightSym : mix left df.rightSB 0.475
|
||||||
|
|
||||||
include : tagged 'strokeLT' : HBar.t xTopBarLeft mid top df.mvs
|
include : tagged 'strokeLT' : HBar.t xTopBarLeft mid top df.mvs
|
||||||
include : tagged 'strokeRT' : HBar.t mid xTopBarRight top df.mvs
|
include : tagged 'strokeRT' : HBar.t mid xTopBarRight top df.mvs
|
||||||
|
|
||||||
include : UpwardHookShape
|
include : UpwardHookShape
|
||||||
left -- left
|
left -- left
|
||||||
right -- df.rightSB
|
right -- df.rightSB
|
||||||
|
@ -57,7 +60,7 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
local sf2 : [SerifFrame.fromDf df (top / 2 + HalfStroke) 0].slice 1 2
|
local sf2 : [SerifFrame.fromDf df (top / 2 + HalfStroke) 0].slice 1 2
|
||||||
if SLAB : include sf2.rt.full
|
if SLAB : include sf2.rt.full
|
||||||
|
|
||||||
define [TweUpperShape df top doTopSerifs] : glyph-proc
|
define [TweUpperShape df top doTopSerifs doBottomSerifs] : glyph-proc
|
||||||
include : TShape df top doTopSerifs false
|
include : TShape df top doTopSerifs false
|
||||||
eject-contour 'strokeV'
|
eject-contour 'strokeV'
|
||||||
|
|
||||||
|
@ -116,12 +119,37 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
eject-contour 'strokeLT'
|
eject-contour 'strokeLT'
|
||||||
include : LeftHook (df.leftSB + LeftHook.extension) CAP df.middle
|
include : LeftHook (df.leftSB + LeftHook.extension) CAP df.middle
|
||||||
|
|
||||||
|
create-glyph "TRTail.\(suffix)" : glyph-proc
|
||||||
|
local df : DivFrame adws
|
||||||
|
include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS
|
||||||
|
include : df.markSet.capital
|
||||||
|
include : RetroflexHook.mExt df.middle 0
|
||||||
|
|
||||||
create-glyph "smcpT.\(suffix)" : glyph-proc
|
create-glyph "smcpT.\(suffix)" : glyph-proc
|
||||||
local df : include : DivFrame adws
|
local df : include : DivFrame adws
|
||||||
include : df.markSet.e
|
include : df.markSet.e
|
||||||
set-base-anchor 'bottomRight' (df.middle + [HSwToV HalfStroke]) 0
|
set-base-anchor 'bottomRight' (df.middle + [HSwToV HalfStroke]) 0
|
||||||
include : TShape df XH doST doSB
|
include : TShape df XH doST doSB
|
||||||
|
|
||||||
|
create-glyph "cyrl/teDescender.upright.\(suffix)" : glyph-proc
|
||||||
|
local df : include : DivFrame adws
|
||||||
|
include : df.markSet.e
|
||||||
|
include : TShape df XH doST doSB
|
||||||
|
include : CyrDescender.rSideJut
|
||||||
|
x -- (df.middle + [HSwToV HalfStroke])
|
||||||
|
y -- 0
|
||||||
|
jut -- [if doSB MidJutCenter Jut]
|
||||||
|
|
||||||
|
create-glyph "cyrl/TjeKomi.\(suffix)" : glyph-proc
|
||||||
|
local df : include : DivFrame adws 3
|
||||||
|
include : df.markSet.capital
|
||||||
|
include : TjeShape df CAP doST
|
||||||
|
|
||||||
|
create-glyph "cyrl/tjeKomi.upright.\(suffix)" : glyph-proc
|
||||||
|
local df : include : DivFrame adws 3
|
||||||
|
include : df.markSet.e
|
||||||
|
include : TjeShape df XH doST
|
||||||
|
|
||||||
create-glyph "cyrl/Twe/upper.\(suffix)" : glyph-proc
|
create-glyph "cyrl/Twe/upper.\(suffix)" : glyph-proc
|
||||||
local df : include : DivFrame adws
|
local df : include : DivFrame adws
|
||||||
include : df.markSet.capital
|
include : df.markSet.capital
|
||||||
|
@ -141,31 +169,6 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
include : HBar.t [TLeftX df] [TRightX df] CAP OverlayStroke
|
include : HBar.t [TLeftX df] [TRightX df] CAP OverlayStroke
|
||||||
include : TShape df (CAP - OverlayStroke - gap) doST doSB
|
include : TShape df (CAP - OverlayStroke - gap) doST doSB
|
||||||
|
|
||||||
create-glyph "cyrl/teDescender.upright.\(suffix)" : glyph-proc
|
|
||||||
local df : include : DivFrame adws
|
|
||||||
include : df.markSet.e
|
|
||||||
include : TShape df XH doST doSB
|
|
||||||
include : CyrDescender.rSideJut
|
|
||||||
x -- (df.middle + [HSwToV HalfStroke])
|
|
||||||
y -- 0
|
|
||||||
jut -- [if doSB MidJutCenter Jut]
|
|
||||||
|
|
||||||
create-glyph "TRTail.\(suffix)" : glyph-proc
|
|
||||||
local df : DivFrame adws
|
|
||||||
include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS
|
|
||||||
include : df.markSet.capital
|
|
||||||
include : RetroflexHook.mExt df.middle 0
|
|
||||||
|
|
||||||
create-glyph "cyrl/TjeKomi.\(suffix)" : glyph-proc
|
|
||||||
local df : include : DivFrame adws 3
|
|
||||||
include : df.markSet.capital
|
|
||||||
include : TjeShape df CAP doST
|
|
||||||
|
|
||||||
create-glyph "cyrl/tjeKomi.upright.\(suffix)" : glyph-proc
|
|
||||||
local df : include : DivFrame adws 3
|
|
||||||
include : df.markSet.e
|
|
||||||
include : TjeShape df XH doST
|
|
||||||
|
|
||||||
create-glyph "cyrl/teTall.\(suffix)" : glyph-proc
|
create-glyph "cyrl/teTall.\(suffix)" : glyph-proc
|
||||||
local df : include : DivFrame 1
|
local df : include : DivFrame 1
|
||||||
include : df.markSet.b
|
include : df.markSet.b
|
||||||
|
@ -191,6 +194,7 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
|
|
||||||
select-variant 'cyrl/TjeKomi' 0x50E (follow -- 'T/rtailBase')
|
select-variant 'cyrl/TjeKomi' 0x50E (follow -- 'T/rtailBase')
|
||||||
select-variant 'cyrl/tjeKomi.upright' null (follow -- 'T/rtailBase')
|
select-variant 'cyrl/tjeKomi.upright' null (follow -- 'T/rtailBase')
|
||||||
|
|
||||||
select-variant 'cyrl/Twe/upper' (follow -- 'T/rtailBase')
|
select-variant 'cyrl/Twe/upper' (follow -- 'T/rtailBase')
|
||||||
select-variant 'cyrl/twe/upper' (follow -- 'T/rtailBase')
|
select-variant 'cyrl/twe/upper' (follow -- 'T/rtailBase')
|
||||||
derive-composites 'cyrl/Twe' 0xA68C 'cyrl/Twe/upper' 'cyrl/Twe/middle'
|
derive-composites 'cyrl/Twe' 0xA68C 'cyrl/Twe/upper' 'cyrl/Twe/middle'
|
||||||
|
@ -206,6 +210,7 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
create-glyph 'capitalSmcpI' 0xA7AE : glyph-proc
|
create-glyph 'capitalSmcpI' 0xA7AE : glyph-proc
|
||||||
local df : include : DivFrame : if SLAB para.advanceScaleT 1
|
local df : include : DivFrame : if SLAB para.advanceScaleT 1
|
||||||
include : df.markSet.capital
|
include : df.markSet.capital
|
||||||
|
|
||||||
local l : TLeftX df
|
local l : TLeftX df
|
||||||
local r : TRightX df
|
local r : TRightX df
|
||||||
|
|
||||||
|
@ -219,6 +224,30 @@ glyph-block Letter-Latin-Upper-T : begin
|
||||||
include : tagged 'serifRB' : VSerif.ur r 0 VJut
|
include : tagged 'serifRB' : VSerif.ur r 0 VJut
|
||||||
include : tagged 'serifLB' : VSerif.ul l 0 VJut
|
include : tagged 'serifLB' : VSerif.ul l 0 VJut
|
||||||
|
|
||||||
|
define [SampiShape df top bottom doTopSerifs doBottomSerifs] : glyph-proc
|
||||||
|
define kSampiDepth 0.45
|
||||||
|
|
||||||
|
local l : TLeftX df
|
||||||
|
local r : TRightX df
|
||||||
|
|
||||||
|
include : VBar.m df.middle top bottom
|
||||||
|
include : HBar.t l r top
|
||||||
|
|
||||||
|
include : VBar.l l top [mix (top - Stroke) bottom kSampiDepth] VJutStroke
|
||||||
|
include : VBar.r r top [mix (top - Stroke) bottom kSampiDepth] VJutStroke
|
||||||
|
|
||||||
|
if doBottomSerifs : include : HSerif.mb df.middle bottom MidJutSide
|
||||||
|
|
||||||
|
create-glyph 'grek/SampiArchaic' 0x372 : glyph-proc
|
||||||
|
local df : include : DivFrame para.advanceScaleT
|
||||||
|
include : df.markSet.capital
|
||||||
|
include : SampiShape df CAP 0 true SLAB
|
||||||
|
|
||||||
|
create-glyph 'grek/sampiArchaic' 0x373 : glyph-proc
|
||||||
|
local df : include : DivFrame para.advanceScaleT
|
||||||
|
include : df.markSet.p
|
||||||
|
include : SampiShape df XH Descender true false
|
||||||
|
|
||||||
create-glyph 'mathbb/T' 0x1D54B : glyph-proc
|
create-glyph 'mathbb/T' 0x1D54B : glyph-proc
|
||||||
local df : include : DivFrame 1
|
local df : include : DivFrame 1
|
||||||
include : df.markSet.capital
|
include : df.markSet.capital
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue