在线编辑器导入文档内容的方法、控制装置及计算机程序产品与流程

摘要: 本技术涉及文本编辑,尤其涉及一种在线编辑器导入文档内容的方法、控制装置及计算机程序产品。背景技术:1、在现有技术中,将本地办公文档导入在线富文本编辑器时,通常采...
在线编辑器导入文档内容的方法、控制装置及计算机程序产品与流程

本技术涉及文本编辑,尤其涉及一种在线编辑器导入文档内容的方法、控制装置及计算机程序产品。

背景技术:

1、在现有技术中,将本地办公文档导入在线富文本编辑器时,通常采用全量替换式导入方案。用户在使用过程中对同一文档进行多版本迭代编辑,每次导入新版本时,编辑器将当前展示的全部内容直接覆盖为导入文档的内容,不对文档各段落进行差异识别。

2、然而,当用户导入的版本文档相对于某一基准版本发生修改的同时,编辑器当前展示内容也相对于同一基准版本发生用户手工修改时,全量替换式导入方案无法基于共同基准文档对三方内容进行段落级的智能合并。现有方案缺乏以段落为粒度的差异比对与变更类型识别机制,所有内容被不加区分地整体替换,用户先前的编辑成果在导入过程中被静默覆盖丢失,版本间的变更过程完全不可追溯。用户只能通过人工逐段比对、手工复制粘贴的方式在不同版本间迁移修改内容,操作繁琐且极易遗漏关键修改。

技术实现思路

1、本发明的主要目的在于提供一种在线编辑器导入文档内容的方法,旨在提升在线编辑器文档导入操作中编辑成果的保护能力和版本变更的可追溯性。

2、为实现上述目的,本发明提供一种在线编辑器导入文档内容的方法,所述在线编辑器导入文档内容的方法包括:

3、接收用户本次导入的版本文档,对所述本次导入的版本文档执行解析,提取所述本次导入的版本文档的段落结构特征列表,所述段落结构特征列表中各条目包含段落标识、段落文本内容和段落文本哈希值;

4、通过前端富文本编辑器的应用程序接口获取所述富文本编辑器当前展示内容的当前段落结构特征列表,所述当前段落结构特征列表的数据结构与所述段落结构特征列表一致;

5、获取前一次导入中持久化存储的基准段落结构特征列表;

6、以所述基准段落结构特征列表为比对基准,将所述段落结构特征列表与所述基准段落结构特征列表进行第一比对,生成第一比对结果;

7、将所述当前段落结构特征列表与所述基准段落结构特征列表进行第二比对,生成第二比对结果;

8、根据所述第一比对结果和所述第二比对结果识别各段落的变更类型,生成合并段落列表;

9、将所述合并段落列表转换为超文本标记语言内容,加载至所述前端富文本编辑器中进行渲染展示。

10、可选地,所述提取所述本次导入的版本文档的段落结构特征列表,包括:

11、遍历所述版本文档中各段落,获取该段落在所述版本文档中的顺序编号作为段落标识;

12、提取该段落去除格式标记后的文本内容作为段落文本内容;

13、对所述段落文本内容执行摘要算法计算,将计算结果作为段落文本哈希值;

14、检测该段落内包含的全部图片占位标识符并聚合为图片占位标识列表;

15、提取该段落的文本格式属性;

16、将所述段落标识、所述段落文本内容、所述段落文本哈希值、所述图片占位标识列表和所述文本格式属性组合为所述段落结构特征列表中与该段落对应的条目。

17、可选地,所述根据所述第一比对结果和所述第二比对结果识别各段落的变更类型,生成合并段落列表,包括:

18、基于所述第一比对结果,确定所述版本文档相对于所述基准段落结构特征列表所对应文档发生变更的第一变更段落集合,所述第一变更段落集合按变更方式分类包括段落新增、段落删除、段落文本修改和段落图片变更;

19、基于所述第二比对结果,确定所述当前展示内容相对于所述基准段落结构特征列表所对应文档发生变更的第二变更段落集合,所述第二变更段落集合按变更方式分类包括段落新增、段落删除和段落文本修改;

20、对于仅出现在所述第一变更段落集合或仅出现在所述第二变更段落集合中的段落,以该段落在对应变更来源中的版本为准纳入所述合并段落列表;

21、对于同时出现在所述第一变更段落集合和所述第二变更段落集合中的段落,确定对应的段落存在编辑冲突。

22、可选地,所述根据所述第一比对结果和所述第二比对结果识别各段落的变更类型,生成合并段落列表,还包括:

23、在对应的段落存在编辑冲突的情况下,为该段落附加冲突标记属性;

24、在所述合并段落列表中对该段落的文本内容同时保留所述版本文档中的修改内容和所述当前展示内容中的修改内容;

25、生成与该段落关联的批注信息,所述批注信息中记录有所述基准段落结构特征列表所对应文档中该段落的原始文本内容。

26、可选地,所述将所述合并段落列表转换为超文本标记语言内容,加载至所述前端富文本编辑器中进行渲染展示,包括:

27、对于附加有所述冲突标记属性的冲突段落,在生成的超文本标记语言中为对应的冲突段落附加预设的冲突样式类;

28、在所述冲突段落的渲染区域中自动插入包含所述批注信息的折叠式批注区域;

29、响应于针对所述冲突段落的保留版本选择操作,根据所述保留版本选择操作保留所述版本文档的修改内容或所述当前展示内容中的修改内容。

30、可选地,所述在线编辑器导入文档内容的方法,还包括:

31、将本次导入操作对应的状态数据进行存储,所述状态数据至少包括所述版本文档对应的所述段落结构特征列表、所述合并段落列表中各段落的最终段落文本哈希值列表,以及本次导入操作中已处理的编辑冲突的解决结果记录。

32、可选地,所述在线编辑器导入文档内容的方法,还包括:

33、获取所述合并段落列表中各段落的所述图片占位标识列表;

34、根据所述图片占位标识列表中的图片占位标识符,从预存储的映射关系表中查找对应的网络访问地址;

35、将各段落的段落文本内容中出现的所述图片占位标识符替换为对应的超文本标记语言图片标签,所述超文本标记语言图片标签中包含所述网络访问地址。

36、可选地,所述对所述段落文本内容执行摘要算法计算,将计算结果作为段落文本哈希值,包括:

37、对所述段落文本内容执行摘要算法计算,生成固定长度的十六进制摘要字符串作为所述段落文本哈希值;

38、在所述第一比对和所述第二比对中,对于两个段落之间文本是否发生修改的判断,通过比较所述两个段落的所述段落文本哈希值进行。

39、此外,为实现上述目的,本发明还提供一种控制装置,所述控制装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的在线编辑器导入文档内容的程序,所述在线编辑器导入文档内容的程序配置为实现如上所述的在线编辑器导入文档内容的方法。

40、此外,为实现上述目的,本发明还提供一种计算机程序产品,包括如上所述的控制装置。

41、本发明实施例通过接收用户本次导入的版本文档,对本次导入的版本文档执行解析,提取本次导入的版本文档的段落结构特征列表,其中段落结构特征列表中各条目包含段落标识、段落文本内容和段落文本哈希值,再通过前端富文本编辑器的应用程序接口获取富文本编辑器当前展示内容的当前段落结构特征列表,且当前段落结构特征列表的数据结构与段落结构特征列表一致,再获取前一次导入中持久化存储的基准段落结构特征列表,并以基准段落结构特征列表为比对基准,将段落结构特征列表与基准段落结构特征列表进行第一比对,生成第一比对结果,将当前段落结构特征列表与基准段落结构特征列表进行第二比对,生成第二比对结果,再根据第一比对结果和第二比对结果识别各段落的变更类型,生成合并段落列表,最后将合并段落列表转换为超文本标记语言内容,加载至前端富文本编辑器中进行渲染展示。如此,通过建立以基准版本为共同参照的三方比对机制,使导入文档相对于基准版本的修改与编辑器当前内容相对于基准版本的修改能够被独立识别和分类,使段落级变更类型包括新增、删除、文本修改和图片变更被精确区分,使同时出现在两路比对结果中的段落对应的编辑冲突被自动检测并以冲突标记和批注形式呈现给用户进行版本选择,从而实现了多版本编辑场景下段落级智能合并,显著提升在线编辑器文档导入操作中编辑成果的保护能力和版本变更的可追溯性。