文档生成方法和装置制造方法及图纸

技术编号:29101591 阅读:21 留言:0更新日期:2021-06-30 10:14
本申请涉及异地多人协同文档编辑技术领域,具体地公开了一种文档生成方法和装置,其中,该方法包括:获取原始文档对应的原始对象集合,其中,原始对象集合包括文字对象和图片对象;读取原始文档对应的本地文档操作队列中的多个文档操作指令,其中,多个文档操作指令包括本地操作指令和异地操作指令;根据多个文档操作指令中各文档操作指令对原始对象集合中的文字对象和图片对象执行对应的操作,得到目标对象集合;基于目标对象集合,生成目标文档。上述方法可以解决协同文档编辑过程中由于异地操作的滞后性带来的部分文字和图片之间的摆放冲突问题。的摆放冲突问题。的摆放冲突问题。

【技术实现步骤摘要】
文档生成方法和装置


[0001]本申请涉及异地多人协同文档编辑
,特别涉及一种文档生成方法和装置。

技术介绍

[0002]在协同编辑过程中,参与者基于本地编辑页面进行操作、将本地操作发送到异地操作队列并接收异地操作同步至本地操作队列。待操作同步之后,各站点操作队列包含的操作一致。
[0003]然而,由于异地操作的滞后性,本地的编辑页面并不能完整体现各站点参与者共同的操作结果,所以基于本地编辑页的操作可能会与异地操作存在冲突。而且,由于文档相对文本较为复杂,文档中存在文字、图像、段等对象,所以文档中存在着图图、图文、文文等冲突,其中嵌入型图片和四周型图片和文字对象的冲突尤为突出。
[0004]针对上述问题,目前尚未提出有效的解决方案。

技术实现思路

