Slab for Greek and Cyrillic.
This commit is contained in:
parent
89323a5ddb
commit
bfdba9593b
9 changed files with 163 additions and 76 deletions
|
@ -9,11 +9,6 @@ var parametersData = toml.parse(fs.readFileSync(path.join(path.dirname(require.m
|
|||
var emptyFont = toml.parse(fs.readFileSync(path.join(path.dirname(require.main.filename), 'emptyfont.toml'), 'utf-8'));
|
||||
var para = parameters.build(parametersData, argv._);
|
||||
|
||||
console.log(argv._ + ' : Start Building.');
|
||||
var ttfFont = buildGlyphs.build.call(emptyFont, para);
|
||||
console.log(argv._ + ' : Building Complete.');
|
||||
|
||||
if(argv.o) fs.writeFile(argv.o, JSON.stringify(ttfFont), function(err){
|
||||
if(err) throw err;
|
||||
console.log(argv.o + ' : File Saved.');
|
||||
});
|
||||
if(argv.o) fs.writeFileSync(argv.o, JSON.stringify(ttfFont));
|
|
@ -32,45 +32,46 @@ define [ORing u d l r sma smb shift] : begin
|
|||
:.arc-vh-to (mx + shift) d
|
||||
return s.points
|
||||
|
||||
define SERIF_SHIFT_X 0.6
|
||||
define [LeftwardTopSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x + HALFSTROKE * CORRECTION_HX) y
|
||||
:.heads-to LEFTWARD
|
||||
:.set-width STROKE 0
|
||||
:.line-to (x - length - globalTransform.yx * STROKE) y
|
||||
:.line-to (x - length - globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [LeftwardBottomSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x + HALFSTROKE * CORRECTION_HX) y
|
||||
:.heads-to LEFTWARD
|
||||
:.set-width 0 STROKE
|
||||
:.line-to (x - length + globalTransform.yx * STROKE) y
|
||||
:.line-to (x - length + globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [RightwardTopSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x - HALFSTROKE * CORRECTION_HX) y
|
||||
:.heads-to RIGHTWARD
|
||||
:.set-width 0 STROKE
|
||||
:.line-to (x + length - globalTransform.yx * STROKE) y
|
||||
:.line-to (x + length - globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [RightwardBottomSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x - HALFSTROKE * CORRECTION_HX) y
|
||||
:.heads-to RIGHTWARD
|
||||
:.set-width STROKE 0
|
||||
:.line-to (x + length + globalTransform.yx * STROKE) y
|
||||
:.line-to (x + length + globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [CenterTopSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x + length - globalTransform.yx * STROKE) y
|
||||
:.start-from (x + length - globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
:.set-width STROKE 0
|
||||
:.line-to (x - length - globalTransform.yx * STROKE) y
|
||||
:.line-to (x - length - globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [CenterBottomSerif x y length] : glyph-construction
|
||||
include : create-stroke
|
||||
:.start-from (x + length + globalTransform.yx * STROKE) y
|
||||
:.start-from (x + length + globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
:.set-width 0 STROKE
|
||||
:.line-to (x - length + globalTransform.yx * STROKE) y
|
||||
:.line-to (x - length + globalTransform.yx * (STROKE * SERIF_SHIFT_X)) y
|
||||
|
||||
define [DownwardRightSerif x y length sw] : glyph-construction
|
||||
include : dispiro
|
||||
|
@ -118,6 +119,15 @@ define [AINSerifs top _left _right] : glyph-construction
|
|||
include : CenterBottomSerif (left + STROKE * sideSerifK * CORRECTION_HX) 0 JUT
|
||||
tag-contour 'serifLB'
|
||||
#include : CenterdBottomSerif (right - STROKE * (sideSerifK - 0.5) * CORRECTION_HX) 0 (JUT / 2)
|
||||
define [AICyrISerifs top _left _right] : glyph-construction
|
||||
local left : fallback _left SB
|
||||
local right : fallback _right RIGHTSB
|
||||
if SLAB : begin
|
||||
include : LeftwardBottomSerif left 0 SIDEJUT
|
||||
include : RightwardTopSerif right top SIDEJUT
|
||||
include : CenterTopSerif (left + STROKE * sideSerifK * CORRECTION_HX) top JUT
|
||||
include : CenterBottomSerif (right - STROKE * sideSerifK * CORRECTION_HX) 0 JUT
|
||||
tag-contour 'serifRB'
|
||||
define [AIMSerifs top _left _right] : glyph-construction
|
||||
local left : fallback _left SB
|
||||
local right : fallback _right RIGHTSB
|
||||
|
|
|
@ -13,9 +13,7 @@ alias 'cyrEn' 0x41D 'H'
|
|||
alias 'cyrO' 0x41E 'O'
|
||||
alias 'cyro' 0x43e 'o'
|
||||
alias 'cyrPe' 0x41F 'Pi'
|
||||
alias 'cyrpe.upright' null 'pi'
|
||||
alias 'cyrpe.italic' null 'n'
|
||||
italic-variant 'cyrpe' 0x43f
|
||||
alias 'cyrEr' 0x420 'P'
|
||||
alias 'cyrer' 0x440 'p'
|
||||
alias 'cyrEs' 0x421 'C'
|
||||
|
@ -36,10 +34,11 @@ alias 'cyrDze' 0x405 'S'
|
|||
alias 'cyrdze' 0x455 's'
|
||||
|
||||
### Russian letters
|
||||
define [CyrYeriShape top _left _right _fine] : glyph-construction
|
||||
define [CyrYeriShape top _left _right _fine _jut] : glyph-construction
|
||||
local fine : fallback _fine STROKE
|
||||
local left : fallback _left SB
|
||||
local right : fallback _right RIGHTSB
|
||||
local jut : fallback _jut JUT
|
||||
|
||||
local bowl : top * 0.55 + HALFSTROKE
|
||||
|
||||
|
@ -54,6 +53,11 @@ define [CyrYeriShape top _left _right _fine] : glyph-construction
|
|||
flat (right - turnbottom * (right - left) / (RIGHTSB - SB)) bowl [heading LEFTWARD]
|
||||
curl (left + STROKE * 0.2) bowl [heading LEFTWARD]
|
||||
include : VBarLeft left 0 top fine
|
||||
if SLAB : begin
|
||||
include : LeftwardBottomSerif left 0 (jut - fine / 2 * CORRECTION_HX)
|
||||
tag-contour 'serifYeriLB'
|
||||
include : CenterTopSerif (left + fine / 2 * CORRECTION_HX) top jut
|
||||
tag-contour 'serifYeriLT'
|
||||
|
||||
define [RevCyrYeriShape top _left _right _fine] : glyph-construction
|
||||
local fine : fallback _fine STROKE
|
||||
|
@ -89,7 +93,7 @@ create-glyph 'cyrBe' : glyph-construction
|
|||
include glyphs.cyrYeri AS_BASE
|
||||
include : HBar SB [mix SB RIGHTSB 0.9] (CAP - HALFSTROKE)
|
||||
|
||||
define [CyrCyrIShape top] : glyph-construction
|
||||
define [CyrIShape top] : glyph-construction
|
||||
local topstroke : adviceBlackness 4
|
||||
local halftopstroke : topstroke / 2
|
||||
include : create-stroke
|
||||
|
@ -103,16 +107,17 @@ define [CyrCyrIShape top] : glyph-construction
|
|||
include : create-stroke
|
||||
:.start-from (SB + halftopstroke) 0 :.heads-to UPWARD :.set-width 0 topstroke
|
||||
:.line-to (RIGHTSB - topstroke - halftopstroke) top :.heads-to UPWARD
|
||||
include : AICyrISerifs top
|
||||
|
||||
create-glyph 'cyrI' : glyph-construction
|
||||
assign-unicode 0x418
|
||||
include capitalMarks
|
||||
include : CyrCyrIShape CAP
|
||||
include : CyrIShape CAP
|
||||
|
||||
create-glyph 'cyri.upright' : glyph-construction
|
||||
include eMarks
|
||||
dont-export
|
||||
include : CyrCyrIShape XH
|
||||
include : CyrIShape XH
|
||||
|
||||
create-glyph 'cyri.italic' : glyph-construction
|
||||
dont-export
|
||||
|
@ -187,8 +192,7 @@ create-glyph 'cyrve.upright' : glyph-construction
|
|||
italic-variant 'cyrve' 0x432
|
||||
create-glyph 'cyrghe.upright' : glyph-construction
|
||||
include eMarks
|
||||
include : LShape XH
|
||||
include : FlipAround MIDDLE (XH / 2) 1 (-1)
|
||||
include : GammaShape XH
|
||||
|
||||
create-glyph 'cyrghe.italic' : glyph-construction
|
||||
include eMarks
|
||||
|
@ -213,10 +217,14 @@ define [CyrDeShape top] : glyph-construction
|
|||
local cutright : mix SB RIGHTSB 0.92
|
||||
include : HBar (SB + O * 2) RIGHTSB HALFSTROKE
|
||||
include : VBar (cutright - HALFSTROKE * CORRECTION_HX) 0 top
|
||||
include : HBar cutleft cutright (top - HALFSTROKE)
|
||||
include : halfXStrand (cutleft + STROKE * CORRECTION_HX) top (SB + HALFSTROKE * CORRECTION_HX) HALFSTROKE 0.1 0.75 0.5
|
||||
include : VBar (SB + HALFSTROKE * CORRECTION_HX + O * 2) (-LONGJUT + HALFSTROKE) 0
|
||||
include : VBar (RIGHTSB - HALFSTROKE * CORRECTION_HX) (-LONGJUT + HALFSTROKE) 0
|
||||
|
||||
if SLAB : then
|
||||
include : HBarTop (cutleft - (RIGHTSB - cutright)) RIGHTSB top
|
||||
: else
|
||||
include : HBarTop cutleft cutright top
|
||||
|
||||
create-glyph 'cyrDe' : glyph-construction
|
||||
assign-unicode 0x414
|
||||
|
@ -316,9 +324,10 @@ define [CyrElShape top] : glyph-construction
|
|||
local cutright : mix SB RIGHTSB 0.95
|
||||
include : VBarRight cutright 0 top
|
||||
include : HBar cutleft cutright (top - HALFSTROKE)
|
||||
include : LegShape cutleft cutleft2 [mix SB 0 0.25] top 0
|
||||
include : LegShape cutleft cutleft2 [mix SB 0 [if SLAB 0.5 0.25]] top 0
|
||||
if SLAB : begin
|
||||
include : RightwardTopSerif cutright top SIDEJUT
|
||||
include : LeftwardTopSerif cutleft top SIDEJUT
|
||||
include : CenterBottomSerif (cutright - HALFSTROKE * CORRECTION_HX) 0 JUT
|
||||
|
||||
create-glyph 'cyrEl' : glyph-construction
|
||||
|
@ -347,6 +356,9 @@ define [CyrTseShape top] : glyph-construction
|
|||
include : HBarBottom SB RIGHTSB 0
|
||||
include : VBarRight RIGHTSB 0 top
|
||||
include : VBarRight [mix SB RIGHTSB 1.05] (HALFSTROKE - LONGJUT) STROKE
|
||||
if SLAB : begin
|
||||
include : AIVSerifs top
|
||||
include : LeftwardBottomSerif SB 0 SIDEJUT
|
||||
|
||||
create-glyph 'cyrTse' : glyph-construction
|
||||
assign-unicode 0x426
|
||||
|
@ -359,6 +371,7 @@ create-glyph 'cyrtse.upright' : glyph-construction
|
|||
create-glyph 'cyrtse.italic' : glyph-construction
|
||||
include eMarks
|
||||
include glyphs.u
|
||||
eject-contour 'serifLT'
|
||||
include : VBarRight [mix SB RIGHTSB 1.05] (HALFSTROKE - LONGJUT) STROKE
|
||||
italic-variant 'cyrtse' 0x446
|
||||
|
||||
|
@ -419,12 +432,17 @@ create-glyph 'cyrshcha.upright' : glyph-construction
|
|||
create-glyph 'cyrshcha.italic' : glyph-construction
|
||||
include eMarks
|
||||
include glyphs.'cyrsha.italic'
|
||||
eject-contour 'serifLT'
|
||||
include : VBarRight [mix SB RIGHTSB 1.05] (HALFSTROKE - LONGJUT) STROKE
|
||||
italic-variant 'cyrshcha' 0x449
|
||||
|
||||
define [CyrYerShape top] : glyph-construction
|
||||
include : CyrYeriShape top [mix SB RIGHTSB 0.1] RIGHTSB
|
||||
include : HBarTop [mix 0 SB 0.6] (STROKE * 0.1 + [mix SB RIGHTSB 0.1]) top
|
||||
local left : if SLAB ([mix SB RIGHTSB 0.35] - MVERTSTROKE / 2 * CORRECTION_HX) [mix SB RIGHTSB 0.1]
|
||||
local barleft : mix 0 SB [if SLAB 0.25 0.6]
|
||||
include : CyrYeriShape top left RIGHTSB [if SLAB MVERTSTROKE STROKE]
|
||||
include : HBarTop barleft (STROKE * 0.1 + left) top
|
||||
if SLAB : begin
|
||||
include : DownwardLeftSerif barleft top VJUT MVERTSTROKE
|
||||
|
||||
create-glyph 'cyrYer' : glyph-construction
|
||||
assign-unicode 0x42A
|
||||
|
@ -437,8 +455,11 @@ create-glyph 'cyryer' : glyph-construction
|
|||
include : CyrYerShape XH
|
||||
|
||||
define [CyrYeryShape top] : glyph-construction
|
||||
include : CyrYeriShape top (SB + O) [mix (RIGHTSB - MVERTSTROKE * CORRECTION_HX) (MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX) 0.5] MVERTSTROKE
|
||||
include : CyrYeriShape top (SB + O) [mix (RIGHTSB - MVERTSTROKE * CORRECTION_HX) (MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX) 0.5] MVERTSTROKE (JUT * 0.75)
|
||||
include : VBarRight (RIGHTSB - O) 0 top MVERTSTROKE
|
||||
if SLAB : begin
|
||||
include : CenterTopSerif (RIGHTSB - O - MVERTSTROKE / 2 * CORRECTION_HX) top (JUT * 0.75)
|
||||
include : CenterBottomSerif (RIGHTSB - O - MVERTSTROKE / 2 * CORRECTION_HX) 0 (JUT * 0.75)
|
||||
|
||||
create-glyph 'cyrYery' : glyph-construction
|
||||
assign-unicode 0x42B
|
||||
|
@ -517,9 +538,13 @@ create-glyph 'cyrya' : glyph-construction
|
|||
include : CyrYaShape XH
|
||||
|
||||
# Serbian pe and te
|
||||
create-glyph 'cyrpe.upright' : glyph-construction
|
||||
include eMarks
|
||||
include : PiShape XH 0
|
||||
create-glyph 'cyrpe.serbian' : glyph-construction
|
||||
include glyphs.u AS_BASE
|
||||
include glyphs.macronAbove
|
||||
italic-variant 'cyrpe' 0x43f
|
||||
|
||||
create-glyph 'cyrte.upright' : glyph-construction
|
||||
include eMarks
|
||||
|
|
|
@ -30,9 +30,12 @@ create-glyph 'cyrdzhe' : glyph-construction
|
|||
|
||||
define [CyrLjeShape top] : glyph-construction
|
||||
local xlefttop : mix SB RIGHTSB 0.075
|
||||
include : LegShape xlefttop [mix SB RIGHTSB 0.025] [mix SB 0 0.5] top 0 MVERTSTROKE
|
||||
include : CyrYeriShape top (MIDDLE - MVERTSTROKE / 2 * CORRECTION_HX) (RIGHTSB - O) MVERTSTROKE
|
||||
local jut : JUT * 0.72
|
||||
include : LegShape xlefttop [mix SB RIGHTSB 0.025] [mix SB 0 [if SLAB 0.25 0.5]] top 0 MVERTSTROKE
|
||||
include : CyrYeriShape top (MIDDLE - MVERTSTROKE / 2 * CORRECTION_HX) (RIGHTSB - O) MVERTSTROKE jut
|
||||
include : HBarTop xlefttop MIDDLE top
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif xlefttop top (jut - MVERTSTROKE / 2 * CORRECTION_HX)
|
||||
|
||||
create-glyph 'cyrLje' : glyph-construction
|
||||
assign-unicode 0x409
|
||||
|
@ -46,9 +49,13 @@ create-glyph 'cyrlje' : glyph-construction
|
|||
|
||||
define [CyrNjeShape top] : glyph-construction
|
||||
local xlefttop : mix SB RIGHTSB 0.075
|
||||
local jut : JUT * 0.72
|
||||
include : VBarLeft SB 0 top MVERTSTROKE
|
||||
include : CyrYeriShape top (MIDDLE - MVERTSTROKE / 2 * CORRECTION_HX) (RIGHTSB - O) MVERTSTROKE
|
||||
include : CyrYeriShape top (MIDDLE - MVERTSTROKE / 2 * CORRECTION_HX) (RIGHTSB - O) MVERTSTROKE jut
|
||||
include : HBar (SB + MVERTSTROKE * 0.1) MIDDLE (top / 2)
|
||||
if SLAB : begin
|
||||
include : CenterTopSerif (SB + MVERTSTROKE / 2 * CORRECTION_HX) top jut
|
||||
include : CenterBottomSerif (SB + MVERTSTROKE / 2 * CORRECTION_HX) 0 jut
|
||||
|
||||
create-glyph 'cyrNje' : glyph-construction
|
||||
assign-unicode 0x40A
|
||||
|
|
|
@ -18,25 +18,31 @@ alias 'Chi' 0x3A7 'X'
|
|||
alias 'omicron' 0x3BF 'o'
|
||||
|
||||
# Capital
|
||||
define [LambdaShape STROKE] : glyph-construction
|
||||
define [LambdaShape sw] : glyph-construction
|
||||
local TURN (CAP * 0.1)
|
||||
local curviness 0.2
|
||||
include : dispiro
|
||||
widths.rhs STROKE
|
||||
widths.rhs sw
|
||||
flat SB 0 [heading UPWARD]
|
||||
curl SB TURN [heading UPWARD]
|
||||
quadcontrols 0 curviness
|
||||
g4 (MIDDLE - STROKE / 2) CAP [widths 0 (STROKE * 0.8)]
|
||||
g4 (MIDDLE - sw / 2) CAP [widths 0 (sw * 0.8)]
|
||||
include : dispiro
|
||||
widths.lhs STROKE
|
||||
widths.lhs sw
|
||||
flat RIGHTSB 0 [heading UPWARD]
|
||||
curl RIGHTSB TURN [heading UPWARD]
|
||||
quadcontrols 0 curviness
|
||||
g4 (MIDDLE + STROKE / 2) CAP [widths (STROKE * 0.8) 0]
|
||||
g4 (MIDDLE + sw / 2) CAP [widths (sw * 0.8) 0]
|
||||
|
||||
start-from (MIDDLE - STROKE / 2) CAP
|
||||
line-to (MIDDLE + STROKE / 2) CAP
|
||||
line-to MIDDLE (CAP - STROKE)
|
||||
start-from (MIDDLE - sw / 2) CAP
|
||||
line-to (MIDDLE + sw / 2) CAP
|
||||
line-to MIDDLE (CAP - sw)
|
||||
|
||||
if SLAB : begin
|
||||
include : CenterBottomSerif (SB + sw / 2 * CORRECTION_HX) 0 JUT
|
||||
tag-contour 'serif'
|
||||
include : CenterBottomSerif (RIGHTSB - sw / 2 * CORRECTION_HX) 0 JUT
|
||||
tag-contour 'serif'
|
||||
|
||||
create-glyph 'Lambda' : glyph-construction
|
||||
assign-unicode 0x39B
|
||||
|
@ -47,10 +53,20 @@ create-glyph 'Delta' : glyph-construction
|
|||
assign-unicode 0x394
|
||||
include glyphs.Lambda AS_BASE
|
||||
include : HBar (SB + HALFSTROKE) (RIGHTSB - HALFSTROKE) HALFSTROKE
|
||||
eject-contour 'serif'
|
||||
|
||||
define [GammaShape top] : glyph-construction
|
||||
include : VBarLeft (SB * 1.5) 0 top
|
||||
include : HBarTop (SB * 1.5 - O) RIGHTSB top
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif (SB * 1.5) top SIDEJUT
|
||||
include : CenterBottomSerif (SB * 1.5 + CORRECTION_HX * HALFSTROKE) 0 JUT
|
||||
include : DownwardRightSerif RIGHTSB top VJUT
|
||||
|
||||
create-glyph 'Gamma' : glyph-construction
|
||||
assign-unicode 0x393
|
||||
include glyphs.L AS_BASE
|
||||
include capitalMarks
|
||||
include : GammaShape CAP
|
||||
include : FlipAround MIDDLE CAPMIDDLE 1 (-1)
|
||||
|
||||
define [SigmaShape top bottom _fine] : glyph-construction
|
||||
|
@ -68,6 +84,10 @@ define [SigmaShape top bottom _fine] : glyph-construction
|
|||
line-to SB (top - fine)
|
||||
line-to midx [mix bottom top 0.5]
|
||||
reverse-last
|
||||
|
||||
if SLAB : begin
|
||||
include : DownwardRightSerif RIGHTSB top VJUT
|
||||
include : UpwardRightSerif RIGHTSB bottom VJUT
|
||||
|
||||
create-glyph 'Sigma' : glyph-construction
|
||||
set-width WIDTH
|
||||
|
@ -88,12 +108,24 @@ create-glyph 'Xi' : glyph-construction
|
|||
include : HBar [mix SB RIGHTSB 0.15] [mix RIGHTSB SB 0.15] [mix 0 CAP 0.54]
|
||||
include : HBar SB RIGHTSB (CAP - HALFSTROKE)
|
||||
include : HBar SB RIGHTSB (0 + HALFSTROKE)
|
||||
if SLAB : begin
|
||||
include : DownwardLeftSerif SB CAP VJUT
|
||||
include : DownwardRightSerif RIGHTSB CAP VJUT
|
||||
include : UpwardLeftSerif SB 0 VJUT
|
||||
include : UpwardRightSerif RIGHTSB 0 VJUT
|
||||
|
||||
define [PiShape top bottom shrink _fine] : glyph-construction
|
||||
define [PiShape top bottom _shrink _fine] : glyph-construction
|
||||
local fine : fallback _fine STROKE
|
||||
include : HBar SB RIGHTSB (top - (fine / 2)) fine
|
||||
include : VBar ([mix SB RIGHTSB [fallback shrink 0.05]] + (fine / 2)) bottom (top - fine / 2) fine
|
||||
include : VBar ([mix RIGHTSB SB [fallback shrink 0.05]] - (fine / 2)) bottom (top - fine / 2) fine
|
||||
local shrink : if SLAB 0 ([fallback _shrink 0.03] * (RIGHTSB - SB))
|
||||
include : HBarTop SB RIGHTSB top fine
|
||||
include : VBarLeft (SB + shrink) bottom (top - fine / 2) fine
|
||||
include : VBarRight (RIGHTSB - shrink) bottom (top - fine / 2) fine
|
||||
|
||||
if SLAB : begin
|
||||
include : CenterBottomSerif (SB + shrink + fine * 0.5 * CORRECTION_HX) bottom JUT
|
||||
include : CenterBottomSerif (RIGHTSB - shrink - fine * 0.5 * CORRECTION_HX) bottom JUT
|
||||
include : CenterTopSerif (SB + shrink + fine * 0.5 * CORRECTION_HX) top JUT
|
||||
include : CenterTopSerif (RIGHTSB - shrink - fine * 0.5 * CORRECTION_HX) top JUT
|
||||
|
||||
create-glyph 'Pi' : glyph-construction
|
||||
assign-unicode 0x3A0
|
||||
|
@ -103,8 +135,23 @@ create-glyph 'Pi' : glyph-construction
|
|||
create-glyph 'pi' : glyph-construction
|
||||
assign-unicode 0x3C0
|
||||
include eMarks
|
||||
include : PiShape XH 0
|
||||
|
||||
include : HBarTop SB RIGHTSB XH
|
||||
local m1 : mix SB RIGHTSB (0.3)
|
||||
include : dispiro
|
||||
widths.rhs
|
||||
straight.down.start (m1 + HALFSTROKE * CORRECTION_HX) XH [heading DOWNWARD]
|
||||
alsothru 0.5 0.85 important
|
||||
g4 [mix SB RIGHTSB 0.1] O
|
||||
local m2 : mix SB RIGHTSB (0.7)
|
||||
local hook : HOOK * 0.8
|
||||
include : dispiro
|
||||
widths.center
|
||||
flat m2 XH [heading DOWNWARD]
|
||||
curl m2 hook
|
||||
arcvh
|
||||
flat (m2 + hook - HALFSTROKE) HALFSTROKE [heading RIGHTWARD]
|
||||
curl RIGHTSB HALFSTROKE [heading RIGHTWARD]
|
||||
|
||||
create-glyph 'Phi' : glyph-construction
|
||||
assign-unicode 0x3A6
|
||||
include capitalMarks
|
||||
|
@ -205,13 +252,13 @@ create-glyph 'kappa' : glyph-construction
|
|||
set-width WIDTH
|
||||
assign-unicode 0x3BA
|
||||
include eMarks
|
||||
include : create-stroke
|
||||
:.start-from SB 0
|
||||
:.set-width 0 STROKE
|
||||
:.heads-to UPWARD
|
||||
:.line-to SB XH
|
||||
:.heads-to UPWARD
|
||||
include : VBarLeft SB 0 XH
|
||||
include : KShape XH
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif SB XH SIDEJUT
|
||||
if (para.italicangle === 0) : begin
|
||||
include : CenterBottomSerif (SB + HALFSTROKE * CORRECTION_HX) 0 JUT
|
||||
tag-contour 'serifLB'
|
||||
|
||||
create-glyph 'lambda' : glyph-construction
|
||||
assign-unicode 0x3BB
|
||||
|
@ -230,15 +277,16 @@ create-glyph 'mu' : glyph-construction
|
|||
assign-unicode 0x3BC
|
||||
include pMarks
|
||||
include glyphs.u
|
||||
include : create-stroke
|
||||
:.start-from SB DESCENDER
|
||||
:.heads-to UPWARD
|
||||
:.set-width 0 STROKE
|
||||
:.line-to SB (DESCENDER / 2)
|
||||
:.heads-to UPWARD
|
||||
:.line-to SB SMALLSMOOTHB
|
||||
:.heads-to UPWARD
|
||||
:.set-width 0 [adviceBlackness 4]
|
||||
include : dispiro
|
||||
widths.rhs
|
||||
flat SB DESCENDER [heading UPWARD]
|
||||
curl SB (DESCENDER / 2) [heading UPWARD]
|
||||
straight.up.end SB SMALLSMOOTHB [widths.heading 0 [adviceBlackness 4] UPWARD]
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif SB XH SIDEJUT
|
||||
if (para.italicangle === 0) : begin
|
||||
include : CenterBottomSerif (SB + HALFSTROKE * CORRECTION_HX) DESCENDER JUT
|
||||
tag-contour 'serifLB'
|
||||
|
||||
create-glyph 'theta' : glyph-construction
|
||||
assign-unicode 0x3B8
|
||||
|
@ -410,6 +458,8 @@ create-glyph 'nu' : glyph-construction
|
|||
curl RIGHTSB (XH * 0.9) [heading DOWNWARD]
|
||||
quadcontrols 0 0.3 6
|
||||
g4 xmid 0
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif SB XH SIDEJUT
|
||||
|
||||
create-glyph 'sigmafinal' : glyph-construction
|
||||
assign-unicode 0x3C2
|
||||
|
|
|
@ -326,7 +326,7 @@ create-glyph 'Q' : glyph-construction
|
|||
line-to (MIDDLE + STROKE * (1 - 0.5 / 3) * CORRECTION_HX) (STROKE * 0.5)
|
||||
reverse-last
|
||||
|
||||
define [UShape top bottom stroke] : glyph-construction
|
||||
define [UShape top bottom stroke oper] : glyph-construction
|
||||
include : dispiro
|
||||
widths.lhs
|
||||
flat SB top [heading DOWNWARD]
|
||||
|
@ -336,7 +336,7 @@ define [UShape top bottom stroke] : glyph-construction
|
|||
archv
|
||||
flat RIGHTSB (bottom + SMOOTHA)
|
||||
curl RIGHTSB top [heading UPWARD]
|
||||
include : AIVSerifs top
|
||||
if [not oper] : include : AIVSerifs top
|
||||
|
||||
create-glyph 'U' : glyph-construction
|
||||
set-width WIDTH
|
||||
|
|
|
@ -248,6 +248,7 @@ create-glyph 'n' : glyph-construction
|
|||
|
||||
if SLAB : begin
|
||||
include : LeftwardTopSerif SB XH SIDEJUT
|
||||
tag-contour 'serifLT'
|
||||
if (para.italicangle > 0)
|
||||
: then : include : RightwardBottomSerif RIGHTSB 0 SIDEJUT
|
||||
: else : include : CenterBottomSerif (RIGHTSB - HALFSTROKE * CORRECTION_HX) 0 JUT
|
||||
|
|
|
@ -5,6 +5,7 @@ alias 'micro' 0xB5 'mu'
|
|||
create-glyph 'forall' : glyph-construction
|
||||
assign-unicode 0x2200
|
||||
include : LambdaShape OPERATORSTROKE
|
||||
eject-contour 'serif'
|
||||
include : HBar (SB + OPERATORSTROKE) (RIGHTSB - OPERATORSTROKE) (XH / 2) OPERATORSTROKE
|
||||
include : FlipAround MIDDLE (CAP / 2)
|
||||
|
||||
|
@ -29,6 +30,7 @@ create-glyph 'emptyset' : glyph-construction
|
|||
create-glyph 'increment' : glyph-construction
|
||||
assign-unicode 0x2206
|
||||
include : LambdaShape OPERATORSTROKE
|
||||
eject-contour 'serif'
|
||||
include : HBarBottom (SB + (OPERATORSTROKE / 2)) (RIGHTSB - (OPERATORSTROKE / 2)) 0 OPERATORSTROKE
|
||||
|
||||
turned 'nabla' 0x2207 'increment' MIDDLE (CAP / 2)
|
||||
|
@ -157,11 +159,11 @@ turned 'wedge' 0x2227 'vee' MIDDLE parenMid
|
|||
turned 'Wedge' 0x22C0 'Vee' MIDDLE parenMid
|
||||
create-glyph 'cup' : glyph-construction
|
||||
assign-unicode 0x222A
|
||||
include : UShape operTop operBot OPERATORSTROKE
|
||||
include : UShape operTop operBot OPERATORSTROKE true
|
||||
|
||||
create-glyph 'Cup' : glyph-construction
|
||||
assign-unicode 0x22C3
|
||||
include : UShape parenTop parenBot OPERATORSTROKE
|
||||
include : UShape parenTop parenBot OPERATORSTROKE true
|
||||
|
||||
turned 'cap' 0x2229 'cup' MIDDLE parenMid
|
||||
turned 'Cap' 0x22C2 'Cup' MIDDLE parenMid
|
||||
|
|
21
makefile
21
makefile
|
@ -9,7 +9,7 @@ PARAM_CC_SLAB = FAST='$(FAST)' VARIANTNAME='cc-slab$(VARIANTNAME)' STYLE_COMMON=
|
|||
|
||||
### Sometimes make will freak out and report ACCESS VIOLATION for me... so i have to add some repeation
|
||||
ifeq ($(OS),Windows_NT)
|
||||
LOOPS = 1 2 3 4 5 6
|
||||
LOOPS = 1 2 3 4 5 6 7 8 9 10
|
||||
else
|
||||
LOOPS = 1
|
||||
endif
|
||||
|
@ -24,25 +24,22 @@ $(OBJDIR) :
|
|||
|
||||
# fdts
|
||||
fdts-default : $(FILES) | $(OBJDIR)
|
||||
@$(MAKE) -s -f onegroup.mk fdts $(PARAM_DEFAULT)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_DEFAULT) LOOP=$(var);)
|
||||
fdts-slab : $(FILES) | $(OBJDIR)
|
||||
@$(MAKE) -s -f onegroup.mk fdts $(PARAM_SLAB)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_SLAB) LOOP=$(var);)
|
||||
fdts-cc : $(FILES) | $(OBJDIR)
|
||||
@$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC) LOOP=$(var);)
|
||||
fdts-cc-slab : $(FILES) | $(OBJDIR)
|
||||
@$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC_SLAB)
|
||||
|
||||
fdts : $(FILES) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s fdts-default fdts-slab fdts-cc fdts-cc-slab LOOP=$(var);)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC_SLAB) LOOP=$(var);)
|
||||
|
||||
# ttfs
|
||||
fonts-default : fdts
|
||||
fonts-default : fdts-default
|
||||
@$(MAKE) -s -f onegroup.mk fonts $(PARAM_DEFAULT)
|
||||
fonts-slab : fdts
|
||||
fonts-slab : fdts-slab
|
||||
@$(MAKE) -s -f onegroup.mk fonts $(PARAM_SLAB)
|
||||
fonts-cc : fdts
|
||||
fonts-cc : fdts-cc
|
||||
@$(MAKE) -s -f onegroup.mk fonts $(PARAM_CC)
|
||||
fonts-cc-slab : fdts
|
||||
fonts-cc-slab : fdts-cc-slab
|
||||
@$(MAKE) -s -f onegroup.mk fonts $(PARAM_CC_SLAB)
|
||||
|
||||
# testdrive
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue