需要在自有产品中提供文档编辑能力的团队,通常面临一个分岔:嵌入编辑 SDK、集成一套文档套件,或者自研编辑器。每种选择都对应不同类型的长期成本。
本文聚焦第一种选择——在私有化环境中部署的可嵌入文档编辑 SDK——以及那些区分“可用方案”与“昂贵方案”的标准。
嵌入、集成还是自研?
- 嵌入 SDK。 你获得编辑界面和协同模型,再把它集成进产品的导航、权限和存储体系。当文档只是更大工作流中的一项能力时,这是最佳选择。
- 集成文档套件。 你采用一套更完整的产品,它有自己的界面和账号模型。用于标准办公场景很快,但当体验必须与自有产品浑然一体时就不太合适。
- 自研编辑器。 控制力最强,成本最高。只有当编辑行为是核心差异化能力、且你能为长期路线图持续投入时才合理。
这些区别在商业上同样重要。WPS 这类产品是完整的办公套件;可嵌入 SDK 是一个组件。它们解决的是不同问题,组件不能替代套件,套件也不适合嵌入到别人的工作流中。
可嵌入 SDK 必须具备的能力
1. 编辑还原度
用户会拿编辑器与他们已经在用的工具作比较。需要检查:
- 富文本结构:标题、列表、表格、图片、批注,以及需要时的修订痕迹。
- 分页与打印版式(如果文档具有合同性质或需要打印)。
- 从浏览器和办公软件粘贴内容时的表现。
- 长文档性能——数百页、大表格、大量图片。
用你自己的真实文档测试,而不是厂商挑选的示例文件。
2. 协同模型
多用户编辑需要一致性模型。常见的有两种:
- 操作转换(OT):将操作针对并发操作进行变换;适合结构化文档,需要中心化的权威节点。
- 基于 CRDT 的方案:使用收敛的数据结构;适合离线和对等场景,但在内存占用和文档表示上有不同的权衡。
正确答案取决于你的部署方式和离线要求。要问清冲突如何解决、网络分区期间会发生什么,以及当其他人在编辑时,单个用户执行撤销会是什么行为。
3. 格式兼容性
导入与导出是项目悄悄失败的地方。需要确认:
- 导入、导出和往返转换分别支持哪些格式。
- 往返转换是否保留样式、批注和修订历史。
- 不支持的特性如何处理——静默丢弃还是明确标记。
- 转换发生在客户端、服务端,还是两端都做。
如果你的用户需要与 Microsoft Office 或 WPS 用户交换文件,往返还原度值得单独准备一套测试集。
4. 权限与共享
文档通常从宿主产品继承权限。SDK 必须支持文档级角色、按需的分享链接,以及管理员的强制覆盖能力,同时不能把你的鉴权逻辑在第二套系统中重复实现。
要问清权限判定在何处执行:客户端、协同服务,还是存储层。只有服务端执行才真正有意义。
5. 存储与部署
在私有化部署中,文档内容和版本历史存放在你的对象存储和数据库中。需要明确:
- 文档的表示格式,以及是否可导出。
- 版本历史与留存控制。
- 备份与恢复的预期。
- 组件清单、端口和出网要求。
6. 离线与弱网
如果用户会在不稳定的网络下编辑,需要定义预期行为:本地草稿的持久化、重连时的冲突处理,以及协同服务不可达时用户能看到什么。
7. 集成接口
SDK 应当提供生命周期事件、自定义工具栏操作、插件扩展点和主题定制。要考察有多少产品界面必须重建、有多少可以通过配置完成,以及升级是否会破坏你的定制。
评估计划
一次简短但贴近真实的评估:
- 在你自己的应用外壳中的测试页面里嵌入编辑器。
- 导入 10–20 份有代表性的文档,与源文件对比渲染结果。
- 组织 5–10 人进行一次协同编辑,并包含一次强制断网。
- 用篡改过的客户端请求尝试绕过权限。
- 导出文档并验证往返还原度。
- 与基础设施团队一起复核组件和网络要求。
对每个候选方案,都按同一套标准记录结果。演示截图不能作为证据。
成本与路线图风险
- 授权模式。 按席位、按文档、按部署实例或按平台授权,会随用量增长显著改变经济性。
- 格式维护。 Office 格式仍在演进;要问清兼容性更新如何交付。
- 路线图依赖。 如果某项必需能力仍处于“计划中”,就要约定合同节点或备选方案。
- 社区与人才。 被广泛使用的开源编辑器能降低锁定风险;商业闭源产品可能提供更好的支持。两者都合理,但意味着不同的风险。
飞雁在线文档的定位
飞雁在线文档是我们推出的在线文档编辑 SDK,面向嵌入式和私有化部署设计。它目前处于 Coming soon 阶段:我们不会把它当作已可用的产品来介绍,也没有可引用的客户部署案例。
如果你现在正在评估这一品类,不妨用上面的标准衡量任何候选方案;待我们的预览版可用后,也请以同样的标准衡量我们。相比于一份路线图,我们更希望由一个可运行的产品来接受评判。
页面中标注 Coming soon 或 Roadmap 的能力尚未在当前版本提供;产品能力与上线状态以正式发布说明为准。