本模块提供手写套件组件,组件包含画布和手写工具栏,集成之后快速实现手写能力。
您需要提供手写画布功能入口和回调,画布将在初始化、加载和保存动作完成时触发回调,您可以在回调中自定义应用的行为。
模型约束:此接口仅可在Stage模型下使用。
装饰器类型:@Component
系统能力:SystemCapability.Stylus.Handwrite
起始版本:5.0.0(12)
参数:
名称 | 类型 | 只读 | 可选 | 说明 |
|---|---|---|---|---|
handwriteController | 否 | 否 | 手写套件功能类实例。 | |
onInit | () => void | 否 | 是 | 套件初始化的回调。 |
onScale | (scale: number) => void | 否 | 是 | 画布缩放的回调。回调方法的参数是当前画布的缩放值。 |
@Component struct HandWritingComponent { controller: HandwriteController = new HandwriteController(); // 根据应用存储规则,获取到手写文件保存的路径,此处仅为实例参考 initPath : string = "aa"; aboutToAppear(){ // 加载时设置保存动作完成后的回调。 this.controller.onLoad(this.callback); } // 手写文件内容加载完毕渲染上屏后的回调,通知接入用户,可在此处进行自定义行为 callback = () => { // 自定义行为,例如文件加载完毕后展示用户操作指导 } aboutToDisappear(){ // HandWriteDemo退出时调用保存接口 const path : string = `savePath`; // 需根据应用存储规则,获取到手写文件保存的路径,此处仅为实例参考 this.controller?.save(path); } build() { Row() { Column() { HandwriteComponent({ handwriteController: this.controller, onInit: () => { // 画布初始化完成时的回调。此时可以调用接口加载和显示笔记内容 this.controller?.load(this.initPath); }, onScale: (scale: number) => { // 画布缩放时的回调方法,将返回当前手写控件的缩放比例,可在此处进行自定义行为。 } }) } .width('100%') } .height('100%') } }