APL symbols remake (I)
This commit is contained in:
parent
b82ce595ce
commit
ffc50ab30a
9 changed files with 625 additions and 527 deletions
|
@ -41,7 +41,7 @@ export as build : define [buildFont para recursive recursiveCodes] : begin
|
|||
return nothing
|
||||
|
||||
define metrics : calculateMetrics para
|
||||
define [object globalTransform MIDDLE CAP XH SB RIGHTSB CONTRAST STROKE SUPERNESS WIDTH TANSLANT OVERLAYPOS DESCENDER parenMid parenTop parenBot operTop operBot plusTop plusBot operMid] metrics
|
||||
define [object globalTransform MIDDLE CAP XH SB RIGHTSB CONTRAST STROKE SUPERNESS WIDTH TANSLANT OVERLAYPOS DESCENDER parenMid parenTop parenBot operTop operBot plusTop plusBot operMid logicTop logicBot] metrics
|
||||
|
||||
# Anchor parameters
|
||||
define [object MARK BASE] Anchor
|
||||
|
@ -55,9 +55,11 @@ export as build : define [buildFont para recursive recursiveCodes] : begin
|
|||
|
||||
define markAboveLower {.anchors {.above [ta : new Anchor MIDDLE XH BASE]}}
|
||||
define markAboveOper {.anchors {.above [ta : new Anchor MIDDLE operTop BASE]}}
|
||||
define markAboveLogic {.anchors {.above [ta : new Anchor MIDDLE logicTop BASE]}}
|
||||
define markAbovePlus {.anchors {.above [ta : new Anchor MIDDLE plusTop BASE]}}
|
||||
define markAboveCap {.anchors {.above [ta : new Anchor MIDDLE CAP BASE]}}
|
||||
define markBelowLower {.anchors {.below [ta : new Anchor MIDDLE DESCENDER BASE]}}
|
||||
define markBelowLogic {.anchors {.below [ta : new Anchor MIDDLE logicBot BASE]}}
|
||||
define markBelowOper {.anchors {.below [ta : new Anchor MIDDLE operBot BASE]}}
|
||||
define markBelowPlus {.anchors {.below [ta : new Anchor MIDDLE plusBot BASE]}}
|
||||
define markBelowZero {.anchors {.below [ta : new Anchor MIDDLE 0 BASE]}}
|
||||
|
@ -83,6 +85,7 @@ export as build : define [buildFont para recursive recursiveCodes] : begin
|
|||
b : buildStandardMarkSet markAboveCap markBelowZero markToprightCap markBottomrightZero
|
||||
e : buildStandardMarkSet markAboveLower markBelowZero markToprightLower markBottomrightZero
|
||||
oper : buildStandardMarkSet markAboveOper markBelowOper markToprightLower markBottomrightZero
|
||||
logic : buildStandardMarkSet markAboveLogic markBelowLogic markToprightLower markBottomrightZero
|
||||
plus : buildStandardMarkSet markAbovePlus markBelowPlus markToprightLower markBottomrightZero
|
||||
p : buildStandardMarkSet markAboveLower markBelowLower markToprightLower markBottomrightLower
|
||||
if : buildStandardMarkSet markAboveCap markBelowLower markToprightCap markBottomrightLower
|
||||
|
|
|
@ -354,7 +354,7 @@ export : define [apply] : begin
|
|||
apply-transform : Italify
|
||||
|
||||
define [bracedDottdeDimens width] : begin
|
||||
define sw [adviceBlackness 5]
|
||||
define sw : Math.max (WIDTH * 0.075) [adviceBlackness 5]
|
||||
define dscale : linreg WIDTH 0.55 UPM 0.65 width
|
||||
define pscale : linreg WIDTH 0.6 UPM 0.75 width
|
||||
define l : [Math.max (SB + O * 3) (width / 2 - CAP / 2 * dscale - sw * 2.5)] + OX
|
||||
|
|
|
@ -685,4 +685,31 @@ export : define [apply] : begin
|
|||
define [ForceUpright] : glyph-construction
|
||||
set this.gizmo : Translate 0 0
|
||||
|
||||
return [object queryFeatureSelector select-variant italic-variant alias composite into-unicode turned dual hcombine vdual vcombine fwl fwr dwl dwr dwc Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR HookShape hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright]
|
||||
define [Overlay overlay background] : glyph-construction
|
||||
define sw : [adviceBlackness 6] / 2
|
||||
local candidates {}
|
||||
define segs 3
|
||||
if background.anchors : include {.anchors background.anchors}
|
||||
|
||||
foreach [r : range (0 - segs) till (segs)] : foreach [c : range (0 - segs) till (segs)] : do
|
||||
define dx : r / segs * sw
|
||||
define dy : c / segs * sw
|
||||
candidates.push : glyph-construction
|
||||
if background.anchors : include {.anchors background.anchors}
|
||||
include overlay
|
||||
apply-transform : Translate dx dy
|
||||
|
||||
foreach [c : items-of overlay.contours] : foreach [z : items-of c] : if z.on : do
|
||||
define x z.x
|
||||
define y z.y
|
||||
candidates.push : glyph-construction
|
||||
set this.gizmo : Translate 0 0
|
||||
start-from (x - sw) (y - sw)
|
||||
line-to (x + sw) (y - sw)
|
||||
line-to (x + sw) (y + sw)
|
||||
line-to (x - sw) (y + sw)
|
||||
|
||||
include : difference background [union.apply null candidates]
|
||||
include overlay
|
||||
|
||||
return [object queryFeatureSelector select-variant italic-variant alias composite into-unicode turned dual hcombine vdual vcombine fwl fwr dwl dwr dwc Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR HookShape hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright Overlay]
|
||||
|
|
|
@ -119,6 +119,8 @@ export : define [apply] : begin
|
|||
|
||||
|
||||
define [LambdaShape sw _top] : glyph-construction
|
||||
local cornerdist : HALFSTROKE * HVCONTRAST * [if SLAB 1.2 1]
|
||||
local fine : fallback para.vtipfine : if SLAB 0.9 0.8
|
||||
local TURN (CAP * 0.1)
|
||||
local curviness 0.2
|
||||
local top : fallback _top CAP
|
||||
|
@ -126,18 +128,18 @@ export : define [apply] : begin
|
|||
widths.rhs sw
|
||||
flat SB 0 [heading UPWARD]
|
||||
curl SB TURN [heading UPWARD]
|
||||
quadcontrols 0 curviness
|
||||
g4 (MIDDLE - sw / 2) top [widths 0 (sw * 0.8)]
|
||||
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
|
||||
g4 (MIDDLE + sw / 2) top [widths (sw * 0.8) 0]
|
||||
quadcontrols 0 curviness 9 unimportant
|
||||
g4 (MIDDLE + cornerdist) top [widths (sw * fine) 0]
|
||||
|
||||
start-from (MIDDLE - sw / 2) top
|
||||
line-to (MIDDLE + sw / 2) top
|
||||
line-to MIDDLE (top - sw)
|
||||
start-from (MIDDLE - cornerdist) top
|
||||
line-to (MIDDLE + cornerdist) top
|
||||
line-to MIDDLE (top - sw * fine)
|
||||
|
||||
if SLAB : begin
|
||||
include : CenterBottomSerif (SB + sw / 2 * HVCONTRAST) 0 JUT
|
||||
|
|
|
@ -326,8 +326,7 @@ export : define [apply] : begin
|
|||
define topFW : parenMid + squareRadiusFW
|
||||
define bottomFW : parenMid - squareRadiusFW
|
||||
|
||||
local hollowSW : adviceBlackness 5
|
||||
define [hollowScale w d s] : (w - [fallback s hollowSW] * [fallback d : WIDTH / shapeWidth]) / w
|
||||
define [hollowScale w d s] : (w - [fallback s GEOMETRYSTROKE] * [fallback d : WIDTH / shapeWidth]) / w
|
||||
|
||||
define [hollow newid unicode oldid zx zy cx cy] : sketch
|
||||
local isWide : glyphs.(oldid).advanceWidth > WIDTH
|
||||
|
@ -478,7 +477,7 @@ export : define [apply] : begin
|
|||
|
||||
sketch # whiteparallelogram
|
||||
define skew : squareRadius * 1 / 4
|
||||
define w : hollowSW * (WIDTH / shapeWidth)
|
||||
define w : GEOMETRYSTROKE * (WIDTH / shapeWidth)
|
||||
set-width shapeWidth
|
||||
include : intersection
|
||||
begin glyphs.blackparallelogram
|
||||
|
@ -573,7 +572,7 @@ export : define [apply] : begin
|
|||
save 'blackLonzenge' 0x29EB
|
||||
|
||||
sketch # whiteLonzenge
|
||||
define w : hollowSW * (WIDTH / shapeWidth)
|
||||
define w : GEOMETRYSTROKE * (WIDTH / shapeWidth)
|
||||
set-width shapeWidth
|
||||
include : intersection
|
||||
begin glyphs.blackLonzenge
|
||||
|
@ -597,6 +596,17 @@ export : define [apply] : begin
|
|||
include FullWidthify
|
||||
save 'whiteLonzenge' 0x25CA
|
||||
|
||||
sketch # blackcircle
|
||||
include markset.plus
|
||||
include : spiro-outline
|
||||
g4 MIDDLE (parenMid + squareRadius + O)
|
||||
g4 (left - O) parenMid
|
||||
g4 MIDDLE (parenMid - squareRadius - O)
|
||||
g4 (right + O) parenMid
|
||||
close
|
||||
reverse-last
|
||||
save 'hwblackcircleO'
|
||||
|
||||
sketch # blackcircle
|
||||
include markset.plus
|
||||
include : spiro-outline
|
||||
|
@ -691,8 +701,8 @@ export : define [apply] : begin
|
|||
hollow 'hwsmallwhitecircle' null 'hwsmallblackcircle' [hollowScale (squareRadius * designParameters.geometric_small_x) 1]
|
||||
hollow 'smallwhitesquare' 0x25AB 'smallblacksquare' [hollowScale : squareRadius * designParameters.geometric_small_x]
|
||||
hollow 'hwwhitecircle' null 'hwblackcircle'
|
||||
let [s : hollowScale squareRadius nothing (hollowSW * [Math.sqrt 2])] : begin
|
||||
hollow 'hwwhitediamond' null 'hwblackdiamond' s
|
||||
let [s : hollowScale squareRadius nothing (GEOMETRYSTROKE * [Math.sqrt 2])] : begin
|
||||
hollow 'hwwhitediamond' 0x22C4 'hwblackdiamond' s
|
||||
hollow 'whitediamond' 0x25C7 'blackdiamond' s
|
||||
hollowWithCenter 'whitediamondWithCenter' 0x25C8 'blackdiamond' s
|
||||
let [sts 0.75]
|
||||
|
@ -703,9 +713,9 @@ export : define [apply] : begin
|
|||
resized 'smallblacktriangleleft' 0x25C2 'blacktriangleleft' MIDDLE parenMid 0.75
|
||||
|
||||
let
|
||||
: sl : hollowScale (squareRadius * 2 / [Math.sqrt 3]) nothing (hollowSW * [Math.sqrt 3])
|
||||
: slt : hollowScale (squareRadius * 2 / [Math.sqrt 3]) nothing (hollowSW * [Math.sqrt 3])
|
||||
: ss : hollowScale (squareRadius * sts * 2 / [Math.sqrt 3]) nothing (hollowSW * [Math.sqrt 3])
|
||||
: sl : hollowScale (squareRadius * 2 / [Math.sqrt 3]) nothing (GEOMETRYSTROKE * [Math.sqrt 3])
|
||||
: slt : hollowScale (squareRadius * 2 / [Math.sqrt 3]) nothing (GEOMETRYSTROKE * [Math.sqrt 3])
|
||||
: ss : hollowScale (squareRadius * sts * 2 / [Math.sqrt 3]) nothing (GEOMETRYSTROKE * [Math.sqrt 3])
|
||||
: begin
|
||||
hollow 'whitetriangleup' 0x25B3 'blacktriangleup' sl nothing MIDDLE (parenMid - squareRadius / 3)
|
||||
hollow 'whitetriangledown' 0x25BD 'blacktriangledown' sl nothing MIDDLE (parenMid + squareRadius / 3)
|
||||
|
@ -738,9 +748,9 @@ export : define [apply] : begin
|
|||
# Rounded
|
||||
sketch # roundwhitesquare, U+25A2
|
||||
set-width shapeWidth
|
||||
define cr : squareRadiusFW - hollowSW * 2
|
||||
define cr : squareRadiusFW - GEOMETRYSTROKE * 2
|
||||
include : dispiro
|
||||
widths.lhs hollowSW
|
||||
widths.lhs GEOMETRYSTROKE
|
||||
flat (middleFW + 1) (parenMid + squareRadiusFW) [heading LEFTWARD]
|
||||
curl (middleFW - cr) (parenMid + squareRadiusFW) [heading LEFTWARD]
|
||||
archv
|
||||
|
@ -758,8 +768,8 @@ export : define [apply] : begin
|
|||
save 'roundwhitesquare' 0x25A2
|
||||
# Shaded hollow squares
|
||||
sketch # hshadesquare, U+25A4
|
||||
define lineWidth : Math.min hollowSW ((squareRadiusFW * 2 - hollowSW * 2) * 1 / 11)
|
||||
define top : parenMid + squareRadiusFW - hollowSW + lineWidth / 2
|
||||
define lineWidth : Math.min GEOMETRYSTROKE ((squareRadiusFW * 2 - GEOMETRYSTROKE * 2) * 1 / 11)
|
||||
define top : parenMid + squareRadiusFW - GEOMETRYSTROKE + lineWidth / 2
|
||||
define bot : parenMid - (top - parenMid)
|
||||
set-width shapeWidth
|
||||
include : union
|
||||
|
@ -781,8 +791,8 @@ export : define [apply] : begin
|
|||
curl rightFW [mix top bot 0.75] [heading RIGHTWARD]
|
||||
save 'hshadesquare' 0x25A4
|
||||
sketch # vshadesquare, U+25A5
|
||||
define lineWidth : Math.min hollowSW ((squareRadiusFW * 2 - hollowSW * 2) * 1 / 11)
|
||||
define r : shapeWidth / 2 + squareRadiusFW - hollowSW + lineWidth / 2
|
||||
define lineWidth : Math.min GEOMETRYSTROKE ((squareRadiusFW * 2 - GEOMETRYSTROKE * 2) * 1 / 11)
|
||||
define r : shapeWidth / 2 + squareRadiusFW - GEOMETRYSTROKE + lineWidth / 2
|
||||
define l : shapeWidth / 2 - (r - shapeWidth / 2)
|
||||
set-width shapeWidth
|
||||
include : union
|
||||
|
@ -808,7 +818,7 @@ export : define [apply] : begin
|
|||
include : union glyphs.hshadesquare glyphs.vshadesquare
|
||||
save 'hvshadesquare' 0x25A6
|
||||
sketch # ddiagshadesquare, U+25A7
|
||||
define lineWidth : Math.min hollowSW ((squareRadiusFW * 2 - hollowSW * 2) * 1 / 11)
|
||||
define lineWidth : Math.min GEOMETRYSTROKE ((squareRadiusFW * 2 - GEOMETRYSTROKE * 2) * 1 / 11)
|
||||
define top : parenMid + squareRadiusFW
|
||||
define bot : parenMid - (top - parenMid)
|
||||
set-width shapeWidth
|
||||
|
@ -823,7 +833,7 @@ export : define [apply] : begin
|
|||
curl rightFW [mix top bot (j / 4 + 1)] [heading RIGHTWARD]
|
||||
save 'ddiagshadesquare' 0x25A7
|
||||
sketch # udiagshadesquare, U+25A8
|
||||
define lineWidth : Math.min hollowSW ((squareRadiusFW * 2 - hollowSW * 2) * 1 / 11)
|
||||
define lineWidth : Math.min GEOMETRYSTROKE ((squareRadiusFW * 2 - GEOMETRYSTROKE * 2) * 1 / 11)
|
||||
define top : parenMid + squareRadiusFW
|
||||
define bot : parenMid - (top - parenMid)
|
||||
set-width shapeWidth
|
||||
|
@ -851,7 +861,7 @@ export : define [apply] : begin
|
|||
list 0x25D4 0 0 1 0
|
||||
list 0x25D5 0 1 1 1
|
||||
foreach [{u LT LB RT RB} : items-of quarters] : sketch
|
||||
define r : squareRadiusFW - hollowSW / 2
|
||||
define r : squareRadiusFW - GEOMETRYSTROKE / 2
|
||||
set-width shapeWidth
|
||||
include : union
|
||||
begin glyphs.whitecircle
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -517,28 +517,26 @@ export : define [apply] : begin
|
|||
|
||||
do "Asterisk"
|
||||
local asteriskCenterY : parenTop - LONGJUT * 1.5
|
||||
local asteriskKinds {{1.2 STROKE 'asterisk'} {0.85 STROKE 'smallasterisk'} {1 GEOMETRYSTROKE 'opAsterisk'}}
|
||||
foreach [{size stroke name} : items-of asteriskKinds] : begin
|
||||
sketch
|
||||
local radius : LONGJUT * size
|
||||
local fine : stroke * 0.4
|
||||
local final : 0.5 * [Math.min stroke (radius * Math.PI * 2 / 10)]
|
||||
|
||||
foreach [{size name} : items-of {{1.2 'asterisk.high'} {0.85 'smallasterisk.high'}}] : sketch
|
||||
local radius : LONGJUT * size
|
||||
local fine : STROKE * 0.4
|
||||
local final : 0.5 * [Math.min STROKE (radius * Math.PI * 2 / 10)]
|
||||
foreach j [range 0 5] : begin
|
||||
local s : Math.sin (j / 5 * Math.PI * 2)
|
||||
local c : Math.cos (j / 5 * Math.PI * 2)
|
||||
include : dispiro
|
||||
flat MIDDLE asteriskCenterY [widths fine fine]
|
||||
curl (MIDDLE + radius * s) (asteriskCenterY + radius * c) [widths final final]
|
||||
save (name + '.high')
|
||||
composite (name + '.low') glyphs.(name + '.high')
|
||||
Upright
|
||||
Translate 0 (parenMid - asteriskCenterY)
|
||||
begin markset.plus
|
||||
Italify
|
||||
|
||||
foreach j [range 0 5] : begin
|
||||
local s : Math.sin (j / 5 * Math.PI * 2)
|
||||
local c : Math.cos (j / 5 * Math.PI * 2)
|
||||
include : dispiro
|
||||
flat MIDDLE asteriskCenterY [widths fine fine]
|
||||
curl (MIDDLE + radius * s) (asteriskCenterY + radius * c) [widths final final]
|
||||
save name
|
||||
|
||||
composite 'asterisk.low' glyphs.'asterisk.high'
|
||||
Upright
|
||||
Translate 0 (parenMid - asteriskCenterY)
|
||||
Italify
|
||||
composite 'smallasterisk.low' glyphs.'smallasterisk.high'
|
||||
Upright
|
||||
Translate 0 (parenMid - asteriskCenterY)
|
||||
Italify
|
||||
select-variant 'asterisk' '*'
|
||||
|
||||
do "Slashes and numbersign"
|
||||
|
@ -616,6 +614,10 @@ export : define [apply] : begin
|
|||
set-width WIDTH
|
||||
include : HBarBottom SB RIGHTSB 0
|
||||
save 'underscore.high'
|
||||
sketch # underscore.belowBaseline
|
||||
set-width WIDTH
|
||||
include : HBarTop SB RIGHTSB 0
|
||||
save 'underscore.belowBaseline'
|
||||
|
||||
composite 'underscore.low' glyphs.'underscore.high' [Upright] [Translate 0 (DESCENDER * 0.9)] [Italify]
|
||||
select-variant 'underscore' '_'
|
||||
|
|
|
@ -19,6 +19,8 @@ export : define [calculateMetrics para] : begin
|
|||
define parenBot (parenMid - (CAP - XH) * 2.6)
|
||||
define operTop : mix parenMid parenTop 0.8
|
||||
define operBot : mix parenMid parenBot 0.8
|
||||
define logicTop : mix parenMid operTop 0.75
|
||||
define logicBot : mix parenMid operBot 0.75
|
||||
define plusTop : parenMid + (WIDTH - SB * 2) * 0.55
|
||||
define plusBot : parenMid - (WIDTH - SB * 2) * 0.55
|
||||
define operMid parenMid
|
||||
|
@ -134,6 +136,7 @@ export : define [calculateMetrics para] : begin
|
|||
define MVERTSTROKE : adviceBlackness : fallback para.lllcrowdedness (3 + 1 / 3)
|
||||
define OVERLAYSTROKE : adviceBlackness 3.75
|
||||
define OPERATORSTROKE : adviceBlackness 3.2
|
||||
define GEOMETRYSTROKE : adviceBlackness 4.5
|
||||
define SHOULDERFINE : if para.shoulderfine (STROKE * para.shoulderfine) [adviceBlackness 10]
|
||||
|
||||
define SUPERNESS : fallback para.superness 2
|
||||
|
@ -147,7 +150,7 @@ export : define [calculateMetrics para] : begin
|
|||
|
||||
return [object
|
||||
UPM WIDTH SB CAP XH DESCENDER CONTRAST
|
||||
parenMid parenTop parenBot operTop operBot plusTop plusBot operMid Italify Upright Scale Translate Rotate globalTransform
|
||||
parenMid parenTop parenBot operTop operBot logicTop logicBot plusTop plusBot operMid Italify Upright Scale Translate Rotate globalTransform
|
||||
TANSLANT SINSLANT COSSLANT HVCONTRAST UPWARD DOWNWARD RIGHTWARD LEFTWARD
|
||||
Upward Downward Leftward Rightward
|
||||
O OX OXHOOK HOOK AHOOK SHOOK RHOOK JHOOK FHOOK HOOKX SMOOTH SMALLSMOOTH STROKE DOTSIZE PERIODSIZE
|
||||
|
@ -155,7 +158,7 @@ export : define [calculateMetrics para] : begin
|
|||
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
|
||||
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
||||
WHITENESS adviceBlackness MVERTSTROKE OVERLAYSTROKE OPERATORSTROKE SHOULDERFINE SUPERNESS superxy
|
||||
WHITENESS adviceBlackness MVERTSTROKE OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
||||
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope]
|
||||
|
||||
export : define [setFontMetrics para metrics font] : begin
|
||||
|
|
|
@ -135,7 +135,7 @@ define-macro save : syntax-rules
|
|||
define-macro glyph-module-entry : syntax-rules
|
||||
`[glyph-module-entry @::_opts] : begin
|
||||
define optionalImports : object
|
||||
commonShapes `[define [object queryFeatureSelector select-variant italic-variant alias composite into-unicode turned hcombine vcombine dual vdual fwl fwr dwl dwr dwc Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR HookShape hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright] $capture.commonShapes]
|
||||
commonShapes `[define [object queryFeatureSelector select-variant italic-variant alias composite into-unicode turned hcombine vcombine dual vdual fwl fwr dwl dwr dwc Ring RingAt DotAt CircleRing CircleRingAt CircleDotAt OShape OShapeOutline OBarLeftShape OBarRightShape LeftwardTopSerif LeftwardBottomSerif RightwardTopSerif RightwardBottomSerif CenterTopSerif CenterBottomSerif DownwardRightSerif UpwardRightSerif DownwardLeftSerif UpwardLeftSerif AIVSerifs AIHSerifs AINSerifs AICyrISerifs AIMSerifs halfXStrand xStrand nShoulderKnots nShoulder mShoulderSpiro HBar HBarTop HBarBottom HOverlayBar VBar VBarLeft VBarRight VerticalHook LegShape LeftHook HooktopLeftBar CurlyTail HCurlyTail FlatSlashShape determineMixR HookShape hookstart hookend CyrDescender refair Fork Miniature Thinner Widen FlipAround ScaleAround Realign ForceUpright Overlay] $capture.commonShapes]
|
||||
|
||||
overmarks `[define [object markExtend markHalfStroke markStress markFine markMiddle markDotsRadius aboveMarkTop aboveMarkBot aboveMarkMid belowMarkBot belowMarkTop commaOvershoot commaOvershoot2 commaAboveRadius TildeShape] $capture.overmarks]
|
||||
|
||||
|
@ -153,14 +153,14 @@ define-macro glyph-module-entry : syntax-rules
|
|||
define [object metrics $NamedParameterPair$ $donothing$ para recursive recursiveCodes variantSelector font glyphs glyphList unicodeGlyphs create-glyph $save$ save-glyph spirofns markset MARK BASE AS_BASE ALSO_METRICS pickHash dependencyProfile getDependencyProfile buildFont newtemp tagged TempFont includeGlyphPart compsiteMarkSet] $capture
|
||||
define [object
|
||||
UPM WIDTH SB CAP XH DESCENDER CONTRAST
|
||||
parenMid parenTop parenBot operTop operBot plusTop plusBot operMid Italify Upright Scale Translate Rotate globalTransform
|
||||
parenMid parenTop parenBot operTop operBot logicTop logicBot plusTop plusBot operMid Italify Upright Scale Translate Rotate globalTransform
|
||||
TANSLANT SINSLANT COSSLANT HVCONTRAST UPWARD DOWNWARD RIGHTWARD LEFTWARD Upward Downward Leftward Rightward
|
||||
O OX OXHOOK HOOK AHOOK SHOOK RHOOK JHOOK FHOOK HOOKX SMOOTH SMALLSMOOTH STROKE DOTSIZE PERIODSIZE
|
||||
BARPOS GBARPOS PBARPOS EBARPOS OVERLAYPOS FIVEBARPOS LONGJUT JUT VJUT ACCENT ACCENTX CTHIN CTHINB SLAB
|
||||
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
|
||||
MIDDLE FWMIDDLE CAPMIDDLE CAP_SMOOTH DOTRADIUS PERIODRADIUS SIDEJUT SMOOTHA SMOOTHB SMALLSMOOTHA SMALLSMOOTHB CORRECTION_OMIDX CORRECTION_OMIDS
|
||||
WHITENESS adviceBlackness MVERTSTROKE OVERLAYSTROKE OPERATORSTROKE SHOULDERFINE SUPERNESS superxy
|
||||
WHITENESS adviceBlackness MVERTSTROKE OVERLAYSTROKE OPERATORSTROKE GEOMETRYSTROKE SHOULDERFINE SUPERNESS superxy
|
||||
adviceSSmooth adviceGlottalStopSmooth shoulderMidSlope] metrics
|
||||
define [object
|
||||
g4 g2 corner flat curl close end straight
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue