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:
|
||||
- GREEK CAPITAL LETTER ARCHAIC SAMPI (`U+0372`) ... GREEK SMALL LETTER ARCHAIC SAMPI (`U+0373`).
|
||||
- GREEK CAPITAL LETTER GAMMA (`U+0393`).
|
||||
- GREEK LETTER DIGAMMA (`U+03DC`) ... GREEK SMALL LETTER DIGAMMA (`U+03DD`).
|
||||
- CYRILLIC CAPITAL LETTER GHE (`U+0413`).
|
||||
|
@ -14,8 +15,6 @@
|
|||
- NUMERO SIGN (`U+2116`).
|
||||
- DOUBLE STRUCK CAPITAL GAMMA (`U+213E`).
|
||||
- TILDE WITH RING ABOVE (`U+2E18`).
|
||||
- TILDE WITH DOT ABOVE (`U+2E1E`).
|
||||
- TILDE WITH DOT BELOW (`U+2E1F`).
|
||||
- TILDE WITH DOT ABOVE (`U+2E1E`) ... TILDE WITH DOT BELOW (`U+2E1F`).
|
||||
- LATIN CAPITAL LETTER LAMBDA WITH STROKE (`U+A7DC`).
|
||||
- LATIN SMALL LETTER SCRIPT R (`U+AB4B`).
|
||||
- LATIN SMALL LETTER SCRIPT R WITH RING (`U+AB4C`).
|
||||
- LATIN SMALL LETTER SCRIPT R (`U+AB4B`) ... LATIN SMALL LETTER SCRIPT R WITH RING (`U+AB4C`).
|
||||
|
|
|
@ -5,27 +5,6 @@ import [DesignParameters] from "../../meta/aesthetics.mjs"
|
|||
|
||||
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-import CommonShapes
|
||||
|
||||
|
@ -34,12 +13,12 @@ glyph-block Letter-Greek-Sampi : begin
|
|||
define sw : AdviceStroke 3
|
||||
define fine : AdviceStroke 4.25
|
||||
define rightStrokeShift : HSwToV : 0.45 * sw
|
||||
define leftStrokeShift : HSwToV : 0.45 * fine
|
||||
define leftStrokeShift : HSwToV : 0.45 * fine
|
||||
define [LeftSideMask] : spiro-outline
|
||||
corner (RightSB - [HSwToV HalfStroke] + O) 0
|
||||
corner Middle CAP
|
||||
corner (-2 * Width) CAP
|
||||
corner (-2 * Width) 0
|
||||
corner ((-2) * Width) CAP
|
||||
corner ((-2) * Width) 0
|
||||
include : intersection
|
||||
MaskBelow CAP
|
||||
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 : CyrDescender SerifFrame FlatHookDepth LeftHook RetroflexHook
|
||||
|
||||
define ox : 0.75 * OX
|
||||
define [TLeftX df] : df.leftSB + 0.75 * OX
|
||||
define [TRightX df] : df.rightSB - 0.75 * OX
|
||||
define [TShape df top doTopSerifs doBottomSerifs] : glyph-proc
|
||||
include : tagged 'strokeV' : VBar.m df.middle 0 top
|
||||
local l : TLeftX df
|
||||
|
||||
local l : TLeftX df
|
||||
local r : TRightX df
|
||||
|
||||
include : tagged 'strokeLT' : HBar.t l df.middle 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 xTopBarRightSym : 2 * left + [HSwToV df.mvs] - xTopBarLeft
|
||||
local xTopBarRight : Math.max xTopBarRightSym : mix left df.rightSB 0.475
|
||||
|
||||
include : tagged 'strokeLT' : HBar.t xTopBarLeft mid top df.mvs
|
||||
include : tagged 'strokeRT' : HBar.t mid xTopBarRight top df.mvs
|
||||
|
||||
include : UpwardHookShape
|
||||
left -- left
|
||||
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
|
||||
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
|
||||
eject-contour 'strokeV'
|
||||
|
||||
|
@ -68,7 +71,7 @@ glyph-block Letter-Latin-Upper-T : begin
|
|||
local xBarRight : df.width - 1.5 * df.leftSB
|
||||
|
||||
include : tagged 'strokeLT' : HBar.t xLeft xBarRight top
|
||||
include : tagged 'strokeV' : VBar.r xBarRight 0 top
|
||||
include : tagged 'strokeV' : VBar.r xBarRight 0 top
|
||||
|
||||
if doTopSerifs : begin
|
||||
include : tagged 'serifLT' : VSerif.dl xLeft top VJut
|
||||
|
@ -116,12 +119,37 @@ glyph-block Letter-Latin-Upper-T : begin
|
|||
eject-contour 'strokeLT'
|
||||
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
|
||||
local df : include : DivFrame adws
|
||||
include : df.markSet.e
|
||||
set-base-anchor 'bottomRight' (df.middle + [HSwToV HalfStroke]) 0
|
||||
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
|
||||
local df : include : DivFrame adws
|
||||
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 : 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
|
||||
local df : include : DivFrame 1
|
||||
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.upright' null (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'
|
||||
|
@ -206,7 +210,8 @@ glyph-block Letter-Latin-Upper-T : begin
|
|||
create-glyph 'capitalSmcpI' 0xA7AE : glyph-proc
|
||||
local df : include : DivFrame : if SLAB para.advanceScaleT 1
|
||||
include : df.markSet.capital
|
||||
local l : TLeftX df
|
||||
|
||||
local l : TLeftX df
|
||||
local r : TRightX df
|
||||
|
||||
include : VBar.m df.middle 0 CAP
|
||||
|
@ -219,6 +224,30 @@ glyph-block Letter-Latin-Upper-T : begin
|
|||
include : tagged 'serifRB' : VSerif.ur r 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
|
||||
local df : include : DivFrame 1
|
||||
include : df.markSet.capital
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue