UNPKG

@tencentcloud/roomkit-electron-vue3

Version:

<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,

85 lines (84 loc) 3.07 kB
import { Canvas as ICanvas, Object as IObject, ILineOptions, IImageOptions, IRectOptions, ICircleOptions, ITextOptions, IEllipseOptions, IEvent, ICanvasOptions, ITriangleOptions } from 'fabric/fabric-impl'; import EventEmitter from './../emitter'; import { DrawingTool, ToolSettings } from './../type'; interface FabricEvents { 'object:added': IEvent; 'object:modified': IEvent; 'object:removed': IEvent; 'mouse:down': IEvent; 'mouse:move': IEvent; 'mouse:up': IEvent; 'after:render': IEvent; 'push-canvas-to-stack': IEvent; [key: string | symbol]: IEvent | any | undefined; } declare class FabricCanvas extends EventEmitter<FabricEvents> { private canvas; private currentShape; private drawingTool; private isDrawing; private startX; private startY; private endX; private endY; private options; private images; private curImageIndex; private isValidEraser; private isValidSelection; constructor(canvasId: string); getCanvas(): ICanvas; renderCanvas(data: any): void; setBackgroundColor(color: string): void; setBackgroundImage(imageUrl: string, options?: IImageOptions): void; addObject(object: IObject): void; removeObject(object: IObject): void; removeAllObject(): void; getObjects(): IObject[]; getActiveObject(): IObject | undefined | null; setActiveObject(object: IObject): void; resetActiveObject(): void; setWidth(value: number | string): void; setHeight(value: number | string): void; exitTextEditing(): void; setObjectsSelectable(objectsSelectable: boolean): void; setEvented(): void; clearCanvas(): void; reloadCanvas(): void; setDrawingTool(tool: DrawingTool): void; setOptions(toolSetting: ToolSettings): void; setTextOptions(): ITextOptions; setPencilBrushOptions(): void; discardActiveObject(): void; drawRect(options: IRectOptions): void; drawTriangle(options: ITriangleOptions): void; drawCircle(options: ICircleOptions): void; drawEllipse(options: IEllipseOptions): void; drawLine(x1: number, y1: number, x2: number, y2: number, options?: ILineOptions): void; drawArrow(x1: number, y1: number, x2: number, y2: number, options?: ILineOptions): void; drawFreeDraw(): void; drawText(text: string, options?: ITextOptions): void; insertImage(url: string, options?: IImageOptions): void; insertPPT(urls: string[]): void; setCurrentScense(index: number): void; setEraser(): void; private initEvent; private onMouseDown; private onMouseMove; private onMouseUp; private onObjectMoving; private onObjectScaling; private onObjectRotating; private isNeedPushToStack; toDataURL(options?: ICanvasOptions): any; toJSON(): any; loadFromJSON(json: any, callback: any, reviver?: any): ICanvas; renderAll(): ICanvas; requestRenderAll(): any; zoom(ratio?: number): void; getZoom(): number; zoomIn(): void; zoomOut(): void; destroy(): void; } export default FabricCanvas;