Skip to content

Commit

Permalink
Increase visibility of Cyrillic Descender (#1018).
Browse files Browse the repository at this point in the history
  • Loading branch information
be5invis committed May 19, 2021
1 parent 6e095c6 commit 9dc5bb9
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 31 deletions.
1 change: 1 addition & 0 deletions changes/7.0.0-preview.3.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,5 @@
* Fix wrong serifs on italic `U+1D2B` (#1014).
* Fix missing serifs on `U+018E` and `U+1D32` (#1016).
* Fix wrong serifs on italic `U+1D78` (#1017).
* Increase visibility of Cyrillic Descender (#1018).
* Fix wrong serifs on italic `U+2141` (#1019).
6 changes: 3 additions & 3 deletions font-src/glyphs/letter/cyrillic/sha.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ glyph-block Letter-Cyrillic-Sha : begin
define [CyrShchaShape top df] : glyph-proc
include : CyrShaShape top df
#eject-contour 'serifRB'
include : CyrDescender df.rightSB (shift -- 0.05)
include : CyrDescender df.rightSB

create-glyph 'cyrl/Shcha' 0x429 : glyph-proc
local df : DivFrame para.diversityM 3
Expand All @@ -106,13 +106,13 @@ glyph-block Letter-Cyrillic-Sha : begin
local df : DivFrame para.diversityM 3
set-width df.width
include [refer-glyph 'cyrl/sha.italic.toothed'] AS_BASE
include : CyrDescender df.rightSB (shift -- 0.05)
include : CyrDescender df.rightSB

create-glyph 'cyrl/shcha.italic.motionSerifed' : glyph-proc
local df : DivFrame para.diversityM 3
set-width df.width
include [refer-glyph 'cyrl/sha.italic.motionSerifedShachaBase'] AS_BASE
include : CyrDescender df.rightSB (shift -- 0.05)
include : CyrDescender df.rightSB

select-variant 'cyrl/shcha.italic'
alias 'cyrl/shcha.BGR' null 'cyrl/shcha.italic'
Expand Down
12 changes: 6 additions & 6 deletions font-src/glyphs/letter/cyrillic/tse.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ glyph-block Letter-Cyrillic-Tse : begin
include : VBarLeft SB 0 top
include : HBarBottom SB RightSB 0
include : VBarRight RightSB 0 top
include : CyrDescender RightSB (shift -- 0.05)
include : CyrDescender RightSB
if SLAB : let [sf : SerifFrame top 0 SB RightSB] : begin
include sf.lt.full
include sf.rt.full
Expand All @@ -37,7 +37,7 @@ glyph-block Letter-Cyrillic-Tse : begin
widths.rhs sw
flat xTopBarLeft top [if SLAB [heading Rightward] null]
curl xTopBarRight top [if SLAB [heading Rightward] null]
include : CyrDescender right (shift -- 0.05)
include : CyrDescender right

if SLAB : let [sf : SerifFrame top 0 left right sw] : begin
include sf.rt.outer
Expand All @@ -60,12 +60,12 @@ glyph-block Letter-Cyrillic-Tse : begin
create-glyph 'cyrl/tse.italic.toothed' : glyph-proc
include [refer-glyph "u.toothed"] AS_BASE
eject-contour 'serifRB'
include : CyrDescender RightSB (shift -- 0.05) (connex -- 0.5)
include : CyrDescender RightSB

create-glyph 'cyrl/tse.italic.motionSerifed' : glyph-proc
include [refer-glyph "u.motionSerifed"] AS_BASE
eject-contour 'serifRB'
include : CyrDescender RightSB (shift -- 0.05) (connex -- 0.5)
include : CyrDescender RightSB

create-glyph 'cyrl/TsTse' 0x4B4 : glyph-proc
include : MarkSet.capital
Expand All @@ -79,13 +79,13 @@ glyph-block Letter-Cyrillic-Tse : begin
include [refer-glyph "u.toothed"] AS_BASE ALSO_METRICS
include [refer-glyph "tildeAbove"]
eject-contour 'serifRB'
include : CyrDescender RightSB (shift -- 0.05) (connex -- 0.5)
include : CyrDescender RightSB

create-glyph 'cyrl/tstse.italic.motionSerifed' : glyph-proc
include [refer-glyph "u.motionSerifed"] AS_BASE ALSO_METRICS
include [refer-glyph "tildeAbove"]
eject-contour 'serifRB'
include : CyrDescender RightSB (shift -- 0.05) (connex -- 0.5)
include : CyrDescender RightSB

select-variant 'cyrl/tse.italic'
select-variant 'cyrl/tstse.italic' (follow -- 'cyrl/tse.italic')
Expand Down
4 changes: 2 additions & 2 deletions font-src/glyphs/letter/cyrillic/zhe.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ glyph-block Letter-Cyrillic-Zhe : begin

create-glyph 0x496 : composite-proc
refer-glyph 'cyrl/Zhe'
CyrDescender ([DivFrame para.diversityM 3].rightSB - O * 2) (connex -- 0.5)
CyrDescender ([DivFrame para.diversityM 3].rightSB - O * 2)

create-glyph 'cyrl/zhe' 0x436 : glyph-proc
local df : DivFrame para.diversityM 3
Expand All @@ -61,7 +61,7 @@ glyph-block Letter-Cyrillic-Zhe : begin

create-glyph 0x497 : composite-proc
refer-glyph 'cyrl/zhe'
CyrDescender ([DivFrame para.diversityM 3].rightSB - O * 2) (connex -- 0.5)
CyrDescender ([DivFrame para.diversityM 3].rightSB - O * 2)

create-glyph 'cyrl/zhe.BGR' : glyph-proc
local df : DivFrame para.diversityM 3
Expand Down
2 changes: 1 addition & 1 deletion font-src/glyphs/letter/latin/k.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ glyph-block Letter-Latin-K : begin

define [KCyrlCursiveDescender top straightBar slabLeft slab] : begin
define dim : KCursiveLoopAndLegDimen top straightBar slabLeft slab
return : CyrDescender dim.slabStartX (connex -- 0.5)
return : CyrDescender dim.slabStartX

define [KCyrlNormalDescender top straightBar slabLeft slab] : CyrDescender
RightSB + [KBalanceRight slab straightBar] - [KO slab straightBar top Stroke]
Expand Down
8 changes: 4 additions & 4 deletions font-src/glyphs/letter/latin/upper-h.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,11 @@ glyph-block Letter-Latin-Upper-H : begin
select-variant 'cyrl/en' 0x43D (shapeFrom -- 'smcpH')
select-variant 'cyrl/en/reduced' 0x43D (shapeFrom -- 'smcpH')

derive-composites 'cyrl/EnDescender' 0x4A2 'cyrl/En' [CyrDescender RightSB (connex -- 0.5)]
derive-composites 'cyrl/enDescender' 0x4A3 'cyrl/en/reduced' [CyrDescender RightSB (connex -- 0.5)]
derive-composites 'cyrl/EnDescender' 0x4A2 'cyrl/En' [CyrDescender RightSB]
derive-composites 'cyrl/enDescender' 0x4A3 'cyrl/en/reduced' [CyrDescender RightSB]

derive-composites 'cyrl/EnTail' 0x4C9 'cyrl/En' [CyrTailDescender RightSB (connex -- 0.5)]
derive-composites 'cyrl/enTail' 0x4CA 'cyrl/en/reduced' [CyrTailDescender RightSB (connex -- 0.5)]
derive-composites 'cyrl/EnTail' 0x4C9 'cyrl/En' [CyrTailDescender RightSB]
derive-composites 'cyrl/enTail' 0x4CA 'cyrl/en/reduced' [CyrTailDescender RightSB]

create-glyph 'mathbb/H' 0x210D : glyph-proc
include : MarkSet.capital
Expand Down
26 changes: 11 additions & 15 deletions font-src/glyphs/letter/shared.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -437,34 +437,30 @@ glyph-block Letter-Shared-Shapes : begin
define VJutSw : AdviceStroke 3.5

glyph-block-export CyrDescender
define [CyrDescender] : params [x [shift 0.1] [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow : if SLAB SideJut ((RightSB - SB) * shift)
define [CyrDescender] : params [x [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow SideJut
return : union
VBarRight (x + descenderOverflow + 0.25 * Stroke) (HalfStroke - LongJut) Stroke VJutSw
if (!SLAB && descenderOverflow > Stroke * 0.75 || connex)
HBarTop (x - connex * Stroke * HVContrast) (x + descenderOverflow) Stroke
glyph-proc
VBarRight (x + descenderOverflow + 0.125 * Stroke) (HalfStroke - LongJut) Stroke VJutSw
HBarTop (x - connex * Stroke * HVContrast) (x + descenderOverflow) Stroke

glyph-block-export CyrHookDescender
define [CyrHookDescender] : params [x [shift 0.1] [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow : if SLAB SideJut ((RightSB - SB) * shift)
define [CyrHookDescender] : params [x [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow SideJut
local xRef : x + descenderOverflow + 0.25 * Stroke
local hd : FlatHookDepth [DivFrame 1]
return : union
HBarTop (x - connex * Stroke * HVContrast) (x + descenderOverflow) Stroke
dispiro
widths.rhs VJutSw
flat xRef Stroke [heading Downward]
curl xRef (hd.y - Hook - 0.25 * VJutSw) [heading Downward]
arcvh
flat (xRef - hd.x + 0.25 * VJutSw * HVContrast) (0 - Hook)
curl (xRef - HookX - 0.5 * VJutSw * HVContrast) (0 - Hook)
if (!SLAB && descenderOverflow > Stroke * 0.75 || connex)
HBarTop (x - connex * Stroke * HVContrast) (x + descenderOverflow) Stroke
glyph-proc

glyph-block-export CyrTailDescender
define [CyrTailDescender] : params [x [shift 0.1] [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : if SLAB SideJut ((RightSB - SB) * shift)
define [CyrTailDescender] : params [x [connex 0.5] [overflow nothing]] : begin
local descenderOverflow SideJut
local xRef : x + descenderOverflow + (0.3 + TanSlope) * Stroke
return : union
difference
Expand All @@ -476,8 +472,8 @@ glyph-block Letter-Shared-Shapes : begin
glyph-proc

glyph-block-export CyrLeftDescender
define [CyrLeftDescender] : params [x [shift 0.1] [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow : if SLAB SideJut ((RightSB - SB) * shift)
define [CyrLeftDescender] : params [x [connex 0.5] [overflow nothing]] : begin
local descenderOverflow : fallback overflow SideJut
return : union
VBarLeft (x - descenderOverflow - 0.25 * Stroke) (HalfStroke - LongJut) Stroke VJutSw
if (!SLAB && descenderOverflow > Stroke * 0.75 || connex)
Expand Down

0 comments on commit 9dc5bb9

Please sign in to comment.