@sudobility/music_drawing 0.0.6 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/canvas-renderer.d.ts +9 -1
- package/dist/canvas-renderer.d.ts.map +1 -1
- package/dist/canvas-renderer.js +69 -26
- package/dist/canvas-renderer.js.map +1 -1
- package/dist/drawing-context.d.ts +109 -0
- package/dist/drawing-context.d.ts.map +1 -0
- package/dist/drawing-context.js +23 -0
- package/dist/drawing-context.js.map +1 -0
- package/dist/icon-canvas.d.ts +2 -1
- package/dist/icon-canvas.d.ts.map +1 -1
- package/dist/icon-canvas.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +2 -1
- package/dist/layout.js.map +1 -1
- package/dist/measure-content.d.ts.map +1 -1
- package/dist/measure-content.js.map +1 -1
- package/dist/skia/css-font.d.ts +24 -0
- package/dist/skia/css-font.d.ts.map +1 -0
- package/dist/skia/css-font.js +100 -0
- package/dist/skia/css-font.js.map +1 -0
- package/dist/skia/index.d.ts +17 -0
- package/dist/skia/index.d.ts.map +1 -0
- package/dist/skia/index.js +14 -0
- package/dist/skia/index.js.map +1 -0
- package/dist/skia/skia-api.d.ts +133 -0
- package/dist/skia/skia-api.d.ts.map +1 -0
- package/dist/skia/skia-api.js +28 -0
- package/dist/skia/skia-api.js.map +1 -0
- package/dist/skia/skia-context.d.ts +58 -0
- package/dist/skia/skia-context.d.ts.map +1 -0
- package/dist/skia/skia-context.js +394 -0
- package/dist/skia/skia-context.js.map +1 -0
- package/dist/test/canvas-stub.d.ts +5 -5
- package/dist/test/canvas-stub.d.ts.map +1 -1
- package/dist/test/canvas-stub.js +3 -4
- package/dist/test/canvas-stub.js.map +1 -1
- package/dist/test/fake-skia.d.ts +81 -0
- package/dist/test/fake-skia.d.ts.map +1 -0
- package/dist/test/fake-skia.js +228 -0
- package/dist/test/fake-skia.js.map +1 -0
- package/dist/test/index.d.ts +18 -0
- package/dist/test/index.d.ts.map +1 -0
- package/dist/test/index.js +16 -0
- package/dist/test/index.js.map +1 -0
- package/dist/types.d.ts +49 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +48 -1
- package/dist/types.js.map +1 -1
- package/package.json +16 -6
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Score } from '@sudobility/music_types';
|
|
2
2
|
import type { LayoutPlan } from './layout.js';
|
|
3
3
|
import type { BBox, RenderOptions, RenderTheme } from './types.js';
|
|
4
|
+
import type { DrawingContext2D } from './drawing-context.js';
|
|
4
5
|
/**
|
|
5
6
|
* Logical (unscaled) content-coordinate window to draw: typically
|
|
6
7
|
* `scrollTop/zoom` .. `(scrollTop+clientHeight)/zoom`. `left`/`right`
|
|
@@ -90,7 +91,7 @@ export declare class CanvasScoreRenderer {
|
|
|
90
91
|
private columnFor;
|
|
91
92
|
/** Trims the column cache back to twice what the frame just drew, oldest first. */
|
|
92
93
|
private evictColumns;
|
|
93
|
-
render(score: Score, ctx:
|
|
94
|
+
render(score: Score, ctx: DrawingContext2D, options: CanvasRenderOptions): CanvasRenderResult;
|
|
94
95
|
/**
|
|
95
96
|
* Assembles the drawn window out of measure columns, building only the ones
|
|
96
97
|
* the cache does not already hold.
|
|
@@ -154,6 +155,13 @@ export declare class CanvasScoreRenderer {
|
|
|
154
155
|
private notesDimmed;
|
|
155
156
|
/** The unstyled-note color for a track, which its beams and ties follow. */
|
|
156
157
|
private trackColor;
|
|
158
|
+
private isPrint;
|
|
159
|
+
/** Paper renders use real print ink, independent of the screen foreground. */
|
|
160
|
+
private inkColor;
|
|
161
|
+
private noteColorFor;
|
|
162
|
+
private staveColor;
|
|
163
|
+
private trackLabelColor;
|
|
164
|
+
private measureSelectionColor;
|
|
157
165
|
/** Records `note`'s box against every event it represents; false if it has none yet. */
|
|
158
166
|
private recordEventBBox;
|
|
159
167
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAoBrD,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAoBrD,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;AAG5D,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,sBAAsB,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,QAAQ,EAAE,cAAc,CAAC;IACzB,2IAA2I;IAC3I,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,sHAAsH;IACtH,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B,yHAAyH;IACzH,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,mEAAmE;IACnE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAwIF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAM9D;AA2ED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,KAAK,CAKG;IAChB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,WAAW,CAA2B;IAC9C;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAA4B;IAC1C,qGAAqG;IACrG,OAAO,CAAC,aAAa,CAAoC;IAEzD,OAAO,CAAC,OAAO;IAcf;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAqBjB,mFAAmF;IACnF,OAAO,CAAC,YAAY;IAapB,MAAM,CACJ,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,mBAAmB,GAC3B,kBAAkB;IAkIrB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAgFnB;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAmClB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,mBAAmB;IA+G3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,SAAS;IAqBjB,0EAA0E;IAC1E,OAAO,CAAC,qBAAqB;IAe7B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAQnB,4EAA4E;IAC5E,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,OAAO;IAIf,8EAA8E;IAC9E,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,qBAAqB;IAI7B,wFAAwF;IACxF,OAAO,CAAC,eAAe;IA0BvB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAuC7B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,WAAW;IAyGnB;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAsJnB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,qBAAqB;IAsC7B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,iBAAiB;IA8CzB,OAAO,IAAI,IAAI;CAOhB"}
|
package/dist/canvas-renderer.js
CHANGED
|
@@ -21,6 +21,7 @@ import { strokeInstrumentIcon } from './icon-canvas.js';
|
|
|
21
21
|
import { buildMeasureContent, buildGlissandos, buildHairpins, buildOttavas, buildSlurs, buildTies, } from './measure-content.js';
|
|
22
22
|
import { MEASURE_HEADER_HEIGHT, STAVE_HEIGHT, STAVE_TOP_LINE_OFFSET, TRACK_INFO_WIDTH, computeLayout, measureLayoutAt, resolveZoom, systemsInRange, } from './layout.js';
|
|
23
23
|
import { barNumberAt } from '@sudobility/music_types';
|
|
24
|
+
import { PRINT_INK, renderModeFor, shouldShowTrackInfo } from './types.js';
|
|
24
25
|
/** Width kept free at the end of each measure's note area so the final glyph never crosses the barline — see the joint-format comment in `drawSystem`. */
|
|
25
26
|
const BARLINE_CLEARANCE = 12;
|
|
26
27
|
/** Measure-number type, and where it sits inside the gutter band. */
|
|
@@ -99,7 +100,7 @@ function planKey(options) {
|
|
|
99
100
|
options.zoom,
|
|
100
101
|
options.layoutMode,
|
|
101
102
|
options.width,
|
|
102
|
-
options
|
|
103
|
+
shouldShowTrackInfo(options),
|
|
103
104
|
(options.trackIds ?? []).join(SEP),
|
|
104
105
|
].join(SEP);
|
|
105
106
|
}
|
|
@@ -225,8 +226,9 @@ export class CanvasScoreRenderer {
|
|
|
225
226
|
// `+ 0` normalizes -0 (from a zero scroll offset) to 0.
|
|
226
227
|
ctx.setTransform(z * dpr, 0, 0, z * dpr, -viewportLeft * z * dpr + 0, -options.viewport.top * z * dpr + 0);
|
|
227
228
|
const vexCtx = new CanvasContext(ctx);
|
|
228
|
-
|
|
229
|
-
vexCtx.
|
|
229
|
+
const ink = this.inkColor(options);
|
|
230
|
+
vexCtx.setFillStyle(ink);
|
|
231
|
+
vexCtx.setStrokeStyle(ink);
|
|
230
232
|
const visibleSystems = systemsInRange(plan, options.viewport.top, options.viewport.bottom);
|
|
231
233
|
// Everything the drawn window depends on, and nothing colour does. A
|
|
232
234
|
// repaint driven by a note starting or a selection moving produces the same
|
|
@@ -281,7 +283,7 @@ export class CanvasScoreRenderer {
|
|
|
281
283
|
this.collectColumnBBoxes(column, z, drawnStaves, drawnTrackIds, idToBBox);
|
|
282
284
|
// Last, so it overlays any content that scrolled underneath it — and not
|
|
283
285
|
// at all for print, where there is nothing to click.
|
|
284
|
-
if (options
|
|
286
|
+
if (shouldShowTrackInfo(options)) {
|
|
285
287
|
this.drawTrackInfoGutter(plan, ctx, z, dpr, visibleSystems, options);
|
|
286
288
|
}
|
|
287
289
|
return {
|
|
@@ -449,10 +451,7 @@ export class CanvasScoreRenderer {
|
|
|
449
451
|
if (rowBottom < top || rowTop > bottom)
|
|
450
452
|
continue;
|
|
451
453
|
const track = trackLayout.track;
|
|
452
|
-
|
|
453
|
-
ctx.fillStyle = isActive
|
|
454
|
-
? options.theme.staveActive
|
|
455
|
-
: options.theme.staveInactive;
|
|
454
|
+
ctx.fillStyle = this.trackLabelColor(track.id, options);
|
|
456
455
|
// The instrument row is aligned to the stave's **top line** — the
|
|
457
456
|
// first thing the reader's eye lands on — rather than to the top of the
|
|
458
457
|
// track's box, which is headroom VexFlow reserves and nothing is drawn
|
|
@@ -506,8 +505,10 @@ export class CanvasScoreRenderer {
|
|
|
506
505
|
* — see `noteEmphasisFor`, including why this is not a shadow.
|
|
507
506
|
*/
|
|
508
507
|
styleNote(note, meta, dimmed, options) {
|
|
509
|
-
const role =
|
|
510
|
-
|
|
508
|
+
const role = this.isPrint(options)
|
|
509
|
+
? 'normal'
|
|
510
|
+
: resolveNoteColorRole(meta.eventIds, options.noteColors);
|
|
511
|
+
const color = this.noteColorFor(role, dimmed, options);
|
|
511
512
|
const lineWidth = noteEmphasisFor(role).lineWidth;
|
|
512
513
|
const key = [color, lineWidth].join(SEP);
|
|
513
514
|
if (this.noteStyleKeys.get(note) === key)
|
|
@@ -536,7 +537,9 @@ export class CanvasScoreRenderer {
|
|
|
536
537
|
* is active, so every stave draws in `staveInactive` — the neutral state.
|
|
537
538
|
*/
|
|
538
539
|
isActiveTrack(trackId, options) {
|
|
539
|
-
return options
|
|
540
|
+
return (!this.isPrint(options) &&
|
|
541
|
+
options.activeTrackId != null &&
|
|
542
|
+
trackId === options.activeTrackId);
|
|
540
543
|
}
|
|
541
544
|
/**
|
|
542
545
|
* Whether a track's notes should dim.
|
|
@@ -548,12 +551,45 @@ export class CanvasScoreRenderer {
|
|
|
548
551
|
* grey would just look washed out.
|
|
549
552
|
*/
|
|
550
553
|
notesDimmed(trackId, options) {
|
|
551
|
-
return options
|
|
554
|
+
return (!this.isPrint(options) &&
|
|
555
|
+
options.activeTrackId != null &&
|
|
556
|
+
trackId !== options.activeTrackId);
|
|
552
557
|
}
|
|
553
558
|
/** The unstyled-note color for a track, which its beams and ties follow. */
|
|
554
559
|
trackColor(dimmed, options) {
|
|
560
|
+
if (this.isPrint(options))
|
|
561
|
+
return this.inkColor(options);
|
|
555
562
|
return dimmed ? options.theme.noteInactive : options.theme.noteNormal;
|
|
556
563
|
}
|
|
564
|
+
isPrint(options) {
|
|
565
|
+
return renderModeFor(options) === 'print';
|
|
566
|
+
}
|
|
567
|
+
/** Paper renders use real print ink, independent of the screen foreground. */
|
|
568
|
+
inkColor(options) {
|
|
569
|
+
return this.isPrint(options)
|
|
570
|
+
? (options.theme.printForeground ?? PRINT_INK)
|
|
571
|
+
: options.theme.foreground;
|
|
572
|
+
}
|
|
573
|
+
noteColorFor(role, dimmed, options) {
|
|
574
|
+
return this.isPrint(options)
|
|
575
|
+
? this.inkColor(options)
|
|
576
|
+
: noteColorFor(role, options.theme, !dimmed);
|
|
577
|
+
}
|
|
578
|
+
staveColor(trackId, options) {
|
|
579
|
+
if (this.isPrint(options))
|
|
580
|
+
return this.inkColor(options);
|
|
581
|
+
return this.isActiveTrack(trackId, options)
|
|
582
|
+
? options.theme.staveActive
|
|
583
|
+
: options.theme.staveInactive;
|
|
584
|
+
}
|
|
585
|
+
trackLabelColor(trackId, options) {
|
|
586
|
+
return this.isPrint(options)
|
|
587
|
+
? this.inkColor(options)
|
|
588
|
+
: this.staveColor(trackId, options);
|
|
589
|
+
}
|
|
590
|
+
measureSelectionColor(options) {
|
|
591
|
+
return options.theme.measureSelection ?? options.theme.noteSelected;
|
|
592
|
+
}
|
|
557
593
|
/** Records `note`'s box against every event it represents; false if it has none yet. */
|
|
558
594
|
recordEventBBox(note, meta, z, idToBBox) {
|
|
559
595
|
let box = null;
|
|
@@ -690,7 +726,7 @@ export class CanvasScoreRenderer {
|
|
|
690
726
|
column.tuplets.push({ tuplet, trackId: track.id });
|
|
691
727
|
if (multiMeasureRest) {
|
|
692
728
|
multiMeasureRest.setStave(stave);
|
|
693
|
-
column.rests.push(multiMeasureRest);
|
|
729
|
+
column.rests.push({ rest: multiMeasureRest, trackId: track.id });
|
|
694
730
|
}
|
|
695
731
|
if (voices.length > 0) {
|
|
696
732
|
voices.forEach(v => v.setStave(stave));
|
|
@@ -814,23 +850,24 @@ export class CanvasScoreRenderer {
|
|
|
814
850
|
this.styleColumnTrackNotes(column, trackId, options);
|
|
815
851
|
const dimmed = this.notesDimmed(trackId, options);
|
|
816
852
|
stave.setStyle({
|
|
817
|
-
strokeStyle: this.
|
|
818
|
-
? options.theme.staveActive
|
|
819
|
-
: options.theme.staveInactive,
|
|
853
|
+
strokeStyle: this.staveColor(trackId, options),
|
|
820
854
|
});
|
|
821
855
|
// Re-bound every frame: a cached stave holds the previous frame's
|
|
822
856
|
// context, and `CanvasContext` is rebuilt per render.
|
|
823
857
|
stave.setContext(vexCtx);
|
|
824
|
-
const color =
|
|
825
|
-
? options
|
|
826
|
-
:
|
|
858
|
+
const color = this.isPrint(options)
|
|
859
|
+
? this.inkColor(options)
|
|
860
|
+
: dimmed
|
|
861
|
+
? options.theme.noteInactive
|
|
862
|
+
: options.theme.foreground;
|
|
827
863
|
vexCtx.setFillStyle(color);
|
|
828
864
|
vexCtx.setStrokeStyle(color);
|
|
829
865
|
stave.draw();
|
|
830
866
|
}
|
|
831
867
|
}
|
|
832
|
-
|
|
833
|
-
vexCtx.
|
|
868
|
+
const ink = this.inkColor(options);
|
|
869
|
+
vexCtx.setFillStyle(ink);
|
|
870
|
+
vexCtx.setStrokeStyle(ink);
|
|
834
871
|
for (const column of columns) {
|
|
835
872
|
for (const voice of column.voices) {
|
|
836
873
|
const stave = voice.getStave();
|
|
@@ -841,13 +878,18 @@ export class CanvasScoreRenderer {
|
|
|
841
878
|
}
|
|
842
879
|
// After the formatter has run, so the stave's final geometry is settled.
|
|
843
880
|
for (const column of columns) {
|
|
844
|
-
for (const rest of column.rests) {
|
|
881
|
+
for (const { rest, trackId } of column.rests) {
|
|
845
882
|
const stave = rest.getStave?.();
|
|
846
883
|
if (stave && !visibleStaves.has(stave))
|
|
847
884
|
continue;
|
|
885
|
+
const color = this.trackColor(this.notesDimmed(trackId, options), options);
|
|
886
|
+
vexCtx.setFillStyle(color);
|
|
887
|
+
vexCtx.setStrokeStyle(color);
|
|
848
888
|
rest.setContext(vexCtx).draw();
|
|
849
889
|
}
|
|
850
890
|
}
|
|
891
|
+
vexCtx.setFillStyle(ink);
|
|
892
|
+
vexCtx.setStrokeStyle(ink);
|
|
851
893
|
for (const column of columns) {
|
|
852
894
|
for (const { beam, trackId } of column.beams) {
|
|
853
895
|
const stave = beam.getNotes()[0]?.getStave();
|
|
@@ -911,7 +953,7 @@ export class CanvasScoreRenderer {
|
|
|
911
953
|
*/
|
|
912
954
|
paintSelectedMeasures(system, plan, ctx, windowIndices, options) {
|
|
913
955
|
const selected = options.selectedMeasureIds;
|
|
914
|
-
if (!selected || selected.size === 0)
|
|
956
|
+
if (this.isPrint(options) || !selected || selected.size === 0)
|
|
915
957
|
return;
|
|
916
958
|
const trackLayout = plan.trackLayouts[0];
|
|
917
959
|
const track = plan.tracks[0];
|
|
@@ -923,7 +965,7 @@ export class CanvasScoreRenderer {
|
|
|
923
965
|
const bottom = Math.min(system.yBottom, options.viewport.bottom);
|
|
924
966
|
if (bottom <= top)
|
|
925
967
|
return;
|
|
926
|
-
ctx.fillStyle = options
|
|
968
|
+
ctx.fillStyle = this.measureSelectionColor(options);
|
|
927
969
|
ctx.globalAlpha = MEASURE_SELECTION_ALPHA;
|
|
928
970
|
for (const measureIndex of windowIndices) {
|
|
929
971
|
const measure = track.measures[measureIndex];
|
|
@@ -970,10 +1012,11 @@ export class CanvasScoreRenderer {
|
|
|
970
1012
|
if (!placement || !measure)
|
|
971
1013
|
continue;
|
|
972
1014
|
const box = placement.box;
|
|
973
|
-
const selected =
|
|
1015
|
+
const selected = !this.isPrint(options) &&
|
|
1016
|
+
(options.selectedMeasureIds?.has(measure.id) ?? false);
|
|
974
1017
|
ctx.fillStyle = selected
|
|
975
1018
|
? options.theme.noteSelected
|
|
976
|
-
: options
|
|
1019
|
+
: this.inkColor(options);
|
|
977
1020
|
ctx.font = selected ? GUTTER_FONT_SELECTED : GUTTER_FONT;
|
|
978
1021
|
/*
|
|
979
1022
|
Not `index + 1`: a pickup is not counted, so the bar after one is bar
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The surface this package draws onto.
|
|
3
|
+
*
|
|
4
|
+
* `DrawingContext2D` is the canvas 2D API narrowed to what actually gets
|
|
5
|
+
* called — by `canvas-renderer.ts` and `icon-canvas.ts` directly, and by
|
|
6
|
+
* VexFlow's `CanvasContext` underneath them. It is declared here, structurally,
|
|
7
|
+
* rather than imported from the DOM, and that one move is what makes the
|
|
8
|
+
* package portable: a browser context, a Skia canvas behind
|
|
9
|
+
* `music_drawing/skia`, and the recording double in `test/canvas-stub.ts` are
|
|
10
|
+
* all the same thing to the renderer.
|
|
11
|
+
*
|
|
12
|
+
* **A browser `CanvasRenderingContext2D` satisfies this as-is.** Existing web
|
|
13
|
+
* callers pass `canvas.getContext('2d')!` and compile unchanged; that
|
|
14
|
+
* compatibility is the reason for the widened property types below, and
|
|
15
|
+
* `drawing-context.test.ts` pins it.
|
|
16
|
+
*
|
|
17
|
+
* Naming `CanvasRenderingContext2D` here instead would put it in the emitted
|
|
18
|
+
* `.d.ts` and force every consumer to enable TypeScript's `DOM` lib — a React
|
|
19
|
+
* Native app included. `__architecture.test.ts` forbids it, and the build
|
|
20
|
+
* enforces it too: `tsconfig.json` does not include `DOM`.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* What `measureText` returns.
|
|
24
|
+
*
|
|
25
|
+
* Only `width` is guaranteed. The ascent fields are how `capHeightOf` puts the
|
|
26
|
+
* top of a capital on a stave line instead of guessing from the font size, and
|
|
27
|
+
* they are optional because not every host reports them — the caller falls back
|
|
28
|
+
* to a ratio of the font size when they are missing or zero.
|
|
29
|
+
*/
|
|
30
|
+
export type TextMetricsLike = {
|
|
31
|
+
readonly width: number;
|
|
32
|
+
readonly actualBoundingBoxAscent?: number;
|
|
33
|
+
readonly actualBoundingBoxDescent?: number;
|
|
34
|
+
readonly fontBoundingBoxAscent?: number;
|
|
35
|
+
readonly fontBoundingBoxDescent?: number;
|
|
36
|
+
};
|
|
37
|
+
/** An affine transform, in the six-number form canvas uses. `DOMMatrix` satisfies it. */
|
|
38
|
+
export type TransformLike = {
|
|
39
|
+
readonly a: number;
|
|
40
|
+
readonly b: number;
|
|
41
|
+
readonly c: number;
|
|
42
|
+
readonly d: number;
|
|
43
|
+
readonly e: number;
|
|
44
|
+
readonly f: number;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* The backing store's pixel dimensions, read to clear it before a frame.
|
|
48
|
+
*
|
|
49
|
+
* These are device pixels, not CSS pixels: the caller sizes the surface to
|
|
50
|
+
* `cssSize × devicePixelRatio` and passes the same ratio in `RenderOptions`.
|
|
51
|
+
*/
|
|
52
|
+
export type DrawingSurface = {
|
|
53
|
+
readonly width: number;
|
|
54
|
+
readonly height: number;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* A 2D drawing context.
|
|
58
|
+
*
|
|
59
|
+
* The property types are deliberately wider than the DOM's in two places, so
|
|
60
|
+
* that a real `CanvasRenderingContext2D` remains assignable:
|
|
61
|
+
*
|
|
62
|
+
* - `fillStyle`/`strokeStyle` are `string | object` because the DOM's are
|
|
63
|
+
* `string | CanvasGradient | CanvasPattern`. This package only ever assigns
|
|
64
|
+
* colour strings; the `object` arm exists purely to let a browser context
|
|
65
|
+
* through, and an adapter is free to declare its own as plain `string`.
|
|
66
|
+
* - `lineCap`/`lineJoin` are `string` to accept the DOM's `CanvasLineCap` and
|
|
67
|
+
* `CanvasLineJoin` unions.
|
|
68
|
+
*
|
|
69
|
+
* Everything optional is something VexFlow may touch but this package never
|
|
70
|
+
* asks for, so a host can skip it. Everything required is genuinely used on the
|
|
71
|
+
* drawing path.
|
|
72
|
+
*/
|
|
73
|
+
export type DrawingContext2D = {
|
|
74
|
+
readonly canvas: DrawingSurface;
|
|
75
|
+
fillStyle: string | object;
|
|
76
|
+
strokeStyle: string | object;
|
|
77
|
+
lineWidth: number;
|
|
78
|
+
lineCap: string;
|
|
79
|
+
lineJoin: string;
|
|
80
|
+
font: string;
|
|
81
|
+
globalAlpha: number;
|
|
82
|
+
/** Set by VexFlow when a caller asks for shadows; unused by this package. */
|
|
83
|
+
shadowBlur?: number;
|
|
84
|
+
/** Set by VexFlow when a caller asks for shadows; unused by this package. */
|
|
85
|
+
shadowColor?: string;
|
|
86
|
+
save(): void;
|
|
87
|
+
restore(): void;
|
|
88
|
+
beginPath(): void;
|
|
89
|
+
closePath(): void;
|
|
90
|
+
moveTo(x: number, y: number): void;
|
|
91
|
+
lineTo(x: number, y: number): void;
|
|
92
|
+
bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
|
|
93
|
+
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
|
|
94
|
+
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
|
|
95
|
+
rect(x: number, y: number, width: number, height: number): void;
|
|
96
|
+
fill(): void;
|
|
97
|
+
stroke(): void;
|
|
98
|
+
fillRect(x: number, y: number, width: number, height: number): void;
|
|
99
|
+
clearRect(x: number, y: number, width: number, height: number): void;
|
|
100
|
+
fillText(text: string, x: number, y: number, maxWidth?: number): void;
|
|
101
|
+
measureText(text: string): TextMetricsLike;
|
|
102
|
+
translate(x: number, y: number): void;
|
|
103
|
+
scale(x: number, y: number): void;
|
|
104
|
+
/** Absolute: replaces the current transform rather than composing with it. */
|
|
105
|
+
setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
|
106
|
+
getTransform(): TransformLike;
|
|
107
|
+
setLineDash(segments: number[]): void;
|
|
108
|
+
};
|
|
109
|
+
//# sourceMappingURL=drawing-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawing-context.d.ts","sourceRoot":"","sources":["../src/drawing-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The surface this package draws onto.
|
|
3
|
+
*
|
|
4
|
+
* `DrawingContext2D` is the canvas 2D API narrowed to what actually gets
|
|
5
|
+
* called — by `canvas-renderer.ts` and `icon-canvas.ts` directly, and by
|
|
6
|
+
* VexFlow's `CanvasContext` underneath them. It is declared here, structurally,
|
|
7
|
+
* rather than imported from the DOM, and that one move is what makes the
|
|
8
|
+
* package portable: a browser context, a Skia canvas behind
|
|
9
|
+
* `music_drawing/skia`, and the recording double in `test/canvas-stub.ts` are
|
|
10
|
+
* all the same thing to the renderer.
|
|
11
|
+
*
|
|
12
|
+
* **A browser `CanvasRenderingContext2D` satisfies this as-is.** Existing web
|
|
13
|
+
* callers pass `canvas.getContext('2d')!` and compile unchanged; that
|
|
14
|
+
* compatibility is the reason for the widened property types below, and
|
|
15
|
+
* `drawing-context.test.ts` pins it.
|
|
16
|
+
*
|
|
17
|
+
* Naming `CanvasRenderingContext2D` here instead would put it in the emitted
|
|
18
|
+
* `.d.ts` and force every consumer to enable TypeScript's `DOM` lib — a React
|
|
19
|
+
* Native app included. `__architecture.test.ts` forbids it, and the build
|
|
20
|
+
* enforces it too: `tsconfig.json` does not include `DOM`.
|
|
21
|
+
*/
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=drawing-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawing-context.js","sourceRoot":"","sources":["../src/drawing-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG"}
|
package/dist/icon-canvas.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { InstrumentIconArt } from '@sudobility/music_types';
|
|
2
|
+
import type { DrawingContext2D } from './drawing-context.js';
|
|
2
3
|
/**
|
|
3
4
|
* Strokes `art` in the current `strokeStyle`, scaled into a `size`-square box
|
|
4
5
|
* whose top-left corner is (`x`, `y`).
|
|
@@ -8,5 +9,5 @@ import type { InstrumentIconArt } from '@sudobility/music_types';
|
|
|
8
9
|
* `save`/`restore` bracket the transform, so the caller's — the gutter's pinned,
|
|
9
10
|
* zoom-and-DPR-scaled one — survives.
|
|
10
11
|
*/
|
|
11
|
-
export declare function strokeInstrumentIcon(ctx:
|
|
12
|
+
export declare function strokeInstrumentIcon(ctx: DrawingContext2D, art: InstrumentIconArt, x: number, y: number, size: number): void;
|
|
12
13
|
//# sourceMappingURL=icon-canvas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-canvas.d.ts","sourceRoot":"","sources":["../src/icon-canvas.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAa,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"icon-canvas.d.ts","sourceRoot":"","sources":["../src/icon-canvas.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAa,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAuC7D;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,iBAAiB,EACtB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,GACX,IAAI,CAiBN"}
|
package/dist/icon-canvas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-canvas.js","sourceRoot":"","sources":["../src/icon-canvas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"icon-canvas.js","sourceRoot":"","sources":["../src/icon-canvas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,yBAAyB,CAAC;AAIjC,SAAS,WAAW,CAAC,GAAqB,EAAE,KAAgB;IAC1D,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,sEAAsE;QACtE,0DAA0D;QAC1D,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACzC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,MAAM;gBACT,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,OAAO;gBACV,GAAG,CAAC,aAAa,CACf,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,CAAC,EACT,OAAO,CAAC,CAAC,CACV,CAAC;gBACF,MAAM;YACR,KAAK,MAAM;gBACT,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnE,MAAM;YACR,KAAK,OAAO;gBACV,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,MAAM;QACV,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAqB,EACrB,GAAsB,EACtB,CAAS,EACT,CAAS,EACT,IAAY;IAEZ,MAAM,KAAK,GAAG,IAAI,GAAG,YAAY,CAAC;IAElC,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxB,6EAA6E;IAC7E,2DAA2D;IAC3D,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC;IAClC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;IACvB,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IAEtB,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM;QAAE,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxD,GAAG,CAAC,MAAM,EAAE,CAAC;IAEb,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
* per-glyph DOM — which is what makes an unbounded score scroll smoothly.
|
|
18
18
|
*/
|
|
19
19
|
export * from './types.js';
|
|
20
|
+
export * from './drawing-context.js';
|
|
20
21
|
export * from './layout.js';
|
|
21
22
|
export * from './pagination.js';
|
|
22
23
|
export * from './display-timing.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
* per-glyph DOM — which is what makes an unbounded score scroll smoothly.
|
|
18
18
|
*/
|
|
19
19
|
export * from './types.js';
|
|
20
|
+
export * from './drawing-context.js';
|
|
20
21
|
export * from './layout.js';
|
|
21
22
|
export * from './pagination.js';
|
|
22
23
|
export * from './display-timing.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
package/dist/layout.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
|
package/dist/layout.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { snappedOnsetTicks } from './display-timing.js';
|
|
2
|
+
import { shouldShowTrackInfo } from './types.js';
|
|
2
3
|
export const BASE_MEASURE_WIDTH = 160;
|
|
3
4
|
/**
|
|
4
5
|
* Width of a measure standing in for a run of silent ones.
|
|
@@ -148,7 +149,7 @@ export function computeLayout(score, options) {
|
|
|
148
149
|
// The gutter's reserved column is part of the left margin, so turning the
|
|
149
150
|
// gutter off has to shrink the margin too — otherwise the space stays blank
|
|
150
151
|
// and the music is simply indented for no reason.
|
|
151
|
-
const showTrackInfo = options
|
|
152
|
+
const showTrackInfo = shouldShowTrackInfo(options);
|
|
152
153
|
const leftMargin = LEFT_MARGIN + (showTrackInfo ? TRACK_INFO_WIDTH : 0);
|
|
153
154
|
// Trailing margin is the plain page margin, NOT `leftMargin`: that one
|
|
154
155
|
// carries the track-info gutter's reserved column, and mirroring it on the
|