@sudobility/music_drawing 0.0.7 → 0.0.11
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 +5 -1
- package/dist/canvas-renderer.d.ts.map +1 -1
- package/dist/canvas-renderer.js +54 -25
- 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/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 +23 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +35 -1
- package/dist/types.js.map +1 -1
- package/package.json +16 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"measure-content.js","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"measure-content.js","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading `ctx.font`.
|
|
3
|
+
*
|
|
4
|
+
* The 2D API carries type as a CSS font shorthand string, and Skia wants a
|
|
5
|
+
* family name, a pixel size and a style. A browser resolves the shorthand with
|
|
6
|
+
* `document.createElement('span').style.font` — which is exactly what VexFlow's
|
|
7
|
+
* own `Font.fromCSSString` does, and exactly what is not available here.
|
|
8
|
+
*
|
|
9
|
+
* So this parses the subset that actually reaches the context: the three
|
|
10
|
+
* shorthands `canvas-renderer.ts` sets, and whatever `Font.toCSSString`
|
|
11
|
+
* produces, which is `<style> <weight> <size> <family>`. Anything richer than
|
|
12
|
+
* that (`font-variant`, `font-stretch`, system keywords like `menu`) falls back
|
|
13
|
+
* rather than throwing — a frame should not be lost to an unusual font string.
|
|
14
|
+
*/
|
|
15
|
+
/** What Skia needs to pick a typeface and a size. */
|
|
16
|
+
export type ParsedFont = {
|
|
17
|
+
/** A single family name, unquoted. Skia matches one, not a fallback chain. */
|
|
18
|
+
family: string;
|
|
19
|
+
sizePx: number;
|
|
20
|
+
bold: boolean;
|
|
21
|
+
italic: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare function parseCssFont(font: string): ParsedFont;
|
|
24
|
+
//# sourceMappingURL=css-font.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-font.d.ts","sourceRoot":"","sources":["../../src/skia/css-font.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,qDAAqD;AACrD,MAAM,MAAM,UAAU,GAAG;IACvB,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAgDF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CA6CrD"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading `ctx.font`.
|
|
3
|
+
*
|
|
4
|
+
* The 2D API carries type as a CSS font shorthand string, and Skia wants a
|
|
5
|
+
* family name, a pixel size and a style. A browser resolves the shorthand with
|
|
6
|
+
* `document.createElement('span').style.font` — which is exactly what VexFlow's
|
|
7
|
+
* own `Font.fromCSSString` does, and exactly what is not available here.
|
|
8
|
+
*
|
|
9
|
+
* So this parses the subset that actually reaches the context: the three
|
|
10
|
+
* shorthands `canvas-renderer.ts` sets, and whatever `Font.toCSSString`
|
|
11
|
+
* produces, which is `<style> <weight> <size> <family>`. Anything richer than
|
|
12
|
+
* that (`font-variant`, `font-stretch`, system keywords like `menu`) falls back
|
|
13
|
+
* rather than throwing — a frame should not be lost to an unusual font string.
|
|
14
|
+
*/
|
|
15
|
+
/** The CSS initial font size, used when a string cannot be read at all. */
|
|
16
|
+
const DEFAULT_SIZE_PX = 10;
|
|
17
|
+
const DEFAULT_FAMILY = 'sans-serif';
|
|
18
|
+
/** CSS reference pixels per point, and the assumed root font size for em/rem. */
|
|
19
|
+
const PX_PER_PT = 96 / 72;
|
|
20
|
+
const ROOT_FONT_SIZE_PX = 16;
|
|
21
|
+
/** 600 is where the CSS font-matching algorithm starts choosing bold faces. */
|
|
22
|
+
const BOLD_THRESHOLD = 600;
|
|
23
|
+
/**
|
|
24
|
+
* The unit is required: in the shorthand a bare number is a *weight*, so
|
|
25
|
+
* making it optional here reads `600 10px Arial` as a 600-pixel font.
|
|
26
|
+
*/
|
|
27
|
+
const SIZE_PATTERN = /^([\d.]+)(px|pt|em|rem|%)(?:\/[\d.]+\w*)?$/;
|
|
28
|
+
function sizeToPx(value, unit) {
|
|
29
|
+
switch (unit) {
|
|
30
|
+
case 'px':
|
|
31
|
+
return value;
|
|
32
|
+
case 'pt':
|
|
33
|
+
return value * PX_PER_PT;
|
|
34
|
+
case 'em':
|
|
35
|
+
case 'rem':
|
|
36
|
+
return value * ROOT_FONT_SIZE_PX;
|
|
37
|
+
case '%':
|
|
38
|
+
return (value / 100) * ROOT_FONT_SIZE_PX;
|
|
39
|
+
default:
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The first family in the list, unquoted.
|
|
45
|
+
*
|
|
46
|
+
* A browser walks a fallback chain; `SkFontMgr.matchFamilyStyle` takes one
|
|
47
|
+
* name and does its own substitution when it misses, so the rest of the chain
|
|
48
|
+
* has nowhere to go.
|
|
49
|
+
*/
|
|
50
|
+
function firstFamily(text) {
|
|
51
|
+
const first = text.split(',')[0]?.trim() ?? '';
|
|
52
|
+
const unquoted = first.replace(/^['"]|['"]$/g, '').trim();
|
|
53
|
+
return unquoted.length > 0 ? unquoted : DEFAULT_FAMILY;
|
|
54
|
+
}
|
|
55
|
+
export function parseCssFont(font) {
|
|
56
|
+
const fallback = {
|
|
57
|
+
family: DEFAULT_FAMILY,
|
|
58
|
+
sizePx: DEFAULT_SIZE_PX,
|
|
59
|
+
bold: false,
|
|
60
|
+
italic: false,
|
|
61
|
+
};
|
|
62
|
+
const tokens = font.trim().split(/\s+/).filter(Boolean);
|
|
63
|
+
if (tokens.length === 0)
|
|
64
|
+
return fallback;
|
|
65
|
+
let bold = false;
|
|
66
|
+
let italic = false;
|
|
67
|
+
let sizePx = null;
|
|
68
|
+
let index = 0;
|
|
69
|
+
// Everything before the size is a style/variant/weight keyword; the size is
|
|
70
|
+
// the first token that parses as one, and the family is all that follows.
|
|
71
|
+
for (; index < tokens.length; index++) {
|
|
72
|
+
const token = tokens[index];
|
|
73
|
+
const size = SIZE_PATTERN.exec(token);
|
|
74
|
+
if (size) {
|
|
75
|
+
const parsed = sizeToPx(Number(size[1]), size[2]);
|
|
76
|
+
if (parsed !== null && Number.isFinite(parsed) && parsed > 0) {
|
|
77
|
+
sizePx = parsed;
|
|
78
|
+
index++;
|
|
79
|
+
}
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
const keyword = token.toLowerCase();
|
|
83
|
+
if (keyword === 'italic' || keyword === 'oblique')
|
|
84
|
+
italic = true;
|
|
85
|
+
else if (keyword === 'bold' || keyword === 'bolder')
|
|
86
|
+
bold = true;
|
|
87
|
+
else if (/^\d+$/.test(keyword))
|
|
88
|
+
bold = Number(keyword) >= BOLD_THRESHOLD;
|
|
89
|
+
}
|
|
90
|
+
if (sizePx === null)
|
|
91
|
+
return fallback;
|
|
92
|
+
const family = tokens.slice(index).join(' ');
|
|
93
|
+
return {
|
|
94
|
+
family: family.length > 0 ? firstFamily(family) : DEFAULT_FAMILY,
|
|
95
|
+
sizePx,
|
|
96
|
+
bold,
|
|
97
|
+
italic,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=css-font.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-font.js","sourceRoot":"","sources":["../../src/skia/css-font.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@sudobility/music_drawing/skia` — React Native support.
|
|
3
|
+
*
|
|
4
|
+
* A `DrawingContext2D` backed by a Skia canvas, so the same renderer that
|
|
5
|
+
* paints the editor and the print view paints a score in a React Native app.
|
|
6
|
+
*
|
|
7
|
+
* It is a separate entry point because nothing web-side should carry it, and it
|
|
8
|
+
* declares no dependency on `@shopify/react-native-skia`: the host passes its
|
|
9
|
+
* own module in. See `skia-api.ts` for why, and `skia-context.ts` for the two
|
|
10
|
+
* models this bridges.
|
|
11
|
+
*/
|
|
12
|
+
export { createSkiaContext2D } from './skia-context.js';
|
|
13
|
+
export type { SkiaContextOptions } from './skia-context.js';
|
|
14
|
+
export { parseCssFont } from './css-font.js';
|
|
15
|
+
export type { ParsedFont } from './css-font.js';
|
|
16
|
+
export type { SkiaApi, SkiaCanvas, SkiaFont, SkiaFontMetrics, SkiaFontMgr, SkiaModule, SkiaPaint, SkiaPath, SkiaRect, SkiaTypeface, } from './skia-api.js';
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skia/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,YAAY,EACV,OAAO,EACP,UAAU,EACV,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,YAAY,GACb,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@sudobility/music_drawing/skia` — React Native support.
|
|
3
|
+
*
|
|
4
|
+
* A `DrawingContext2D` backed by a Skia canvas, so the same renderer that
|
|
5
|
+
* paints the editor and the print view paints a score in a React Native app.
|
|
6
|
+
*
|
|
7
|
+
* It is a separate entry point because nothing web-side should carry it, and it
|
|
8
|
+
* declares no dependency on `@shopify/react-native-skia`: the host passes its
|
|
9
|
+
* own module in. See `skia-api.ts` for why, and `skia-context.ts` for the two
|
|
10
|
+
* models this bridges.
|
|
11
|
+
*/
|
|
12
|
+
export { createSkiaContext2D } from './skia-context.js';
|
|
13
|
+
export { parseCssFont } from './css-font.js';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skia/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The slice of `@shopify/react-native-skia` this adapter uses, declared
|
|
3
|
+
* structurally.
|
|
4
|
+
*
|
|
5
|
+
* The package is **not** a dependency, not even an optional peer. The host
|
|
6
|
+
* passes its own Skia module in — the same injection this family already uses
|
|
7
|
+
* for `XmlParser` in `music_io` — which keeps `dependencies` at exactly
|
|
8
|
+
* `['vexflow']`, keeps a 1.6 GB native package out of this repo, and still
|
|
9
|
+
* type-checks the real thing: at the host's own call site, its
|
|
10
|
+
* `@shopify/react-native-skia` namespace has to satisfy `SkiaModule`.
|
|
11
|
+
*
|
|
12
|
+
* Two conventions make that work across versions:
|
|
13
|
+
*
|
|
14
|
+
* - **Opaque handles are `unknown`.** A colour, a typeface and a path effect
|
|
15
|
+
* are values this adapter only ever hands back to Skia, so naming their real
|
|
16
|
+
* types would buy nothing and break on a rename.
|
|
17
|
+
* - **Everything is method shorthand, never a function-valued property.**
|
|
18
|
+
* Method parameters are compared bivariantly, so `setStyle(style: number)`
|
|
19
|
+
* accepts Skia's `(style: PaintStyle) => void` — where a property-typed
|
|
20
|
+
* declaration would be checked contravariantly and reject it. Enum arguments
|
|
21
|
+
* arrive as the plain numbers Skia's enums already are.
|
|
22
|
+
*
|
|
23
|
+
* Verified against `@shopify/react-native-skia` 2.2.12. To re-verify after an
|
|
24
|
+
* upgrade, see the recipe in CLAUDE.md — it compiles this file against the real
|
|
25
|
+
* typings in one throwaway program.
|
|
26
|
+
*/
|
|
27
|
+
/** `{x, y, width, height}` — Skia's `SkRect`. */
|
|
28
|
+
export type SkiaRect = {
|
|
29
|
+
readonly x: number;
|
|
30
|
+
readonly y: number;
|
|
31
|
+
readonly width: number;
|
|
32
|
+
readonly height: number;
|
|
33
|
+
};
|
|
34
|
+
/** Ascent is negative: it measures upward from the baseline. */
|
|
35
|
+
export type SkiaFontMetrics = {
|
|
36
|
+
readonly ascent: number;
|
|
37
|
+
readonly descent: number;
|
|
38
|
+
};
|
|
39
|
+
export type SkiaFont = {
|
|
40
|
+
measureText(text: string): SkiaRect;
|
|
41
|
+
getMetrics(): SkiaFontMetrics;
|
|
42
|
+
getGlyphIDs(text: string): number[];
|
|
43
|
+
getGlyphWidths(glyphs: number[]): number[];
|
|
44
|
+
};
|
|
45
|
+
export type SkiaPaint = {
|
|
46
|
+
setColor(color: unknown): void;
|
|
47
|
+
/** `PaintStyle.Fill` or `PaintStyle.Stroke`. */
|
|
48
|
+
setStyle(style: number): void;
|
|
49
|
+
setStrokeWidth(width: number): void;
|
|
50
|
+
setStrokeCap(cap: number): void;
|
|
51
|
+
setStrokeJoin(join: number): void;
|
|
52
|
+
setAntiAlias(antiAlias: boolean): void;
|
|
53
|
+
setAlphaf(alpha: number): void;
|
|
54
|
+
getAlphaf(): number;
|
|
55
|
+
setPathEffect(effect: unknown): void;
|
|
56
|
+
setBlendMode(blendMode: number): void;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Skia's path builder. Every method returns the path for chaining, which this
|
|
60
|
+
* adapter ignores — hence the `unknown` returns.
|
|
61
|
+
*/
|
|
62
|
+
export type SkiaPath = {
|
|
63
|
+
moveTo(x: number, y: number): unknown;
|
|
64
|
+
lineTo(x: number, y: number): unknown;
|
|
65
|
+
cubicTo(x1: number, y1: number, x2: number, y2: number, x3: number, y3: number): unknown;
|
|
66
|
+
quadTo(x1: number, y1: number, x2: number, y2: number): unknown;
|
|
67
|
+
/** Angles in degrees, clockwise from the positive x-axis. */
|
|
68
|
+
arcToOval(oval: SkiaRect, startAngleInDegrees: number, sweepAngleInDegrees: number, forceMoveTo: boolean): unknown;
|
|
69
|
+
addRect(rect: SkiaRect): unknown;
|
|
70
|
+
close(): unknown;
|
|
71
|
+
};
|
|
72
|
+
export type SkiaCanvas = {
|
|
73
|
+
save(): number;
|
|
74
|
+
restore(): void;
|
|
75
|
+
/** A 9-element row-major 3×3 matrix, composed onto the current one. */
|
|
76
|
+
concat(matrix: number[]): void;
|
|
77
|
+
drawPath(path: SkiaPath, paint: SkiaPaint): void;
|
|
78
|
+
drawRect(rect: SkiaRect, paint: SkiaPaint): void;
|
|
79
|
+
drawText(text: string, x: number, y: number, paint: SkiaPaint, font: SkiaFont): void;
|
|
80
|
+
};
|
|
81
|
+
export type SkiaTypeface = unknown;
|
|
82
|
+
export type SkiaFontMgr = {
|
|
83
|
+
/** Returns a typeface, or null when nothing matches and no fallback applies. */
|
|
84
|
+
matchFamilyStyle(name: string, style: unknown): SkiaTypeface | null;
|
|
85
|
+
};
|
|
86
|
+
/** The `Skia` object itself: Skia's own factory namespace. */
|
|
87
|
+
export type SkiaApi = {
|
|
88
|
+
Paint(): SkiaPaint;
|
|
89
|
+
Path: {
|
|
90
|
+
Make(): SkiaPath;
|
|
91
|
+
};
|
|
92
|
+
Font(typeface?: SkiaTypeface, size?: number): SkiaFont;
|
|
93
|
+
FontMgr: {
|
|
94
|
+
System(): SkiaFontMgr;
|
|
95
|
+
};
|
|
96
|
+
/** Parses a CSS colour string into Skia's own colour representation. */
|
|
97
|
+
Color(color: string): unknown;
|
|
98
|
+
XYWHRect(x: number, y: number, width: number, height: number): SkiaRect;
|
|
99
|
+
PathEffect: {
|
|
100
|
+
MakeDash(intervals: number[], phase?: number): unknown;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* What the host injects: the module namespace of
|
|
105
|
+
* `@shopify/react-native-skia`, so `import * as Skia from …` passes straight
|
|
106
|
+
* in. The enums come along because Skia's own methods take them and this
|
|
107
|
+
* adapter has no other way to name `PaintStyle.Fill`.
|
|
108
|
+
*/
|
|
109
|
+
export type SkiaModule = {
|
|
110
|
+
Skia: SkiaApi;
|
|
111
|
+
PaintStyle: {
|
|
112
|
+
readonly Fill: number;
|
|
113
|
+
readonly Stroke: number;
|
|
114
|
+
};
|
|
115
|
+
StrokeCap: {
|
|
116
|
+
readonly Butt: number;
|
|
117
|
+
readonly Round: number;
|
|
118
|
+
readonly Square: number;
|
|
119
|
+
};
|
|
120
|
+
StrokeJoin: {
|
|
121
|
+
readonly Bevel: number;
|
|
122
|
+
readonly Miter: number;
|
|
123
|
+
readonly Round: number;
|
|
124
|
+
};
|
|
125
|
+
FontSlant: {
|
|
126
|
+
readonly Upright: number;
|
|
127
|
+
readonly Italic: number;
|
|
128
|
+
};
|
|
129
|
+
BlendMode: {
|
|
130
|
+
readonly Clear: number;
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
//# sourceMappingURL=skia-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skia-api.d.ts","sourceRoot":"","sources":["../../src/skia/skia-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The slice of `@shopify/react-native-skia` this adapter uses, declared
|
|
3
|
+
* structurally.
|
|
4
|
+
*
|
|
5
|
+
* The package is **not** a dependency, not even an optional peer. The host
|
|
6
|
+
* passes its own Skia module in — the same injection this family already uses
|
|
7
|
+
* for `XmlParser` in `music_io` — which keeps `dependencies` at exactly
|
|
8
|
+
* `['vexflow']`, keeps a 1.6 GB native package out of this repo, and still
|
|
9
|
+
* type-checks the real thing: at the host's own call site, its
|
|
10
|
+
* `@shopify/react-native-skia` namespace has to satisfy `SkiaModule`.
|
|
11
|
+
*
|
|
12
|
+
* Two conventions make that work across versions:
|
|
13
|
+
*
|
|
14
|
+
* - **Opaque handles are `unknown`.** A colour, a typeface and a path effect
|
|
15
|
+
* are values this adapter only ever hands back to Skia, so naming their real
|
|
16
|
+
* types would buy nothing and break on a rename.
|
|
17
|
+
* - **Everything is method shorthand, never a function-valued property.**
|
|
18
|
+
* Method parameters are compared bivariantly, so `setStyle(style: number)`
|
|
19
|
+
* accepts Skia's `(style: PaintStyle) => void` — where a property-typed
|
|
20
|
+
* declaration would be checked contravariantly and reject it. Enum arguments
|
|
21
|
+
* arrive as the plain numbers Skia's enums already are.
|
|
22
|
+
*
|
|
23
|
+
* Verified against `@shopify/react-native-skia` 2.2.12. To re-verify after an
|
|
24
|
+
* upgrade, see the recipe in CLAUDE.md — it compiles this file against the real
|
|
25
|
+
* typings in one throwaway program.
|
|
26
|
+
*/
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=skia-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skia-api.js","sourceRoot":"","sources":["../../src/skia/skia-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A `DrawingContext2D` backed by a Skia canvas.
|
|
3
|
+
*
|
|
4
|
+
* This is the whole of React Native support: the renderer above it neither
|
|
5
|
+
* knows nor cares which of the two it is painting into. What lives here is the
|
|
6
|
+
* gap between the two models —
|
|
7
|
+
*
|
|
8
|
+
* - **Canvas is a state machine; Skia is not.** `fillStyle`, `lineWidth`, the
|
|
9
|
+
* font and the transform persist on the context until changed, and `save`/
|
|
10
|
+
* `restore` push and pop all of it together. Skia takes a fresh `SkPaint` per
|
|
11
|
+
* draw. So the state lives here, in a stack, and a paint is built from the
|
|
12
|
+
* top of it at each draw.
|
|
13
|
+
* - **`setTransform` is absolute; `concat` is relative.** Skia has no "replace
|
|
14
|
+
* the matrix" call, and the renderer calls `setTransform` twice per frame —
|
|
15
|
+
* once to clear in device space, once to install the zoom-and-scroll
|
|
16
|
+
* transform. Composing there would send the score drifting off the page a
|
|
17
|
+
* frame at a time. The current matrix is therefore tracked here and applied
|
|
18
|
+
* per draw as `save → concat → draw → restore`, which also leaves Skia's own
|
|
19
|
+
* matrix untouched for whatever else the host is drawing.
|
|
20
|
+
* - **Canvas takes a CSS font string; Skia takes a typeface and a size.** See
|
|
21
|
+
* `css-font.ts`; resolved faces are cached, because the renderer sets the
|
|
22
|
+
* same handful of shorthands on every frame.
|
|
23
|
+
*/
|
|
24
|
+
import type { DrawingContext2D } from '../drawing-context.js';
|
|
25
|
+
import type { SkiaCanvas, SkiaModule } from './skia-api.js';
|
|
26
|
+
export type SkiaContextOptions = {
|
|
27
|
+
/** The `@shopify/react-native-skia` module namespace: `import * as skia from …`. */
|
|
28
|
+
skia: SkiaModule;
|
|
29
|
+
/** The `SkCanvas` to paint into — from a picture recorder, a surface, or `useCanvasRef`. */
|
|
30
|
+
canvas: SkiaCanvas;
|
|
31
|
+
/**
|
|
32
|
+
* The surface's size in *device* pixels.
|
|
33
|
+
*
|
|
34
|
+
* The renderer reads these to clear the backing store before a frame, so they
|
|
35
|
+
* must match the canvas it was given, and the same `devicePixelRatio` the
|
|
36
|
+
* surface was sized with must be passed in `RenderOptions`.
|
|
37
|
+
*/
|
|
38
|
+
width: number;
|
|
39
|
+
height: number;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Wraps a Skia canvas as the 2D drawing context this package paints into.
|
|
43
|
+
*
|
|
44
|
+
* ```ts
|
|
45
|
+
* import * as skia from '@shopify/react-native-skia';
|
|
46
|
+
* import { CanvasScoreRenderer } from '@sudobility/music_drawing';
|
|
47
|
+
* import { createSkiaContext2D } from '@sudobility/music_drawing/skia';
|
|
48
|
+
*
|
|
49
|
+
* const ctx = createSkiaContext2D({ skia, canvas, width, height });
|
|
50
|
+
* new CanvasScoreRenderer().render(score, ctx, options);
|
|
51
|
+
* ```
|
|
52
|
+
*
|
|
53
|
+
* The Skia module is injected rather than imported so that this package
|
|
54
|
+
* depends on nothing but `vexflow`; passing the namespace is what type-checks
|
|
55
|
+
* the host's Skia against what the adapter uses.
|
|
56
|
+
*/
|
|
57
|
+
export declare function createSkiaContext2D(options: SkiaContextOptions): DrawingContext2D;
|
|
58
|
+
//# sourceMappingURL=skia-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skia-context.d.ts","sourceRoot":"","sources":["../../src/skia/skia-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,EACV,gBAAgB,EAGjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EACV,UAAU,EAEV,UAAU,EAGX,MAAM,eAAe,CAAC;AAwEvB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oFAAoF;IACpF,IAAI,EAAE,UAAU,CAAC;IACjB,4FAA4F;IAC5F,MAAM,EAAE,UAAU,CAAC;IACnB;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAqaF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,kBAAkB,GAC1B,gBAAgB,CAElB"}
|