Files
RecipesCam/web/spike/probe4.mjs
T

12 lines
778 B
JavaScript

import CanvasKitInit from 'canvaskit-wasm/full';
import fs from 'node:fs';
const CK = await CanvasKitInit();
console.log('ImageFormat', JSON.stringify(CK.ImageFormat));
const surf = CK.MakeSurface(64, 64);
const c = surf.getCanvas(); c.clear(CK.Color(255,0,0,255));
const img = surf.makeImageSnapshot();
for (const k of Object.keys(CK.ImageFormat)) { try { const b = img.encodeToBytes(CK.ImageFormat[k], 90); console.log(k, b ? b.length : null); } catch(e){ console.log(k,'ERR'); } }
const ttf = fs.readFileSync('../assets/Cousine-Regular.ttf');
const tf = CK.Typeface.MakeFreeTypeFaceFromData(ttf.buffer.slice(ttf.byteOffset, ttf.byteOffset+ttf.byteLength));
console.log('freetype', !!tf, 'drawText', typeof CK.Canvas.prototype.drawText, 'MakeSurface', typeof CK.MakeSurface);