Improve serifs of Bulgarian Cyrillic Lower Zhe. (#2625)

* Improve serifs of Bulgarian Cyrillic Lower Zhe.

* Cleanup.
This commit is contained in:
John McWilliams 2024-12-30 00:53:10 -05:00 committed by GitHub
parent 5a346deb0f
commit b0318ce711
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 16 additions and 10 deletions

View file

@ -6,6 +6,7 @@
- LATIN CAPITAL LETTER REVERSED HALF H (`U+A7F5`). - LATIN CAPITAL LETTER REVERSED HALF H (`U+A7F5`).
- LATIN SMALL LETTER REVERSED HALF H (`U+A7F6`). - LATIN SMALL LETTER REVERSED HALF H (`U+A7F6`).
* Fix shape of `U+276E` and `U+276E` (#2603). * Fix shape of `U+276E` and `U+276E` (#2603).
* Improve serifs of Bulgarian Cyrillic Lower Zhe (`ж`).
* Add characters: * Add characters:
- OPEN CENTRE CROSS (`U+271B`). - OPEN CENTRE CROSS (`U+271B`).
- HEAVY OPEN CENTRE CROSS (`U+271C`). - HEAVY OPEN CENTRE CROSS (`U+271C`).

View file

@ -14,13 +14,18 @@ glyph-block Letter-Cyrillic-Zhe : begin
define [ZheSw df] : AdviceStroke 3.3 df.div define [ZheSw df] : AdviceStroke 3.3 df.div
define [ZheSw2 df] : AdviceStroke 4.0 df.div define [ZheSw2 df] : AdviceStroke 4.0 df.div
define [ZheSw3 df] : AdviceStroke 3.7 df.div define [ZheSw3 df] : AdviceStroke 3.7 df.div
define [Overshoot fSlab df] : if fSlab 0 (O * 3 * df.div) define [Overshoot fSlab df] : if fSlab 0 : O * 3 * df.div
define [CenterBar fSlab df bot midTop] : glyph-proc define [CenterBar fSlab df bot top midTop] : glyph-proc
include : VBar.m df.middle bot midTop [ZheSw df] define fine : ZheSw df
if (fSlab && !para.isItalic && (df.width > 7 * para.refJut)) : begin include : VBar.m df.middle bot midTop fine
include : HSerif.mb df.middle bot Jut if fSlab : begin
include : HSerif.mt df.middle midTop Jut local fBGR : midTop > top
local fEnoughSpaceForFullSerifs : df.width > 7 * para.refJut
if (!para.isItalic && fEnoughSpaceForFullSerifs) : begin
include : HSerif.mb df.middle bot Jut
if (!fBGR) : include : HSerif.mt df.middle midTop Jut
if fBGR : include : HSerif.lt (df.middle - [HSwToV : 0.5 * fine]) midTop SideJut
define [LegSerifs fSlab fHalf df bot top] : glyph-proc define [LegSerifs fSlab fHalf df bot top] : glyph-proc
define fine : ZheSw df define fine : ZheSw df
@ -36,7 +41,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
define sw : ZheSw df define sw : ZheSw df
define fineK 0.1 define fineK 0.1
return : CyrDescender.rSideJut return : CyrDescender.rSideJut
x -- df.rightSB - fineK * sw - [Overshoot fSlab df] x -- (df.rightSB - fineK * sw - [Overshoot fSlab df])
y -- 0 y -- 0
refSw -- sw refSw -- sw
sideJut -- SideJut sideJut -- SideJut
@ -76,7 +81,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
export : define [CurlyLegs fSlab fHalf df bot top] : begin export : define [CurlyLegs fSlab fHalf df bot top] : begin
define fine : ZheSw df define fine : ZheSw df
define fine2 : ZheSw3 df define fine2 : ZheSw3 df
define overshoot : if fSlab 0 (2 * O * df.div) define overshoot : if fSlab 0 : 2 * O * df.div
define attach1X : df.middle - [HSwToV : 0.5 * fine] define attach1X : df.middle - [HSwToV : 0.5 * fine]
define attach1Y : mix bot top : if fSlab 0.325 0.375 define attach1Y : mix bot top : if fSlab 0.325 0.375
@ -167,12 +172,12 @@ glyph-block Letter-Cyrillic-Zhe : begin
return : union fullShape : HBar.m [if fHalf df.middle (midX + 0.5 * fine)] (df.width - (midX + 0.5 * fine)) midY fine return : union fullShape : HBar.m [if fHalf df.middle (midX + 0.5 * fine)] (df.width - (midX + 0.5 * fine)) midY fine
export : define [Shape Legs fSlab fMidSlab df bot top midTop] : glyph-proc export : define [Shape Legs fSlab fMidSlab df bot top midTop] : glyph-proc
include : CenterBar fMidSlab df bot midTop include : CenterBar fMidSlab df bot top midTop
include : Legs fSlab false df bot top include : Legs fSlab false df bot top
include : LegSerifs fSlab false df bot top include : LegSerifs fSlab false df bot top
export : define [HalfShape Legs fSlab fMidSlab df bot top midTop] : glyph-proc export : define [HalfShape Legs fSlab fMidSlab df bot top midTop] : glyph-proc
include : CenterBar fMidSlab df bot midTop include : CenterBar fMidSlab df bot top midTop
include : Legs fSlab true df bot top include : Legs fSlab true df bot top
include : LegSerifs fSlab true df bot top include : LegSerifs fSlab true df bot top