Make Half H slightly narrower under Quasi-Proportional. (#2622)

This commit is contained in:
John McWilliams 2024-12-24 08:11:58 -05:00 committed by GitHub
parent 58271908d7
commit 6a5ddbd25b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 29 additions and 17 deletions

7
changes/32.3.1.md Normal file
View file

@ -0,0 +1,7 @@
* Make certain characters slightly narrower under Quasi-Proportional. Affected characters:
- GREEK CAPITAL LETTER HETA (`U+0370`).
- GREEK SMALL LETTER HETA (`U+0371`).
- LATIN CAPITAL LETTER HALF H (`U+2C75`).
- LATIN SMALL LETTER HALF H (`U+2C76`).
- LATIN CAPITAL LETTER REVERSED HALF H (`U+A7F5`).
- LATIN SMALL LETTER REVERSED HALF H (`U+A7F6`).

View file

@ -108,7 +108,7 @@ glyph-block Letter-Latin-Upper-H : begin
local yt : top - [if slabType Stroke 0] local yt : top - [if slabType Stroke 0]
return : HOverlayBar [mix SB 0 0.7] [mix RightSB Width 0.7] return : HOverlayBar [mix SB 0 0.7] [mix RightSB Width 0.7]
mix yb yt 0.5 mix yb yt 0.5
Math.min OverlayStroke (0.625 * (yt - yb)) Math.min OverlayStroke : 0.625 * (yt - yb)
define HConfig : object define HConfig : object
serifless { HShape HTurned HLeftHalf HRightHalf SLAB-NONE } serifless { HShape HTurned HLeftHalf HRightHalf SLAB-NONE }
@ -148,30 +148,34 @@ glyph-block Letter-Latin-Upper-H : begin
include : HSerifs slabType XH 0 SB RightSB include : HSerifs slabType XH 0 SB RightSB
create-glyph "leftHalfH.\(suffix)" : glyph-proc create-glyph "leftHalfH.\(suffix)" : glyph-proc
include : MarkSet.capital local df : include : DivFrame para.diversityF
include : LeftHalfBody SB RightSB CAP include : df.markSet.capital
include : HSerifs slabType CAP 0 SB RightSB include : LeftHalfBody df.leftSB df.rightSB CAP
include : HSerifs slabType CAP 0 df.leftSB df.rightSB
eject-contour 'serifRT' eject-contour 'serifRT'
eject-contour 'serifRB' eject-contour 'serifRB'
create-glyph "rightHalfH.\(suffix)" : glyph-proc create-glyph "rightHalfH.\(suffix)" : glyph-proc
include : MarkSet.capital local df : include : DivFrame para.diversityF
include : RightHalfBody SB RightSB CAP include : df.markSet.capital
include : HSerifs slabType CAP 0 SB RightSB include : RightHalfBody df.leftSB df.rightSB CAP
include : HSerifs slabType CAP 0 df.leftSB df.rightSB
eject-contour 'serifLT' eject-contour 'serifLT'
eject-contour 'serifLB' eject-contour 'serifLB'
create-glyph "leftHalfSmcpH.\(suffix)" : glyph-proc create-glyph "leftHalfSmcpH.\(suffix)" : glyph-proc
include : MarkSet.e local df : include : DivFrame para.diversityF
include : LeftHalfBody SB RightSB XH include : df.markSet.e
include : HSerifs slabType XH 0 SB RightSB include : LeftHalfBody df.leftSB df.rightSB XH
include : HSerifs slabType XH 0 df.leftSB df.rightSB
eject-contour 'serifRT' eject-contour 'serifRT'
eject-contour 'serifRB' eject-contour 'serifRB'
create-glyph "rightHalfSmcpH.\(suffix)" : glyph-proc create-glyph "rightHalfSmcpH.\(suffix)" : glyph-proc
include : MarkSet.e local df : include : DivFrame para.diversityF
include : RightHalfBody SB RightSB XH include : df.markSet.e
include : HSerifs slabType XH 0 SB RightSB include : RightHalfBody df.leftSB df.rightSB XH
include : HSerifs slabType XH 0 df.leftSB df.rightSB
eject-contour 'serifLT' eject-contour 'serifLT'
eject-contour 'serifLB' eject-contour 'serifLB'
@ -269,9 +273,10 @@ glyph-block Letter-Latin-Upper-H : begin
alias 'grek/Heta' 0x370 'leftHalfH' alias 'grek/Heta' 0x370 'leftHalfH'
create-glyph 'grek/heta' 0x371 : glyph-proc create-glyph 'grek/heta' 0x371 : glyph-proc
include : MarkSet.e local df : include : DivFrame para.diversityF
include : LeftHalfBody SB RightSB XH include : df.markSet.e
include : HSerifs SLAB-SMALL-HETA XH 0 SB RightSB include : LeftHalfBody df.leftSB df.rightSB XH
include : HSerifs SLAB-SMALL-HETA XH 0 df.leftSB df.rightSB
derive-composites 'HDescender' 0x2C67 'H/descBase' [CyrDescender.rSideJut RightSB 0] derive-composites 'HDescender' 0x2C67 'H/descBase' [CyrDescender.rSideJut RightSB 0]
@ -337,7 +342,7 @@ glyph-block Letter-Latin-Upper-H : begin
include : VBar.r RightSB 0 CAP BBS include : VBar.r RightSB 0 CAP BBS
include : VBar.l (SB + BBD) 0 CAP BBS include : VBar.l (SB + BBD) 0 CAP BBS
include : VBar.r (RightSB - BBD) 0 CAP BBS include : VBar.r (RightSB - BBD) 0 CAP BBS
include : HBar.m (SB + BBD) (RightSB - BBD) (CAP * HBarPos) BBS include : HBar.m (SB + BBD) (RightSB - BBD) (CAP * HBarPos) BBS
include : HBar.t SB (SB + BBD) CAP BBS include : HBar.t SB (SB + BBD) CAP BBS
include : HBar.t (RightSB - BBD) RightSB CAP BBS include : HBar.t (RightSB - BBD) RightSB CAP BBS
include : HBar.b SB (SB + BBD) 0 BBS include : HBar.b SB (SB + BBD) 0 BBS