/** * @Author: yanxinaliang (rainyxlxl@163.com) * @Date: 2019/4/5 16:35 * @Last Modified by: yanxinaliang (rainyxlxl@163.com) * @Last Modified time: 2019/4/5 16:35 * @disc:Pencil Brush * mouse API 不支持外部调用,外部调用需要考虑objectId匹配情况 * pointerEvent 支持,fix touch事件issue 后期考虑优化兼容方案 */ import { fabric } from "fabric"; import { IBrushContext } from '../interface/IBrush'; import { IBaseBrush } from './BaseBrush'; import { Canvas } from './Canvas'; import { Pencil } from './Pencil'; declare class PencilBrush extends fabric.PencilBrush implements IBaseBrush { protected canvas: Canvas; private _render; shadow: fabric.Shadow; protected objectId?: string; cursorType: string; private _points; private readonly context; private wbNumber; private pageNum?; private canDraw; constructor(canvas: Canvas, context: IBrushContext, wbNumber: string, pageNum?: number); private onLeftMouseUp; update(wbNumber: string, pageNum?: number): void; createPath(pathData: string): Pencil; protected onMouseDown(pointer: fabric.Point): void; private pointerEvent; private _onMouseMove; protected onMouseMove(pointer: fabric.Point): void; protected onMouseUp(): void; clear(): void; render(): void; private dispatchMsg; private dispatchMessage; destroy(): void; } export { PencilBrush };