Skip to content

Commit

Permalink
Improve serifs of Bulgarian Cyrillic Lower Zhe.
Browse files Browse the repository at this point in the history
  • Loading branch information
jmcwilliams403 committed Dec 29, 2024
1 parent 5a346de commit 27d87d4
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 10 deletions.
1 change: 1 addition & 0 deletions changes/32.3.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
- LATIN CAPITAL LETTER REVERSED HALF H (`U+A7F5`).
- LATIN SMALL LETTER REVERSED HALF H (`U+A7F6`).
* Fix shape of `U+276E` and `U+276E` (#2603).
* Improve serifs of Bulgarian Cyrillic Lower Zhe (`ж`).
* Add characters:
- OPEN CENTRE CROSS (`U+271B`).
- HEAVY OPEN CENTRE CROSS (`U+271C`).
Expand Down
25 changes: 15 additions & 10 deletions packages/font-glyphs/src/letter/cyrillic/zhe.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,18 @@ glyph-block Letter-Cyrillic-Zhe : begin
define [ZheSw df] : AdviceStroke 3.3 df.div
define [ZheSw2 df] : AdviceStroke 4.0 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
include : VBar.m df.middle bot midTop [ZheSw df]
if (fSlab && !para.isItalic && (df.width > 7 * para.refJut)) : begin
include : HSerif.mb df.middle bot Jut
include : HSerif.mt df.middle midTop Jut
define [CenterBar fSlab df bot top midTop] : glyph-proc
define fine : ZheSw df
include : VBar.m df.middle bot midTop fine
if fSlab : begin
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 fine

define [LegSerifs fSlab fHalf df bot top] : glyph-proc
define fine : ZheSw df
Expand All @@ -36,7 +41,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
define sw : ZheSw df
define fineK 0.1
return : CyrDescender.rSideJut
x -- df.rightSB - fineK * sw - [Overshoot fSlab df]
x -- (df.rightSB - fineK * sw - [Overshoot fSlab df])
y -- 0
refSw -- sw
sideJut -- SideJut
Expand Down Expand Up @@ -76,7 +81,7 @@ glyph-block Letter-Cyrillic-Zhe : begin
export : define [CurlyLegs fSlab fHalf df bot top] : begin
define fine : ZheSw 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 attach1Y : mix bot top : if fSlab 0.325 0.375
Expand Down Expand Up @@ -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

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 : LegSerifs fSlab false df bot top

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 : LegSerifs fSlab true df bot top

Expand Down

0 comments on commit 27d87d4

Please sign in to comment.