[0005]本申请实施例提供了一种文档生成方法和装置,以解决现有技术中异地多人协同编辑文档时本地操作与异地操作存在冲突的问题。
[0006]本申请实施例提供了一种文档生成方法,包括:获取原始文档对应的原始对象集合,其中,原始对象集合包括文字对象和图片对象;读取原始文档对应的本地文档操作队列中的多个文档操作指令,其中,多个文档操作指令包括本地操作指令和异地操作指令;根据多个文档操作指令中各文档操作指令对原始对象集合中的文字对象和图片对象执行对应的操作,得到目标对象集合;基于目标对象集合,生成目标文档。
[0007]在一个实施例中,文字对象中记录有文字内容和文字属性数据,文字属性数据包括文字的位置坐标,文字对象包括第一文字对象和第二文字对象,第一文字对象的位置坐标为空,第二文字对象的位置坐标不为空;图片对象中记录有图片属性数据和图片存储路径,图片属性数据包括图片类型标识,图片对象包括衬托型图片对象、四周型图片对象和嵌入型图片对象,衬托型图片对象的图片类型标识为预设的第一标识,四周型图片对象的图片类型标识为预设的第二标识,衬托型图片对象的图片类型标识为预设的第三标识。
[0008]在一个实施例中,原始文档包括至少一个组对象;组对象包括段对象或者包括段对象和四周型图片对象;段对象包括行对象或者包括行对象和衬托型图片对象;行对象包括文字对象和/或嵌入型图片对象;相应的,根据多个文档操作指令中各文档操作指令对原始对象集合执行对应的操作,得到目标对象集合,包括:获取原始文档对应的组信息列表,其中,组信息列表中包括至少一个组对象中各组对象的信息以及多个组对象之间的相对位置关系;将至少一个组对象中各组对象分配到多个线程中的各线程,以根据各组对象的信息从原始对象集合中获取各组对象对应的文字对象和图片对象,并根据多个文档操作指令中各文档操作指令对各组对象对应的文字对象和图片对象进行并行操作,得到目标对象集
合。
[0009]在一个实施例中,目标对象集合包括第一文字对象和嵌入型图片对象;相应的,基于目标对象集合,生成目标文档,包括:根据目标对象集合中的第一文字对象的文字属性数据在目标文档中摆放对应的文字内容;基于目标对象集合中的嵌入型图片对象的图片存储路径获取目标对象集合中的嵌入型图片对象对应的图片内容;确定目标对象集合中待摆放的目标嵌入型图片对象与已摆放的第一文字对象之间是否存在位置冲突;在确定目标嵌入型图片对象与已摆放的第一文字对象之间存在位置冲突的情况下,根据第一预设算法摆放目标嵌入型图片对象对应的图片内容并调整已摆放的第一文字对象对应的文字内容的位置,生成目标文档。
[0010]在一个实施例中,确定目标对象集合中待摆放的目标嵌入型图片对象与已摆放的第一文字对象是否存在位置冲突,包括:确定要摆放的目标嵌入型图片对象所在的目标行;判断目标嵌入型图片对象的位置是否在目标行的最右侧的第一文字对象的左侧;在判断出目标嵌入型图片对象的位置在目标行的最右侧的第一文字对象的左侧的情况下,确定目标嵌入型图片对象与已摆放的第一文字对象存在位置冲突。
[0011]在一个实施例中,根据第一预设算法摆放目标嵌入型图片对象对应的图片内容并调整已摆放的第一文字对象对应的文字内容的位置,生成目标文档,包括:确定位于目标行中且与目标嵌入型图片对象左侧相邻的目标文字对象的位置坐标,并根据目标文字对象的位置坐标确定目标嵌入型图片对象的位置坐标;根据经确定的目标嵌入型图片对象的位置坐标,在目标文档中摆放目标嵌入型图片对象对应的图片内容并更新目标行中位于目标文字对象右侧的第一文字对象的位置坐标。
[0012]在一个实施例中,图片属性数据包括位置数据;目标对象集合包括四周型图片对象和第一文字对象;相应的,基于目标对象集合,生成目标文档,包括:基于目标对象集合中待摆放的目标四周型图片对象的图片存储路径获取目标四周型图片对象对应的图片内容;根据目标四周型图片对象的位置数据在目标文档中摆放目标四周型图片对象对应的图片内容;确定要摆放的第一文字对象与目标四周型图片对象之间是否存在位置冲突;在确定要摆放的第一文字对象与目标四周型图片对象之间存在位置冲突的情况下,根据第二预设算法在目标文档中摆放要摆放的第一文字对象对应的文字内容。
[0013]在一个实施例中,确定要摆放的第一文字对象与目标四周型图片对象之间是否存在位置冲突,包括:确定要摆放的第一文字对象与目标四周型图片对象是否满足如下逻辑关系:{B.Pos.x<A.Pos.x+A.size<B.Pos.x+B.wid||B.Pos.x<A.Pos.x<B.Pos.x+B.wid}&&{B.Pos.y

B.len<A.Pos.y<B.Pos.y||B.Pos.y

B.len<A.Pos.y+A.size<B.Pos.y};在确定满足以上逻辑关系的情况下,确定要摆放的第一文字对象与目标四周型图片对象之间存在位置冲突;其中,A为要摆放的第一文字对象,A.Pos.x表示A的x坐标,A.Pos.y表示A的y坐标,A.size表示A的尺寸,B为目标四周型图片对象,B.Pos.x表示B的x坐标,B.Pos.y表示B的y坐标,B.size表示B的尺寸,B.wid表示B的宽度,B.len表示B的高度,x轴为目标文档中沿着从左到右的方向,y轴为目标文档中沿着从上到下的方向,||为逻辑或运算符,&&为逻辑与运算符。
[0014]在一个实施例中,根据第二预设算法在目标文档中摆放要摆放的第一文字对象对应的文字内容,包括:按照以下公式确定要摆放的第一文字对象对应的位置坐标:A.Pos.x
=B.Pos.x+B.wid;其中,A为要摆放的第一文字对象,A.Pos.x表示A的x坐标,B为目标四周型图片对象,B.Pos.x表示B的x坐标,B.wid表示B的宽度,x轴为目标文档中沿着从左到右的方向,y轴为目标文档中沿着从上到下的方向。
[0015]本申请实施例还提供了一种文档生成装置,包括:获取模块,用于获取原始文档对应的原始对象集合,其中,原始对象集合包括文字对象和图片对象;读取模块,用于读取原始文档对应的本地文档操作队列中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文档生成方法,其特征在于,包括:获取原始文档对应的原始对象集合,其中,所述原始对象集合包括文字对象和图片对象;读取所述原始文档对应的本地文档操作队列中的多个文档操作指令,其中,所述多个文档操作指令包括本地操作指令和异地操作指令;根据所述多个文档操作指令中各文档操作指令对所述原始对象集合中的文字对象和图片对象执行对应的操作,得到目标对象集合;基于所述目标对象集合,生成目标文档。2.根据权利要求1所述的方法,其特征在于,所述文字对象中记录有文字内容和文字属性数据,所述文字属性数据包括文字的位置坐标,所述文字对象包括第一文字对象和第二文字对象,所述第一文字对象的位置坐标为空,所述第二文字对象的位置坐标不为空;所述图片对象中记录有图片属性数据和图片存储路径,所述图片属性数据包括图片类型标识,所述图片对象包括衬托型图片对象、四周型图片对象和嵌入型图片对象,所述衬托型图片对象的图片类型标识为预设的第一标识,所述四周型图片对象的图片类型标识为预设的第二标识,所述衬托型图片对象的图片类型标识为预设的第三标识。3.根据权利要求2所述的方法,其特征在于,所述原始文档包括至少一个组对象;所述组对象包括段对象或者包括段对象和四周型图片对象;所述段对象包括行对象或者包括行对象和衬托型图片对象;所述行对象包括文字对象和/或嵌入型图片对象;相应的,根据所述多个文档操作指令中各文档操作指令对所述原始对象集合执行对应的操作,得到目标对象集合,包括:获取所述原始文档对应的组信息列表,其中,所述组信息列表中包括所述至少一个组对象中各组对象的信息以及所述多个组对象之间的相对位置关系;将所述至少一个组对象中各组对象分配到多个线程中的各线程,以根据所述各组对象的信息从所述原始对象集合中获取所述各组对象对应的文字对象和图片对象,并根据所述多个文档操作指令中各文档操作指令对所述各组对象对应的文字对象和图片对象进行并行操作,得到目标对象集合。4.根据权利要求2所述的方法,其特征在于,所述目标对象集合包括第一文字对象和嵌入型图片对象;相应的,基于所述目标对象集合,生成目标文档,包括:根据所述目标对象集合中的第一文字对象的文字属性数据在目标文档中摆放对应的文字内容;基于所述目标对象集合中的嵌入型图片对象的图片存储路径获取所述目标对象集合中的嵌入型图片对象对应的图片内容;确定目标对象集合中待摆放的目标嵌入型图片对象与已摆放的第一文字对象之间是否存在位置冲突;在确定目标嵌入型图片对象与已摆放的第一文字对象之间存在位置冲突的情况下,根据第一预设算法摆放所述目标嵌入型图片对象对应的图片内容并调整已摆放的第一文字对象对应的文字内容的位置,生成目标文档。5.根据权利要求4所述的方法,其特征在于,确定目标对象集合中待摆放的目标嵌入型
图片对象与已摆放的第一文字对象是否存在位置冲突,包括:确定要摆放的目标嵌入型图片对象所在的目标行;判断所述目标嵌入型图片对象的位置是否在所述目标行的最右侧的第一文字对象的左侧;在判断出所述目标嵌入型图片对象的位置在所述目标行的最右侧的第一文字对象的左侧的情况下,确定所述目标嵌入型图片对象与已摆放的第一文字对象存在位置冲突。6.根据权利要求5所述的方法,其特征在于,根据第一预设算法摆放所述目标嵌入型图片对象对应的图片内容并调整已摆放的第一文字对象对应的文字内容的位置,生成目标文档,包括:确定位于所述目标行中且与所述目标嵌入型图片对象左侧相邻的目标文字对象的位置坐标,并根据所述目标文字对象的位置坐标确定所述目标嵌入型图片对象的位置坐标;根据经确定的所述目标嵌入型图片对象的位置坐标,在所述目标文档中摆放所...

【专利技术属性】
技术研发人员:郭栋彬方品薛伟肖湘君
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1