@nmmty/lazycanvas
Version:
A simple way to interact with @napi-rs/canvas in an advanced way!
35 lines (34 loc) • 1.3 kB
TypeScript
import { AnyExport, ILazyCanvas } from "../types";
import { Canvas, SKRSContext2D, SvgExportFlag } from "@napi-rs/canvas";
import { LayersManager } from "./managers/LayersManager";
import { RenderManager } from "./managers/RenderManager";
import { FontsManager } from "./managers/FontsManager";
import { AnimationManager } from "./managers/AnimationManager";
export declare class LazyCanvas implements ILazyCanvas {
width: number | 0;
height: number | 0;
canvas: Canvas;
ctx: SKRSContext2D;
layers: LayersManager;
render: RenderManager;
fonts: FontsManager;
animation: AnimationManager;
exportType: AnyExport;
constructor(debug?: boolean);
/**
* Set the export type
* @param type {AnyExport} - The `export` type
*/
setExportType(type: AnyExport): this;
/**
* Set the SVG export flag. This method should be called after `setExportType` method.
* @param flag {SvgExportFlag} - The `flag` of the SVG export
*/
setSvgExportFlag(flag: SvgExportFlag): this;
/**
* Create a new canvas. This method should be called before any other methods.
* @param width {number} - The `width` of the canvas
* @param height {number} - The `height` of the canvas
*/
create(width: number, height: number): this;
}