I-NOZex / nativescript-canvas

HTML5-like 2D and WebGL canvas implementation for NativeScript

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

npm npm GitHub forks GitHub stars

Installation

  • tns plugin add nativescript-canvas

Be sure to run a new build after adding plugins to avoid any issues.


Usage

The nativescript Canvas is based on the Android Canvas class. The android API is actually a direct subclass with some Additions

Plain NativeScript

IMPORTANT: Make sure you include xmlns:mdc="nativescript-canvas" on the Page element

XML

<Page xmlns:cv="nativescript-canvas">
    <StackLayout horizontalAlignment="center">
        <cv:CanvasView width="100" height="100" draw="draw"/>
   </StackLayout>
</Page>

NativeScript + Angular

import { registerElement } from 'nativescript-angular/element-registry';
import { CanvasView } from 'nativescript-canvas';
registerElement('CanvasView', () => CanvasView);
<CanvasView width="100" height="100" (draw)="draw($event)></CanvasView>

NativeScript + Vue

import Vue from 'nativescript-vue';
import CanvasPlugin from 'nativescript-canvas/vue';

Vue.use(CanvasPlugin);
<CanvasView  width="100" height="100" @draw="draw"/>

##draw Method

function draw(event: { canvas: Canvas }) {
    const paint = new Paint();
    paint.setColor(new Color('black'));
    paint.strokeWidth = 10;
    canvas.drawRect(createRect(0, 0, 200, 100), paint);
}

About

HTML5-like 2D and WebGL canvas implementation for NativeScript

License:Apache License 2.0


Languages

Language:Objective-C 54.7%Language:TypeScript 39.8%Language:Vue 5.0%Language:JavaScript 0.5%Language:Shell 0.1%