Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make Left/Right Half H and Greek Heta slightly narrower under Quasi-Proportional. #2622

Merged
merged 1 commit into from
Dec 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions changes/32.3.1.md
Original file line number Diff line number Diff line change
@@ -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`).
39 changes: 22 additions & 17 deletions packages/font-glyphs/src/letter/latin/upper-h.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ glyph-block Letter-Latin-Upper-H : begin
local yt : top - [if slabType Stroke 0]
return : HOverlayBar [mix SB 0 0.7] [mix RightSB Width 0.7]
mix yb yt 0.5
Math.min OverlayStroke (0.625 * (yt - yb))
Math.min OverlayStroke : 0.625 * (yt - yb)

define HConfig : object
serifless { HShape HTurned HLeftHalf HRightHalf SLAB-NONE }
Expand Down Expand Up @@ -148,30 +148,34 @@ glyph-block Letter-Latin-Upper-H : begin
include : HSerifs slabType XH 0 SB RightSB

create-glyph "leftHalfH.\(suffix)" : glyph-proc
include : MarkSet.capital
include : LeftHalfBody SB RightSB CAP
include : HSerifs slabType CAP 0 SB RightSB
local df : include : DivFrame para.diversityF
include : df.markSet.capital
include : LeftHalfBody df.leftSB df.rightSB CAP
include : HSerifs slabType CAP 0 df.leftSB df.rightSB
eject-contour 'serifRT'
eject-contour 'serifRB'

create-glyph "rightHalfH.\(suffix)" : glyph-proc
include : MarkSet.capital
include : RightHalfBody SB RightSB CAP
include : HSerifs slabType CAP 0 SB RightSB
local df : include : DivFrame para.diversityF
include : df.markSet.capital
include : RightHalfBody df.leftSB df.rightSB CAP
include : HSerifs slabType CAP 0 df.leftSB df.rightSB
eject-contour 'serifLT'
eject-contour 'serifLB'

create-glyph "leftHalfSmcpH.\(suffix)" : glyph-proc
include : MarkSet.e
include : LeftHalfBody SB RightSB XH
include : HSerifs slabType XH 0 SB RightSB
local df : include : DivFrame para.diversityF
include : df.markSet.e
include : LeftHalfBody df.leftSB df.rightSB XH
include : HSerifs slabType XH 0 df.leftSB df.rightSB
eject-contour 'serifRT'
eject-contour 'serifRB'

create-glyph "rightHalfSmcpH.\(suffix)" : glyph-proc
include : MarkSet.e
include : RightHalfBody SB RightSB XH
include : HSerifs slabType XH 0 SB RightSB
local df : include : DivFrame para.diversityF
include : df.markSet.e
include : RightHalfBody df.leftSB df.rightSB XH
include : HSerifs slabType XH 0 df.leftSB df.rightSB
eject-contour 'serifLT'
eject-contour 'serifLB'

Expand Down Expand Up @@ -269,9 +273,10 @@ glyph-block Letter-Latin-Upper-H : begin
alias 'grek/Heta' 0x370 'leftHalfH'

create-glyph 'grek/heta' 0x371 : glyph-proc
include : MarkSet.e
include : LeftHalfBody SB RightSB XH
include : HSerifs SLAB-SMALL-HETA XH 0 SB RightSB
local df : include : DivFrame para.diversityF
include : df.markSet.e
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]

Expand Down Expand Up @@ -337,7 +342,7 @@ glyph-block Letter-Latin-Upper-H : begin
include : VBar.r RightSB 0 CAP BBS
include : VBar.l (SB + 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 (RightSB - BBD) RightSB CAP BBS
include : HBar.b SB (SB + BBD) 0 BBS
Expand Down
Loading