consolidate with ptl0.30.0 constants
This commit is contained in:
parent
d4f6c44f34
commit
791b2e4491
|
@ -395,7 +395,7 @@ export as build : define [buildFont para recursive recursiveCodes] : begin
|
|||
if (pickHash && [not pickHash.(name)]) : return nothing
|
||||
|
||||
if para.verbose : console.log name
|
||||
define glyphObject [new Glyph name]
|
||||
local glyphObject [new Glyph name]
|
||||
glyphList.push glyphObject
|
||||
glyphs.(name) = glyphObject
|
||||
glyphObject.set-width WIDTH
|
||||
|
|
|
@ -128,8 +128,8 @@ define customDecompositions : object
|
|||
let : begin
|
||||
suggestGC
|
||||
define [isAboveMark mark] : mark && mark.anchors && mark.anchors.above && mark.anchors.above.type === MARK
|
||||
define iotaBelowToLF : function [p] : if (p === glyphs.iotaBelow) glyphs.iotaLF p
|
||||
define ogonekBelowToTR : function [p] : if (p === glyphs.ogonekBelow) glyphs.ogonekTR p
|
||||
define [iotaBelowToLF p j parts] : if (p === glyphs.iotaBelow) : set parts.(j) glyphs.iotaLF
|
||||
define [ogonekBelowToTR p j parts] : if (p === glyphs.ogonekBelow) : set parts.(j) glyphs.ogonekTR
|
||||
define [subParts parts] : begin
|
||||
local hasMarkAbove false
|
||||
foreach p [items-of parts] : if [isAboveMark p] : set hasMarkAbove true
|
||||
|
@ -139,8 +139,8 @@ let : begin
|
|||
if (parts.0 === glyphs.j && hasMarkAbove) : parts.0 = glyphs.dotlessj
|
||||
|
||||
# replace below marks with trailing marks
|
||||
if parts.0.anchors.lf : set parts : parts.map iotaBelowToLF
|
||||
if parts.0.anchors.trailing : set parts : parts.map ogonekBelowToTR
|
||||
if parts.0.anchors.lf : parts.forEach iotaBelowToLF
|
||||
if parts.0.anchors.trailing : parts.forEach ogonekBelowToTR
|
||||
|
||||
# composite greek overmarks
|
||||
for [local j 0] (j < parts.length) [inc j] : piecewise
|
||||
|
@ -162,7 +162,8 @@ let : begin
|
|||
set parts.(j) null; set parts.(j + 1) glyphs.dasiaperispomeni
|
||||
return parts
|
||||
|
||||
define [pad s n] : begin
|
||||
define [pad _s n] : begin
|
||||
local s _s
|
||||
while (s.length < n) : s = '0' + s
|
||||
return s
|
||||
local nComposed 0
|
||||
|
@ -233,7 +234,8 @@ let : begin
|
|||
suggestGC
|
||||
|
||||
|
||||
define [suggestName name] : begin
|
||||
define [suggestName _name] : begin
|
||||
local name _name
|
||||
if glyphs.(name) : begin
|
||||
local j 2
|
||||
while glyphs.(name + j) : inc j
|
||||
|
@ -816,7 +818,8 @@ symbol-block 'CJK Double Width Characters'
|
|||
if [not recursive] : begin
|
||||
if [not para.cjk] : begin
|
||||
set font.glyf : font.glyf.filter [lambda [g] : g.advanceWidth <= WIDTH]
|
||||
set glyphList font.glyf
|
||||
set glyphList.length font.glyf.length
|
||||
for [local j 0] (j < font.glyf.length) [inc j] : set glyphList.(j) font.glyf.(j)
|
||||
|
||||
set font.features.cv {.}
|
||||
foreach [name : items-of : Object.keys glyphs] : begin
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"version": "1.8.2",
|
||||
"main": "./generate.js",
|
||||
"dependencies": {
|
||||
"patel": ">=0.29.0",
|
||||
"patel": ">=0.30.0",
|
||||
"node-sfnt": ">=0.0.20",
|
||||
"bezier-js": "*",
|
||||
"yargs": "*",
|
||||
|
|
|
@ -6,11 +6,14 @@ import './transform' as : Transform && [object [transformPoint tp] [untransform
|
|||
import './anchor' as Anchor
|
||||
|
||||
define-macro xytransform : syntax-rules
|
||||
`[xytransform @tfm @x @y] : let [t : env.newt] `[begin \\
|
||||
set @t @x
|
||||
set @x : @x * @tfm.xx + @y * @tfm.yx + @tfm.x
|
||||
set @y : @t * @tfm.xy + @y * @tfm.yy + @tfm.y
|
||||
]
|
||||
`[xytransform @tfm @x @y] : begin
|
||||
set [env.declarations.get [formOf x]].isParameter 0
|
||||
set [env.declarations.get [formOf y]].isParameter 0
|
||||
let [t : env.newt] `[begin \\
|
||||
set @t @x
|
||||
set @x : @x * @tfm.xx + @y * @tfm.yx + @tfm.x
|
||||
set @y : @t * @tfm.xy + @y * @tfm.yy + @tfm.y
|
||||
]
|
||||
|
||||
define [mix a b p] : a + (b - a) * p
|
||||
define [ratio l r m] : if [l === r] 0 ((m - l) / (r - l))
|
||||
|
|
|
@ -5,11 +5,14 @@ define [fallback] : for [local j 0] (j < arguments.length) [inc j] : if (argumen
|
|||
define [linreg x0 y0 x1 y1 x] : y0 + (x - x0) * (y1 - y0) / (x1 - x0)
|
||||
|
||||
define-macro xytransform : syntax-rules
|
||||
`[xytransform @tfm @x @y] : let [t : env.newt] `[begin \\
|
||||
set @t @x
|
||||
set @x : @x * @tfm.xx + @y * @tfm.yx + @tfm.x
|
||||
set @y : @t * @tfm.xy + @y * @tfm.yy + @tfm.y
|
||||
]
|
||||
`[xytransform @tfm @x @y] : begin
|
||||
set [env.declarations.get [formOf x]].isParameter 0
|
||||
set [env.declarations.get [formOf y]].isParameter 0
|
||||
let [t : env.newt] `[begin \\
|
||||
set @t @x
|
||||
set @x : @x * @tfm.xx + @y * @tfm.yx + @tfm.x
|
||||
set @y : @t * @tfm.xy + @y * @tfm.yy + @tfm.y
|
||||
]
|
||||
|
||||
define [normalY angle] : Math.sin angle
|
||||
define [normalX angle vex] : [Math.cos angle] * vex
|
||||
|
|
|
@ -121,9 +121,10 @@ export : define [SetupBuilders args] : begin
|
|||
(p <@ Array) : set a : a.concat [flatten p]
|
||||
true : a.push p
|
||||
return a
|
||||
define [prepareSpiroKnots knots s] : begin
|
||||
define [prepareSpiroKnots _knots s] : begin
|
||||
local closed false
|
||||
local lastafs {}
|
||||
local knots _knots
|
||||
while (knots.0 && knots.0 <@ Function) : begin
|
||||
knots.0.call s
|
||||
set knots : knots.slice 1
|
||||
|
|
Loading…
Reference in New Issue
Block a user