@takumi-rs/wasm 0.64.0 → 0.65.0
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/package.json +1 -1
- package/pkg/takumi_wasm.d.ts +18 -0
- package/pkg/takumi_wasm.js +41 -2
- package/pkg/takumi_wasm_bg.wasm +0 -0
- package/pkg/takumi_wasm_bg.wasm.d.ts +1 -0
package/package.json
CHANGED
package/pkg/takumi_wasm.d.ts
CHANGED
|
@@ -59,6 +59,22 @@ export type ImageSource = {
|
|
|
59
59
|
|
|
60
60
|
export type Font = FontDetails | ByteBuf;
|
|
61
61
|
|
|
62
|
+
export type MeasuredTextRun = {
|
|
63
|
+
text: string,
|
|
64
|
+
x: number,
|
|
65
|
+
y: number,
|
|
66
|
+
width: number,
|
|
67
|
+
height: number,
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export type MeasuredNode = {
|
|
71
|
+
width: number,
|
|
72
|
+
height: number,
|
|
73
|
+
transform: [number, number, number, number, number, number],
|
|
74
|
+
children: MeasuredNode[],
|
|
75
|
+
runs: MeasuredTextRun[],
|
|
76
|
+
};
|
|
77
|
+
|
|
62
78
|
|
|
63
79
|
|
|
64
80
|
export class AnimationFrameSource {
|
|
@@ -76,6 +92,7 @@ export class Renderer {
|
|
|
76
92
|
* @deprecated use `loadFont` instead.
|
|
77
93
|
*/
|
|
78
94
|
loadFontWithInfo(font: Font): void;
|
|
95
|
+
measure(node: AnyNode, options?: RenderOptions | null): MeasuredNode;
|
|
79
96
|
constructor();
|
|
80
97
|
putPersistentImage(data: ImageSource): void;
|
|
81
98
|
render(node: AnyNode, options?: RenderOptions | null): Uint8Array;
|
|
@@ -105,6 +122,7 @@ export interface InitOutput {
|
|
|
105
122
|
readonly renderer_clearImageStore: (a: number) => void;
|
|
106
123
|
readonly renderer_loadFont: (a: number, b: number, c: number) => void;
|
|
107
124
|
readonly renderer_loadFontWithInfo: (a: number, b: number, c: number) => void;
|
|
125
|
+
readonly renderer_measure: (a: number, b: number, c: number, d: number) => void;
|
|
108
126
|
readonly renderer_new: () => number;
|
|
109
127
|
readonly renderer_putPersistentImage: (a: number, b: number, c: number) => void;
|
|
110
128
|
readonly renderer_render: (a: number, b: number, c: number, d: number) => void;
|
package/pkg/takumi_wasm.js
CHANGED
|
@@ -77,6 +77,26 @@ export class Renderer {
|
|
|
77
77
|
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* @param {AnyNode} node
|
|
82
|
+
* @param {RenderOptions | null} [options]
|
|
83
|
+
* @returns {MeasuredNode}
|
|
84
|
+
*/
|
|
85
|
+
measure(node, options) {
|
|
86
|
+
try {
|
|
87
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
88
|
+
wasm.renderer_measure(retptr, this.__wbg_ptr, addHeapObject(node), isLikeNone(options) ? 0 : addHeapObject(options));
|
|
89
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
90
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
91
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
92
|
+
if (r2) {
|
|
93
|
+
throw takeObject(r1);
|
|
94
|
+
}
|
|
95
|
+
return takeObject(r0);
|
|
96
|
+
} finally {
|
|
97
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
80
100
|
constructor() {
|
|
81
101
|
const ret = wasm.renderer_new();
|
|
82
102
|
this.__wbg_ptr = ret >>> 0;
|
|
@@ -392,6 +412,14 @@ function __wbg_get_imports() {
|
|
|
392
412
|
const ret = getObject(arg0).length;
|
|
393
413
|
return ret;
|
|
394
414
|
},
|
|
415
|
+
__wbg_new_361308b2356cecd0: function() {
|
|
416
|
+
const ret = new Object();
|
|
417
|
+
return addHeapObject(ret);
|
|
418
|
+
},
|
|
419
|
+
__wbg_new_3eb36ae241fe6f44: function() {
|
|
420
|
+
const ret = new Array();
|
|
421
|
+
return addHeapObject(ret);
|
|
422
|
+
},
|
|
395
423
|
__wbg_new_72b49615380db768: function(arg0, arg1) {
|
|
396
424
|
const ret = new Error(getStringFromWasm0(arg0, arg1));
|
|
397
425
|
return addHeapObject(ret);
|
|
@@ -411,21 +439,32 @@ function __wbg_get_imports() {
|
|
|
411
439
|
__wbg_prototypesetcall_bdcdcc5842e4d77d: function(arg0, arg1, arg2) {
|
|
412
440
|
Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), getObject(arg2));
|
|
413
441
|
},
|
|
442
|
+
__wbg_set_3f1d0b984ed272ed: function(arg0, arg1, arg2) {
|
|
443
|
+
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
|
444
|
+
},
|
|
445
|
+
__wbg_set_f43e577aea94465b: function(arg0, arg1, arg2) {
|
|
446
|
+
getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
|
|
447
|
+
},
|
|
414
448
|
__wbg_value_0546255b415e96c1: function(arg0) {
|
|
415
449
|
const ret = getObject(arg0).value;
|
|
416
450
|
return addHeapObject(ret);
|
|
417
451
|
},
|
|
418
452
|
__wbindgen_cast_0000000000000001: function(arg0) {
|
|
453
|
+
// Cast intrinsic for `F64 -> Externref`.
|
|
454
|
+
const ret = arg0;
|
|
455
|
+
return addHeapObject(ret);
|
|
456
|
+
},
|
|
457
|
+
__wbindgen_cast_0000000000000002: function(arg0) {
|
|
419
458
|
// Cast intrinsic for `I64 -> Externref`.
|
|
420
459
|
const ret = arg0;
|
|
421
460
|
return addHeapObject(ret);
|
|
422
461
|
},
|
|
423
|
-
|
|
462
|
+
__wbindgen_cast_0000000000000003: function(arg0, arg1) {
|
|
424
463
|
// Cast intrinsic for `Ref(String) -> Externref`.
|
|
425
464
|
const ret = getStringFromWasm0(arg0, arg1);
|
|
426
465
|
return addHeapObject(ret);
|
|
427
466
|
},
|
|
428
|
-
|
|
467
|
+
__wbindgen_cast_0000000000000004: function(arg0) {
|
|
429
468
|
// Cast intrinsic for `U64 -> Externref`.
|
|
430
469
|
const ret = BigInt.asUintN(64, arg0);
|
|
431
470
|
return addHeapObject(ret);
|
package/pkg/takumi_wasm_bg.wasm
CHANGED
|
Binary file
|
|
@@ -8,6 +8,7 @@ export const collectNodeFetchTasks: (a: number, b: number) => void;
|
|
|
8
8
|
export const renderer_clearImageStore: (a: number) => void;
|
|
9
9
|
export const renderer_loadFont: (a: number, b: number, c: number) => void;
|
|
10
10
|
export const renderer_loadFontWithInfo: (a: number, b: number, c: number) => void;
|
|
11
|
+
export const renderer_measure: (a: number, b: number, c: number, d: number) => void;
|
|
11
12
|
export const renderer_new: () => number;
|
|
12
13
|
export const renderer_putPersistentImage: (a: number, b: number, c: number) => void;
|
|
13
14
|
export const renderer_render: (a: number, b: number, c: number, d: number) => void;
|