Balance: /c, /e, /s, /S, /epsilon, /cyrze
This commit is contained in:
parent
c0001e72eb
commit
679a7f5004
|
@ -109,8 +109,9 @@ define [buildFont para recursive] : begin {
|
|||
define BKAPPA : para.bkappa || KAPPA + 0.1
|
||||
define CKAPPA : para.ckappa || BKAPPA
|
||||
define COBKAPPA : 1 - BKAPPA
|
||||
define KAPPA_HOOK : para.kappa_hook || BKAPPA + 0.1
|
||||
define KAPPA_AHOOK : para.kappa_ahook || KAPPA_HOOK
|
||||
define KAPPA_HOOK : fallback para.kappa_hook [BKAPPA + 0.1]
|
||||
define KAPPA_AHOOK : fallback para.kappa_ahook KAPPA_HOOK
|
||||
define KAPPA_RHOOK : fallback para.kappa_rhook KAPPA_HOOK
|
||||
define TAILADJX : WIDTH * 0.2
|
||||
define TAILADJY : XH * 0.25
|
||||
define TAILADJKAPPA 0.75
|
||||
|
@ -122,6 +123,7 @@ define [buildFont para recursive] : begin {
|
|||
define TBALANCE : para.tbalance || JBALANCE
|
||||
define TBALANCE2 : para.tbalance2 || TBALANCE
|
||||
define RBALANCE : para.rbalance || JBALANCE * 0.3
|
||||
define SBALANCE : fallback para.sbalance 0.52
|
||||
|
||||
define serifed : not [not para.serif]
|
||||
|
||||
|
|
|
@ -333,7 +333,7 @@ createSuperscripts : list {
|
|||
list 0x1D9C 'c'
|
||||
list 0x1D9D 'ccurlytail'
|
||||
list 0x1D9E 'eth'
|
||||
list 0x1D9F 'turnlatinepsilon'
|
||||
list 0x1D9F 'revlatinepsilon'
|
||||
list 0x1DA0 'f'
|
||||
list 0x1DA1 'turnf'
|
||||
list 0x1DA2 'scriptg'
|
||||
|
|
|
@ -185,38 +185,31 @@ define [nShoulder left middle right fine _top _bottom _sma _smb _wide] : begin {
|
|||
return : band.concat (shoulder.points)
|
||||
}
|
||||
|
||||
define [XSHookUpper top left middle right smooth hook stroke] : glyph-construction {
|
||||
define [XSHookUpper top left _middle right smooth hook _stroke] : glyph-construction {
|
||||
local middle : fallback _middle [mix left right SBALANCE]
|
||||
local stroke : fallback _stroke STROKE
|
||||
include : create-stroke
|
||||
:.set-transform globalTransform
|
||||
:.start-from [right - OXHOOK] [top - hook]
|
||||
:.set-width [fallback stroke STROKE] 0
|
||||
:.set-width [if [left < right] stroke 0] [if [left < right] 0 stroke]
|
||||
:.curve-to [mix middle right KAPPA_HOOK] [top - O] [middle - OMIDCOR_S] [top - O]
|
||||
:.arc-hv-to left [top - smooth]
|
||||
}
|
||||
define [sHookUpper top smooth hook _middle stroke] : glyph-construction {
|
||||
include : XSHookUpper top SB [fallback _middle MIDDLE] RIGHTSB smooth hook stroke
|
||||
}
|
||||
define [twoHookUpper top smooth hook _middle _width] : glyph-construction {
|
||||
local middle : _middle || MIDDLE
|
||||
local width : fallback _width STROKE
|
||||
include : create-stroke
|
||||
:.set-transform globalTransform
|
||||
:.start-from [SB + OXHOOK] [top - hook]
|
||||
:.set-width 0 width
|
||||
:.curve-to [mix middle SB KAPPA_HOOK] [top - O] [middle - OMIDCOR_S] [top - O]
|
||||
:.arc-hv-to RIGHTSB [top - smooth]
|
||||
}
|
||||
define [sHookLower bottom smooth hook _middle] : glyph-construction {
|
||||
include : XSHookLower bottom SB [fallback _middle MIDDLE] RIGHTSB smooth hook
|
||||
}
|
||||
define [XSHookLower bottom left middle right smooth hook] : glyph-construction {
|
||||
define [sHookUpper top smooth hook _middle _stroke] : XSHookUpper top SB _middle RIGHTSB smooth hook _stroke
|
||||
define [twoHookUpper top smooth hook _middle _stroke] : XSHookUpper top RIGHTSB _middle SB smooth hook _stroke
|
||||
define [XSHookLower bottom left _middle right smooth hook _stroke] : glyph-construction {
|
||||
local middle : fallback _middle [mix left right SBALANCE]
|
||||
local stroke : fallback _stroke STROKE
|
||||
include : create-stroke
|
||||
:.set-transform globalTransform
|
||||
:.start-from right [bottom + smooth]
|
||||
:.set-width [if [left < right] 0 STROKE] [if [left < right] STROKE 0]
|
||||
:.set-width [if [left < right] 0 stroke] [if [left < right] stroke 0]
|
||||
:.arc-vh-to [middle + OMIDCOR_S] [bottom + O]
|
||||
:.curve-to [mix middle left KAPPA_HOOK] [bottom + O] [left + OXHOOK] [bottom + hook]
|
||||
}
|
||||
define [sHookLower bottom smooth hook _middle _stroke] : XSHookLower bottom SB _middle RIGHTSB smooth hook _stroke
|
||||
define [EHookLower bottom smooth hook _middle _stroke _o] : XSHookLower bottom [RIGHTSB + TAILADJX * globalTransform.yx] _middle [SB + [fallback _o O]] smooth [hook - TAILADJY * globalTransform.yx] _stroke
|
||||
define [RevEHookLower bottom smooth hook _middle _stroke _o] : XSHookLower bottom SB _middle [RIGHTSB - [fallback _o O]] smooth hook _stroke
|
||||
|
||||
define [smallo u d l r _width _sma _smb] : glyph-construction {
|
||||
local middle : [l + r] / 2
|
||||
|
|
|
@ -223,29 +223,30 @@ create-glyph 'cyrzhe' : glyph-construction {
|
|||
include eMarks
|
||||
include : CyrZheShape XH
|
||||
}
|
||||
define [CyrZeShape top] : glyph-construction {
|
||||
local mid : mix RIGHTSB SB 0.65
|
||||
local smb : SMOOTHB * 0.815
|
||||
local sma : SMOOTHA * 0.815
|
||||
include : twoHookUpper top [smb / [XH / top]] SHOOK
|
||||
include : sHookLower 0 [sma / [XH / top]] SHOOK
|
||||
define [CyrZeShape top hook] : glyph-construction {
|
||||
local midx : mix RIGHTSB SB 0.65
|
||||
local midy : top * BARPOS
|
||||
local smb : top - [mix [midy + HALFSTROKE] [top - O - STROKE] [SMOOTHA / [SMOOTHA + SMOOTHB]]]
|
||||
local sma : mix [STROKE + O] [midy - HALFSTROKE] [SMOOTHA / [SMOOTHA + SMOOTHB]]
|
||||
include : twoHookUpper top smb [fallback hook SHOOK] [MIDDLE + OMIDCOR_S / 2] nothing 0
|
||||
include : sHookLower 0 sma [fallback hook SHOOK] [MIDDLE - OMIDCOR_S / 2] nothing 0
|
||||
include : create-stroke
|
||||
:.start-from RIGHTSB [top - smb / [XH / top]]
|
||||
:.start-from RIGHTSB [top - smb]
|
||||
:.set-width 0 STROKE
|
||||
:.arc-vh-to MIDDLE [top / 2 - HALFSTROKE] KAPPA
|
||||
:.line-to mid [top / 2 - HALFSTROKE]
|
||||
:.arc-vh-to MIDDLE [midy - HALFSTROKE] KAPPA
|
||||
:.line-to midx [midy - HALFSTROKE]
|
||||
:.heads-to LEFTWARD
|
||||
include : create-stroke
|
||||
:.start-from RIGHTSB [sma / [XH / top]]
|
||||
:.start-from RIGHTSB sma
|
||||
:.set-width STROKE 0
|
||||
:.arc-vh-to MIDDLE [top / 2 + HALFSTROKE] KAPPA
|
||||
:.line-to mid [top / 2 + HALFSTROKE]
|
||||
:.arc-vh-to MIDDLE [midy + HALFSTROKE] KAPPA
|
||||
:.line-to midx [midy + HALFSTROKE]
|
||||
:.heads-to LEFTWARD
|
||||
}
|
||||
create-glyph 'cyrZe' : glyph-construction {
|
||||
assign-unicode 0x417
|
||||
include capitalMarks
|
||||
include : CyrZeShape CAP
|
||||
include : CyrZeShape CAP HOOK
|
||||
}
|
||||
create-glyph 'cyrze' : glyph-construction {
|
||||
assign-unicode 0x437
|
||||
|
|
|
@ -329,29 +329,31 @@ create-glyph 'delta' : glyph-construction {
|
|||
:.arc-vh-to xOTLeft [bar - STROKE]
|
||||
:.set-width fine 0
|
||||
}
|
||||
|
||||
create-glyph 'epsilon' : glyph-construction {
|
||||
assign-unicode 0x3B5
|
||||
include eMarks
|
||||
|
||||
local mid : mix SB RIGHTSB 0.65
|
||||
local sma : SMOOTHA * 0.815
|
||||
local smb : SMOOTHB * 0.815
|
||||
include : sHookUpper XH sma SHOOK
|
||||
include : XSHookLower 0 [RIGHTSB - OXHOOK + TAILADJX * globalTransform.yx] MIDDLE SB smb [SHOOK - TAILADJY * globalTransform.yx]
|
||||
define [SmallEpsilonShape top hook] : glyph-construction {
|
||||
local midx : mix SB RIGHTSB 0.65
|
||||
local midy : top * BARPOS
|
||||
local sma : top - [mix [midy + HALFSTROKE] [top - O - STROKE] [SMOOTHB / [SMOOTHA + SMOOTHB]]]
|
||||
local smb : mix [STROKE + O] [midy - HALFSTROKE] [SMOOTHB / [SMOOTHA + SMOOTHB]]
|
||||
include : sHookUpper top sma [fallback hook SHOOK]
|
||||
include : EHookLower 0 smb [fallback hook SHOOK] nothing nothing 0
|
||||
include : create-stroke
|
||||
:.start-from SB [XH - sma]
|
||||
:.start-from SB [top - sma]
|
||||
:.set-width STROKE 0
|
||||
:.arc-vh-to MIDDLE [XH / 2 - HALFSTROKE] KAPPA
|
||||
:.line-to mid [XH / 2 - HALFSTROKE]
|
||||
:.arc-vh-to MIDDLE [midy - HALFSTROKE] KAPPA
|
||||
:.line-to midx [midy - HALFSTROKE]
|
||||
:.heads-to RIGHTWARD
|
||||
include : create-stroke
|
||||
:.start-from SB smb
|
||||
:.set-width 0 STROKE
|
||||
:.arc-vh-to MIDDLE [XH / 2 + HALFSTROKE] KAPPA
|
||||
:.line-to mid [XH / 2 + HALFSTROKE]
|
||||
:.arc-vh-to MIDDLE [midy + HALFSTROKE] KAPPA
|
||||
:.line-to midx [midy + HALFSTROKE]
|
||||
:.heads-to RIGHTWARD
|
||||
}
|
||||
create-glyph 'epsilon' : glyph-construction {
|
||||
assign-unicode 0x3B5
|
||||
include eMarks
|
||||
include : SmallEpsilonShape XH
|
||||
}
|
||||
create-glyph 'zeta' : glyph-construction {
|
||||
assign-unicode 0x3B6
|
||||
include ifMarks
|
||||
|
|
|
@ -107,14 +107,11 @@ create-glyph 'c' : glyph-construction {
|
|||
assign-unicode 'c'
|
||||
include eMarks
|
||||
|
||||
include : EHookLower 0 SMALLSMOOTHB HOOK
|
||||
include : XSHookUpper XH [SB + O] nothing RIGHTSB SMALLSMOOTHA [HOOK - TAILADJY * globalTransform.yx]
|
||||
include : create-stroke
|
||||
:.start-from [RIGHTSB - OXHOOK] [XH - HOOK]
|
||||
:.set-width STROKE 0
|
||||
:.curve-to [MIDDLE + KAPPA_HOOK * [MIDDLE - para.sb]] XO [MIDDLE - OMIDCOR_S] XO
|
||||
:.arc-hv-to [SB + O] [XH - SMALLSMOOTHA]
|
||||
:.start-from [SB + O] [XH - SMALLSMOOTHA] :.set-width STROKE 0
|
||||
:.line-to [SB + O] SMALLSMOOTHB
|
||||
:.arc-vh-to [MIDDLE + OMIDCOR_S] O
|
||||
:.curve-to [MIDDLE + [KAPPA_HOOK + TAILADJKAPPA * globalTransform.yx] * [MIDDLE - SB]] O [RIGHTSB - OXHOOK + TAILADJX * globalTransform.yx] [HOOK - TAILADJY * globalTransform.yx]
|
||||
}
|
||||
define [SmallEShape top stroke barpos] : glyph-construction {
|
||||
local barbottom [top * [fallback barpos EBARPOS]]
|
||||
|
@ -129,8 +126,7 @@ define [SmallEShape top stroke barpos] : glyph-construction {
|
|||
:.arc-vh-to MIDDLE [top - O]
|
||||
:.arc-hv-to [SB + O] [top - SMALLSMOOTHA]
|
||||
:.line-to [SB + O] SMALLSMOOTHB
|
||||
:.arc-vh-to hookmiddle O
|
||||
:.curve-to [mix hookmiddle hookx KAPPA_HOOK] O hookx [SHOOK - TAILADJY * globalTransform.yx]
|
||||
include : EHookLower 0 SMALLSMOOTHB HOOK
|
||||
include : create-stroke
|
||||
:.start-from [SB + [stroke / 2]] barbottom
|
||||
:.set-width stroke 0
|
||||
|
@ -157,9 +153,8 @@ create-glyph 'e.italic' : glyph-construction {
|
|||
:.arc-vh-to [MIDDLE - OMIDCOR_S] XO
|
||||
:.arc-hv-to [SB + O] [XH - SMALLSMOOTHA]
|
||||
:.line-to [SB + O] SMALLSMOOTHB
|
||||
:.arc-vh-to [MIDDLE + OMIDCOR_S] O
|
||||
:.curve-to [MIDDLE + [KAPPA_HOOK + TAILADJKAPPA * globalTransform.yx] * [MIDDLE - SB]] O [RIGHTSB - OXHOOK + TAILADJX * globalTransform.yx] [HOOK - TAILADJY * globalTransform.yx]
|
||||
:.set-samples 4
|
||||
include : EHookLower 0 SMALLSMOOTHB HOOK
|
||||
}
|
||||
create-glyph 'e' : glyph-construction {
|
||||
set-width WIDTH
|
||||
|
@ -199,7 +194,7 @@ create-glyph 'a.upright' : glyph-construction {
|
|||
dont-export
|
||||
include eMarks
|
||||
set-anchor 'trailing' BASE [RIGHTSB - markHalfStroke] 0
|
||||
local bartop [XH * BARPOS + STROKE]
|
||||
local bartop [XH * BARPOS + HALFSTROKE]
|
||||
local lowmiddle : mix SB [RIGHTSB - STROKE] [linreg 80 0.55 120 0.625 STROKE]
|
||||
local barsmooth : mix SB RIGHTSB 0.6
|
||||
include : create-stroke
|
||||
|
@ -208,7 +203,7 @@ create-glyph 'a.upright' : glyph-construction {
|
|||
:.set-width STROKE 0
|
||||
:.line-to RIGHTSB [XH - SMOOTHA]
|
||||
:.arc-vh-to [MIDDLE - OMIDCOR_S] XO
|
||||
:.curve-to [MIDDLE - KAPPA_HOOK * [MIDDLE - SB]] XO [SB + OXHOOK] [XH - AHOOK]
|
||||
:.curve-to [MIDDLE - KAPPA_AHOOK * [MIDDLE - SB]] XO [SB + OXHOOK] [XH - AHOOK]
|
||||
include : create-stroke
|
||||
:.start-from [lowmiddle + OMIDCOR_S] O
|
||||
:.set-width 0 STROKE
|
||||
|
@ -648,7 +643,7 @@ create-glyph 'r' : glyph-construction {
|
|||
include : create-stroke
|
||||
:.start-from rhookx [XH - RHOOK]
|
||||
:.set-width STROKE 0
|
||||
:.curve-to [mix rmiddle rhookx KAPPA_AHOOK] XO rmiddle XO
|
||||
:.curve-to [mix rmiddle rhookx KAPPA_RHOOK] XO rmiddle XO
|
||||
include : create-stroke
|
||||
:.start-from [rmiddle + ITALICCORS] [XO - STROKE]
|
||||
:.set-width 0 STROKE
|
||||
|
|
|
@ -99,7 +99,7 @@ create-glyph 'ae-apart' : glyph-construction {
|
|||
dont-export
|
||||
local sw : adviceBlackness 3.25
|
||||
|
||||
local bartop [XH * BARPOS + sw]
|
||||
local bartop [XH * BARPOS + sw / 2]
|
||||
local abarRight : MIDDLE + sw / 2 * ITALICCOR
|
||||
local m1 : mix [SB + OXHOOK] abarRight 0.5
|
||||
local lowmiddle : [mix [SB + sw] [abarRight - sw] 0.5] + sw * globalTransform.yx
|
||||
|
@ -499,8 +499,7 @@ define [RevSmallEShape top stroke barpos] : glyph-construction {
|
|||
:.arc-vh-to MIDDLE [top - O]
|
||||
:.arc-hv-to [RIGHTSB - O] [top - SMALLSMOOTHB]
|
||||
:.line-to [RIGHTSB - O] SMALLSMOOTHA
|
||||
:.arc-vh-to hookmiddle O
|
||||
:.curve-to [mix hookmiddle hookx KAPPA_HOOK] O hookx [SHOOK - TAILADJY * globalTransform.yx]
|
||||
include : RevEHookLower 0 SMALLSMOOTHA HOOK
|
||||
include : create-stroke
|
||||
:.start-from [SB + [stroke / 2]] barbottom
|
||||
:.set-width stroke 0
|
||||
|
@ -657,6 +656,7 @@ dual 'alveolarlateralclick' 0x1C1 'bar' [WIDTH * 0.35]
|
|||
alias 'alveolarclick' 0x1C3 'exclam'
|
||||
alias 'smcpH' 0x29C 'cyren'
|
||||
alias 'latiniota' 0x269 'dotlessi.italic'
|
||||
alias 'revlatinepsilon' 0x25C 'cyrze'
|
||||
# Turned glyphs
|
||||
turned nothing 0x250 'a' MIDDLE [XH / 2]
|
||||
turned nothing 0x252 'scripta' MIDDLE [XH / 2]
|
||||
|
@ -677,7 +677,6 @@ turned nothing 0x28E 'y' MIDDLE [XH / 2] bMarks
|
|||
turned nothing 0x1D02 'ae' MIDDLE [XH / 2]
|
||||
turned nothing 0x1D09 'i' MIDDLE [XH / 2] pMarks
|
||||
turned 'latinUpsilon1' 0x1B1 'Omega' MIDDLE [CAP / 2]
|
||||
turned nothing 0x25C 'latinepsilon' MIDDLE [XH / 2]
|
||||
turned 'closeepsilon' 0x29A 'closeturnepsilon' MIDDLE [XH / 2]
|
||||
turned 'invglottalstop' 0x296 'revglottalstop' MIDDLE [CAP / 2]
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ define regular (
|
|||
.cap 764
|
||||
.descender [-194]
|
||||
.xheight 570
|
||||
.barpos 0.45
|
||||
.barpos 0.52
|
||||
.gbarpos 0.35
|
||||
.fivebarpos 0.49
|
||||
|
||||
|
@ -20,12 +20,12 @@ define regular (
|
|||
.rhook 100
|
||||
.hookx 170
|
||||
|
||||
.smooth 192
|
||||
.smooth 195
|
||||
.smallsmooth 242
|
||||
.smoothadjust 180
|
||||
|
||||
.o [-8]
|
||||
.oxhook 0
|
||||
.oxhook 2
|
||||
.kappa 0.518
|
||||
.ckappa 0.618
|
||||
.italicangle 0
|
||||
|
@ -37,6 +37,8 @@ define regular (
|
|||
.tbalance 50
|
||||
.tbalance2 30
|
||||
.rbalance 25
|
||||
.sbalance 0.51
|
||||
.kappa_hook 0.7
|
||||
|
||||
.family 'Iosevka'
|
||||
.style 'Regular'
|
||||
|
@ -54,15 +56,17 @@ bold.stroke = 120
|
|||
bold.dotsize = 160
|
||||
bold.periodsize = 180
|
||||
bold.ebarpos = 0.4
|
||||
bold.barpos = 0.42
|
||||
bold.oxhook = 0
|
||||
bold.ahook = 120
|
||||
bold.shook = 120
|
||||
bold.smooth = 200
|
||||
bold.oxhook = [-8]
|
||||
bold.smooth = 210
|
||||
bold.kappa_hook = 0.7
|
||||
bold.kappa_ahook = 0.60
|
||||
bold.kappa_ahook = 0.65
|
||||
bold.kappa_rhook = 0.6
|
||||
bold.jbalance = 60
|
||||
bold.tbalance = 50
|
||||
bold.rbalance = 18
|
||||
bold.sbalance = 0.5
|
||||
bold.weight = 700
|
||||
bold.bkappa = 0.5
|
||||
|
||||
|
@ -81,6 +85,7 @@ bolditalic.isItalic = true
|
|||
bolditalic.style = 'Bold Italic'
|
||||
bolditalic.tbalance = 50
|
||||
bolditalic.ebalance = 0.375
|
||||
bolditalic.sbalance = 0.53
|
||||
|
||||
define slabregular : Object.create regular
|
||||
slabregular.serif = true
|
||||
|
|
Loading…
Reference in New Issue
Block a user