Add Et-styled ampersand (#211)
This commit is contained in:
parent
44b7a7e003
commit
300f17b719
2 changed files with 51 additions and 20 deletions
|
@ -524,29 +524,27 @@ glyph-block Symbol-Punctuation-Ampersand : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Overmarks
|
glyph-block-import Overmarks
|
||||||
|
|
||||||
local sw : adviceBlackness2 3 3 CAP
|
define sw : adviceBlackness2 3 3 CAP
|
||||||
local fine : adviceBlackness 3.5
|
define fineAmp : adviceBlackness 3.5
|
||||||
local pxUpperLoopRight 0.875
|
define pxUpperLoopRight 0.875
|
||||||
local pxUpperLoopLeft 0.05
|
define pxUpperLoopLeft 0.05
|
||||||
local rr 0.95
|
define pXTerminal 1.1
|
||||||
local q 0.45
|
define pStraightBar 0.4
|
||||||
local r 1.1
|
|
||||||
local xTerminal : [mix SB RightSB r] - sw * HVContrast
|
|
||||||
local pStraightBar 0.4
|
|
||||||
|
|
||||||
local smaUpperLoop : SmoothAOf (Smooth * (pxUpperLoopRight - pxUpperLoopLeft)) Width
|
define smaUpperLoop : SmoothAOf (Smooth * (pxUpperLoopRight - pxUpperLoopLeft)) Width
|
||||||
local smbUpperLoop : SmoothBOf (Smooth * (pxUpperLoopRight - pxUpperLoopLeft)) Width
|
define smbUpperLoop : SmoothBOf (Smooth * (pxUpperLoopRight - pxUpperLoopLeft)) Width
|
||||||
|
|
||||||
local xUpperLoopLeft : mix SB RightSB pxUpperLoopLeft
|
define xTerminal : [mix SB RightSB pXTerminal] - sw * HVContrast
|
||||||
local yUpperLoopLeft : CAP - smaUpperLoop
|
define xUpperLoopLeft : mix SB RightSB pxUpperLoopLeft
|
||||||
local xUpperLoopRight : mix SB RightSB pxUpperLoopRight
|
define yUpperLoopLeft : CAP - smaUpperLoop
|
||||||
local yUpperLoopRight : CAP - smbUpperLoop
|
define xUpperLoopRight : mix SB RightSB pxUpperLoopRight
|
||||||
local xUpperLoopTop : mix xUpperLoopLeft xUpperLoopRight 0.5
|
define yUpperLoopRight : CAP - smbUpperLoop
|
||||||
local yMockUpperLoopLeftBottom : CAP - smaUpperLoop - smbUpperLoop * 0.3
|
define xUpperLoopTop : mix xUpperLoopLeft xUpperLoopRight 0.5
|
||||||
|
define yMockUpperLoopLeftBottom : CAP - smaUpperLoop - smbUpperLoop * 0.3
|
||||||
|
|
||||||
create-glyph 'ampersand.closed' : difference
|
create-glyph 'ampersand.closed' : difference
|
||||||
dispiro
|
dispiro
|
||||||
widths.rhs fine
|
widths.rhs fineAmp
|
||||||
flat (RightSB - O) CapMiddle [heading Downward]
|
flat (RightSB - O) CapMiddle [heading Downward]
|
||||||
curl (RightSB - O) SmoothA
|
curl (RightSB - O) SmoothA
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -566,7 +564,7 @@ glyph-block Symbol-Punctuation-Ampersand : begin
|
||||||
create-glyph 'ampersand.open' : union
|
create-glyph 'ampersand.open' : union
|
||||||
difference
|
difference
|
||||||
dispiro
|
dispiro
|
||||||
widths.rhs fine
|
widths.rhs fineAmp
|
||||||
flat (RightSB - O) CapMiddle [heading Downward]
|
flat (RightSB - O) CapMiddle [heading Downward]
|
||||||
curl (RightSB - O) SmoothA
|
curl (RightSB - O) SmoothA
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -578,7 +576,7 @@ glyph-block Symbol-Punctuation-Ampersand : begin
|
||||||
Rect (CAP * 2) yUpperLoopRight 0 Width
|
Rect (CAP * 2) yUpperLoopRight 0 Width
|
||||||
Rect (CAP * 2) CapMiddle Middle Width
|
Rect (CAP * 2) CapMiddle Middle Width
|
||||||
intersection
|
intersection
|
||||||
Rect (CAP * 2) SmoothA 0 (RightSB - fine * HVContrast)
|
Rect (CAP * 2) SmoothA 0 (RightSB - fineAmp * HVContrast)
|
||||||
WithTransform [Translate (-O) 0] : spiro-outline
|
WithTransform [Translate (-O) 0] : spiro-outline
|
||||||
g4.left.start (xUpperLoopTop - CorrectionOMidX * sw) (CAP - O)
|
g4.left.start (xUpperLoopTop - CorrectionOMidX * sw) (CAP - O)
|
||||||
archv
|
archv
|
||||||
|
@ -598,6 +596,33 @@ glyph-block Symbol-Punctuation-Ampersand : begin
|
||||||
curl [mix xUpperLoopLeft xTerminal 2] (- yMockUpperLoopLeftBottom)
|
curl [mix xUpperLoopLeft xTerminal 2] (- yMockUpperLoopLeftBottom)
|
||||||
Rect 0 (-CAP * 2) xTerminal (Width * 2)
|
Rect 0 (-CAP * 2) xTerminal (Width * 2)
|
||||||
|
|
||||||
|
define yEtMiddle : CAP * OverlayPos
|
||||||
|
define smaEt : CAP - [mix (yEtMiddle + sw / 2) (CAP - O - sw) (SmoothB / (SmoothA + SmoothB))] - TanSlope * HVContrast * sw
|
||||||
|
define smbEt : [mix (sw + O) (yEtMiddle - sw / 2) (SmoothB / (SmoothA + SmoothB))] + TanSlope * HVContrast * sw
|
||||||
|
define fineEt : sw * CThin
|
||||||
|
define xEtLeft SB
|
||||||
|
define xEtRight : mix xUpperLoopRight RightSB 0.5
|
||||||
|
define xEtMiddle : mix xEtRight Width 0.5
|
||||||
|
|
||||||
|
create-glyph 'ampersand.et' : union
|
||||||
|
dispiro
|
||||||
|
g4 (xEtRight + O) (CAP - SHook) [widths.lhs]
|
||||||
|
hookstart (CAP - O)
|
||||||
|
g4 xEtLeft (CAP - smaEt)
|
||||||
|
arcvh
|
||||||
|
flat Middle (yEtMiddle - (fineEt - sw / 2)) [widths.heading fineEt 0 Rightward]
|
||||||
|
curl xEtMiddle (yEtMiddle - (fineEt - sw / 2)) [heading Rightward]
|
||||||
|
dispiro
|
||||||
|
flat xEtMiddle (yEtMiddle + (fineEt - sw / 2)) [widths.heading fineEt 0 Leftward]
|
||||||
|
curl Middle (yEtMiddle + (fineEt - sw / 2)) [heading Leftward]
|
||||||
|
archv
|
||||||
|
g4 (xEtLeft + O * 2) smbEt [widths.lhs]
|
||||||
|
arcvh
|
||||||
|
g4 ([mix xEtLeft xEtRight 0.5] + CorrectionOMidS) O
|
||||||
|
archv
|
||||||
|
flat (xEtRight - O) smaEt
|
||||||
|
curl (xEtRight - O) [mix (yEtMiddle + sw / 2) (CAP - SHook) 0.375] [heading Upward]
|
||||||
|
|
||||||
select-variant 'ampersand' '&'
|
select-variant 'ampersand' '&'
|
||||||
|
|
||||||
glyph-block Symbol-Punctuation-At : begin
|
glyph-block Symbol-Punctuation-At : begin
|
||||||
|
|
|
@ -595,6 +595,12 @@ sampler = '&'
|
||||||
description = 'Ampersand (`&`) with an open contour'
|
description = 'Ampersand (`&`) with an open contour'
|
||||||
ampersand = 'open'
|
ampersand = 'open'
|
||||||
|
|
||||||
|
[simple.v-ampersand-et]
|
||||||
|
tag = 'VXAI'
|
||||||
|
sampler = '&'
|
||||||
|
description = 'Ampersand (`&`) drawn like a ligature of E and t'
|
||||||
|
ampersand = 'et'
|
||||||
|
|
||||||
[simple.v-at-threefold]
|
[simple.v-at-threefold]
|
||||||
tag = 'cv31'
|
tag = 'cv31'
|
||||||
sampler = '@'
|
sampler = '@'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue