Fix serifs of italic small Yat in Etoile (#2067).

This commit is contained in:
be5invis 2023-10-28 13:04:37 -07:00
parent ad453dd74b
commit 925ad7e302
5 changed files with 38 additions and 14 deletions

View file

@ -1,7 +1,7 @@
$$include '../../../meta/macros.ptl'
import [mix linreg clamp fallback] from"../../../support/utils.mjs"
import [DependentSelector CvDecompose] from"../../../support/gr.mjs"
import [DependentSelector] from"../../../support/gr.mjs"
glyph-module

View file

@ -1,6 +1,7 @@
$$include '../../../meta/macros.ptl'
import [mix linreg clamp fallback] from"../../../support/utils.mjs"
import [DependentSelector] from"../../../support/gr.mjs"
glyph-module
@ -8,11 +9,11 @@ glyph-block Letter-Cyrillic-Yat : begin
glyph-block-import CommonShapes
glyph-block-import Common-Derivatives
glyph-block-import Mark-Adjustment : ExtendAboveBaseAnchors
glyph-block-import Letter-Shared : CreateDependentComposite
glyph-block-import Letter-Shared-Metrics : BowlXDepth
glyph-block-import Letter-Shared-Shapes : LetterBarOverlay
glyph-block-import Letter-Cyrillic-Yeri : YeriConfig
glyph-block-import Letter-Cyrillic-Iotified-A : Iotified
glyph-block-import Letter-Shared-Shapes : nShoulderKnots
define [xBarLeft df] : Math.max (df.rightSB - (RightSB - SB)) : if SLAB
Just ([mix df.leftSB df.rightSB 0.35] - [HSwToV : 0.5 * df.mvs])
@ -109,6 +110,8 @@ glyph-block Letter-Cyrillic-Yat : begin
eject-contour 'serifYeriLT'
eject-contour 'serifYeriLB'
DependentSelector.set currentGlyph : if (suffix === "corner") 'full' 'reduced'
select-variant 'cyrl/Yat' 0x462 (follow -- 'cyrl/YeriBar')
select-variant 'cyrl/yat.upright' (follow -- 'cyrl/yeriBar')
select-variant 'cyrl/yatTall' 0x1C87 (follow -- 'cyrl/yeriBar')
@ -117,5 +120,8 @@ glyph-block Letter-Cyrillic-Yat : begin
select-variant 'cyrl/yatIotified' 0xA653 (follow -- 'cyrl/yeriBar')
select-variant 'cyrl/yat.italic/yeri' (follow -- 'cyrl/yeriBar')
derive-composites 'cyrl/yat.italic' null 'cyrl/yat.italic/base' 'cyrl/yat.italic/yeri'
CreateDependentComposite 'cyrl/yat.italic' null 'cyrl/yat.italic/yeri' : object
full 'cyrl/yat.italic/base/corner'
reduced 'cyrl/yat.italic/base/cursive'
alias 'latn/yatSakha.italic' null 'cyrl/yat.italic'

View file

@ -106,13 +106,20 @@ glyph-block Letter-Latin-Lower-N : begin
__ NTopLeftSerif
begin NBottomLeftSerif
if (tail != 'tailed') NBottomRightSerifUpright
serifedItalicYat : list
serifedItalicYatCorner : list
match body
([Just "earlessCorner"] || [Just "earlessRounded"]) nothing
([Just "earlessCornerHTB"] || [Just "earlessRoundedHTB"]) NHTB
__ NTopLeftSerif
begin NBottomLeftYatSerif
begin NBottomRightYatSerif
serifedItalicYatCursive : list
match body
([Just "earlessCorner"] || [Just "earlessRounded"]) nothing
([Just "earlessCornerHTB"] || [Just "earlessRoundedHTB"]) NHTB
__ NTopLeftSerif
begin NBottomLeftYatSerif
begin nothing
foreach { suffix { Body tailed {sLT sLB sRB} } } [Object.entries NConfig] : do
create-glyph "n.\(suffix)" : glyph-proc
@ -275,7 +282,8 @@ glyph-block Letter-Latin-Lower-N : begin
select-variant 'cyrl/peMidHook.italic' (follow -- 'cyrl/pe.italic')
select-variant 'cyrl/yat.italic/base'
select-variant 'cyrl/yat.italic/base/corner' (shapeFrom -- 'cyrl/yat.italic/base')
select-variant 'cyrl/yat.italic/base/cursive' (shapeFrom -- 'cyrl/yat.italic/base')
do "n with Apostrophe"
derive-glyphs 'nApostrophe/comma' null 'commaAbove/asPunctuation' : function [src gr] : glyph-proc