Optimize width/overshoot/archdepth of Cyrillic Broad Omega (Ꙍ
, ꙍ
). (#2803)
This commit is contained in:
parent
4e80b01385
commit
bb761668f0
2 changed files with 33 additions and 32 deletions
|
@ -3,9 +3,13 @@
|
|||
- GREEK SMALL LETTER PSI (`U+03C8`).
|
||||
- GREEK LETTER STIGMA (`U+03DA`).
|
||||
- CYRILLIC SMALL LETTER PSI (`U+0471`).
|
||||
- CYRILLIC CAPITAL LETTER OMEGA WITH TITLO (`U+047C`).
|
||||
- CYRILLIC SMALL LETTER OMEGA WITH TITLO (`U+047D`).
|
||||
- LATIN LETTER AIN (`U+1D25`).
|
||||
- MODIFIER LETTER SMALL AIN (`U+1D5C`).
|
||||
- TURKISH LIRA SIGN (`U+20BA`).
|
||||
- MANAT SIGN (`U+20BC`).
|
||||
- CYRILLIC CAPITAL LETTER BROAD OMEGA (`U+A64C`).
|
||||
- CYRILLIC SMALL LETTER BROAD OMEGA (`U+A64D`).
|
||||
- LATIN CAPITAL LETTER RAMS HORN (`U+A7CB`).
|
||||
- MODIFIER LETTER SMALL RAMS HORN (`U+10791`).
|
||||
|
|
|
@ -7,53 +7,50 @@ glyph-module
|
|||
glyph-block Letter-Cyrillic-Omega : begin
|
||||
glyph-block-import CommonShapes
|
||||
glyph-block-import Common-Derivatives
|
||||
glyph-block-import Letter-Latin-W
|
||||
glyph-block-import Letter-Cyrillic-Te-Comb
|
||||
|
||||
define [CyrlOmegaShape df top p1 p2] : glyph-proc
|
||||
local fine : AdviceStroke 3 df.adws
|
||||
local mfine : fine * CThin
|
||||
define [CyrlOmegaShape df top p _ada _adb] : glyph-proc
|
||||
local fine : df.mvs * CThin
|
||||
|
||||
local minHookDepth : Math.min (0.625 * (df.middle - df.leftSB - [HSwToV fine])) ((1 / 3) * (df.rightSB - df.leftSB))
|
||||
local xMidBarLeft : df.middle - [HSwToV : fine / 2]
|
||||
local xMidBarRight : df.middle + [HSwToV : fine / 2]
|
||||
local xMidBarCoLeft : df.middle - [HSwToV : mfine - fine / 2]
|
||||
local xMidBarCoRight : df.middle + [HSwToV : mfine - fine / 2]
|
||||
local y3 : top * p1
|
||||
local y4 : top * p2
|
||||
local minHookDepth : Math.min (0.625 * (df.middle - df.leftSB - [HSwToV df.mvs])) ((df.rightSB - df.leftSB) / 3)
|
||||
local xMidBarLeft : df.middle - [HSwToV : df.mvs / 2]
|
||||
local xMidBarRight : df.middle + [HSwToV : df.mvs / 2]
|
||||
local xMidBarCoLeft : df.middle - [HSwToV : fine - df.mvs / 2]
|
||||
local xMidBarCoRight : df.middle + [HSwToV : fine - df.mvs / 2]
|
||||
local yMidBar : top * p
|
||||
|
||||
local xOpenL : Math.max [mix df.leftSB xMidBarRight 0.5] (df.leftSB + [HSwToV fine] + minHookDepth)
|
||||
local xOpenR : Math.min [mix df.rightSB xMidBarLeft 0.5] (df.rightSB - [HSwToV fine] - minHookDepth)
|
||||
local xOpenL : Math.max [mix df.leftSB xMidBarRight 0.5] (df.leftSB + [HSwToV df.mvs] + minHookDepth)
|
||||
local xOpenR : Math.min [mix df.rightSB xMidBarLeft 0.5] (df.rightSB - [HSwToV df.mvs] - minHookDepth)
|
||||
|
||||
local ada : _ada * (2 / 3) * df.adws
|
||||
local adb : _adb * (2 / 3) * df.adws
|
||||
|
||||
include : dispiro
|
||||
widths.lhs fine
|
||||
g4.left.start [arch.adjust-x.top xOpenL (sw -- fine)] top
|
||||
widths.lhs df.mvs
|
||||
g4.left.start [arch.adjust-x.top xOpenL (sw -- df.mvs)] top
|
||||
archv 8
|
||||
flat df.leftSB (top - ArchDepthA)
|
||||
curl df.leftSB ArchDepthB
|
||||
flatside.ld df.leftSB 0 top ada adb
|
||||
arcvh 8
|
||||
g4 [mix df.leftSB xMidBarRight 0.5] O [heading Rightward]
|
||||
archv 8
|
||||
flat xMidBarCoRight y3 [widths.heading mfine 0 Upward]
|
||||
curl xMidBarCoRight y4 [heading Upward]
|
||||
flat xMidBarCoRight [Math.min ada (yMidBar - TINY)] [widths.lhs.heading fine Upward]
|
||||
curl xMidBarCoRight yMidBar [heading Upward]
|
||||
include : dispiro
|
||||
widths.rhs fine
|
||||
g4.right.start [arch.adjust-x.top xOpenR (sw -- fine)] top
|
||||
widths.rhs df.mvs
|
||||
g4.right.start [arch.adjust-x.top xOpenR (sw -- df.mvs)] top
|
||||
archv 8
|
||||
flat df.rightSB (top - ArchDepthB)
|
||||
curl df.rightSB ArchDepthA
|
||||
flatside.rd df.rightSB 0 top ada adb
|
||||
arcvh 8
|
||||
g4 [mix df.rightSB xMidBarLeft 0.5] O [heading Leftward]
|
||||
archv 8
|
||||
flat xMidBarCoLeft y3 [widths.heading 0 mfine Upward]
|
||||
curl xMidBarCoLeft y4 [heading Upward]
|
||||
flat xMidBarCoLeft [Math.min adb (yMidBar - TINY)] [widths.rhs.heading fine Upward]
|
||||
curl xMidBarCoLeft yMidBar [heading Upward]
|
||||
|
||||
create-glyph 'cyrl/BroadOmega' 0xA64C : glyph-proc
|
||||
define df : include : DivFrame para.advanceScaleMM 3
|
||||
include : [DivFrame df.adws].markSet.capital
|
||||
include : CyrlOmegaShape df CAP 0.30 0.31
|
||||
local df : include : DivFrame para.advanceScaleMM 3
|
||||
include : df.markSet.capital
|
||||
include : CyrlOmegaShape df CAP 0.3 ArchDepthA ArchDepthB
|
||||
|
||||
create-glyph 'cyrl/broadOmega' 0xA64D : glyph-proc
|
||||
define df : include : DivFrame para.advanceScaleM 3
|
||||
include : [DivFrame df.adws].markSet.e
|
||||
include : CyrlOmegaShape df XH 0.30 0.31
|
||||
local df : include : DivFrame para.advanceScaleMM 3
|
||||
include : df.markSet.e
|
||||
include : CyrlOmegaShape df XH 0.3 SmallArchDepthA SmallArchDepthB
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue