mirror of
https://github.com/multipleof4/stain.otf.git
synced 2026-01-13 16:17:55 +00:00
Refactor W/w: Double V construction
This commit is contained in:
@@ -1,58 +1,13 @@
|
||||
const makeGlyph = (opentype, name, unicode, cmds, adv) =>
|
||||
new opentype.Glyph({
|
||||
name,
|
||||
unicode,
|
||||
advanceWidth: adv,
|
||||
path: cmds(new opentype.Path())
|
||||
});
|
||||
|
||||
export const glyphW = (opentype, adv) =>
|
||||
makeGlyph(
|
||||
opentype,
|
||||
"W",
|
||||
"W".codePointAt(0),
|
||||
(p) => {
|
||||
p.moveTo(40, 700);
|
||||
p.lineTo(110, 700);
|
||||
p.lineTo(230, 140);
|
||||
p.lineTo(350, 700);
|
||||
p.lineTo(410, 700);
|
||||
p.lineTo(530, 140);
|
||||
p.lineTo(650, 700);
|
||||
p.lineTo(720, 700);
|
||||
p.lineTo(570, 0);
|
||||
p.lineTo(510, 0);
|
||||
p.lineTo(380, 600);
|
||||
p.lineTo(250, 0);
|
||||
p.lineTo(190, 0);
|
||||
p.close();
|
||||
return p;
|
||||
},
|
||||
760
|
||||
);
|
||||
|
||||
export const glyphw = (opentype, adv) =>
|
||||
makeGlyph(
|
||||
opentype,
|
||||
"w",
|
||||
"w".codePointAt(0),
|
||||
(p) => {
|
||||
p.moveTo(50, 480);
|
||||
p.lineTo(120, 480);
|
||||
p.lineTo(210, 100);
|
||||
p.lineTo(300, 480);
|
||||
p.lineTo(360, 480);
|
||||
p.lineTo(450, 100);
|
||||
p.lineTo(540, 480);
|
||||
p.lineTo(610, 480);
|
||||
p.lineTo(490, 0);
|
||||
p.lineTo(430, 0);
|
||||
p.lineTo(330, 400);
|
||||
p.lineTo(230, 0);
|
||||
p.lineTo(170, 0);
|
||||
p.close();
|
||||
return p;
|
||||
},
|
||||
660
|
||||
);
|
||||
|
||||
const mk=(o,n,u,d,w)=>new o.Glyph({name:n,unicode:u,advanceWidth:w,path:d(new o.Path())});
|
||||
export const glyphW=(o,w)=>mk(o,"W",87,p=>{
|
||||
p.moveTo(20,700);p.lineTo(110,700);p.lineTo(220,200);p.lineTo(330,700);p.lineTo(430,700);
|
||||
p.lineTo(540,200);p.lineTo(650,700);p.lineTo(740,700);p.lineTo(580,0);p.lineTo(490,0);
|
||||
p.lineTo(380,400);p.lineTo(270,0);p.lineTo(180,0);p.close();
|
||||
return p;
|
||||
},760);
|
||||
export const glyphw=(o,w)=>mk(o,"w",119,p=>{
|
||||
p.moveTo(20,480);p.lineTo(100,480);p.lineTo(190,140);p.lineTo(280,480);p.lineTo(380,480);
|
||||
p.lineTo(470,140);p.lineTo(560,480);p.lineTo(640,480);p.lineTo(510,0);p.lineTo(430,0);
|
||||
p.lineTo(330,300);p.lineTo(230,0);p.lineTo(150,0);p.close();
|
||||
return p;
|
||||
},660);
|
||||
|
||||
Reference in New Issue
Block a user