deno-canvas
deno-canvas copied to clipboard
`CanvasKitInit` not found
When running this code using deno run -A ...
I get this error: The requested module 'https://deno.land/x/[email protected]/mod.ts' does not provide an export named 'CanvasKitInit'
My Code:
import { CanvasKitInit } from "https://deno.land/x/[email protected]/mod.ts"
const kit = await CanvasKitInit({
// What path would you use for locating files in deno?
locateFile: (file) => '/node_modules/canvaskit-wasm/bin/' + file,
})
const surface = kit.MakeSurface(100, 100)!
const canvas = surface.getCanvas()!
const paint = new kit.Paint()
paint.setColor([255, 0, 0, 255])
canvas.drawCircle(25, 25, 20, paint)
const image = surface.makeImageSnapshot()!
const bytes = image.encodeToBytes()!
Deno.writeFileSync('image.png', bytes)
Before using this package I tried using canvaskit-wasm and got similar errors.
Same code but with a slightly modified header:
import CanvasKitInit from 'npm:canvaskit-wasm'
CanvasKitInit.default({ // ...
mod.ts
exports a wrapper API around the canvaskit-wasm, but if you want direct access, you can import canvas
from mod.ts
which is the already instantiated CanvasKit object.
import { canvas as kit } from "https://deno.land/x/[email protected]/mod.ts"
const surface = kit.MakeSurface(100, 100)!
const canvas = surface.getCanvas()!
const paint = new kit.Paint()
paint.setColor([255, 0, 0, 255])
canvas.drawCircle(25, 25, 20, paint)
const image = surface.makeImageSnapshot()!
const bytes = image.encodeToBytes()!
Deno.writeFileSync('image.png', bytes)