发版说明
本文提供声网互动白板 Web SDK 的发版说明。
2.16.43 版
该版本于 2023 年 8 月 31 日发布。
该版本废弃了白板数据中心(region)原有的英国伦敦数据中心(gb-lon),并新增了欧洲法兰克福数据中心(eu),服务区覆盖欧洲。如果你在之前版本中设置了 region 为 gb-lon,请在升级到该版本后改用 eu,并在控制台-互动白板服务配置中启用该数据中心。
该版本修复了在 Windows 平台上使用白板 Web App 时,shift 按键判定有误,导致铅笔工具切换为画直线后无法恢复。
2.16.37 版
该版本于 2022 年 12 月 2 日发布。
该版本为以下白板教具添加了新特性:
- 圆形工具:按住
alt/option键可以以光标为圆心画圆。 - 铅笔工具:
- 画直线:按住
shift键可以画直线。 - 画虚线:你需要在
room.memberState中添加dottedLine: true以开启该功能。 - 书写表现:支持通过
NewPencilWritingQuality调整书写性能与书写质量之间的平衡。
- 画直线:按住
- 文字工具:支持直接选中并编辑文字。你需要在
room.memberState中添加textCanSelectText: true以开启该功能。
此外,该版本还新增了铅笔橡皮工具,用于擦除局部铅笔笔迹。
该版本新增 screenshotToCanvas 方法,可以将指定白板内容截图至 canvas。
该版本修复了如下问题:
- 用户断线重连后或切页后,撤回与重做功能可能会重置。
room.setMemberState()中的某些字段无法保存到本地。- 浮动条(
floatBar)在部分触摸设备上无法正常使用。
MemberState新增属性dottedLine和textCanSelectTextNewPencilWritingQualityscreenshotToCanvasApplianceNames新增枚举值pencilEraser
2.16.24 版
该版本于 2022 年 7 月 8 日发布。
为支持自定义文本编辑选项,该版本新增如下 API:
insertText:在指定位置插入文字。updateText:修改指定文字的内容。updateSelectedText:修改当前被选中文字的字体样式,包括字体大小、颜色、是否加粗、是否斜体等。
你可以使用上述 API 自定义文本输入框和编辑工具栏。
同时,该版本在 MemberState 中新增 textColor、bold、italic、underline 和 lineThrough 属性,提供更加丰富的文本编辑选项。当你使用白板 SDK 提供的 text 工具,但想自定义文本编辑工具栏时,你可以将 JoinRoomParams 中的 floatBar 属性设为 false,并通过 MemberState 中新增的属性编辑文本。
此外,该版本删除了 updateTextFontSize 方法,你可以使用 updateSelectedText 或 MemberState 中的 textSize 代替。
该版本在 WhiteWebSdkConfiguration 中新增 disableRotation 属性,用于开启或关闭图片旋转功能。SDK 默认开启图片旋转。开启该功能后,用户可以任意旋转选中的图片。如果需要关闭,可以设置 disableRotation(true)。
该版本为铅笔工具新增补间动画功能。当用户使用铅笔书写时,SDK 会自动在关键帧之间插入帧,使远端用户看到的笔迹绘制过程更加流畅,但会因此增加延时。
同时,该版本在 WhiteWebSdkConfiguration 中新增 disableCurveAnimes 属性,用于开启或关闭新铅笔的补间动画功能。SDK 默认开启补间动画功能。如果需要关闭,可以设置 disableCurveAnimes(true)。
补间动画仅在 disableNewPencil 设为 fasle 时生效。
该版本在 WhiteWebSdkConfiguration 中新增 disableNewPencilStroke 属性,用于开启或关闭铅笔的笔锋效果。disableNewPencilStroke 默认值为 true,当你设置 disableNewPencil(false) 开启新铅笔后,SDK 立即开启笔锋效果。如果需要关闭新铅笔的笔锋效果,可以设置 disableNewPencilStroke(true)。
笔锋效果仅在 disableNewPencil 设为 fasle 时生效。
该版本在 Displayer 类中新增 getScene 方法,支持使用场景路径获取指定场景的信息。
该版本新增 createScenesCallback 方法,用于创建场景目录的监听器对象。成功创建监听器对象后,当指定场景目录下的场景、子场景目录发生变化时,SDK 会触发你在 ScenesCallbacks 中注册的回调,报告场景事件。
该版本新增 onPPTMediaPlayError 回调,用于报告动态 PPT 中的媒体文件播放时发生的异常。
该版本进行了如下改进:
- 优化了在 Android 浏览器上的书写性能。
- 优化了弱网环境下的重连机制,减少不必要的重连。
该版本修复了如下问题:
- 放缩、移动视角后,偶现画面出现偏移、重影。
- 偶现动态 PPT 在断线重连后无法翻页。
- 刚加入房间时,如果白板上已经有内容,可能显示不全。
- SDK 断线重连后可能会发生内存泄漏。
- 反复调用
setWritable时可能会发生错误。 - 使用低版本的 react 时白板显示异常并报错。
- 在 iOS 的浏览器上点击 text 时无法弹出虚拟键盘。
- 用户切换为只读模式,再切换回读写模式并写写画画时,远端用户看到该用户的光标是固定的。
insertTextupdateTextupdateSelectedTextgetScenecreateScenesCallbackonPPTMediaPlayErrorMemberState中新增如下属性:textColorbolditalicunderlinelineThrough
WhiteWebSdkConfiguration中新增如下属性:disableRotationdisableCurveAnimesdisableNewPencilStroke
updateTextFontSizeCustomInput
2.15.16 版
该版本于 2022 年 1 月 21 日发布。
该版本进行了如下改进:
- 优化
disconnect和setWritable的逻辑。当调用disconnect或setWritable(false)时,待调用该方法之前所有请求都执行完成后才令 Promise 成功。 - 优化文本编辑浮动条(
floatBar)的 UI,并保存用户通过浮动条设置的字体样式。
该版本修复了如下问题:
- 加入房间失败时返回的错误码不准确。
- 重新加入房间后,
room.state.memberState为房间初始化时的状态,而非当前的状态。 - 偶现的重连成功后控制台会报错。
- 偶现的
room.state.memberState为undefined。 - 文本编辑浮动条(
floatBar)的按钮不起作用或直接消失。 - 偶现的房间突然白屏并重连。
- 调用
dispatchMagixEvent发送事件后多次收到事件回调。 - PPT 源文件未设置背景填充导致的文档转换失败。
- 偶现的
canvas渲染崩溃。 - 偶现的
canvas渲染占用内存过高。 - 在 iOS 或 Android 设备上,白板偶现网格。
2.15.1 版
该版本于 2021 年 11 月 16 日发布,修复了在白板中展示动态 PPT 时遇到的如下问题:
- 当母版中的动画出错时,应用了该母版的幻灯片页无法翻页。
- 部分可点击的元素点击无效。
2.15.2 版
该版本于 2021 年 11 月 19 日发布。
该版本在 JoinRoomParams 中新增 disablePencilWrittingLimitFrequency 属性,支持关闭或开启在使用 pencil 书写时笔迹同步的频率限制。
为方便开发者灵活监听自定义事件,该版本在 addMagixEventListener 方法中新增 options 参数并新增 MagixEventListenerOptions 类,支持设置以下自定义事件监听选项:
fireInterval:SDK 触发自定义事件回调的间隔,单位为毫秒。fireSelfEventAfterCommit:是否待服务器确认dispatchMagixEvent方法调用成功后再发送事件回调。
该版本修复了特定情况下,房间初始化或调整场景中组件顺序后渲染崩溃的问题。
JoinRoomParams中新增disablePencilWrittingLimitFrequency属性addMagixEventListener中新增options参数MagixEventListenerOptions
2.15.0 版
该版本于 2021 年 11 月 16 日发布。
为方便管理房间内的用户,该版本在 JoinRoomParams 中新增 uid 属性,用于设置用户的唯一标识符(UID)。
如果你将 SDK 升级到 v2.15.0 或之后版本,为保证你的业务功能不受影响,调用 joinRoom 时必须在 JoinRoomParams 传入字符串格式的 uid,长度不超过 1024 字节,并确保同一房间内每个用户的 uid 唯一。详见加入实时房间。
该版本在 JoinRoomParams 中新增 disableMagixEventDispatchLimit 属性,支持关闭或开启发送自定义事件的频率限制。
该版本新增支持转换和展示如下 PowerPoint(PPT)特性:
- 动作按钮
- 母版动画
为方便获取跳转操作的结果,该版本将 seekToProgressTime 方法的返回值由 void 改为 Promise。成功调用 seekToProgressTime 方法后,SDK 会返回 PlayerSeekingResult,报告跳转回放的结果。
该版本进行了如下改进:
- 进一步优化书写体验。
- 为提升用户体验,当调用
insertImage插入图片时,SDK 默认将ImageInformation中的uniformScale设为true,确保用户调整图片时,图片会按比例缩放。如果你不需要图片按比例缩放,可以将uniformScale设为false.
该版本修复了如下问题:
- 加入房间时调用
setWritable(false)导致房间状态异常。 - 粘贴复制的内容时,可能粘贴出多份。
- 读取
room.state.roomMembers时,每个字段可能出现两次。 - 在白板中展示动态 PPT 时遇到的如下问题:
- 偶现的图片位置偏移
- 部分样式读取失败导致的白屏
- 部分文字旋转角度和颜色错误
- 带有动画效果的元素可能不出现
- 文字的动画效果表现不正确
-
JoinRoomParams中新增以下属性:uiddisableMagixEventDispatchLimit
seekToProgressTime
MemberState中的pencilOptions属性BroadcastState中的broadcasterInformation属性RoomState中的zoomScale属性Player中的scheduleTime属性Player中的seekToScheduleTime方法
2.14.5 版
该版本于 2021 年 10 月 21 日发布。
自该版本起,white-web-sdk 不再支持以下版本的移动端浏览器:
- 适用于 Android 4.4 及之前版本的浏览器。
- 适用于 iOS 9 及之前版本的浏览器。
该版本新增如下方法支持导入和导出场景:
exportScene:导出指定场景的所有内容,包括场景中展示的图片或网页,并保存为二进制文件(Blob 对象)。importScene:将通过exportScene方法导出的场景内容导入指定的场景目录中。
该版本在 ScenePathType 中新增 conflict 枚举,表示该路径中包含已有场景的路径,无法存在。
该版本新增 lockImages 方法,支持锁定或解除锁定选中的图片。当图片被锁定时,用户无法移动、缩放或删除该图片。
该版本新增 updateTextFontSize 方法,用于调整使用 text 工具输入的文字的大小。
该版本新增如下方法,支持调整组件层级:
moveSelectedComponentsToTop:移动选中的组件到顶层。moveSelectedComponentsToBottom:移动选中的组件到底层。
该版本进行了如下改进:
- Web 端之间支持发送和接收
payload为ArrayBuffer的自定义事件。 - 持续优化书写性能。
- 优化书写笔迹的形态。
- 提高
onPhaseChanged回调的准确性。 - 在 PC 端,使用橡皮擦只能删除选中的最上层组件。
- 隐藏动态 PPT 母版中不应该显示的元素。
该版本修复了如下问题:
- 调用
customInput自定义输入源不生效。 - 切换到抓手工具后,无法切换回光标。
- 书写过程中偶现的笔迹突然消失。
- 书写时偶现的笔迹带有不自然的水滴状笔锋。
- 手动缩放文本框后再编辑文字,文本框和文字复原到原来的大小。
- 修改
InvisiblePlugin时,新传入的attributes无法与原attributes重复。 - 在部分浏览器和设备上窗口尺寸发生变化后,视角出现异常。
- 快速拖动橡皮擦时,橡皮擦的图标放大效果和快速删除功能失效。
- 偶现的动态 PPT 中多个音频文件同时播放。
- 动态 PPT 返回上一页后动画显示异常。
- 动态 PPT 中带动画的文本框偶现镜像翻转。
exportSceneimportSceneScenePathType中新增conflictlockImagesupdateTextFontSizemoveSelectedComponentsToTopmoveSelectedComponentsToBottom
2.13.17 版
该版本于 2021 年 8 月 20 日发布。
为完善动态文档转换功能,该版本新增支持转换和展示如下 PowerPoint 特性:
- 对文本按段落添加动画。
- 对文本添加的动画可逐字或逐词显示。
- 所有的表格预设样式。
- 小于 9 pt(12 px) 的文字。
该版本进行了如下优化:
- 在白板上编辑文本时,设置浮动条上的删除按钮为禁用状态。
- 用户点击浮动条上面的按钮时,禁止浮动条移动。
该版本修复了如下问题:
- 偶现的加入房间时,房间一直卡在
connecting状态。 - 断线重连后,部分用户的光标消失。
- 断线重连后,部分插件的状态出现混乱。
- 抓手工具不受设置的视角边界的限制。
- 在某些高分辨率设备上,当用户处于跟随视角模式时,视角的中心点出现轻微偏移。
- 在白板中展示动态 PPT 时遇到的如下问题:
- 段间距显示不正确
- 文本分栏无效
- 使用幻灯片背景填充形状时显示不正确
- 悬挂缩进异常
- 动画回退后显示异常
- 文字编号错误
- 转换后公式显示不全
- 部分换行不正确
- 从右往左书写的文字(如阿拉伯文)显示异常
2.13.11 版
该版本于 2021 年 7 月 23 日发布。
为完善动态文档转换功能,该版本新增支持转换和展示如下 PowerPoint(PPT)特性:
- 反转路径方向动画效果
- 纵向文本框
- Microsoft 公式编辑器 3.0
- 母版隐藏背景图形
- 编辑图片颜色
- 部分图片效果:
- 金属框架
- 柔化边缘矩形
- 双框架,黑色
- 厚重哑光,黑色
- 简单框架,黑色
- 中等复杂框架,黑色
- 居中矩形阴影
- 柔化边缘椭圆
- 金属圆角矩形
- 金属椭圆
该版本进行了如下优化:
- 降低了播放动态 PPT 动画时占用的 CPU。
- 提升了在白板上书写绘画的流畅度。
- 优化时间戳同步算法,缩小时间同步误差。
- 支持在场景变更时打印日志。
- 在
PptDescription中新增previewURL参数,支持在白板场景中展示动态 PPT 预览图。
该版本修复了如下问题:
- 调整视角时偶现的白板清晰度异常。
- SDK 代码经过 uglify-js 混淆后的语义可能和之前不一样。
- 移动端用户进入房间后有时无法画出第一笔线。
- 在白板中展示动态 PPT 时遇到的如下问题:
- 动画未按设置的顺序播放。
- 动画播放后未按设置隐藏。
- 表格高度显示异常。
- 无法显示占位符中插入图片。
- 部分形状绘制错误。
- 文字缩进错误。
- 无法点击动画触发器。
- 图片透明度过大。
2.13.4 版
该版本于 2021 年 6 月 15 日发布。
该版本修复了调用 moveCamera 不生效的问题。
2.13.2 版
该版本于 2021 年 6 月 10 日发布。
该版本修复了如下问题:
redo、undo方法的部分异常行为。- 文本输入框的异常行为。
2.12.21 版
该版本于 2021 年 6 月 4 日发布。
该版本修复了如下问题:
- 浏览器控制台打印出的若干错误信息。
- 动态 PPT 上显示的箭头头部过大。
- 频繁切换动态 PPT 页面可能导致字体显示混乱。
- 无法解析不含
tablestyle.xml文件的动态 PPT。
2.12.20 版
该版本于 2021 年 5 月 24 日发布。
该版本优化了动态 PPT 的日志等级。
2.12.19 版
该版本于 2021 年 5 月 20 日发布。
该版本修复了特定情况下 SDK 连接服务器失败并报错 magix connect failed 的问题。
2.12.18 版
该版本于 2021 年 5 月 17 日发布。
该版本将服务端排版(useSeverWrap)由默认关闭改为默认开启。开启服务端排版后,服务端会裁剪字体包的体积,提高渲染速度。
2.12.17 版
该版本于 2021 年 5 月 13 日发布。
该版本修复了用户设备的系统时间不准时导致实时房间的延迟出现异常的问题。
2.12.16 版
该版本于 2021 年 5 月 11 日发布。
该版本新增如下特性:
- 动态 PPT 支持设置图片透明度。
- 动态 PPT 支持将 SmartArt 展示为图片(暂不支持 SmartArt 动画)。
- 动态 PPT 支持图表
该版本修复了如下问题:
- 调用
room.insertPlugin时selectable字段不生效。 - 动态 PPT 部分元素内容缺失可能会导致渲染失败。
- 在动态 PPT 上使用画笔可能不生效。
2.12.15 版
该版本于 2021 年 4 月 28 日发布。
该版本新增 changeToClick 和 changeToText,分别设置快速切换到点选工具(clicker)和文字工具(text)的快捷键。
该版本优化了动态 PPT 的加载速度。
该版本修复了暂停白板回放后,动态 PPT 内媒体文件没有停止播放的问题。
2.12.14 版
该版本于 2021 年 4 月 22 日发布。
该版本新增音视频裁剪功能。
该版本优化了动态 PPT 的预加载逻辑。
该版本修复了如下问题:
- 预览 PPT 页面时,页面上的音视频播放条没有显示。
- 部分情况下,
room.state.cameraState更新不及时。
2.12.13 版
该版本于 2021 年 4 月 21 日发布。
该版本修复了如下问题:
- 在白板回放过程中频繁调用
seekToProgressTime方法,可能会出现异常。 - 部分情况下,文本框在编辑模式和非编辑模式之间的切换不及时。
2.12.12 版
该版本于 2021 年 4 月 16 日发布。
该版本有如下改进:
- 提高了动态 PPT 的颜色兼容性。
- 优化了动态 PPT 的分散对齐和两端对齐功能。
- 优化了动态 PPT 文本缩进的显示。
2.12.11 版
该版本于 2021 年 4 月 15 日发布。
该版本的新增特性如下:
- 新增
syncBlockTimstamp方法,用于设置发送白板内容的延时。该方法可以用于保证白板内容与音视频同步发送。 - 新增
customInput接口,用于设置自定义输入源。
该版本优化了 canvas 渲染模式下的显示性能。
该版本修复了如下问题:
InvisiblePlugin部分情况下的异常行为。- 放大或缩小视角之后,文字的位置可能错位。
2.12.9 版
该版本于 2021 年 4 月 9 日发布。
该版本支持在白板回放房间使用 Token 鉴权。
该版本修复了如下问题:
- 某些情况下已经消失的光标会再次出现。
- 在某些低版本浏览器中,
canvas渲染引擎对图像的渲染不准确。
2.12.8 版
该版本于 2021 年 4 月 6 日发布。
该版本优化了日志的上报逻辑。
该版本修复了设置跟随者模式无法立即生效的问题。
2.12.7 版
该版本于 2021 年 3 月 31 日发布,修复了如下问题:
- 动态 PPT 中同时有动画出现和动画消失时,图形显示不完整。
- 动态 PPT 中的部分动画和公式无法识别,导致出现白屏。
2.12.6 版
该版本于 2021 年 3 月 29 日发布,修复了部分组件有时消失不见的问题。
2.12.5 版
该版本于 2021 年 3 月 20 日发布。
为优化笔迹显示,该版本新增笔锋效果。你可以在构造 joinRoomParams 时,设置 disableNewPencil 为 false/true 以关闭/开启笔峰效果。
为正常显示笔迹,在开启笔峰效果前,请确保该房间内的所有用户使用如下 SDK:
该版本改进了文字工具。
该版本修复了如下问题:
- 特定场景下,动态 PPT 出现白屏。
- 在支持 ES6 的浏览器上使用白板时,
Symbol对象使用异常。 - 铅笔工具绘制的笔迹出现视觉问题。
2.12.2 版
该版本于 2021 年 3 月 04 日发布,优化了网络连接。
2.12.1 版
该版本于 2021 年 3 月 04 日发布,修复了 onPPTLoadProgress 报告的文档转换任务进度不准的问题。
2.12.0 版
该版本于 2021 年 2 月 26 日发布。
该版本新增特性如下:
-
为丰富图形绘制工具,该版本在
ShapeType新增以下枚举值:triangle:三角形rhombus:菱形pentagram:五角星speechBalloon:备注气泡
-
浮动条新增图层按钮,可以用于置顶 / 置底图片。
-
浮动条新增复刻按钮。
-
Displayer、JoinRoomParams和ReplayRoomParams中新增配置项disableOthersSelectingBox,可用于隐藏/显示其他用户的选择框。 -
ImageInformation中新增uniformScale,用于设置图片为等比例缩放。 -
支持使用服务器端换行引擎排版结果。
- 优化了浮动条的图标,以加快加载速度。
- 使用文字工具书写文字后,不会自动切换到选择工具。
- 互动模式的用户全部离开白板房间后,如果白板上有 PPT,则白板播放器自动聚焦在 PPT 上。
该版本修复了如下问题:
- 偶现的动态 PPT 转换无法预览的问题。
- 部分高亮选择器的层级渲染错误。
- 拖动物体时判定范围可能发生错误。
- 渲染矩形时,有时四个角会在圆角、直角之间来回切换。
- 内部组件渲染出错,导致动态 PPT 整体不可见。
2.12.0 版之前
关于更多版本的发版说明,详见版本历史。
2.6.4 及之前版本已经停止维护,建议升级到最新版本。