From 9074890f3d30a2bd6ccbd9af47cfd66ef7b7e142 Mon Sep 17 00:00:00 2001 From: be5invis Date: Mon, 1 Jan 2024 09:27:19 -0800 Subject: [PATCH] Fix attachment of descender parts of Cyrillic Lower Ha/X under `x` = `cursive` (#2142). --- changes/28.0.4.md | 1 + packages/font-glyphs/src/letter/latin/x.ptl | 37 ++++++++++----------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/changes/28.0.4.md b/changes/28.0.4.md index 18d6b5f3f..6b2b65fb0 100644 --- a/changes/28.0.4.md +++ b/changes/28.0.4.md @@ -1,2 +1,3 @@ * Fix leaning marks of turned capital F/L (#2137). * Fix overlay bar placement of Z with Hook and Z with Swash Tail (#2141). +* Fix attachment of descender parts of Cyrillic Lower Ha/X under `x` = `cursive` (#2142). diff --git a/packages/font-glyphs/src/letter/latin/x.ptl b/packages/font-glyphs/src/letter/latin/x.ptl index 2867168b5..a956e86e2 100644 --- a/packages/font-glyphs/src/letter/latin/x.ptl +++ b/packages/font-glyphs/src/letter/latin/x.ptl @@ -138,8 +138,8 @@ glyph-block Letter-Latin-X : begin [swCursiveCoEnd : (sw / Stroke) * [AdviceStroke 2]] ] : namespace local sw df.mvs - export : define [base fSlab] : union - match stroke1 + export : define [base fSlab] : glyph-proc + include : match stroke1 [Just STROKE-STRAIGHT] : XStrand true fSlab df.leftSB bot df.rightSB top turn 0.4 tension sw [Just STROKE-CURLY] : XStrand false fSlab df.leftSB bot df.rightSB top turn 0.4 tension sw [Just STROKE-CHANCERY] : XChanceryStrand (-1) df.leftSB bot df.rightSB top false sw @@ -151,7 +151,7 @@ glyph-block Letter-Latin-X : begin flatTail -- (stroke1 === STROKE-CURSIVE-FLAT) FlipAround df.middle [mix bot top 0.5] __ : glyph-proc - match stroke2 + include : match stroke2 [Just STROKE-STRAIGHT] : XStrand true fSlab df.leftSB top df.rightSB bot turn 0.4 tension sw [Just STROKE-CURLY] : XStrand false fSlab df.leftSB top df.rightSB bot turn 0.4 tension sw [Just STROKE-CHANCERY] : XChanceryStrand (+1) df.leftSB top df.rightSB bot false sw @@ -165,22 +165,21 @@ glyph-block Letter-Latin-X : begin export : define [rightHalf fSlab] : glyph-proc local midy : mix top bot 0.5 - include : union - match stroke1 - [Just STROKE-STRAIGHT] : HalfXStrand true fSlab df.rightSB top df.middle midy turn 0.4 tension sw - [Just STROKE-CURLY] : HalfXStrand false fSlab df.rightSB top df.middle midy turn 0.4 tension sw - [Just STROKE-CHANCERY] : XChanceryStrand (-1) df.leftSB bot df.rightSB top true sw - __ : glyph-proc - match stroke2 - [Just STROKE-STRAIGHT] : HalfXStrand true fSlab df.rightSB bot df.middle midy turn 0.4 tension sw - [Just STROKE-CURLY] : HalfXStrand false fSlab df.rightSB bot df.middle midy turn 0.4 tension sw - [Just STROKE-CHANCERY] : XChanceryStrand (+1) df.leftSB top df.rightSB bot true sw - [Just STROKE-CURSIVE] : XCursiveHalfShape top bot df.middle df.rightSB - swCoEnd -- swCursiveCoEnd - swEnd -- swCursiveEnd - swMid -- swCursiveMid - setMark -- true - __ : glyph-proc + include : match stroke1 + [Just STROKE-STRAIGHT] : HalfXStrand true fSlab df.rightSB top df.middle midy turn 0.4 tension sw + [Just STROKE-CURLY] : HalfXStrand false fSlab df.rightSB top df.middle midy turn 0.4 tension sw + [Just STROKE-CHANCERY] : XChanceryStrand (-1) df.leftSB bot df.rightSB top true sw + __ : glyph-proc + include : match stroke2 + [Just STROKE-STRAIGHT] : HalfXStrand true fSlab df.rightSB bot df.middle midy turn 0.4 tension sw + [Just STROKE-CURLY] : HalfXStrand false fSlab df.rightSB bot df.middle midy turn 0.4 tension sw + [Just STROKE-CHANCERY] : XChanceryStrand (+1) df.leftSB top df.rightSB bot true sw + [Just STROKE-CURSIVE] : XCursiveHalfShape top bot df.middle df.rightSB + swCoEnd -- swCursiveCoEnd + swEnd -- swCursiveEnd + swMid -- swCursiveMid + setMark -- true + __ : glyph-proc glyph-block-export XSerifs define XSerifs : namespace