Univer Boards 简介
Univer Boards 为白板、图表、表格和思维导图提供画布工作区。
Univer Boards 是什么
Univer Boards 是 Univer Office SDK 中的画板产品。当文档不再是网格、页面或幻灯片,而是一个自由布局的工作区时,就可以使用它:白板、图表、便签、连接线、嵌入式表格和思维导图都适合在这里创建。
Univer Office SDK 包含三个 SDK:Web SDK 提供嵌入式编辑器和无头内容处理能力,Server SDK 提供协同与文件导入导出能力,AI SDK 提供 Agent 工作流能力。
Boards 以独立的 Web SDK 单元类型实现。运行时需要创建一个 UniverInstanceType.UNIVER_BOARD 单元,再根据要支持的元素注册相应的模型和 UI 插件。
浏览器兼容性
Web SDK 的编译目标是 Chrome 88,但这并不意味着 Web SDK 能够完全支持所有主流环境。我们会尽力确保 Web SDK 在以下浏览器和 Node.js 环境中能够正常运行:
| Edge | Firefox | Chrome | Safari | Electron |
|---|---|---|---|---|
| >=88 | >=90 | >=88 | >=14.1 | >=12 |
Web SDK 依赖 Intl.Segmenter,如果你的浏览器或运行时环境暂不支持它,请先补充对应的 polyfill。我们推荐使用
@formatjs/intl-segmenter。
如果遇到无法兼容的情况,请先借助对应的 polyfill 来解决,如果仍然无法解决,请提交 issue。
Node.js 兼容性
以下仅适用于在 Node.js 环境中运行 Web SDK 的情况,并不适用于那些基于 Node.js 使用构建工具在浏览器中运行 Web SDK 的情况。
Web SDK 可以在 Node.js 环境中运行,支持的版本为 v18.17.0 及之后的版本。
主要功能
- 页面与元素顺序:页面存储在
pages中,可绘制对象存储在每个页面的elements中,两个层级都使用显式顺序数组。 - 画布元素:处理文本、形状、图片、连接线、组、容器和泳道。
- 命令驱动的编辑:让元素变更、顺序和父子关系统一经过命令层,并提供权限及可选历史记录和协同集成所需的挂钩。
- 浏览器画布:渲染元素,并提供选择、变换、剪贴板、文本编辑、视口控制和面板功能。
- 可扩展适配器:添加表格、思维导图、图表、资源、打印和交换等可选 Boards 能力。
- 持久化:创建、恢复和保存包含页面、资源、主题与活动页面状态的
IBoardData快照。
如何使用这些文档
在屏幕的左侧是文档导航栏。文档页面按从基础到高级的顺序组织,你可以按照这个顺序循序渐进地了解 Web SDK,或者跳到你感兴趣的章节。你还可以在侧边栏的顶部切换 Univer Boards 的文档。
屏幕的右侧是当前页面的大纲。如果你需要快速找到页面,可以使用顶部的搜索栏或搜索快捷键(Ctrl+K 或 Cmd+K)。
我们推荐从 快速开始 出发了解 Web SDK。
前置知识
尽管我们已经尽力使得文档对新手也易于理解,但是我们必须假设你在开始阅读之前已经了解了一些基础知识,以便我们的文档可以专注于 Web SDK。
为了充分利用我们的文档,建议你对 JavaScript 及其生态系统有基本的了解。
如果你有兴趣在 Node.js 上运行 Web SDK,你还应该对 Node.js 有基本的了解。
如果你想尝试高级功能并部署 Univer Server,我们建议你对 Linux、Docker 和 Docker Compose(或 Kubernetes)有基本的了解。
扩展 Univer Boards
在设计之初,Web SDK 就被设计为高度可扩展的,因此你可以根据自己的需求来定制它。
你觉得这篇文档如何?