Aile is almost done
This commit is contained in:
parent
4e2ee3d44c
commit
0c10e0da49
16 changed files with 683 additions and 531 deletions
|
@ -123,9 +123,12 @@ design = ["term", "ss11"]
|
||||||
|
|
||||||
[buildPlans.iosevka-aile]
|
[buildPlans.iosevka-aile]
|
||||||
family = "Iosevka Aile"
|
family = "Iosevka Aile"
|
||||||
design = ["type", "shape-straight-bar", "diversity-1", "v-at-fourfold", "v-j-straight", 'v-capital-i-straight', 'v-capital-j-straight']
|
design = ["type", "shape-straight-bar", "v-at-fourfold", "v-j-narrow", 'v-capital-i-straight', 'v-capital-j-straight', 'v-g-singlestorey', 'v-r-narrow']
|
||||||
upright = ["v-i-line", "v-l-line"]
|
upright = ["v-i-line", "v-l-line", 'v-f-short', 'v-t-short']
|
||||||
italic = ["v-i-tailed", "v-l-tailed"]
|
italic = ["v-i-line", "v-l-line", 'v-f-short', 'v-t-short']
|
||||||
|
|
||||||
|
[buildPlans.iosevka-aile.post]
|
||||||
|
design = ['wd-expanded-aile', "diversity-2"]
|
||||||
|
|
||||||
[buildPlans.iosevka-etoile]
|
[buildPlans.iosevka-etoile]
|
||||||
family = "Iosevka Etoile"
|
family = "Iosevka Etoile"
|
||||||
|
|
|
@ -198,8 +198,9 @@ export as build : define [buildFont para recursive recursiveCodes] : begin
|
||||||
|
|
||||||
# Space
|
# Space
|
||||||
sketch # space
|
sketch # space
|
||||||
set-width WIDTH
|
local df : DivFrame para.diversityF
|
||||||
include markset.e
|
set-width df.width
|
||||||
|
include df.markSet.e
|
||||||
save 'space' ' '
|
save 'space' ' '
|
||||||
|
|
||||||
# IDKY, but wrapping "metrics" prevents Node.js on Arch modifying it.
|
# IDKY, but wrapping "metrics" prevents Node.js on Arch modifying it.
|
||||||
|
|
|
@ -298,7 +298,7 @@ export : define [apply] : begin
|
||||||
local pendingGlyphs : records.map : [record] => record.1
|
local pendingGlyphs : records.map : [record] => record.1
|
||||||
return : Miniature
|
return : Miniature
|
||||||
glyphs -- [pendingGlyphs.reduce : [a b] => [a.concat b]]
|
glyphs -- [pendingGlyphs.reduce : [a b] => [a.concat b]]
|
||||||
crowd -- [fallback para.smallCrowd 3.75]
|
crowd -- 5
|
||||||
scale -- 0.65
|
scale -- 0.65
|
||||||
unfair -- true
|
unfair -- true
|
||||||
|
|
||||||
|
@ -503,9 +503,10 @@ export : define [apply] : begin
|
||||||
local pendingGlyphs : records.map : [record] => record.1
|
local pendingGlyphs : records.map : [record] => record.1
|
||||||
local miniatureFont : Miniature
|
local miniatureFont : Miniature
|
||||||
glyphs -- pendingGlyphs
|
glyphs -- pendingGlyphs
|
||||||
crowd -- [fallback para.smallCrowd 3.5]
|
crowd -- 4
|
||||||
scale -- 0.7
|
scale -- 0.7
|
||||||
unfair -- true
|
unfair -- true
|
||||||
|
mono -- true
|
||||||
foreach {unicode glyphid pri} [items-of records] : create-glyph [suggestName : 'sup' + glyphid] : glyph-construction
|
foreach {unicode glyphid pri} [items-of records] : create-glyph [suggestName : 'sup' + glyphid] : glyph-construction
|
||||||
if unicode : assign-unicode unicode
|
if unicode : assign-unicode unicode
|
||||||
local middle : miniatureFont.(glyphid).advanceWidth / 2
|
local middle : miniatureFont.(glyphid).advanceWidth / 2
|
||||||
|
@ -522,9 +523,10 @@ export : define [apply] : begin
|
||||||
local pendingGlyphs : records.map : [record] => record.1
|
local pendingGlyphs : records.map : [record] => record.1
|
||||||
local miniatureFont : Miniature
|
local miniatureFont : Miniature
|
||||||
glyphs -- pendingGlyphs
|
glyphs -- pendingGlyphs
|
||||||
crowd -- [fallback para.smallCrowd 3.5]
|
crowd -- 4
|
||||||
scale -- 0.7
|
scale -- 0.7
|
||||||
unfair -- true
|
unfair -- true
|
||||||
|
mono -- true
|
||||||
foreach {unicode glyphid pri} [items-of records] : create-glyph [suggestName : 'sub' + glyphid] : glyph-construction
|
foreach {unicode glyphid pri} [items-of records] : create-glyph [suggestName : 'sub' + glyphid] : glyph-construction
|
||||||
if unicode : assign-unicode unicode
|
if unicode : assign-unicode unicode
|
||||||
local middle : miniatureFont.(glyphid).advanceWidth / 2
|
local middle : miniatureFont.(glyphid).advanceWidth / 2
|
||||||
|
@ -543,6 +545,10 @@ export : define [apply] : begin
|
||||||
set forkedParams.cap0 para.cap
|
set forkedParams.cap0 para.cap
|
||||||
set forkedParams.cap XH
|
set forkedParams.cap XH
|
||||||
set forkedParams.xheight (XH * XH / CAP)
|
set forkedParams.xheight (XH * XH / CAP)
|
||||||
|
set forkedParams.diversityM 1
|
||||||
|
set forkedParams.diversityF 1
|
||||||
|
set forkedParams.diversityI 1
|
||||||
|
set forkedParams.diversityII 1
|
||||||
local sf : Fork pendingGlyphs forkedParams
|
local sf : Fork pendingGlyphs forkedParams
|
||||||
foreach {unicode glyphid tfm} [items-of records] : create-glyph [suggestName : 'smcp' + glyphid] : glyph-construction
|
foreach {unicode glyphid tfm} [items-of records] : create-glyph [suggestName : 'smcp' + glyphid] : glyph-construction
|
||||||
if unicode : assign-unicode unicode
|
if unicode : assign-unicode unicode
|
||||||
|
@ -554,9 +560,10 @@ export : define [apply] : begin
|
||||||
local pendingGlyphs : records.map : [record] => record.1
|
local pendingGlyphs : records.map : [record] => record.1
|
||||||
local miniatureFont : Miniature
|
local miniatureFont : Miniature
|
||||||
glyphs -- pendingGlyphs
|
glyphs -- pendingGlyphs
|
||||||
crowd -- [fallback para.smallCrowd2 3.5]
|
crowd -- 4
|
||||||
scale -- 0.7
|
scale -- 0.7
|
||||||
unfair -- true
|
unfair -- true
|
||||||
|
mono -- true
|
||||||
foreach {unicode glyphid} [items-of records] : create-glyph [suggestName : 'comb' + glyphid] : glyph-construction
|
foreach {unicode glyphid} [items-of records] : create-glyph [suggestName : 'comb' + glyphid] : glyph-construction
|
||||||
set-width 0
|
set-width 0
|
||||||
if unicode : assign-unicode unicode
|
if unicode : assign-unicode unicode
|
||||||
|
@ -924,9 +931,9 @@ export : define [apply] : begin
|
||||||
if wide : begin
|
if wide : begin
|
||||||
sketch
|
sketch
|
||||||
include df2.(c2)
|
include df2.(c2)
|
||||||
include : Translate WIDTH 0
|
include : Translate df1.(c1).advanceWidth 0
|
||||||
include df1.(c1)
|
include df1.(c1)
|
||||||
set-width UPM
|
set-width (df1.(c1).advanceWidth + df2.(c2).advanceWidth)
|
||||||
save glyphName unicode
|
save glyphName unicode
|
||||||
: else
|
: else
|
||||||
local kern : SB * 7/8 * (shrink1 + shrink2)
|
local kern : SB * 7/8 * (shrink1 + shrink2)
|
||||||
|
|
|
@ -416,8 +416,6 @@ export : define [apply] : begin
|
||||||
curl rightx righty
|
curl rightx righty
|
||||||
end [function : set this.cleanmore true]
|
end [function : set this.cleanmore true]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
define [xStrand _leftx lefty _rightx righty turn straight tension] : glyph-construction
|
define [xStrand _leftx lefty _rightx righty turn straight tension] : glyph-construction
|
||||||
local middlex : mix _leftx _rightx 0.5
|
local middlex : mix _leftx _rightx 0.5
|
||||||
local middley : mix lefty righty 0.5
|
local middley : mix lefty righty 0.5
|
||||||
|
@ -445,7 +443,7 @@ export : define [apply] : begin
|
||||||
|
|
||||||
define [mShoulderSpiro] : params [left right top bottom width fine diversity] : glyph-construction
|
define [mShoulderSpiro] : params [left right top bottom width fine diversity] : glyph-construction
|
||||||
local fix : TANSLANT * STROKE * HVCONTRAST * width / STROKE
|
local fix : TANSLANT * STROKE * HVCONTRAST * width / STROKE
|
||||||
local sm : SMALLSMOOTH * 0.7
|
local sm : SMALLSMOOTH * 0.7 * [fallback diversity 1]
|
||||||
include : spiro-outline
|
include : spiro-outline
|
||||||
corner (right - width * HVCONTRAST) bottom
|
corner (right - width * HVCONTRAST) bottom
|
||||||
curl (right - width * HVCONTRAST) (top - sm + fix)
|
curl (right - width * HVCONTRAST) (top - sm + fix)
|
||||||
|
@ -670,7 +668,7 @@ export : define [apply] : begin
|
||||||
: else : throw ex
|
: else : throw ex
|
||||||
return forkFont.glyfMap
|
return forkFont.glyfMap
|
||||||
|
|
||||||
define [Miniature] : params [glyphs crowd scale [slantAngle para.slantAngle] unfair [sbscale 0.5]] : begin
|
define [Miniature] : params [glyphs crowd scale [slantAngle para.slantAngle] unfair [sbscale (WIDTH / UPM)] [mono false]] : begin
|
||||||
local forkedPara : Object.create para
|
local forkedPara : Object.create para
|
||||||
forkedPara.stroke = [adviceBlackness crowd] / scale
|
forkedPara.stroke = [adviceBlackness crowd] / scale
|
||||||
forkedPara.ess = para.ess * forkedPara.stroke / para.stroke
|
forkedPara.ess = para.ess * forkedPara.stroke / para.stroke
|
||||||
|
@ -679,6 +677,8 @@ export : define [apply] : begin
|
||||||
forkedPara.sb = SB * sbscale
|
forkedPara.sb = SB * sbscale
|
||||||
forkedPara.slantAngle = slantAngle
|
forkedPara.slantAngle = slantAngle
|
||||||
forkedPara.unfair = unfair
|
forkedPara.unfair = unfair
|
||||||
|
if mono : begin
|
||||||
|
forkedPara.diversityM = 1
|
||||||
return : Fork glyphs forkedPara
|
return : Fork glyphs forkedPara
|
||||||
|
|
||||||
define [Thinner glyphs p] : begin
|
define [Thinner glyphs p] : begin
|
||||||
|
@ -688,9 +688,6 @@ export : define [apply] : begin
|
||||||
forkedPara.jut = JUT * p
|
forkedPara.jut = JUT * p
|
||||||
forkedPara.longjut = LONGJUT * p
|
forkedPara.longjut = LONGJUT * p
|
||||||
forkedPara.diversityM = 1
|
forkedPara.diversityM = 1
|
||||||
forkedPara.diversityM = 1
|
|
||||||
forkedPara.diversityI = 1
|
|
||||||
forkedPara.diversityF = 1
|
|
||||||
#forkedPara.hookx = HOOKX * p
|
#forkedPara.hookx = HOOKX * p
|
||||||
return : Fork glyphs forkedPara
|
return : Fork glyphs forkedPara
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -118,55 +118,40 @@ export : define [apply] : begin
|
||||||
save 'gamma' 0x3B3
|
save 'gamma' 0x3B3
|
||||||
|
|
||||||
|
|
||||||
define [LambdaShape sw _top barStraight] : glyph-construction
|
define [LambdaShape top sw barStraight div] : glyph-construction
|
||||||
local cornerdist : HALFSTROKE * HVCONTRAST * [if SLAB 1.2 1]
|
local df : DivFrame [fallback div 1]
|
||||||
local fine : fallback para.vtipfine : if SLAB 0.9 0.8
|
include : VShape top sw barStraight div
|
||||||
local TURN (CAP * 0.1)
|
include : FlipAround df.middle (top / 2)
|
||||||
local curviness 0.2
|
|
||||||
local top : fallback _top CAP
|
|
||||||
if barStraight : begin
|
|
||||||
include : dispiro
|
|
||||||
widths.rhs sw
|
|
||||||
flat (SB + O * 2) 0 [heading UPWARD]
|
|
||||||
g4 (MIDDLE - cornerdist) top [widths 0 (sw * fine)]
|
|
||||||
include : dispiro
|
|
||||||
widths.lhs sw
|
|
||||||
flat (RIGHTSB - O * 2) 0 [heading UPWARD]
|
|
||||||
g4 (MIDDLE + cornerdist) top [widths (sw * fine) 0]
|
|
||||||
: else : begin
|
|
||||||
include : dispiro
|
|
||||||
widths.rhs sw
|
|
||||||
flat SB 0 [heading UPWARD]
|
|
||||||
curl SB TURN [heading UPWARD]
|
|
||||||
quadcontrols 0 curviness 9 unimportant
|
|
||||||
g4 (MIDDLE - cornerdist) top [widths 0 (sw * fine)]
|
|
||||||
include : dispiro
|
|
||||||
widths.lhs sw
|
|
||||||
flat RIGHTSB 0 [heading UPWARD]
|
|
||||||
curl RIGHTSB TURN [heading UPWARD]
|
|
||||||
quadcontrols 0 curviness 9 unimportant
|
|
||||||
g4 (MIDDLE + cornerdist) top [widths (sw * fine) 0]
|
|
||||||
|
|
||||||
start-from (MIDDLE - cornerdist) top
|
|
||||||
line-to (MIDDLE + cornerdist) top
|
|
||||||
line-to MIDDLE (top - sw * fine)
|
|
||||||
|
|
||||||
if SLAB : begin
|
if SLAB : begin
|
||||||
include : CenterBottomSerif (SB + sw / 2 * HVCONTRAST) 0 JUT
|
include : CenterBottomSerif (SB + sw / 2 * HVCONTRAST) 0 JUT
|
||||||
tag-contour 'serif'
|
tag-contour 'serif'
|
||||||
include : CenterBottomSerif (RIGHTSB - sw / 2 * HVCONTRAST) 0 JUT
|
include : CenterBottomSerif (RIGHTSB - sw / 2 * HVCONTRAST) 0 JUT
|
||||||
tag-contour 'serif'
|
tag-contour 'serif'
|
||||||
|
|
||||||
|
define [DeltaMaskShape top sw barStraight div] : begin
|
||||||
|
local df : DivFrame [fallback div 1]
|
||||||
|
local sbCor : if barStraight ((top / CAP) * (OX * [if SLAB 1 4])) 0
|
||||||
|
return : spiro-outline
|
||||||
|
corner (SB + sbCor) 0
|
||||||
|
corner (df.rightSB - sbCor) 0
|
||||||
|
corner df.middle CAP
|
||||||
|
|
||||||
|
define [DeltaShape top sw barStraight div] : glyph-construction
|
||||||
|
include : LambdaShape top sw barStraight div
|
||||||
|
eject-contour 'serif'
|
||||||
|
include : intersection
|
||||||
|
HBarBottom 0 WIDTH 0 sw
|
||||||
|
DeltaMaskShape top sw barStraight div
|
||||||
|
|
||||||
sketch # Lambda
|
sketch # Lambda
|
||||||
include markset.capital
|
include markset.capital
|
||||||
include : LambdaShape STROKE CAP para.straightBar
|
include : LambdaShape CAP STROKE para.straightBar
|
||||||
save 'Lambda' 0x39B
|
save 'Lambda' 0x39B
|
||||||
save 'latinLambda' 0x245
|
save 'latinLambda' 0x245
|
||||||
|
|
||||||
sketch # Delta
|
sketch # Delta
|
||||||
include glyphs.Lambda AS_BASE
|
include markset.capital
|
||||||
include : HBarBottom (SB + HALFSTROKE) (RIGHTSB - HALFSTROKE) 0
|
include : DeltaShape CAP STROKE para.straightBar
|
||||||
eject-contour 'serif'
|
|
||||||
save 'Delta' 0x394
|
save 'Delta' 0x394
|
||||||
|
|
||||||
sketch
|
sketch
|
||||||
|
@ -227,27 +212,28 @@ export : define [apply] : begin
|
||||||
save 'cyrbe' 0x431
|
save 'cyrbe' 0x431
|
||||||
|
|
||||||
define [SmallEpsilonShape top hook] : glyph-construction
|
define [SmallEpsilonShape top hook] : glyph-construction
|
||||||
|
local stroke : adviceBlackness2 2.875 2 top
|
||||||
local midx : mix SB RIGHTSB 0.65
|
local midx : mix SB RIGHTSB 0.65
|
||||||
local midy : top * OVERLAYPOS
|
local midy : top * OVERLAYPOS
|
||||||
local sma : top - [mix (midy + HALFSTROKE) (top - O - STROKE) (SMOOTHB / (SMOOTHA + SMOOTHB))] - TANSLANT * HVCONTRAST * STROKE
|
local sma : top - [mix (midy + stroke / 2) (top - O - stroke) (SMOOTHB / (SMOOTHA + SMOOTHB))] - TANSLANT * HVCONTRAST * STROKE
|
||||||
local smb : [mix (STROKE + O) (midy - HALFSTROKE) (SMOOTHB / (SMOOTHA + SMOOTHB))] + TANSLANT * HVCONTRAST * STROKE
|
local smb : [mix (STROKE + O) (midy - stroke / 2) (SMOOTHB / (SMOOTHA + SMOOTHB))] + TANSLANT * HVCONTRAST * stroke
|
||||||
local fine : STROKE * CTHIN
|
local fine : stroke * CTHIN
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.lhs
|
widths.lhs
|
||||||
g4 (RIGHTSB + O) (top - [fallback hook SHOOK])
|
g4 (RIGHTSB + O) (top - [fallback hook SHOOK])
|
||||||
hookstart (top - O)
|
hookstart (top - O)
|
||||||
g4 (SB + OXE) (top - sma)
|
g4 (SB + OXE) (top - sma)
|
||||||
arcvh
|
arcvh
|
||||||
flat MIDDLE (midy - (fine - HALFSTROKE)) [widths.heading fine 0 RIGHTWARD]
|
flat MIDDLE (midy - (fine - stroke / 2)) [widths.heading fine 0 RIGHTWARD]
|
||||||
curl midx (midy - (fine - HALFSTROKE)) [heading RIGHTWARD]
|
curl midx (midy - (fine - stroke / 2)) [heading RIGHTWARD]
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.rhs
|
widths.rhs
|
||||||
g4 (RIGHTSB - O) [fallback hook SHOOK]
|
g4 (RIGHTSB - O) [fallback hook SHOOK]
|
||||||
hookstart O
|
hookstart O
|
||||||
g4 (SB + OXE + O * 2) smb
|
g4 (SB + OXE + O * 2) smb
|
||||||
arcvh
|
arcvh
|
||||||
flat MIDDLE (midy + (fine - HALFSTROKE)) [widths.heading 0 fine RIGHTWARD]
|
flat MIDDLE (midy + (fine - stroke / 2)) [widths.heading 0 fine RIGHTWARD]
|
||||||
curl midx (midy + (fine - HALFSTROKE)) [heading RIGHTWARD]
|
curl midx (midy + (fine - stroke / 2)) [heading RIGHTWARD]
|
||||||
|
|
||||||
sketch # epsilon
|
sketch # epsilon
|
||||||
include markset.e
|
include markset.e
|
||||||
|
@ -261,27 +247,28 @@ export : define [apply] : begin
|
||||||
save 'latinEpsilon' 0x190
|
save 'latinEpsilon' 0x190
|
||||||
|
|
||||||
define [CyrZeShape top hook] : glyph-construction
|
define [CyrZeShape top hook] : glyph-construction
|
||||||
|
local stroke : adviceBlackness2 2.875 2 top
|
||||||
local midx : mix RIGHTSB SB 0.65
|
local midx : mix RIGHTSB SB 0.65
|
||||||
local midy : top * OVERLAYPOS
|
local midy : top * OVERLAYPOS
|
||||||
local smb : top - [mix (midy + HALFSTROKE) (top - O - STROKE) (SMOOTHA / (SMOOTHA + SMOOTHB))] + TANSLANT * HVCONTRAST * STROKE
|
local smb : top - [mix (midy + stroke / 2) (top - O - stroke) (SMOOTHA / (SMOOTHA + SMOOTHB))] + TANSLANT * HVCONTRAST * stroke
|
||||||
local sma : [mix (STROKE + O) (midy - HALFSTROKE) (SMOOTHA / (SMOOTHA + SMOOTHB))] - TANSLANT * HVCONTRAST * STROKE
|
local sma : [mix (stroke + O) (midy - stroke / 2) (SMOOTHA / (SMOOTHA + SMOOTHB))] - TANSLANT * HVCONTRAST * stroke
|
||||||
local fine : STROKE * CTHIN
|
local fine : stroke * CTHIN
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.rhs
|
widths.rhs
|
||||||
g4 (SB - O) (top - [fallback hook SHOOK])
|
g4 (SB - O) (top - [fallback hook SHOOK])
|
||||||
hookstart (top - O)
|
hookstart (top - O)
|
||||||
g4 (RIGHTSB - OXE) (top - smb)
|
g4 (RIGHTSB - OXE) (top - smb)
|
||||||
arcvh
|
arcvh
|
||||||
flat MIDDLE (midy - (fine - HALFSTROKE)) [widths.heading 0 fine LEFTWARD]
|
flat MIDDLE (midy - (fine - stroke / 2)) [widths.heading 0 fine LEFTWARD]
|
||||||
curl midx (midy - (fine - HALFSTROKE)) [heading LEFTWARD]
|
curl midx (midy - (fine - stroke / 2)) [heading LEFTWARD]
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.lhs
|
widths.lhs
|
||||||
g4 (SB + O) [fallback hook SHOOK]
|
g4 (SB + O) [fallback hook SHOOK]
|
||||||
hookstart O
|
hookstart O
|
||||||
g4 (RIGHTSB - OXE - O * 2) sma
|
g4 (RIGHTSB - OXE - O * 2) sma
|
||||||
arcvh
|
arcvh
|
||||||
flat MIDDLE (midy + (fine - HALFSTROKE)) [widths.heading fine 0 LEFTWARD]
|
flat MIDDLE (midy + (fine - stroke / 2)) [widths.heading fine 0 LEFTWARD]
|
||||||
curl midx (midy + (fine - HALFSTROKE)) [heading LEFTWARD]
|
curl midx (midy + (fine - stroke / 2)) [heading LEFTWARD]
|
||||||
|
|
||||||
sketch # cyrZe
|
sketch # cyrZe
|
||||||
include markset.capital
|
include markset.capital
|
||||||
|
@ -1578,7 +1565,7 @@ export : define [apply] : begin
|
||||||
straight.left.start eleft top [heading LEFTWARD]
|
straight.left.start eleft top [heading LEFTWARD]
|
||||||
archv
|
archv
|
||||||
flat SB (top - SMOOTHA)
|
flat SB (top - SMOOTHA)
|
||||||
curl SB SMOOTHB
|
curl SB (SMOOTHB)
|
||||||
arcvh
|
arcvh
|
||||||
straight.right.end eleft 0 [heading RIGHTWARD]
|
straight.right.end eleft 0 [heading RIGHTWARD]
|
||||||
|
|
||||||
|
@ -1608,14 +1595,15 @@ export : define [apply] : begin
|
||||||
|
|
||||||
define [aeepart div] : glyph-construction
|
define [aeepart div] : glyph-construction
|
||||||
local df : DivFrame div
|
local df : DivFrame div
|
||||||
local eLeft : df.middle - df.mvs / 2 * HVCONTRAST + 0.1
|
local stroke : adviceBlackness2 2.875 3 XH df.div
|
||||||
local eMiddle : [mix eLeft (df.rightSB - OX * 2) 0.5] - df.mvs * TANSLANT
|
local eLeft : df.middle - stroke / 2 * HVCONTRAST + 0.1
|
||||||
local barbottom (XH * EBARPOS - HALFSTROKE)
|
local eMiddle : [mix eLeft (df.rightSB - OX * 2) 0.5] - stroke * TANSLANT
|
||||||
|
local barbottom (XH * EBARPOS - stroke / 2)
|
||||||
|
|
||||||
local sma : SMALLSMOOTHA * 0.6 * df.div
|
local sma : SMALLSMOOTHA * 0.6 * df.div
|
||||||
local smb : SMALLSMOOTHB * 0.6 * df.div
|
local smb : SMALLSMOOTHB * 0.6 * df.div
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.lhs df.mvs
|
widths.lhs stroke
|
||||||
flat (df.rightSB - OX * 2) barbottom [heading UPWARD]
|
flat (df.rightSB - OX * 2) barbottom [heading UPWARD]
|
||||||
curl (df.rightSB - OX * 2) (XH - smb)
|
curl (df.rightSB - OX * 2) (XH - smb)
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -1623,14 +1611,15 @@ export : define [apply] : begin
|
||||||
archv
|
archv
|
||||||
flat eLeft (XH - sma)
|
flat eLeft (XH - sma)
|
||||||
curl eLeft smb
|
curl eLeft smb
|
||||||
hookend O true df.mvs
|
hookend O true stroke
|
||||||
g4 (df.rightSB - OX * 2) (AHOOK + df.mvs * TANSLANT) [heading UPWARD]
|
g4 (df.rightSB - OX * 2) (AHOOK + stroke * TANSLANT) [heading UPWARD]
|
||||||
include : HBarBottom (eLeft + df.mvs / 2) (df.rightSB - OX * 2 - df.mvs / 2) barbottom df.mvs
|
include : HBarBottom (eLeft + stroke / 2) (df.rightSB - OX * 2 - stroke / 2) barbottom stroke
|
||||||
|
|
||||||
define [aeapart div] : glyph-construction
|
define [aeapart div] : glyph-construction
|
||||||
local df : DivFrame div
|
local df : DivFrame div
|
||||||
local bartop (XH * OVERLAYPOS * 1.02 + HALFSTROKE)
|
local stroke : adviceBlackness2 2.875 3 XH df.div
|
||||||
local abarRight : df.middle + df.mvs / 2 * HVCONTRAST - 0.1
|
local bartop (XH * OVERLAYPOS * 1.02 + stroke / 2)
|
||||||
|
local abarRight : df.middle + stroke / 2 * HVCONTRAST - 0.1
|
||||||
local lowmiddle : mix (SB + OX * 2) abarRight 0.5
|
local lowmiddle : mix (SB + OX * 2) abarRight 0.5
|
||||||
local barsmooth : mix SB abarRight 0.7
|
local barsmooth : mix SB abarRight 0.7
|
||||||
|
|
||||||
|
@ -1638,9 +1627,9 @@ export : define [apply] : begin
|
||||||
local smb : SMALLSMOOTHB * 0.6 * df.div
|
local smb : SMALLSMOOTHB * 0.6 * df.div
|
||||||
|
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.rhs df.mvs
|
widths.rhs stroke
|
||||||
g4 (SB + OX) (XH - AHOOK - df.mvs * TANSLANT) [heading UPWARD]
|
g4 (SB + OX) (XH - AHOOK - stroke * TANSLANT) [heading UPWARD]
|
||||||
hookstart XO true df.mvs
|
hookstart XO true stroke
|
||||||
flat abarRight (XH - smb)
|
flat abarRight (XH - smb)
|
||||||
curl abarRight smb
|
curl abarRight smb
|
||||||
arcvh
|
arcvh
|
||||||
|
@ -1653,8 +1642,9 @@ export : define [apply] : begin
|
||||||
|
|
||||||
define [oeopart div] : glyph-construction
|
define [oeopart div] : glyph-construction
|
||||||
local df : DivFrame div
|
local df : DivFrame div
|
||||||
local abarRight : df.middle + df.mvs / 2 * HVCONTRAST
|
local stroke : adviceBlackness2 2.875 3 XH df.div
|
||||||
include : OShape XH 0 (SB + OX) (abarRight + OX) df.mvs (SMALLSMOOTHA * 0.6 * df.div) (SMALLSMOOTHB * 0.6 * df.div)
|
local abarRight : df.middle + stroke / 2 * HVCONTRAST
|
||||||
|
include : OShape XH 0 (SB + OX) (abarRight + OX) stroke (SMALLSMOOTHA * 0.6 * df.div) (SMALLSMOOTHB * 0.6 * df.div)
|
||||||
|
|
||||||
sketch # ae
|
sketch # ae
|
||||||
local df : DivFrame para.diversityM
|
local df : DivFrame para.diversityM
|
||||||
|
@ -2282,4 +2272,4 @@ export : define [apply] : begin
|
||||||
include g
|
include g
|
||||||
save 'bidentalpercussive' 0x2AD
|
save 'bidentalpercussive' 0x2AD
|
||||||
|
|
||||||
return [object LambdaShape SigmaShape PiShape EzhShape]
|
return [object LambdaShape DeltaMaskShape DeltaShape SigmaShape PiShape EzhShape]
|
|
@ -754,18 +754,19 @@ export : define [apply] : begin
|
||||||
set-width 0
|
set-width 0
|
||||||
set-anchor 'below' MARK markMiddle 0 markMiddle belowMarkBot
|
set-anchor 'below' MARK markMiddle 0 markMiddle belowMarkBot
|
||||||
|
|
||||||
|
local hsw : [adviceBlackness 3.5] / STROKE * markHalfStroke
|
||||||
local extend : (belowMarkTop - belowMarkBot - markHalfStroke) * 1.25
|
local extend : (belowMarkTop - belowMarkBot - markHalfStroke) * 1.25
|
||||||
|
|
||||||
include : dispiro
|
include : dispiro
|
||||||
g4.down.start (markMiddle - extend) belowMarkTop [widths.heading markHalfStroke markHalfStroke DOWNWARD]
|
g4.down.start (markMiddle - extend) belowMarkTop [widths.heading hsw hsw DOWNWARD]
|
||||||
arcvh
|
arcvh
|
||||||
g4.right.mid [mix markMiddle (markMiddle - extend) 0.5] (belowMarkBot + markHalfStroke) [heading RIGHTWARD]
|
g4.right.mid [mix markMiddle (markMiddle - extend) 0.5] (belowMarkBot + hsw) [heading RIGHTWARD]
|
||||||
archv
|
archv
|
||||||
g4.up.end markMiddle belowMarkTop [heading UPWARD]
|
g4.up.end markMiddle belowMarkTop [heading UPWARD]
|
||||||
include : dispiro
|
include : dispiro
|
||||||
g4.down.start markMiddle belowMarkTop [widths.heading markHalfStroke markHalfStroke DOWNWARD]
|
g4.down.start markMiddle belowMarkTop [widths.heading hsw hsw DOWNWARD]
|
||||||
arcvh
|
arcvh
|
||||||
g4.right.mid [mix markMiddle (markMiddle + extend) 0.5] (belowMarkBot + markHalfStroke) [heading RIGHTWARD]
|
g4.right.mid [mix markMiddle (markMiddle + extend) 0.5] (belowMarkBot + hsw) [heading RIGHTWARD]
|
||||||
archv
|
archv
|
||||||
g4.up.end (markMiddle + extend) belowMarkTop [heading UPWARD]
|
g4.up.end (markMiddle + extend) belowMarkTop [heading UPWARD]
|
||||||
|
|
||||||
|
@ -1177,13 +1178,14 @@ export : define [apply] : begin
|
||||||
local fine : 0.3 * OVERLAYSTROKE
|
local fine : 0.3 * OVERLAYSTROKE
|
||||||
local dx : WIDTH * 0
|
local dx : WIDTH * 0
|
||||||
local dy : WIDTH * 0.3
|
local dy : WIDTH * 0.3
|
||||||
|
local gap : Math.max (fine * 2) (WIDTH / 8)
|
||||||
set-anchor 'slash' MARK markMiddle (XH / 2) markMiddle (XH / 2)
|
set-anchor 'slash' MARK markMiddle (XH / 2) markMiddle (XH / 2)
|
||||||
include : dispiro
|
include : dispiro
|
||||||
flat (MIDDLE - dx - WIDTH - fine * 2) (XH / 2 - dy) [widths fine fine]
|
flat (MIDDLE - dx - WIDTH - gap) (XH / 2 - dy) [widths fine fine]
|
||||||
curl (MIDDLE + dx - WIDTH - fine * 2) (XH / 2 + dy)
|
curl (MIDDLE + dx - WIDTH - gap) (XH / 2 + dy)
|
||||||
include : dispiro
|
include : dispiro
|
||||||
flat (MIDDLE - dx - WIDTH + fine * 2) (XH / 2 - dy) [widths fine fine]
|
flat (MIDDLE - dx - WIDTH + gap) (XH / 2 - dy) [widths fine fine]
|
||||||
curl (MIDDLE + dx - WIDTH + fine * 2) (XH / 2 + dy)
|
curl (MIDDLE + dx - WIDTH + gap) (XH / 2 + dy)
|
||||||
save 'arrDblVStrokeOver'
|
save 'arrDblVStrokeOver'
|
||||||
|
|
||||||
sketch # slashOver
|
sketch # slashOver
|
||||||
|
|
|
@ -280,7 +280,7 @@ export : define [apply] : begin
|
||||||
arrow ArrowShape 'arrowrightSK' null (arrowSB + fine / 2) symbolMid arrowRSB symbolMid
|
arrow ArrowShape 'arrowrightSK' null (arrowSB + fine / 2) symbolMid arrowRSB symbolMid
|
||||||
arrow ArrowShape 'arrowupSK' null arrowMidX (arrowBot + fine / 2) arrowMidX arrowTop
|
arrow ArrowShape 'arrowupSK' null arrowMidX (arrowBot + fine / 2) arrowMidX arrowTop
|
||||||
arrow ArrowShape 'arrowdownSK' null arrowMidX (arrowTop - fine / 2) arrowMidX arrowBot
|
arrow ArrowShape 'arrowdownSK' null arrowMidX (arrowTop - fine / 2) arrowMidX arrowBot
|
||||||
arrow ArrowShape 'arrowupleftTK' null arrowRSB arrowBot arrowSB (arrowTop - fine * 1.5)
|
arrow ArrowShape 'arrowupleftTK' null arrowRSB arrowBot arrowSB (arrowTop - [Math.max (arrowWidth / 8) (fine * 1.5)])
|
||||||
|
|
||||||
composite 'arrowbarleft' glyphs.arrowleftK [VBar arrowSB (symbolMid - arrowSize) (symbolMid + arrowSize) fine] [into-unicode 0x21E4]
|
composite 'arrowbarleft' glyphs.arrowleftK [VBar arrowSB (symbolMid - arrowSize) (symbolMid + arrowSize) fine] [into-unicode 0x21E4]
|
||||||
composite 'arrowbarright' glyphs.arrowrightK [VBar arrowRSB (symbolMid - arrowSize) (symbolMid + arrowSize) fine] [into-unicode 0x21E5]
|
composite 'arrowbarright' glyphs.arrowrightK [VBar arrowRSB (symbolMid - arrowSize) (symbolMid + arrowSize) fine] [into-unicode 0x21E5]
|
||||||
|
|
|
@ -181,9 +181,11 @@ export : define [apply] : begin
|
||||||
save 'liraSymbol' 0x20A4
|
save 'liraSymbol' 0x20A4
|
||||||
|
|
||||||
sketch # won
|
sketch # won
|
||||||
include glyphs.W AS_BASE
|
local df : DivFrame para.diversityM
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix RIGHTSB WIDTH 0.7] (CAP * 0.6)
|
set-width df.width
|
||||||
include : HOverlayBar [mix SB 0 0.7] [mix RIGHTSB WIDTH 0.7] (CAP * 0.35)
|
include glyphs.W AS_BASE ALSO_METRICS
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.6)
|
||||||
|
include : HOverlayBar [mix SB 0 0.7] [mix df.rightSB df.width 0.7] (CAP * 0.35)
|
||||||
save 'won' 0x20A9
|
save 'won' 0x20A9
|
||||||
|
|
||||||
sketch # frenchFranc
|
sketch # frenchFranc
|
||||||
|
|
|
@ -15,9 +15,11 @@ export : define [apply] : begin
|
||||||
save 'micro' 0xB5
|
save 'micro' 0xB5
|
||||||
|
|
||||||
sketch # forall
|
sketch # forall
|
||||||
include : LambdaShape OPERATORSTROKE
|
include : LambdaShape CAP OPERATORSTROKE para.straightBar
|
||||||
eject-contour 'serif'
|
eject-contour 'serif'
|
||||||
include : HBar (SB + OPERATORSTROKE) (RIGHTSB - OPERATORSTROKE) (XH / 2) OPERATORSTROKE
|
include : intersection
|
||||||
|
DeltaMaskShape CAP OPERATORSTROKE para.straightBar
|
||||||
|
HBar 0 WIDTH (XH / 2) OPERATORSTROKE
|
||||||
include : FlipAround MIDDLE (CAP / 2)
|
include : FlipAround MIDDLE (CAP / 2)
|
||||||
|
|
||||||
save 'forall' 0x2200
|
save 'forall' 0x2200
|
||||||
|
@ -44,10 +46,7 @@ export : define [apply] : begin
|
||||||
|
|
||||||
sketch # increment
|
sketch # increment
|
||||||
include markset.capital
|
include markset.capital
|
||||||
include : LambdaShape OPERATORSTROKE
|
include : DeltaShape CAP OPERATORSTROKE para.straightBar
|
||||||
eject-contour 'serif'
|
|
||||||
include : HBarBottom (SB + (OPERATORSTROKE / 2)) (RIGHTSB - (OPERATORSTROKE / 2)) 0 OPERATORSTROKE
|
|
||||||
|
|
||||||
save 'increment' 0x2206
|
save 'increment' 0x2206
|
||||||
turned 'nabla' 0x2207 'increment' MIDDLE (CAP / 2)
|
turned 'nabla' 0x2207 'increment' MIDDLE (CAP / 2)
|
||||||
|
|
||||||
|
|
|
@ -232,7 +232,7 @@ export : define [apply] : begin
|
||||||
include : VBarLeft (l + hsp) (nsBot - (MIDDLE - l - hsp) * skew) (nsTop - (MIDDLE - l - hsp) * skew) fine
|
include : VBarLeft (l + hsp) (nsBot - (MIDDLE - l - hsp) * skew) (nsTop - (MIDDLE - l - hsp) * skew) fine
|
||||||
include : VBarRight (r - hsp) (nsBot - (MIDDLE - r + hsp) * skew) (nsTop - (MIDDLE - r + hsp) * skew) fine
|
include : VBarRight (r - hsp) (nsBot - (MIDDLE - r + hsp) * skew) (nsTop - (MIDDLE - r + hsp) * skew) fine
|
||||||
save-glyph 'flatTone' 0x266D : sketch
|
save-glyph 'flatTone' 0x266D : sketch
|
||||||
local yTerminal : mix nsBot nsTop 0.5
|
local yTerminal : mix nsBot nsTop 0.55
|
||||||
local curly 0.65
|
local curly 0.65
|
||||||
local curly2 1.1
|
local curly2 1.1
|
||||||
local curly3 0.3
|
local curly3 0.3
|
||||||
|
@ -245,7 +245,7 @@ export : define [apply] : begin
|
||||||
widths.lhs fine
|
widths.lhs fine
|
||||||
g4 l (nsBot - 1)
|
g4 l (nsBot - 1)
|
||||||
alsothru 0.5 curly3
|
alsothru 0.5 curly3
|
||||||
g4.up.mid (r - O + 1) ([mix nsBot yTerminal curly] + (r - l) * skew) [widths.lhs (fine + 1)]
|
g4.up.mid (r - O + 1) ([mix nsBot yTerminal curly] + (r - l) * skew - TANSLANT * para.smoothadjust) [widths.lhs (fine + 1)]
|
||||||
g4.left.mid ([mix l r 0.5] - CORRECTION_OMIDX * fine) ([mix nsBot yTerminal curly2] + (r - l) * skew / 2 + 1)
|
g4.left.mid ([mix l r 0.5] - CORRECTION_OMIDX * fine) ([mix nsBot yTerminal curly2] + (r - l) * skew / 2 + 1)
|
||||||
g4 l (yTerminal + 1)
|
g4 l (yTerminal + 1)
|
||||||
difference
|
difference
|
||||||
|
@ -253,7 +253,7 @@ export : define [apply] : begin
|
||||||
corner l (nsBot - UPM)
|
corner l (nsBot - UPM)
|
||||||
corner l nsBot
|
corner l nsBot
|
||||||
alsothru 0.5 curly3
|
alsothru 0.5 curly3
|
||||||
g4.up.mid (r - O) ([mix nsBot yTerminal curly] + (r - l) * skew)
|
g4.up.mid (r - O) ([mix nsBot yTerminal curly] + (r - l) * skew - TANSLANT * para.smoothadjust)
|
||||||
g4.left.mid ([mix l r 0.5] - CORRECTION_OMIDX * fine) ([mix nsBot yTerminal curly2] + (r - l) * skew / 2)
|
g4.left.mid ([mix l r 0.5] - CORRECTION_OMIDX * fine) ([mix nsBot yTerminal curly2] + (r - l) * skew / 2)
|
||||||
corner l yTerminal
|
corner l yTerminal
|
||||||
corner l (yTerminal + 1)
|
corner l (yTerminal + 1)
|
||||||
|
@ -271,7 +271,7 @@ export : define [apply] : begin
|
||||||
corner (l - UPM) nsTop
|
corner (l - UPM) nsTop
|
||||||
corner (l - UPM) (nsBot - UPM)
|
corner (l - UPM) (nsBot - UPM)
|
||||||
save-glyph 'neutralTone' 0x266E : sketch
|
save-glyph 'neutralTone' 0x266E : sketch
|
||||||
local k 0.25
|
local k : 0.25 - (STROKE * 0.25 / (nsTop - nsBot))
|
||||||
local kr 0.5
|
local kr 0.5
|
||||||
local ll (l + hsp * kr)
|
local ll (l + hsp * kr)
|
||||||
local rr (r - hsp * kr)
|
local rr (r - hsp * kr)
|
||||||
|
@ -487,8 +487,9 @@ export : define [apply] : begin
|
||||||
local startY : symbolMid - offsetY * (n - 1) / 2
|
local startY : symbolMid - offsetY * (n - 1) / 2
|
||||||
local bar : adviceBlackness n
|
local bar : adviceBlackness n
|
||||||
local fine : adviceBlackness 5
|
local fine : adviceBlackness 5
|
||||||
include : HBar SB (MIDDLE - fine / 2 * HVCONTRAST) (startY + offsetY * m) bar
|
local gap : Math.max (WIDTH / 8) (fine)
|
||||||
include : HBar (MIDDLE + fine / 2 * HVCONTRAST) RIGHTSB (startY + offsetY * m) bar
|
include : HBar SB (MIDDLE - gap / 2 * HVCONTRAST) (startY + offsetY * m) bar
|
||||||
|
include : HBar (MIDDLE + gap / 2 * HVCONTRAST) RIGHTSB (startY + offsetY * m) bar
|
||||||
|
|
||||||
define [yang m n] : glyph-construction
|
define [yang m n] : glyph-construction
|
||||||
local offsetY : (2 / 3) * (operBot - operTop) / n
|
local offsetY : (2 / 3) * (operBot - operTop) / n
|
||||||
|
|
|
@ -1009,8 +1009,8 @@ export : define [apply] : begin
|
||||||
local m : mix l r (1 / 2)
|
local m : mix l r (1 / 2)
|
||||||
local sma : SMOOTHA * 0.5 * para.diversityM
|
local sma : SMOOTHA * 0.5 * para.diversityM
|
||||||
local smb : SMOOTHB * 0.5 * para.diversityM
|
local smb : SMOOTHB * 0.5 * para.diversityM
|
||||||
local sw : adviceBlackness 4 para.diversityM
|
local sw : adviceBlackness2 5 4 CAP para.diversityM
|
||||||
local fine : adviceBlackness 5 para.diversityM
|
local fine : adviceBlackness2 5 5 CAP para.diversityM
|
||||||
local cor : HVCONTRAST / [Math.sqrt (1 - [Math.pow ((r - l - sw) / (CAP - 0)) 2])]
|
local cor : HVCONTRAST / [Math.sqrt (1 - [Math.pow ((r - l - sw) / (CAP - 0)) 2])]
|
||||||
local pTerm : (fine / 2) / [Math.hypot CAP (r - l)]
|
local pTerm : (fine / 2) / [Math.hypot CAP (r - l)]
|
||||||
local pFine : 1 / 2 - (STROKE / 2) / [Math.hypot CAP (r - l)]
|
local pFine : 1 / 2 - (STROKE / 2) / [Math.hypot CAP (r - l)]
|
||||||
|
@ -1045,9 +1045,9 @@ export : define [apply] : begin
|
||||||
local l2 : r1 + gap
|
local l2 : r1 + gap
|
||||||
local r2 : l2 + fill
|
local r2 : l2 + fill
|
||||||
local l3 : r2 + gap
|
local l3 : r2 + gap
|
||||||
local swp : adviceBlackness 6
|
local swp : adviceBlackness2 5 6.5 CAP para.diversityM
|
||||||
local smap : SMOOTHA * (1/3)
|
local smap : SMOOTHA * (1/3) * para.diversityM
|
||||||
local smbp : SMOOTHB * (1/3)
|
local smbp : SMOOTHB * (1/3) * para.diversityM
|
||||||
include : OShape otop 0 l1 r1 swp smap smbp
|
include : OShape otop 0 l1 r1 swp smap smbp
|
||||||
include : OShape otop 0 l2 r2 swp smap smbp
|
include : OShape otop 0 l2 r2 swp smap smbp
|
||||||
include : OShape otop 0 l3 r3 swp smap smbp
|
include : OShape otop 0 l3 r3 swp smap smbp
|
||||||
|
|
|
@ -134,6 +134,7 @@ export : define [calculateMetrics para] : begin
|
||||||
# We will estimate blackness using lower-case 'e'
|
# We will estimate blackness using lower-case 'e'
|
||||||
define WHITENESS : ((XH - STROKE * 3) * (RIGHTSB - SB) * (1 / 3)) / (XH * (RIGHTSB - SB))
|
define WHITENESS : ((XH - STROKE * 3) * (RIGHTSB - SB) * (1 / 3)) / (XH * (RIGHTSB - SB))
|
||||||
define [adviceBlackness crowdedness div] : Math.min STROKE (((WIDTH * [fallback div 1]) - SB * 2) * (1 - WHITENESS) / (crowdedness * HVCONTRAST))
|
define [adviceBlackness crowdedness div] : Math.min STROKE (((WIDTH * [fallback div 1]) - SB * 2) * (1 - WHITENESS) / (crowdedness * HVCONTRAST))
|
||||||
|
define [adviceBlackness2 cowX cowY refH div] : Math.min [adviceBlackness cowX (refH / WIDTH)] [adviceBlackness cowY div]
|
||||||
define [MVERTSTROKE_D div] : adviceBlackness [fallback para.lllcrowdedness (3 + 1 / 3)] div
|
define [MVERTSTROKE_D div] : adviceBlackness [fallback para.lllcrowdedness (3 + 1 / 3)] div
|
||||||
define MVERTSTROKE : MVERTSTROKE_D 1
|
define MVERTSTROKE : MVERTSTROKE_D 1
|
||||||
define OVERLAYSTROKE : adviceBlackness 3.75
|
define OVERLAYSTROKE : adviceBlackness 3.75
|
||||||
|
@ -144,8 +145,9 @@ export : define [calculateMetrics para] : begin
|
||||||
define SUPERNESS : fallback para.superness 2
|
define SUPERNESS : fallback para.superness 2
|
||||||
define [superxy x] : Math.pow (1 - [Math.pow x SUPERNESS]) (1 / SUPERNESS)
|
define [superxy x] : Math.pow (1 - [Math.pow x SUPERNESS]) (1 / SUPERNESS)
|
||||||
|
|
||||||
define [adviceSSmooth y sign] : begin
|
define [adviceSSmooth y sign _stroke] : begin
|
||||||
local ss : y * 0.21 + STROKE * 0.22 * [clamp 1 2 : linreg 126 1 137 1.025 STROKE] + 0.035 * (RIGHTSB - SB)
|
local stroke : fallback _stroke STROKE
|
||||||
|
local ss : y * 0.21 + stroke * 0.22 * [clamp 1 2 : linreg 126 1 137 1.025 stroke] + 0.035 * (RIGHTSB - SB)
|
||||||
return : ss + sign * TANSLANT * para.smoothadjust * (ss / SMALLSMOOTH)
|
return : ss + sign * TANSLANT * para.smoothadjust * (ss / SMALLSMOOTH)
|
||||||
define [adviceGlottalStopSmooth y sign] : ((y - STROKE) * 0.24 + STROKE * 0.625) + sign * TANSLANT * para.smoothadjust
|
define [adviceGlottalStopSmooth y sign] : ((y - STROKE) * 0.24 + STROKE * 0.625) + sign * TANSLANT * para.smoothadjust
|
||||||
define [shoulderMidSlope _fine _stroke _dir] : 0.5 * HVCONTRAST * ([fallback _stroke STROKE] - [fallback _fine SHOULDERFINE]) / [fallback _stroke STROKE] + [fallback _dir 1] * TANSLANT
|
define [shoulderMidSlope _fine _stroke _dir] : 0.5 * HVCONTRAST * ([fallback _stroke STROKE] - [fallback _fine SHOULDERFINE]) / [fallback _stroke STROKE] + [fallback _dir 1] * TANSLANT
|
||||||
|
@ -160,7 +162,7 @@ export : define [calculateMetrics para] : begin
|
||||||
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE TBALANCE2 RBALANCE RBALANCE2
|
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE TBALANCE2 RBALANCE RBALANCE2
|
||||||
FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH1 FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
|
FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH1 FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
|
||||||
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
||||||
WHITENESS adviceBlackness MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
WHITENESS adviceBlackness adviceBlackness2 MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
||||||
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope]
|
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope]
|
||||||
|
|
||||||
export : define [setFontMetrics para metrics font] : begin
|
export : define [setFontMetrics para metrics font] : begin
|
||||||
|
|
|
@ -141,7 +141,7 @@ define-macro glyph-module-entry : syntax-rules
|
||||||
|
|
||||||
letterBasic `[define [object ISerifShape IotaShape LShape Belt VShape VHooktopShape WShape WHooktopShape YShape yBaseKnots SmallYShape KShape BShape ItalicCyrveShape PShape RShape CyrYaShape CShape GShape NShape UShape LatinUpsilon2Shape MShape SmallMShape HShape FShape fovershoot LongSShape EShape SmallEShape RevSmallEShape TShape SmallTShape] $capture.letterBasic]
|
letterBasic `[define [object ISerifShape IotaShape LShape Belt VShape VHooktopShape WShape WHooktopShape YShape yBaseKnots SmallYShape KShape BShape ItalicCyrveShape PShape RShape CyrYaShape CShape GShape NShape UShape LatinUpsilon2Shape MShape SmallMShape HShape FShape fovershoot LongSShape EShape SmallEShape RevSmallEShape TShape SmallTShape] $capture.letterBasic]
|
||||||
|
|
||||||
letterExt `[define [object LambdaShape SigmaShape PiShape EzhShape] $capture.letterExt]
|
letterExt `[define [object LambdaShape DeltaShape DeltaMaskShape SigmaShape PiShape EzhShape] $capture.letterExt]
|
||||||
geometricSymbols `[define [object ArrowShape] $capture.geometricSymbols]
|
geometricSymbols `[define [object ArrowShape] $capture.geometricSymbols]
|
||||||
|
|
||||||
local opts : _opts.map formOf
|
local opts : _opts.map formOf
|
||||||
|
@ -160,7 +160,7 @@ define-macro glyph-module-entry : syntax-rules
|
||||||
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE TBALANCE2 RBALANCE RBALANCE2
|
TAILADJX TAILADJY LBALANCE IBALANCE LBALANCE2 IBALANCE2 JBALANCE JBALANCE2 TBALANCE TBALANCE2 RBALANCE RBALANCE2
|
||||||
FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH1 FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
|
FBALANCE ONEBALANCE FULLWIDTH FULLWIDTH1 FULLWIDTH2 FULLWIDTH3 OXE ESS ESSQUESTION XO CAPO HALFSTROKE RIGHTSB FWRSB
|
||||||
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
||||||
WHITENESS adviceBlackness MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
WHITENESS adviceBlackness adviceBlackness2 MVERTSTROKE MVERTSTROKE_D OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
||||||
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope] metrics
|
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope] metrics
|
||||||
define [object
|
define [object
|
||||||
g4 g2 corner flat curl close end straight
|
g4 g2 corner flat curl close end straight
|
||||||
|
|
|
@ -88,6 +88,7 @@ noCJKV = true
|
||||||
diversityM = 1
|
diversityM = 1
|
||||||
diversityF = 1
|
diversityF = 1
|
||||||
diversityI = 1
|
diversityI = 1
|
||||||
|
diversityII = 1
|
||||||
|
|
||||||
[verbose]
|
[verbose]
|
||||||
verbose = true
|
verbose = true
|
||||||
|
@ -244,8 +245,8 @@ spacing = 3
|
||||||
# HANDLE WITH EXTREME CARE
|
# HANDLE WITH EXTREME CARE
|
||||||
# Expanded : I heard someone want it being wider...
|
# Expanded : I heard someone want it being wider...
|
||||||
[wd-expanded.multiplies]
|
[wd-expanded.multiplies]
|
||||||
width = 1.15
|
width = 1.20
|
||||||
sb = 1.15
|
sb = 2.0
|
||||||
[expanded]
|
[expanded]
|
||||||
inherits = ['wd-expanded']
|
inherits = ['wd-expanded']
|
||||||
|
|
||||||
|
@ -263,7 +264,19 @@ straightBar = 1
|
||||||
|
|
||||||
[diversity-1]
|
[diversity-1]
|
||||||
diversityM = 1.25
|
diversityM = 1.25
|
||||||
|
diversityF = 1.00
|
||||||
diversityI = 0.75
|
diversityI = 0.75
|
||||||
|
diversityII = 0.75
|
||||||
|
|
||||||
|
[diversity-2]
|
||||||
|
diversityM = 1.25
|
||||||
|
diversityF = 0.75
|
||||||
|
diversityI = 0.75
|
||||||
|
diversityII = 0.5
|
||||||
|
|
||||||
|
[wd-expanded-aile.multiplies]
|
||||||
|
width = 1.152 # 576mem for normal char
|
||||||
|
sb = 1.375
|
||||||
|
|
||||||
###### Full-width codes
|
###### Full-width codes
|
||||||
[xx-type]
|
[xx-type]
|
||||||
|
|
|
@ -268,7 +268,7 @@ dotlessj = "straight"
|
||||||
tag = "cv65"
|
tag = "cv65"
|
||||||
|
|
||||||
[simple.v-capital-i-straight]
|
[simple.v-capital-i-straight]
|
||||||
I = "straight"
|
I = "line" # set on purpose to use II diversity
|
||||||
tag = "cv66"
|
tag = "cv66"
|
||||||
|
|
||||||
[simple.v-capital-i-serifed]
|
[simple.v-capital-i-serifed]
|
||||||
|
@ -283,6 +283,21 @@ tag = "cv68"
|
||||||
J = 'serifed'
|
J = 'serifed'
|
||||||
tag = "cv69"
|
tag = "cv69"
|
||||||
|
|
||||||
|
[simple.v-f-short]
|
||||||
|
f = 'short-straight'
|
||||||
|
|
||||||
|
[simple.v-t-short]
|
||||||
|
t = 'short'
|
||||||
|
|
||||||
|
[simple.v-r-standard]
|
||||||
|
r = "standard"
|
||||||
|
|
||||||
|
[simple.v-r-narrow]
|
||||||
|
r = "narrow"
|
||||||
|
|
||||||
|
[simple.v-j-narrow]
|
||||||
|
dotlessj = "narrow"
|
||||||
|
|
||||||
|
|
||||||
[default]
|
[default]
|
||||||
design = [
|
design = [
|
||||||
|
@ -305,6 +320,7 @@ design = [
|
||||||
'v-percent-rings',
|
'v-percent-rings',
|
||||||
'v-capital-i-serifed',
|
'v-capital-i-serifed',
|
||||||
'v-capital-j-serifed',
|
'v-capital-j-serifed',
|
||||||
|
'v-r-standard',
|
||||||
'others'
|
'others'
|
||||||
]
|
]
|
||||||
upright = [
|
upright = [
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue