[发明专利]一种流式文档在线编辑方法有效
申请号: | 202111279355.5 | 申请日: | 2021-11-01 |
公开(公告)号: | CN113723064B | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 许剑锋 | 申请(专利权)人: | 冠群信息技术(南京)有限公司 |
主分类号: | G06F40/166 | 分类号: | G06F40/166;G06F40/14;H04L67/565 |
代理公司: | 重庆百润洪知识产权代理有限公司 50219 | 代理人: | 陈万江 |
地址: | 210000 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文档 在线 编辑 方法 | ||
本发明涉及数据处理技术领域,尤其涉及一种流式文档在线编辑方法;包括在线编辑和协同编辑两种方式,在线编辑通过浏览器端打开流式文档,具体是通过JavaScript直接对流式文档进行格式转化;再通过监听光标变化和事件,操作虚拟dom树,改变数据层,渲染真实dom树;协同编辑具体在多个不同的浏览器端打开同一文档并且同时连接websocket服务;编辑器监听所有用户的原子化操作,生成的相应的原子化操作数据;由websocket接收并广播到所有的在线编辑的浏览器端。本发明有效的减少前后端之间的通信消耗,避免受到网络环境的影响。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种流式文档在线编辑方法。
背景技术
流式文档:指对文档包含的文字、数字、表格和图形图像进行特定的版排方式处理,保存后的内容是原始的编辑元素,用户通过阅读软件能查看到编辑后的排版风格,并且可以在不同的缩放比率间自适应版面大小显示,如Word、WPS。在线编辑器:一种通过浏览器对文字、图片等内容进行在线编辑修改的工具。一般所指的在线编辑器是指HTML编辑器。目前流式文档在线编辑器主要是谷歌文档和金山在线文档。其它如腾讯文档、飞书等在线编辑器更多的是一种富文本编辑器,对流式文档的支持很有限。
现有的在线打开流式文档的方式都会使用服务器端进行文件格式的转化,然后前端调用后端api接口获取转化后的数据;这样编辑时不仅必须有web服务支持,而且会受到网络环境和服务器性能的影响。OT(Operation Transformation)算法,操作转换算法,协同技术中用来保持不同的数据副本一致性的一种算法。在不同的终端,根据操作顺序的不同,对操作进行调整,以保持数据一致性。本发明的协同编辑功能,是OT算法的一种实现方法,本质上就是把用户的原子操作序列化后,然后操作虚拟dom树,最终渲染到浏览器端。所以,传统的方法都具有被网络连接影响概率大的弊端。
发明内容
有鉴于此,本发明的目的是提供一种流式文档在线编辑方法,包括在线编辑和协同编辑两种方式,所述的在线编辑具体按以下步骤执行:
S1:通过浏览器端打开流式文档,具体是通过JavaScript直接对流式文档进行格式转化;省略了发送给后端服务器再从服务器获取转化后的格式的数据这样的中间环节。这样能有效的减少前后端之间的通信消耗,避免受到网络环境的影响,提高应用打开的速度和安全性,同时保证在线编辑与后端的有效分离,实现了解耦。
S2:通过监听光标变化和事件,操作虚拟dom树,改变数据层,渲染真实dom树;从而实现改变文档内容的目的。
所述的协同编辑具体按以下步骤执行:
1):在多个不同的浏览器端打开同一文档并且同时连接websocket服务;
2):编辑器会监听所有用户的原子化操作,具体是利用OT算法,通过监听事件,获取用户的原子化操作生成的相应的原子化操作数据;首先设置A操作端是授权用户,进行编辑操作,并监听所有用户的原子化操作,生成原子化操作数据;其它浏览器接收websocket传输的原子化操作数据;
3):由websocket接收并广播到所有的在线编辑的浏览器端;
4):服务器端接收原子操作数据时,存储到对应的数据库中;
5):所有在线编辑浏览端均通过websocket接口同步接收原子操作数据;
6):根据原子操作数据操作虚拟dom树,本地自动将原子化操作数据通过数组的方式进行序列化存储处理,再和服务器端的数据进行比对;以保证多个浏览器端文档内容的一致性。
7):将虚拟dom树渲染成真实dom树。
进一步,在步骤S1中,具体按以下步骤执行:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于冠群信息技术(南京)有限公司,未经冠群信息技术(南京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111279355.5/2.html,转载请声明来源钻瓜专利网。