Spaces:
Running
Running
Move per-hand peak labels into the free outer corners so they no longer cover the fingertip pads
Browse files- ep0/viewer.html +9 -3
- ep1/viewer.html +9 -3
- ep2/viewer.html +9 -3
- ep3/viewer.html +9 -3
- ep4/viewer.html +9 -3
- ep5/viewer.html +9 -3
ep0/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|
ep1/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|
ep2/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|
ep3/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|
ep4/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|
ep5/viewer.html
CHANGED
|
@@ -301,9 +301,15 @@ function drawTactile(i){
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
ctx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
});
|
| 308 |
}
|
| 309 |
|
|
|
|
| 301 |
ctx.fillStyle='#41505f'; ctx.font='6.2px ui-monospace,monospace';
|
| 302 |
for(const n of (hd.lay.notes||[])) ctx.fillText(n.t,n.x,n.y);
|
| 303 |
ctx.restore();
|
| 304 |
+
// 标签画在每只手的外上角(右手食指右侧/左手镜像), 那块是空的, 不占高度也不压指垫
|
| 305 |
+
var isL=(hd.name==='left'), cTop=(HH-BBOX.h*HSC)/2;
|
| 306 |
+
ctx.fillStyle=peak>0?'#e8b866':'#55636f';
|
| 307 |
+
ctx.font='600 9px ui-monospace,monospace';
|
| 308 |
+
ctx.textAlign=isL?'left':'right';
|
| 309 |
+
var lx=ox+(isL?BBOX.x*HSC+2:(BBOX.x+BBOX.w)*HSC-2);
|
| 310 |
+
ctx.fillText(hd.name.toUpperCase(),lx,cTop+10);
|
| 311 |
+
ctx.fillText(peak>0?String(peak):'\u2014',lx,cTop+21);
|
| 312 |
+
ctx.textAlign='left';
|
| 313 |
});
|
| 314 |
}
|
| 315 |
|