白板绘制
本文主要介绍如何在已创建的白板上使用超级白板 SDK 提供的工具进行绘制。

前提条件
已参考 快速开始 创建了一个白板。
实现流程
在白板上涂鸦
- 开启 ZegoSuperBoard 的绘制功能。
- 将 setOperationMode 设置为 ZegoSuperBoardOperationMode.Draw,即可开启 ZegoSuperBoard 的绘制功能。
- 默认开启绘制功能
Untitled
var superBoardView = ZegoSuperBoardManager.getInstance().getSuperBoardView();
if (superBoardView) {
var currentSubView = superBoardView.getCurrentSuperBoardSubView();
if (currentSubView) {
// ZegoSuperBoardOperationMode.Draw = 4
currentSubView.setOperationMode(4);
}
}
1
- 设置绘制工具类型。
设置 ZegoSuperBoardManager 类的 setToolType 方法可修改 ZegoSuperBoard 的工具类型,目前支持 10 种工具。
Untitled
None , //未选择
Pen // 涂鸦画笔
Text , // 文本
Line , // 直线
Rect , // 矩形
Ellipse , // 圆
Selector , // 选取图元
Eraser , // 橡皮擦
Laser , // 激光笔
CustomImage , // 自定义图形工具
1
- 将工具设置为 Pen 涂鸦画笔。
Untitled
// 设置白板工具为画笔
// ZegoSuperBoardTool.Pen = 1
ZegoSuperBoardManager.getInstance().setToolType(1);
// 画笔颜色,默认为红色
ZegoSuperBoardManager.getInstance().setBrushColor('#FF0000');
// 画笔粗细,默认为6
ZegoSuperBoardManager.getInstance().setBrushSize(10);
1
- 设置涂鸦画笔成功后,用鼠标在 ZegoSuperBoardView 的范围内按下移动,即可看到涂鸦效果展示在 ZegoSuperBoardView 上。
说明
开发者可通过 enableHandwriting 开启笔锋模式,文首的图先后演示了无笔锋时的绘制效果和有笔锋时的绘制效果。
Untitled
// 关闭笔锋 (默认笔锋是关闭状态)
ZegoSuperBoardManager.getInstance().enableHandwriting(false);
// 开启笔锋
ZegoSuperBoardManager.getInstance().enableHandwriting(true);
1
- 可针对画笔设置自定义光标。
ZEGO SDK 已内置默认画笔图标,开发者可通过 setCustomCursorAttribute 设置画笔的光标样式。
Untitled
// 关闭自定义光标(默认为关闭状态)
ZegoSuperBoardManager.getInstance().enableCustomCursor(false);
// 开启自定义光标
ZegoSuperBoardManager.getInstance().enableCustomCursor(true);
// 关闭显示远程自定义光标(默认为关闭状态)
ZegoSuperBoardManager.getInstance().enableRemoteCursorVisible(false);
// 开启显示远程自定义光标
ZegoSuperBoardManager.getInstance().enableRemoteCursorVisible(true);
// 设置自定义光标样式
ZegoSuperBoardManager.getInstance().setCustomCursorAttribute(1, {
iconPath: 'FILE', // 自定义光标的地址,支持本地地址和网络地址
offsetX: 0, // 自定义光标横向偏移量
offsetY: 0 // 自定义光标纵向偏移量
})
1
常见问题
1. 如何动态控制用户的操作权限?
ZEGO 超级白板 SDK 本身不包含业务操作逻辑,需要您在业务侧通过信令传达操作权限数据,并结合 setOperationMode 接口实现。
例如,当教师想要允许学生在白板上涂鸦,则需要教师端 App 向学生端 App 发送信令,学生端 App 调用 setOperationMode 接口,将 mode
设置为 ZegoSuperBoardOperationMode.Draw
。当教师不再允许学生对白板操作时,则教师端 App 再次向学生端 App 发送信令,学生端 App 再次调用 setOperationMode 接口,将 mode
设置为 ZegoSuperBoardOperationMode.None
。