Univer 简介
Univer 提供了一个全面的企业级文档与数据协同的解决方案,支持电子表格、文本文档和演示幻灯片三大核心文档类型。通过灵活的 API 和插件机制,开发者可以在 Univer 的基础上进行个性化功能的定制和扩展,以适应不同用户在不同场景下的特定需求。
核心特性
- 🚀 高性能
基于 Canvas 的渲染引擎和公式引擎,支持 Web Worker,保证了高性能的同时,也能够支持大规模的数据处理。
- 🧩 插件化
Univer 的核心功能和能力都是通过插件的方式提供的,开发者可以自由组合所需功能或扩展自定义插件。
- 🪄 可定制
通过导入自定义主题、图标、组件库等方式,开发者可以定制化 Univer 的外观和交互。
- 🌍 国际化
支持多语言,开发者可以自由切换语言,也可以自定义语言包。
- 📖 开源
Univer OSS 的核心代码在 Apache-2.0 协议下开源,任何组织和个人都可以免费使用其源代码和 npm 包。
- 🌿 生态
丰富的生态,借助命令行工具、构建工具插件、示例库等等,方便开发者快速上手。
- 💬 社区支持
提供 Discord 社区和 GitHub Discussions,方便开发者交流和寻求帮助。
- 📈 持续更新
Univer 团队会持续更新和维护 Univer,保证其稳定性和可靠性。
- 💼 商业版
为有特定需求的企业提供商业版,包括但不限于多人协同编辑和协同浏览、数据连接器、协同浏览(Live Share)等功能。
功能
🛠 通用功能
编辑操作
- 撤销 / 重做
- 复制 / 粘贴
浏览
- 基于 Canvas,支持多种文档类型的高性能渲染引擎
- 滚动、缩放
UI
- 可配置的工作区,包括标题栏、工具栏、侧边栏、状态栏、右键菜单等
- 跨操作系统的快捷键支持
- 快捷键面板
📊 电子表格功能支持
编辑操作
- 新建、删除、移动子表
- 单元格样式:加粗、斜体、下划线、删除线、字体、字号、字体颜色、背景颜色、边框样式、对齐方式、文字旋转
- 合并单元格:合并和取消合并单元格,按照不同的方向合并单元格
- 行列操作:插入、删除与移动行列,修改行高列宽
- 复制粘贴:仅粘贴值、仅粘贴样式、仅粘贴公式、仅粘贴列宽、仅粘贴边框样式
- 清除内容:仅清除内容、仅清除样式、清除全部
- 单元格编辑:单元格编辑器,单元格内富文本
- 插入和删除单元格
- 下拉填充
- 格式刷
- 评论
- 插入浮动图片
浏览
- 冻结行列
- 统计栏
- 求和、最大值、最小值、平均值、计数
- 十字高亮
数据与计算
- 公式
- Fx 栏(公式编辑器)
- 公式高亮
- 内置多种公式
- 基于 Web Worker 的公式计算(可选)
- 数据透视表
- 数字格式
- 常规、会计、货币、日期、千分位符
- 数据验证
- 条件格式
- 排序
- 筛选
自动化
- Uniscript 脚本 (alpha)
其他功能
- 禅编辑模式(可选)
- 打印
- 协同编辑
- Live Share
- 导入 & 导出
📝 文本文档功能支持
编辑操作
- 文本样式:加粗、斜体、下划线、删除线、字体、字号、字体颜色
- 评论
- 插入浮动图片
- 协同编辑
- 表格
排版
- 页眉页脚
📽️ 演示文稿功能支持
- 编辑幻灯片
Univer OSS 与商业订阅服务
Univer 开源了大部分核心功能,并提供相应的 npm 包,任何组织和个人都可以免费商用这些功能,我们称之为 Univer OSS(Open Source Software)。
此外,针对企业和组织的高级功能(如协同编辑、实时共享、导入与导出、打印等),我们也提供了相应的 npm 包和后端服务。这些功能是闭源的,但同样可以免费商用。
对于有更高需求的企业,Univer 提供商业订阅服务。商业订阅不仅提供更为开放的功能,还能为有特殊需求的用户提供专业支持。
兼容环境
Univer 的编译目标是 Chrome 70,但这并不意味着 Univer 能够完全支持所有浏览器。我们会尽力确保 Univer 在以下浏览器中能够正常运行:
(opens in a new tab)IE / Edge | (opens in a new tab)Firefox | (opens in a new tab)Chrome | (opens in a new tab)Safari | (opens in a new tab)Electron |
---|---|---|---|---|
Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
如果遇到无法兼容的情况,请先借助对应的 polyfill 来解决,如果仍然无法解决,请提交 issue (opens in a new tab)。
TypeScript
Univer 是使用 TypeScript 编写的,因此我们提供了完整的类型定义文件,以便开发者在使用 Univer 时能够获得更好的开发体验。
加入社区
如果你已经迫不及待地想要体验 Univer,请参考快速开始。
或者加入我们的开发者社区,和我们一起讨论:
- Discord 社区 (opens in a new tab)
- GitHub Discussions (opens in a new tab)
- 扫描下方二维码,加入 Univer 中文社群
你也可以在以下平台关注我们的动态:
如何贡献
我们欢迎任何形式的贡献,包括但不限于提交 issue (opens in a new tab)、提交 PR、参与讨论等。请在参与 Univer 的开发之前阅读贡献指南 (opens in a new tab)。
开源协议
Univer OSS 的核心代码 (opens in a new tab)在 Apache-2.0 协议下开源,任何组织和个人都可以免费使用其源代码和 npm 包。
本文档 (opens in a new tab)在 CC-BY-NC-SA 4.0 协议下开源,任何组织和个人都可以免费使用,但不允许用于商业目的。