Make Cyrillic Upper Zhe (Ж) slightly wider under QP. (#2805)

This commit is contained in:
John McWilliams 2025-06-22 11:16:02 -04:00 committed by GitHub
parent e77c90c14a
commit 877ed66c60
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 23 additions and 16 deletions

7
changes/33.2.6.md Normal file
View file

@ -0,0 +1,7 @@
* Make certain characters slightly wider under Quasi-Proportional. Affected characters:
- CYRILLIC CAPITAL LETTER ZHE (`U+0416`).
- CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER (`U+0496`).
- CYRILLIC CAPITAL LETTER ZHE WITH BREVE (`U+04C1`).
- CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS (`U+04DC`).
- CYRILLIC CAPITAL LETTER DZZHE (`U+052A`).
- CYRILLIC CAPITAL LETTER ZHWE (`U+A684`).

View file

@ -31,21 +31,21 @@ glyph-block Letter-Cyrillic-Dzzhe-Zhwe : begin
include : CyrDeItalicShapeT dispiro subDf sw
create-glyph "cyrl/Dzzhe/left" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleMM * para.advanceScaleM) 3.5
include : df.markSet.capital
include : ExtendBelowBaseAnchors (-LongVJut + HalfStroke)
include : ExtendBelowBaseAnchors ((-LongVJut) + QuarterStroke)
set-base-anchor 'cvDecompose' 0 0
include : CyrDzzheDeShape df CAP
create-glyph "cyrl/dzzhe.upright/left" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.e
include : ExtendBelowBaseAnchors (-LongVJut + HalfStroke)
include : ExtendBelowBaseAnchors ((-LongVJut) + QuarterStroke)
set-base-anchor 'cvDecompose' 0 0
include : CyrDzzheDeShape df XH
create-glyph "cyrl/dzzhe.italic/left" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.b
set-base-anchor 'cvDecompose' 0 0
include : CyrDzzheDeItalicShape df
@ -65,13 +65,13 @@ glyph-block Letter-Cyrillic-Dzzhe-Zhwe : begin
foreach { suffix { slabTop slabBot } } [Object.entries ZeConfig] : do
create-glyph "cyrl/Zhwe/left.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleMM * para.advanceScaleM) 3.5
include : df.markSet.capital
set-base-anchor 'cvDecompose' 0 0
include : CyrZhweZeShape slabTop slabBot df CAP Hook
create-glyph "cyrl/zhwe/left.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.e
set-base-anchor 'cvDecompose' 0 0
include : CyrZhweZeShape slabTop slabBot df XH SHook
@ -115,28 +115,28 @@ glyph-block Letter-Cyrillic-Dzzhe-Zhwe : begin
foreach { suffix { legShape fSlab fMidSlab } } [Object.entries ZheConfig] : do
create-glyph "cyrl/Dzzhe/right.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleMM * para.advanceScaleM) 3.5
include : df.markSet.capital
include : CyrRightZheShape legShape fSlab fMidSlab df CAP : DzzheLeft df
create-glyph "cyrl/dzzhe.upright/right.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.e
include : CyrRightZheShape legShape fSlab fMidSlab df XH : DzzheLeft df
create-glyph "cyrl/dzzhe.italic/right.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.e
include : DzzheZheItalicShape legShape fSlab fMidSlab df XH
create-glyph "cyrl/Zhwe/right.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleMM * para.advanceScaleM) 3.5
include : df.markSet.capital
set-base-anchor 'cvDecompose' 0 0
include : ZhweZheShape legShape fSlab fMidSlab df CAP Hook
create-glyph "cyrl/zhwe/right.\(suffix)" : glyph-proc
define df : include : DivFrame (para.advanceScaleM ** 2) 3.5
define df : include : DivFrame (para.advanceScaleM * para.advanceScaleM) 3.5
include : df.markSet.e
set-base-anchor 'cvDecompose' 0 0
include : ZhweZheShape legShape fSlab fMidSlab df XH SHook

View file

@ -54,10 +54,10 @@ glyph-block Letter-Cyrillic-Zhe : begin
define attach2Y : [mix bot top 0.72] + fine
define [mask] : spiro-outline
corner (df.leftSB + overshoot + TINY) top
corner (df.leftSB + overshoot + TINY) top
corner attach1X (attach1Y + TINY)
corner (df.width - attach1X) (attach1Y + TINY)
corner (df.rightSB - overshoot - TINY) top
corner (df.rightSB - overshoot - TINY) top
local rightHalf : union
intersection [MaskRight df.middle]
@ -189,12 +189,12 @@ glyph-block Letter-Cyrillic-Zhe : begin
foreach { suffix { legShape fSlab fMidSlab } } [Object.entries ZheConfig] : do
create-glyph "cyrl/Zhe.\(suffix)" : glyph-proc
local df : include : DivFrame para.advanceScaleM 3
local df : include : DivFrame para.advanceScaleMM 3
include : df.markSet.capital
include : Zhe.Shape legShape fSlab fMidSlab df 0 CAP CAP
create-glyph "cyrl/ZheDescender.\(suffix)" : glyph-proc
local df : DivFrame para.advanceScaleM 3
local df : DivFrame para.advanceScaleMM 3
include [refer-glyph "cyrl/Zhe.\(suffix)"] AS_BASE ALSO_METRICS
include : Zhe.Descender fSlab df