0.0.1-alpha.0 • Published 3 years ago

@napi-rs/skia v0.0.1-alpha.0

Weekly downloads
5
License
MIT
Repository
github
Last release
3 years ago

@napi-rs/skia

CI

Google Skia binding to NodeJS via N-API.

Support matrix

node 10node12node14node15
Windows x64
macOS x64
Linux x64

Usage

const { promises } = require('fs')
const { join } = require('path')

const { createCanvas } = require('@napi-rs/skia')

const canvas = createCanvas(1024, 768)

const ctx = canvas.getContext('2d')

ctx.lineWidth = 10
ctx.strokeStyle = '#03a9f4'
ctx.fillStyle = '#03a9f4'

// Wall
ctx.strokeRect(75, 140, 150, 110)

// Door
ctx.fillRect(130, 190, 40, 60)

// Roof
ctx.beginPath()
ctx.moveTo(50, 140)
ctx.lineTo(150, 60)
ctx.lineTo(250, 140)
ctx.closePath()
ctx.stroke()

async function main() {
  const pngData = await canvas.png()
  // encoding in libuv thread pool, non-blocking
  await promises.writeFile(join(__dirname, 'simple.png'), pngData)
}

main()

npm.io