掌桥专利:专业的专利平台
掌桥专利
首页

文档处理方法、装置、设备及存储介质

文献发布时间:2023-06-19 18:29:06


文档处理方法、装置、设备及存储介质

技术领域

本发明涉及计算机技术领域,尤其涉及一种文档处理方法、装置、设备及存储介质。

背景技术

随着互联网技术的发展,企业对协同办公要求越来越高,协同应用的定义随之扩展,更加趋于复杂多样,也更加趋于简单化、智能化,力求打破不同协同应用之间的差异乃大势所趋。

当前主流的文档处理软件的排版方式以及协同方式都较为单一,无法满足对于更加灵活的形态和更加沉浸式的体验的协同场景的需求。因而,如何提供一种可实现更灵活地排版与协同的文档处理方案是目前亟待解决的技术问题之一。

发明内容

有鉴于此,本发明提出一种文档处理方法、装置、设备及存储介质以解决上述技术问题。

为了达到上述目的,本发明所采用的技术方案为:

根据本发明实施例的第一方面,提出了一种文档处理方法,包括:

响应于在文档中选中至少一个容器,获取所述容器的属性信息,所述属性信息包括至少一个属性项;

将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

在一实施例中,在所述文档包含两个以上的容器的情况下,所述根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,包括:

将所述两个以上的容器按照所述目标属性项的参数值排序结果,在所述文档中进行排列。

在一实施例中,所述将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,包括:

基于当前选择的属性项确定目标属性项;或,

将优先级最高的属性项确定为目标属性项;或,

基于当前检测到对所述容器触发的操作确定目标属性项。

在一实施例中,所述容器为父容器或子容器,所述父容器中包含至少一个子容器。

在一实施例中,所述父容器和所述子容器具有不同的编辑权限,且所述父容器的编辑权限高于所述子容器的编辑权限。

在一实施例中,所述属性项包括编辑权限,所述容器的类型包括待办项容器,所述待办项容器中包含待办项;

所述待办项容器的编辑权限属于容器创建者或待办任务派发者,所述待办项的编辑权限属于任务协作者。

在一实施例中,所述方法还包括:

响应于在所述容器的范围内检测到触控操作,确定所述容器被选中;和/或,

响应于检测到基于预设组合快捷键选择的对象包括容器中的元素的任一部分,确定所述容器被选中。

在一实施例中,在所述属性项包括编辑权限的情况下,所述方法还包括:

基于以下任一项属性项设置所述编辑权限:

预设挂载信息、协作边界以及交互方式。

在一实施例中,所述方法还包括:

基于从第三方应用中获取的预设信息对所述容器中的元素进行更新;和/或,

将所述容器中的元素同步更新至第三方应用中。

在一实施例中,所述基于从第三方应用中获取的预设信息对所述容器中的元素进行更新,包括:

基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新。

在一实施例中,所述容器具有协同容器;

所述方法还包括:

响应于检测到针对所述容器的预设交互操作,触发协同容器进行协作更新。

在一实施例中,所述触发协同容器进行协作更新,包括:

基于预设的优先级,对所述协同容器和/或所述协同容器中的元素进行更新。

在一实施例中,还包括:

在所述协同容器为流文本容器的情况下,对所述协同容器中的元素进行更新的优先级高于对所述协同容器进行更新的优先级;

在所述协同容器为视图类容器的情况下,对所述协同容器进行更新的优先级高于对所述协同容器中的元素进行更新的优先级。

在一实施例中,所述触发协同容器进行协作更新,包括:

基于与所述协同容器类型关联的方式,对所述协同容器进行更新。

在一实施例中,所述方法还包括:

基于预先设定的协同边界,对所述至少一个容器执行预设操作,所述预设操作包括合并操作和/或分裂操作。

在一实施例中,在所述预设操作包括合并操作的情况下,所述方法还包括:

对合并操作后得到的容器中的重复元素进行去重处理。

在一实施例中,所述容器的元素包含特征项以及信息项,在所述预设操作包括合并操作的情况下,所述方法还包括:

响应于确定第一容器的第一特征项的级别高于第二容器的第二特征项的级别,通过将所述第二容器的第二信息项合并入所述第一容器的第一信息项的方式,实现对所述第一容器和所述第二容器的合并。

在一实施例中,在将所述第二特征项并入所述第一特征项之后,所述方法还包括:

提升所述第一特征项的级别;和/或,

提升所述第一容器的级别。

在一实施例中,所述方法还包括:

响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,所述容器的属性信息基于所述第一触发条件确定。

在一实施例中,所述响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,包括:

响应于检测到所述文档中的流文本具有预设的要素,将所述要素所关联的流文本转换为所述要素对应的类型的容器。

在一实施例中,所述要素为预设的关键词。

在一实施例中,所述预设的关键词包括待办项,或时间、地点、事件以及人物中的至少两项;

所述要素对应的类型的容器包括待办项容器。

在一实施例中,所述响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,包括:

响应于接收到用于转换容器的指令,将当前在所述文档中选定的内容转换为指令指定类型的容器。

在一实施例中,所述响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,包括:

响应于检测到在所述文档中选定多个对象,且所述多个对象满足设定条件,则将所述多个对象转换为容器。

在一实施例中,所述方法还包括:

响应于检测到满足第二触发条件,将选定的容器转换为流文本。

根据本发明实施例的第二方面,提出了一种文档处理装置,包括:

属性信息获取模块,用于响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项;

属性项确定模块,用于将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

目标位置确定模块,用于根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

在一实施例中,所述属性项,包括以下至少一项:

编辑权限、预设挂载信息、协作边界、交互方式、元素归属信息以及关联度设定信息。

在一实施例中,所述容器的元素包括以下至少一项:

流文本;

网页或网页对应的部分内容;

待办项;

看板;

图形,所述图形包括思维导图、UML、流程图中的至少一种,所述思维导图中包含至少一个模块,所述思维导图对应于父容器,所述模块对应于子容器,所述至少一个模块对应的子容器之间具有关联关系,并基于所述关联关系进行连接;

多媒体数据。

在一实施例中,在所述文档包含两个以上的容器的情况下,所述目标位置确定模块还用于将所述两个以上的容器按照所述目标属性项的参数值排序结果,在所述文档中进行排列。

在一实施例中,所述属性项确定模块还用于以下任一项:

基于当前选择的属性项确定目标属性项;或,

将优先级最高的属性项确定为目标属性项;或,

基于当前检测到对所述容器触发的操作确定目标属性项。

在一实施例中,所述容器为父容器或子容器,所述父容器中包含至少一个子容器。

在一实施例中,所述父容器和所述子容器具有不同的编辑权限,且所述父容器的编辑权限高于所述子容器的编辑权限。

在一实施例中,所述属性项包括编辑权限,所述容器的类型包括待办项容器,所述待办项容器中包含待办项;

所述待办项容器的编辑权限属于容器创建者或待办任务派发者,所述待办项的编辑权限属于任务协作者。

在一实施例中,所述装置还包括容器选中模块;

所述容器选中模块用于:

响应于在所述容器的范围内检测到触控操作,确定所述容器被选中;和/或,

响应于检测到基于预设组合快捷键选择的对象包括容器中的元素的任一部分,确定所述容器被选中。

在一实施例中,在所述属性项包括编辑权限的情况下,所述装置还包括:编辑权限设置模块;

所述编辑权限设置模块用于基于以下任一项属性项设置所述编辑权限:

预设挂载信息、协作边界以及交互方式。

在一实施例中,所述装置还包括:

容器元素更新模块,用于基于从第三方应用中获取的预设信息对所述容器中的元素进行更新;和/或,

容器元素同步模块,用于将所述容器中的元素同步更新至第三方应用中。

在一实施例中,所述容器元素更新模块还用于:

基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新。

在一实施例中,所述容器具有协同容器;

所述装置还包括:

容器协作更新模块,用于响应于检测到针对所述容器的预设交互操作,触发协同容器进行协作更新。

在一实施例中,所述容器协作更新模块还用于基于预设的优先级,对所述协同容器和/或所述协同容器中的元素进行更新。

在一实施例中,所述装置还包括优先级更新模块,所述优先级更新模块用于:

在所述协同容器为流文本容器的情况下,对所述协同容器中的元素进行更新的优先级高于对所述协同容器进行更新的优先级;

在所述协同容器为视图类容器的情况下,对所述协同容器进行更新的优先级高于对所述协同容器中的元素进行更新的优先级。

在一实施例中,所述容器协作更新模块还用于基于与所述协同容器类型关联的方式,对所述协同容器进行更新。

在一实施例中,所述装置还包括:

预设操作执行模块,用于基于预先设定的协同边界,对所述至少一个容器执行预设操作,所述预设操作包括合并操作和/或分裂操作。

在一实施例中,在所述预设操作包括合并操作的情况下,所述预设操作执行模块还用于对合并操作后得到的容器中的重复元素进行去重处理。

在一实施例中,所述容器的元素包含特征项以及信息项,在所述预设操作包括合并操作的情况下,所述预设操作执行模块还用于响应于确定第一容器的第一特征项的级别高于第二容器的第二特征项的级别,通过将所述第二容器的第二信息项合并入所述第一容器的第一信息项的方式,实现对所述第一容器和所述第二容器的合并。

在一实施例中,在将所述第二特征项并入所述第一特征项之后,所述预设操作执行模块还用于:

提升所述第一特征项的级别;和/或,

提升所述第一容器的级别。

在一实施例中,所述装置还包括:

容器转化模块,用于响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,所述容器的属性信息基于所述第一触发条件确定。

在一实施例中,所述容器转化模块还用于响应于检测到所述文档中的流文本具有预设的要素,将所述要素所关联的流文本转换为所述要素对应的类型的容器。

在一实施例中,所述要素为预设的关键词。

在一实施例中,所述预设的关键词包括待办项,或时间、地点、事件以及人物中的至少两项;

所述要素对应的类型的容器包括待办项容器。

在一实施例中,所述容器转化模块还用于响应于接收到用于转换容器的指令,将当前在所述文档中选定的内容转换为指令指定类型的容器。

在一实施例中,所述容器转化模块还用于响应于检测到在所述文档中选定多个对象,且所述多个对象满足设定条件,则将所述多个对象转换为容器。

在一实施例中,所述装置还包括:

流文本转化模块,用于响应于检测到满足第二触发条件,将选定的容器转换为流文本。

根据本发明实施例的第三方面,提出了一种电子设备,所述电子设备包括:

处理器;

用于存储计算机程序的存储器;

其中,所述处理器被配置为在执行所述计算机程序时实现:

响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项;

将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

根据本发明实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器处理时实现:

响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项;

将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

与现有技术相比较,本发明通过响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项,并将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,由于是响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,以及将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而可以实现根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,从而实现灵活地调整文档中容器的位置,进而实现对文档的排版与协同,可以提高文档处理的智能化水平。

附图说明

图1示出了根据本发明的一示例性实施例的文档处理方法的流程图;

图2示出了根据本发明的又一示例性实施例的文档处理方法的流程图;

图3示出了根据本发明的另一示例性实施例的文档处理方法的流程图;

图4示出了根据本发明的再一示例性实施例的文档处理方法的流程图;

图5示出了根据本发明的一示例性实施例的文档处理装置的结构框图;

图6示出了根据本发明的另一示例性实施例的文档处理装置的结构框图;

图7示出了根据本发明的一示例性实施例的电子设备的结构框图。

具体实施方式

以下将结合附图所示的具体实施例对本发明进行详细描述。但这些实施例并不限制本发明,本领域的普通技术人员根据这些实施例所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。

在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本发明可能采用术语第一、第二等来描述各种结构,但这些结构不应限于这些术语。这些术语仅用来将同一类型的结构彼此区分开。

图1示出了根据本发明的一示例性实施例的文档处理方法的流程图。本实施例的方法可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。以下实施例中以应用于终端设备为例进行示例性说明。如图1所示,该方法包括以下步骤S101-S103:

在步骤S101中,响应于在文档中选中至少一个容器,获取各个所述容器的属性信息。

本实施例中,容器为记录文档的内容和属性的对象。文档可以被划分为多个容器,每一容器记录有文档的全部或者部分内容。容器之间可以具有层级关系,如第一容器记录的内容包括第二容器记录的内容,则认为第一容器是第二容器的父容器,第二容器为第一容器的子容器。整个文档可以认为是一容器,存储有文档的全部内容,且是文档中其他所有容器的父容器。

进一步的,一文档可以使用一文件进行存储,也可以使用多个文件进行存储。对应的,文档的文件可以存储文档的至少一容器,一文件中存储容器的方式至少包括如下中的一种:存储容器的所有内容、存储容器的引用方式。其中,引用方式可以是被引用的容器所在文件的地址,该地址可以是文件系统中的路径,也可以网络地址。

在一实施例中,可以从文档对应存储的文件中读取关于容器的文档数据;在文档数据是文档内容的情况下,则渲染该文档内容;在文档数据是容器的引用方式的情况下,则基于该引用方式获取实际的文档内容,并渲染该文档内容;在文档内容渲染完成后,显示该文档内容。

本实施例中,终端设备可以在文档中选中至少一个容器,获取各个所述容器的属性信息。举例来说,当用户通过终端设备处理上述文档时,如果需要调整至少一个容器在该文档中的位置,则可以通过执行预设操作,以在该文档中选中需要调整的至少一个容器,进而终端设备可以响应于该预设操作获取上述至少一个容器中各个容器的属性信息。值得说明的是,上述预设操作的类型可以基于实际需要进行设置,本实施例对此不进行限定。

其中,上述属性信息可以包括至少一个属性项。在一实施例中,属性项为以下1)~7)中的一种:

1)编辑权限,可以用于规定用户是否具有对容器进行编辑的权限,其中,涉及到是否可以对容器中内容和/或属性信息的增、删和改等;

2)查看权限,可以用于规定用户是否具有对容器进行查看的权限;

3)预设挂载信息,可以用于设置容器上挂载的各类附加信息,如容器的创建者、创建时间以及容器对应任务(在容器中包含的内容涉及待处理任务的情况下)涉及人员等中的一种或多种;

4)协作边界,可以用于规定当前容器是否可以与其他容器进行协作和/或具体的协作方式等;

5)交互方式,可以用于规定用户或第三方应用与容器进行交互的方式,如容器中内容的选择方式、编辑方式、更新方式以及转化方式等中的一种或多种;

6)元素归属信息,可以用于规定容器中元素的具体归属方,如归属方的标识信息、身份信息以及所有权信息等中的一种或多种;

7)关联度设定信息,可以用于规定当前容器与文档中其他容器的关联程度,如容器中元素是否具有相关性等。

在一实施例中,在所述属性项包括编辑权限的情况下,还可以基于预设挂载信息、协作边界以及交互方式中的任一项设置容器的编辑权限。

在又一实施例中,在所述属性项包括查看权限的情况下,还可以基于预设挂载信息、协作边界以及交互方式中的任一项设置容器的查看权限。

值得说明的是,本实施例的文档中的容器可以为融合了子文档和页的概念的容器。例如,文档的页眉、页脚、正文均可以分别作为子文档进行存储。需要注意的是,子文档之间都是独立的,而本实施例中的容器可以通过容器的属性信息进行关联和协作,并进一步的,根据容器之间的关联和协作,可以对文档中的内容进行重新组织,如编辑和转化,从而增加了文档的可扩展性和灵活性。

在一实施例中,上述容器中的元素可以为携带有预设展示方式的数据。该容器的元素(即,容器中的内容)可以包括以下(1)~(6)项中的至少一项:

(1)流文本;(2)网页或网页对应的部分内容;(3)待办项;(4)看板;(5)图形;(6)多媒体数据。

其中,上述流文本,又称为文本流,是采用流式排版的文本。也就是说,当容器的元素为流文本时,容器中的文本采用流式排版的方式进行排版。流式排版相对于版式排版而言,指对文档包含的文字进行特定的版排方式处理,保存后的内容是原始的编辑元素,即字符,用户通过终端设备能查看到编辑后的排版风格,并且可以在不同的缩放比率间自适应版面大小显示。在小屏幕的终端设备上最好的表现是放大后能够对初始版面自动重排,根据屏幕宽度调整段落的换行以适应单页的视野范围。

上述图形可以包括思维导图、UML、流程图中的至少一种。当然,容器的元素也可以是容器,如,所述思维导图中包含至少一个模块,所述思维导图对应于父容器,所述模块对应于子容器,所述至少一个模块对应的子容器之间具有关联关系,并基于所述关联关系进行连接。

上述多媒体数据,包括文本、声音和图像等,流文本、网页、待办项以及看板等,也可以是对该多媒体数据的重新组织或排版,并最终展示在容器中。比如,流文本即可认为是采用流式排版的文本。

上述网页,可以为使用HTML标签描述多媒体数据的纯文本。其中,可以根据HTML标签确定多媒体数据的内容、来源和展示方式。

上述待办项,可以为多媒体数据的集合,即一种或多种多媒体数据,其可以用于描述人、物、时和事等中的一项或多项。

上述看板,可以包括分栏和卡片,其中,卡片可以设置于分栏中,并可以从一分栏移动到另一分栏,或者可以从分栏中的一位置移动到分栏中的另一位置。另外,卡片也可以用于存储多媒体数据中的一种或多种。

可选地,上述容器的元素还可以包含代码块,即预设的程序语言代码所对应的文本,也即是说,本实施例中的容器可以根据程序语言的类型对代码所对应的文本应用预设的主题,该主题可以为代码中的函数、参数等设置字体、颜色等。

可以理解的是,本实施例中可以根据容器中元素的种类来确定容器的种类,如流文本容器、网页容器、代办项容器、看板容器或图形容器等。

在另一实施例中,上述容器还可以设置有与元素展示方式相关的排版方式。

本实施例还可以基于以下(a)和(b)方式中的至少一种在文档中选中至少一个容器:

(a)响应于在所述容器的范围内检测到触控操作,确定所述容器被选中;和/或,

(b)响应于检测到基于预设组合快捷键选择的对象包括容器中的元素的任一部分,确定所述容器被选中。

举例来说,上述触控操作可以包括基于鼠标或触屏的操作等,而上述组合快捷键可以基于实际需要进行设置,如设置为“shift+方向键”等,本实施例对此不进行限定。

在步骤S102中,将所述至少一个属性项中满足预设条件的属性项确定为目标属性项。

本实施例中,当终端设备响应于在文档中选中至少一个容器,获取各个所述容器的属性信息后,可以将所述至少一个属性项中满足预设条件的属性项确定为目标属性项。

举例来说,当终端设备获取各个所述容器的属性信息后,可以确定上述至少一个属性项中是否存在满足预设条件的属性项,即针对上述至少一个属性项中的各个属性项,分别检测是否满足预设条件,进而可以当确定存在满足预设条件的属性项时,将其中满足预设条件的属性项确定为目标属性项。

在一实施例中,上述将所述至少一个属性项中满足预设条件的属性项确定为目标属性项的方式,可以包括以下(i)或(ii)或(iii):

(i)基于当前选择的属性项确定目标属性项;

本实施例中,当终端设备获取各个所述容器的属性信息后,可以检测用户当前在文档中所选择的属性项,进而终端设备可以将该当前选择的属性项确定为目标属性项。举例来说,用户可以通过在备选的属性项中点击属性项的方式来确定当前选择的属性项,本实施例对此不进行限定。

(ii)将优先级最高的属性项确定为目标属性项;

本实施例中,当终端设备获取各个所述容器的属性信息后,可以检测各个容器的属性信息的优先级,进而可以将其中优先级最高的属性项确定为目标属性项。

值得说明的是,属性项的优先级可以是预先设置的,或者是基于当前用户的操作设置的,本实施例对此不进行限定。

(iii)基于当前检测到对所述容器触发的操作确定目标属性项。

本实施例中,当终端设备获取各个所述容器的属性信息后,可以检测用户当前对容器触发的操作,进而可以基于当前检测到对所述容器触发的操作确定目标属性项。

在一实施例中,上述对容器触发的操作可以包括对当前容器的分裂操作(即,将当前容器分裂成至少两个容器等)、合并操作(即,将当前容器与其他至少一个容器进行合并的操作)等。

以上述操作为合并操作为例,当检测用户当前对容器触发的合并操作后,可以将当前容器的与容器合并相关的属性项确定为目标属性项。值得说明的是,该与容器合并相关的属性项可以基于实际需要进行设置,如设置为编辑权限(如,是否可以被合并等)、交互方式(即具体通过何种方式合并,如基于拖动操作、选中操作等)。

本实施例中,容器的合并操作可以包括:不同容器之间的合并、同一容器不同版本的合并。

在一实施例中,不同容器之间的合并,可以是不同文档中容器之间的合并,也可以是同一文档中容器之间的合并。

在一实施例中,在多人协作的应用场景中,同一容器的不同版本,可以表示多个用户对同一容器编辑的不同版本。因此,容器的合并可以理解为解决多个用户同时编辑所造成的内容冲突,得到一最终版本的容器。

在又一实施例中,在文档备份或同步的应用场景中,同一容器的不同版本,可以表示同一用户对同一容器在不同时间或不同设备编辑的历史版本。因此,容器的合并可以理解为解决多个版本容器的内容冲突,可以得到最终版本的容器,也可以得到发生冲突的具体内容。

本实施例中,对如何解决内容冲突不作限定。

在一实施例中,可以获取不同版本的内容,基于自然语言分析技术,提出出不同版本内容的语义要素,包括词性以及逻辑等,进而,根据该语义要素将不同版本的内容重新组织为同一版本的内容,以解决内容冲突的问题。

在又一实施例中,还可以获取不同版本的内容的编辑者,获取该编辑者的用户级别,采用用户级别高的编辑者所对应的版本的内容作为最终的版本的内容,以解决内容冲突的问题。

在步骤S103中,根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

本实施例中,当将所述至少一个属性项中满足预设条件的属性项确定为目标属性项后,可以根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

举例来说,当确定目标属性项后,可以基于该目标属性项确定上述至少一个容器在文档中的目标位置,进而可以将上述至少一个容器由当前位置调整到该目标位置。

以对容器触发的操作为合并操作、且目标属性项为编辑权限和交互方式为例,当终端设备确定当前容器的编辑权限和交互方式后,可以检测编辑权限是否表征“可以合并”,进而当确定编辑权限表征“可以合并”的情况下,可以检测交互方式,如拖动方式或点击方式等。例如,当检测到交互方式为“拖动方式”时,可以响应于用户触发的拖动操作,将当前容器拖动至目标容器进行合并,其中,该目标容器的位置即为基于目标属性项确定的容器在文档中的目标位置。也即是说,上述目标容器的位置即为当前容器的目标位置,因为是将当前容器由原来的位置拖动至目标容器所在位置并与目标容器进行合并的。

在一实施例中,在上述文档包含两个以上的容器的情况下,上述步骤S103还可以包括:将所述两个以上的容器按照所述目标属性项的参数值排序结果,在所述文档中进行排列。举例来说,可以对该两个以上的容器按照编辑权限的等级进行排序,进而可以将权限等级最高的容器排在文档的最前面,如此即可实现基于容器的编辑权限的级别在文档中展示各个容器,可以提高容器展示的效果,符合用户的需求。

本实施例中,容器可以为父容器或子容器,其中,该父容器中可以包含至少一个子容器。

本实施例中,子容器可以继承父容器的全部或部分属性信息。例如,第一容器为第二容器的子容器,第二容器为第一容器的父容器,那么,第一容器可以包含第二容器的全部或部分属性信息。

在一实施例中,父容器可以预先设置可以被子容器继承的属性信息。如,被继承的属性信息为元素归属信息。如上所述,元素归属信息,可以用于规定容器中元素的具体归属方,如归属方的标识信息、身份信息以及所有权信息等中的一种或多种。那么,当子容器继承了父容器中的元素归属信息时,子容器可以与父容器拥有同样的元素归属信息,表明父容器和子容器中元素的具体归属方是一致的。

当然,本实施例中,上述父容器和子容器可以具有不同的属性信息,由于子容器与父容器之间的不同,增加了对子容器的扩展空间,体现了使用容器的文档的设置和展示灵活性。

在一实施例中,上述父容器和子容器可以具有不同的编辑权限,并且所述父容器的编辑权限高于所述子容器的编辑权限。举例来说,拥有父级容器的编辑权限的用户一定具有子容器的编辑权限,而拥有子级容器的编辑权限的用户却不一定具有子容器的编辑权限。

在另一实施例中,当上述容器的元素为待办项时,这样的容器的类型可以定义为待办项容器。其中,该待办项容器的编辑权限属于容器创建者或待办任务派发者,所述待办项的编辑权限属于任务协作者。

本实施例通过响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项,并将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,由于是响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,以及将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而可以实现根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,从而实现灵活地调整文档中容器的位置,进而实现对文档的排版与协同,可以提高文档处理的智能化水平。

图2示出了根据本发明的又一示例性实施例的文档处理方法的流程图;本实施例的方法可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。以下实施例中以应用于终端设备为例进行示例性说明。如图2所示,该方法包括以下步骤S201-S204:

在步骤S201中,响应于在文档中选中至少一个容器,获取各个所述容器的属性信息。其中,所述属性信息包括至少一个属性项。

在步骤S202中,将所述至少一个属性项中满足预设条件的属性项确定为目标属性项。

在步骤S203中,根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

其中,步骤S201-S203的相关解释和说明可以参见上述图1所示实施例中的步骤S101-S103,在此不进行赘述。

在步骤S204中,基于从第三方应用中获取的预设信息对所述容器中的元素进行更新;和/或,将所述容器中的元素同步更新至第三方应用中。本实施例中,当终端设备检测到在文档中选中至少一个容器后,还可以从预先关联的第三方应用中获取预设信息对所述容器中的元素进行更新;和/或,将所述容器中的元素同步更新至第三方应用中,从而可以实现容器与第三方应用之间的信息互通和/或同步展示,也可以实现文档的动态更新,无需人为的获取和更新数据。

其中,上述预设信息的内容与容器的元素的内容相匹配。举例来说,若容器中的元素为预设地区的天气信息,则可以从第三方应用(即,天气应用)中获取该预设地区的实时的天气,进而对该容器中的天气信息进行更新。再举例来说,若容器中的元素为待办项,且该待办项中的内容发生改变,则可以将该容器中的元素同步更新到用于展示待办项的第三方应用中。

在一实施例中,上述步骤S204中所述的基于从第三方应用中获取的预设信息对所述容器中的元素进行更新,可以包括:

基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新。

举例来说,如果基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新,即可以将第三方应用提供的权限的级别设置为最高级别,进而可以在从第三方应用中获取预设信息后,基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新;或者,如果基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新,则可以将容器的选项中的权限的级别设置为最高级别,进而可以在从第三方应用中获取预设信息后,基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新;又或者,如果基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新,则可以将第三方应用提供的权限的级别和容器的选项中的权限的级别设置为相同级别,进而可以同时基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新。

可以理解的是,为了区分上述三种权限采用方式,可以将每种方式所使用的用户名设置的不相同。进而在实际应用中可以基于用户名确定当前所采用的权限。

在实际应用中,可以基于业务需要对不同的权限所能获取的不同信息进行设置,例如将基于第三方应用提供的权限所能获取的信息与基于容器的选项中的权限所能获取的信息设置的不相同;或者,可以设置为基于两种权限中较高级别的权限能够获取较低级别的权限所能获取的信息,但基于较低级别的权限不能获取较高级别的权限所能获取的信息等。

在一实施例中,上述文档中的容器可以具有协同容器,其中,容器与其协同容器具有更新相关性,即当该容器更新后,可以触发其协同容器进行更新,为了便于区分,以下实施例中将协同容器的更新称为协作更新。在此基础上,本实施例的文档处理方法还可以包括:

响应于检测到针对所述容器的预设交互操作,触发协同容器进行协作更新。

在一实施例中,触发协同容器进行协作更新的方式可以包括基于预设的优先级,对所述协同容器和/或所述协同容器中的元素进行更新。

其中,预设的优先级指的是容器更新和元素更新的更新优先顺序。如,对所述协同容器中的元素进行更新的优先级高于对所述协同容器进行更新的优先级,或者,对所述协同容器进行更新的优先级高于对所述协同容器中的元素进行更新的优先级。

另外,本实施例中,上述容器的更新可以指容器类型的改变,例如,可以基于将视图类型的容器转化为流文本类型的容器,或者将流文本类型的容器转化为视图类型的容器;而元素的更新可以指元素本身的改变,例如流文本容器的元素更新即为流文本容器中的流文本内容的改变。本实施例在上述实施例的基础上还可以包括:

在所述协同容器为流文本容器的情况下,对所述协同容器中的元素进行更新的优先级高于对所述协同容器进行更新的优先级;

而在所述协同容器为视图类容器的情况下,对所述协同容器进行更新的优先级高于对所述协同容器中的元素进行更新的优先级。

在另一实施例中,上述触发协同容器进行协作更新的方式还可以包括基于与所述协同容器类型关联的方式,对所述协同容器进行更新。

举例来说,可以预先设置各个协同容器类型关联的更新方式,例如设置流文本容器类型(即,容器的元素为流文本的容器类型)关联的更新方式为元素更新(即,流文本更新),进而当检测到当前协同容器类型为流文本容器,可以基于预先关联的元素更新方式对协同容器进行更新,即更新协同容器的元素。

图3示出了根据本发明的另一示例性实施例的文档处理方法的流程图;本实施例的方法可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。以下实施例中以应用于终端设备为例进行示例性说明。如图3所示,该方法包括以下步骤S301-S304:

在步骤S301中,响应于在文档中选中至少一个容器,获取各个所述容器的属性信息。其中,所述属性信息包括至少一个属性项。

在步骤S302中,将所述至少一个属性项中满足预设条件的属性项确定为目标属性项。

在步骤S303中,根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

其中,步骤S301-S303的相关解释和说明可以参见上述图1所示实施例中的步骤S101-S103,在此不进行赘述。

在步骤S304中,基于预先设定的协同边界,对所述至少一个容器执行预设操作。

其中,预先设定的协同边界即容器的协作更新方式,包括容器与元素更新优先级、容器更新以及元素更新中的至少一种,通过预先设定容器的协同边界可以明确分割容器与元素,进而实现对容器进行严格且多样化的定义。

在一实施例中,可以先读取容器的配置;然后从配置中获取关于协同边界的配置项,其中,该配置项的值可以是对容器与元素更新优先级、容器更新以及元素更新中的至少一种的设置;进而可以基于所述配置项的值确定所述协同边界。

本实施例中,上述容器更新可以指容器类型的改变,且预设操作所操作的容器和预设操作得到的容器可以是属于不同类型的容器。而元素更新可以指元素本身的改变,预设操作所操作的容器和预设操作得到的容器可以是相同类型的容器。

进一步地,上述容器与元素更新优先级可以指在两容器进行预设操作时,对容器进行的更新,也可以是对元素进行的更新。在此基础上,本实施例中还考虑了容器更新与元素更新的优先级顺序,即容器更新优先于元素更新,还是滞后于元素更新。示例性地,若设置为容器的更新优先级高于元素更新优先级,则可以优先进行容器的更新;而若设置为元素的更新优先级高于元素更新优先级,则可以优先进行元素的更新。

本实施例中,可以基于容器与元素更新优先级、容器更新以及元素更新三个方面预先设定容器的协同边界,进而基于协同边界,对所述至少一个容器执行预设操作。其中,该预设操作可以包括分裂操作(即,将容器分裂成至少两个容器等)和/或合并操作(即,将容器与其他至少一个容器进行合并的操作)等。

在一实施例中,步骤S102中所述的基于所述预先设定的协同边界,对所述至少一个容器执行预设操作,还可以包括:获取针对协同边界的操作规则;基于所述操作规则对至少一个容器执行预设操作。其中,操作规则可以用于指定预设操作后的容器的类型、预设操作所操作的对象是容器还是元素、以及预设操作对该对象的操作方式等中是一项或多项内容。本实施例中,对具体的操作规则不作限定,再实际实施时可以根据不同的应用场景制定不同的操作规则。作为一种示例,该操作规则可以存储为配置文件。进而在实际使用时,可以读取该配置文件,并按照该配置文件所配置的操作规则执行该预设操作;作为另一种示例,该操作规则也可以存储为可执行代码,进而在实际使用时,可以调用该操作规则对应的可执行代码,以按照该操作规则执行预设操作。

1、协同边界为元素更新本实施例中,以协同边界为元素更新为例进行说明。

在一实施例中,获取针对预先设定的协同边界对应的操作规则;基于所述操作规则,将所述合并操作所操作的所述至少一个容器合并为一容器,其中,合并得到的所述容器包括合并前的所述至少一个容器中的所有元素。

进一步的,还可以按照预设的展示规则对合并得到的所述容器中元素进行展示。其中,展示规则可以指定元素的排序方式、筛选条件、分组方式等。本实施例中,对具体的展示规则不作限定,根据不同的应用场景可以制定不同的展示规则。另外,该展示规则可以存储为配置文件,在具体的使用时,可以读取该配置文件,并按照该配置文件所配置的展示规则,对合并后的容器中的所有元素按照该展示规则进行展示。该展示规则也可以存储为可执行代码,在具体使用时,可以调用展示规则对应的可执行代码,以按照该展示规则在合并后的容器中展示所有元素。

在一具体的实施例中,合并操作所操作的至少一个容器为流文本容器。例如流文本容器的元素更新即为流文本容器中的流文本内容的改变。具体的,对应的操作规则可以配置为:预设操作后的容器的类型仍为流文本容器、预设操作所操作的对象是流文本容器中的流文本(元素)、以及预设操作对流文本操作方式为将一容器的流文本附加到另一容器的流文本之后。进一步的,当检测到一原始流文本容器拖动到目标流文本容器时,确定选中原始流文本容器和目标流文本容器;响应于对原始流文本容器和目标流文本容器的合并操作,将原始流文本容器和目标流文本容器中的流文本内容按照合并操作对应的操作规则进行合并,并以合并后的流文本内容作为目标流文本容器的流文本内容,其容器的类型仍然是流文本容器,但流文本容器的元素(流文本内容)发生了更新。

在又一具体的实施例中,当上述预设操作包括合并操作的情况下,对应的操作规则可以配置为:合并操作所操作的对象为容器中的元素、合并操作后的容器类型为原类型、以及合并操作对元素的操作方式为去重。具体的,可以对合并操作后得到的容器中的重复元素进行去重处理,例如将合并操作后的容器中的多个相同元素删除至只剩一个等,具体的去重处理方式可以基于实际需要进行设置,本实施例对此不进行限定。去重处理方式可以是:获取合并操作所操作的所有容器的元素,作为元素列表;对元素列表中的元素进行对比;当存在至少两个元素之间对比的结果为相同时,删除多余的元素,并只保留其中一个元素在元素列表中;在元素列表中不存在重复元素的情况下,将元素列表中的所有元素作为合并操作后的容器中的元素。

在另一实施例中,上述预设操作还可以包括容器汇总操作。举例来说,可以在当文档的预设位置设置一父容器,用于汇总全文档中具有目标属性项的子容器,例如可以在文档最开始的地方设置上述父容器,以基于该父容器汇总当前文档中的所有待办事项。可选地,在进行容器汇总时还可以设置收敛条件,如设置敛后的容器的数量等。

在一实施例中,上述容器的元素可以包含特征项以及信息项,进而在所述预设操作包括合并操作的情况下,本实施例的文档处理方法还可以包括:

响应于确定第一容器的第一特征项的级别高于第二容器的第二特征项的级别,通过将所述第二容器的第二信息项合并入所述第一容器的第一信息项的方式,实现对所述第一容器和所述第二容器的合并。

值得说明的是,上述容器的特征项和信息项是在容器中可以直接看到的内容,其中,特征项可以为用于表征容器的生命周期的信息任务处理时间、事件有效时间等时效性信息,当超过该时间时,可以将该容器的生命周期视作“结束”;而信息项可以用于表征容器中的实质性内容,例如当容器的元素为一个工作组时,则信息项可以为该工作组的成员信息等。

而容器的属性项则是包括那些在容器中不能直接看到的内容,如容器的编辑权限、预设挂载信息、协作边界、交互方式、元素归属信息以及关联度设定信息中的至少一项。

在一实施例中,在将所述第二特征项并入所述第一特征项之后,还可以提升所述第一特征项的级别;和/或,提升所述第一容器的级别。

举例来说,假设待合并的容器分别为第一容器和第二容器,第一容器的元素包括第一特征项、第一信息项和第一其他信息项(该其他信息项可以用于设置自定义信息,如无需要可以删除);而第二容器的元素包括第二特征项、第二信息项和第二其他信息项(该其他信息项可以用于设置自定义信息,如无需要可以删除)。示例性的,第一容器和第二容器可以为流文本容器,且第一特征项和第二特征项可以用于决定所属容器的生命周期,满足定制规则(特征项级别优先进行吞并元素)。例如,假设第一特征项的级别高于第二特征项的级别,当检测到对第一容器和第二容器的合并操作(如,基于ctrl+cmd+c快捷键触发的操作)时,若检测到第一容器和第二容器均为流文本容器,则可以基于预先制定的合并规则(即,流文本容器的元素合并的级别高于容器合并的级别),将第一容器和第二容器的元素进行合并。并且,由于第一特征项的级别高于第二特征项的级别,因而将第二容器的第二信息项和第二其他信息项分别合并入第一容器的第一信息项和第一其他信息项。

可选地,可以提升合并后的第一容器的第一特征项的级别以及第一容器的级别,完成整个容器合并操作。例如,可以预先设置特征项的多个预设级别,当将第二容器的第二信息项和第二其他信息项分别合并入第一容器的第一信息项和第一其他信息项后,可以将第一特征项的级别由当前的第一预设级别提升到第二预设级别。

再举例来说,假设基于容器来表征一个年级架构,其中:容器1可以用于表征一年级,容器2可以用于表征一年级1班,容器3可以用于表征一年级2班,则可以将容器1中的元素设置为班级容器,如容器2和容器3,进而还可以将容器2和容器3中的元素设置为班级成员(如,老师和学生等)。当新增一个用于表征一年级3班的容器4时,可以将容器4和容器1进行融合(即,合并)时,即将容器4作为容器1的一个子容器,表示一年级多了一个班;而如果需要将一年级1班和3班的班级成员进行合并,则可以将容器4和容器2融合,例如将容器4和容器2合并为容器2(即,容器2的特征项为“2”,容器4的特征项为“4”,将容器4的特征项“4”合并入容器2的特征项“2”后,合并后的容器2的特征项为“2”和“4”,由于容器2的特征项“2”的级别高于容器4的特征项“4”的级别,则提升合并后的容器2的特征项为“2”),而合并后的容器2的元素为容器4和容器2的并集,即包括1班和3班的所有班级成员。

在又一具体的实施例中,以协同边界为元素更新为例进行说明,对应的操作规则可以配置为:合并操作所操作的对象为容器中的元素、合并操作后的容器类型为原类型、以及合并操作对元素的操作方式为汇总。具体的,将文档中满足预定条件的待办项容器确定为选中的容器,响应于文档中选中至少一个待办项容器,获取所述至少一个待办项容器的预先设定的协同边界;在协同边界为元素更新的情况下,确定针对预先设定的协同边界设定的操作规则;按照该操作规则对所述至少一个待办项容器执行合并操作;响应于合并操作,基于选中的至少一个待办项容器中的所有元素,得到合并后的汇总容器,其中,汇总容器包括所有待办项容器中的所有元素。

在一实施例中,所述预设操作为分裂操作,可以获取针对预先设定的协同边界对应的操作规则;基于所述操作规则,将所述分裂操作所操作的每一所述容器分裂为至少两个容器。

在所述预设操作包括分裂操作的情况下,上述步骤S304中所述的对所述至少一个容器执行预设操作,还可以包括:基于所述容器的信息项将所述容器分裂成至少两个容器。举例来说,仍假设基于容器来表征一个年级架构,其中,容器1可以用于表征一年级,而该容器中的信息项1、信息项2、信息项3以及信息项4可以分别用于表征一年级1班、一年级2班、一年级3班以及一年级4班,则当检测到将容器1的分裂操作时,可以基于容器1中的信息项将容器1划分为多个容器,例如当检测到按照班级奇数偶数进行分裂的操作时,可以将容器1中的信息项1和信息项3划分为容器2,以及将信息项2和信息项4划分为容器3,即实现将容器1分裂为容器2和容器3。

在实施例中,还可以当检测到针对容器中的目标元素的设定操作时,将该目标元素移动到所述容器之外,并基于所述目标元素形成新的容器,所述设定操作包括拖动以及点击操作中的至少一种。仍以上述用于表征年级架构的容器1为例,当检测到将容器1中一年级1班的信息项1(可以理解的是,信息项也是容器的元素)拖动到容器1之外的操作时,可以将信息项1移动到容器1之外,并基于信息项1形成一个新的容器2,则原容器1中当前的元素剩下一年级2班的信息项2、一年级3班的信息项3以及一年级4班的信息项4。

2、协同边界为容器更新

本实施例中,以协同边界为容器更新为例进行说明。

在一具体的实施例中,以协同边界为容器更新为例进行说明,在将待办项容器合并为看板容器的情况下,对应的操作规则可以配置为:合并操作所操作的对象为待办项容器、合并操作后的容器类型为看板容器、以及合并操作对待办项容器的操作方式为:将待办项容器中的元素确定为卡片;并根据待办项容器的属性项,将卡片归属到看板容器中该属性项对应的分栏,其中,该属性项可以是元素归属信息,如待办项容器中待办项对应的执行者。具体的,将文档中的待办项容器确定为选中的容器,响应于文档中选中至少一个待办项容器,获取所述至少一个待办项容器的预先设定的协同边界所对应的操作规则;基于所述操作规则对所述至少一个待办项容器执行合并操作;响应于所述合并操作,得到该操作规则所指定的类型的容器(如,看板容器)。具体的,生成一所述操作规则指定的看板容器;获取所有选中的待办项容器中的所有待办项(元素);确定所有待办项容器的元素归属信息;基于所述元素归属信息,在所述看板容器中添加各元素归属信息对应的分栏;基于所述元素归属信息,将所有待办项进行分类,并将所有待办项以卡片的形式,归属到所述看板容器中所述元素归属信息对应的分栏。

在又一具体的实施例中,以协同边界为容器更新为例进行说明,在将流文本容器合并为脑图容器的情况下,对应的操作规则可以配置为:合并操作所操作的对象为流文本容器、合并操作后的容器类型为脑图容器、以及合并操作对流文本容器的操作方式为:将待办项容器作为脑图容器中的子容器(节点);并根据流文本容器之间的层级关系,确定流文本容器在该脑图容器中的连接关系。

其中,脑图容器为脑图类型的容器。脑图可以包括多级节点,可以确定脑图为父容器,脑图中的各节点为子容器,且各节点的连接关系确定了各节点之间的层级关系。如根节点连接的节点为根节点的下一节点,其中,根节点为最顶层的节点。

在一实施例中,将文档中的流文本容器确定为选中的容器,响应于文档中选中至少一个流文本容器,获取所述至少一个流文本容器的预先设定的协同边界所对应的操作规则;基于所述操作规则对所述至少一个流文本容器执行合并操作;响应于所述合并操作,得到该操作规则所指定的类型的容器(如,脑图容器)。具体的,生成一所述操作规则指定的脑图容器;获取所有选中的流文本容器中;确定所有流文本容器的层级关系(如流文本容器的属性项可以设置流文本容器对应的是第一标题、第二标题、正文等中的一项,且具有层级关系,如,第一标题为第二标题的上一层);在所述脑图容器中添加各流文本容器对应的节点,并根据所述层级关系,确定各节点之间的连接关系。

3、协同边界为容器与元素的更新优先级

在一具体的实施例中,以对待办项容器执行合并操作为例进行说明。

3.1协同边界为元素更新

在又一具体的实施例中,以协同边界为元素更新为例进行说明,对应的操作规则可以配置为:合并操作所操作的对象为容器中的元素、合并操作后的容器类型为原类型、以及合并操作对元素的操作方式为汇总。具体的,将文档中满足预定条件的待办项容器确定为选中的容器,响应于文档中选中至少一个待办项容器,获取所述至少一个待办项容器的预先设定的协同边界;在协同边界为元素更新的情况下,确定针对预先设定的协同边界设定的操作规则;按照该操作规则对所述至少一个待办项容器执行合并操作;响应于合并操作,基于选中的至少一个待办项容器中的所有元素,得到合并后的汇总容器,其中,汇总容器包括所有待办项容器中的所有元素。

3.2协同边界为容器更新

在一具体的实施例中,以协同边界为容器更新为例进行说明,在将待办项容器合并为看板容器的情况下,对应的操作规则可以配置为:合并操作所操作的对象为待办项容器、合并操作后的容器类型为看板容器、以及合并操作对待办项容器的操作方式为:将待办项容器中的元素确定为卡片;并根据待办项容器的属性项,将卡片归属到看板容器中该属性项对应的分栏,其中,该属性项可以是元素归属信息,如待办项容器中待办项对应的执行者。具体的,将文档中的待办项容器确定为选中的容器,响应于文档中选中至少一个待办项容器,获取所述至少一个待办项容器的预先设定的协同边界所对应的操作规则;基于所述操作规则对所述至少一个待办项容器执行合并操作;响应于所述合并操作,得到该操作规则所指定的类型的容器(如,看板容器)。具体的,生成一所述操作规则指定的看板容器;获取所有选中的待办项容器中的所有待办项(元素);确定所有待办项容器的元素归属信息;基于所述元素归属信息,在所述看板容器中添加各元素归属信息对应的分栏;基于所述元素归属信息,将所有待办项进行分类,并将所有待办项以卡片的形式,归属到所述看板容器中所述元素归属信息对应的分栏。

在一实施例中,在元素的更新优先级高于容器更新优先级的情况下,按照容器的更新的协同边界,执行对待办项容器的合并操作,得到汇总容器。

在又一实施例中,在容器的更新优先级高于元素更新优先级的情况下,按照元素的更新的协同边界,执行对待办项容器的合并操作,得到看板容器。由上述描述可知,本实施例通过响应于在文档中选中至少一个容器,获取所述至少一个容器的预先设定的协同边界,进而可以基于所述预先设定的协同边界,对所述至少一个容器执行预设操作,所述预设操作包括合并操作和/或分裂操作,可以实现基于预先设定的协同边界对文档中选中的至少一个容器执行预设操作,从而可以丰富文档中的容器的协同方式以及文档的处理形式,可以实现简化文档处理流程,提高终端设备处理文档的效率,进而可以提升用户体验。

图4示出了根据本发明的再一示例性实施例的文档处理方法的流程图;本实施例的方法可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。以下实施例中以应用于终端设备为例进行示例性说明。如图4所示,该方法包括以下步骤S401-S405:

在步骤S401中,响应于在文档中选中至少一个容器,获取各个所述容器的属性信息。其中,所述属性信息包括至少一个属性项。

在步骤S402中,将所述至少一个属性项中满足预设条件的属性项确定为目标属性项。

在步骤S403中,根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

其中,步骤S401-S403的相关解释和说明可以参见上述图1所示实施例中的步骤S101-S103,在此不进行赘述。

在步骤S404中,响应于检测到满足第一触发条件,将所述文档中的选定对象转换为预设类型的容器,所述容器的属性信息基于所述第一触发条件确定。

其中,上述第一触发条件可以基于实际业务需要进行设置,如设置为用户选择带转换为容器的对象以及触发对象转化容器的操作等,本实施例对此不进行限定。

在一实施例中,上述步骤S404中所述的响应于检测到满足第一触发条件,将所述文档中的选定对象转换为预设类型的容器,还可以包括:响应于检测到所述文档中的流文本具有预设的要素,将所述要素所关联的流文本转换为所述要素对应的类型的容器。即,本实施例中的文档中的选定对象为上述要素所关联的流文本。

其中,上述要素可以为预设的关键词,如用于表征待办项的“to do”等。文档中的选定对象,可以是文档中的容器,也可以是容器中的元素。当然,容器中的元素也可以是容器。如,针对流文本容器,选定对象可以是整个流文本容器,也可以是流文本容器中的流文本(元素)。

需要注意的是,当选定对象为原容器中的部分元素时,可以将选定的部分元素转换为预设类型的容器,其他的未被选定的元素组成其他容器,相当于对原容器执行分裂操作,以获得至少两个容器。

本实施例中,上述预设的关键词可以基于实际应用场景的需要进行设置,如设置为待办项,或时间、地点、事件以及人物中的至少两项。值得说明的是,本实施例所列举的关键词都是用于表征相应的信息,而不是指具体的关键词,如时间表示的描述时间的信息,如4:00、5月10日等。

所述要素对应的类型的容器包括待办项容器。

在另一实施例中,上述步骤S404中所述的响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,还可以包括:响应于接收到用于转换容器的指令,将当前在所述文档中选定的内容转换为指令指定类型的容器。即,本实施例中的文档中的选定对象为上述文档中选定的内容。

在又一实施例中,上述步骤S404中所述的响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,还可以包括:响应于检测到在所述文档中选定多个对象,且所述多个对象满足设定条件,则将所述多个对象转换为容器。举例来说,当容器中的元素为需要多人协作完成的任务时,可以将该多人对应的任务选为多个对象,进而可以检测这些对象是否满足设定条件,例如这些人所处理的任务是否是一个总体任务下包含的多个子任务,或者这些人所处理的任务之间是否具有“传递性”,例如:任务A需要先由人员甲处理,待甲完成后交由人员乙处理,进而待乙完成后交由人员丙处理等。可以理解的是,该设定条件仅用于示例性说明,本实施例对此不进行限定。在此基础上,当检测到这些对象满足设定条件时,可以将所述多个对象转换为容器。例如,将甲、乙和丙三人所需完成的任务(即多个对象)转换为一个任务类型容器。即,本实施例中的文档中的选定对象为上述甲、乙和丙三人所需完成的任务(即多个对象)。

值得说明的是,本实施例中将文档中的选定对象转换为容器的触发方式可以为条件触发进行要素检测(该要素即用于转换为预设类型容器的对象)。其中,该条件可选项可以包括以下3种:

1.特定交互-前置直接触发;例如:在文档中触发用于插入容器的选项等。

2.逃逸交互-触发检测;例如:在文档中触发离开编辑流文本对象的操作等,例如:当完成编辑流文本容器的操作时,可以点击回车键,以表示编辑结束;或者,还可以将光标从一流文本容器移动至其他位置,以表示该流文本容器编辑结束。

3.特定交互-后置触发检测;例如:触发预设的快捷键等。

另一方面,文档中可供检测的要素可以包括以下几类:

a.正文要素检测

举例来说,假设当满足用户、时间和地点三要素时,容器内满足触发检测转换条件,则可以实现基于该三要素转换成一个“群聚应用”结构的容器。

其中,上述“群聚应用”结构的容器可以为包含上述用户、时间和地点三要素的内容的一个整合容器,该整合容器的用户可以为两个或多个人物,以体现容器中元素的“群聚性”。比如,当检测到甲、乙和丙三人都具有在同一时间、同一地点的行程信息时,可以确定当前满足触发检测转换条件(即,满足触发检测用于转换容器的要素以及将要素对应的对象转换为预设类型的容器的条件,下同),进而可将这三人的行程信息中的用户、时间和地点三要素转换成一个“群聚应用”型容器,如会议容器或活动容器等。

其中,会议容器或活动容器中,可以从目标容器中提取出预设要素关联的相同的流文本,如时间要素对应的同一时间,地点要素对应的同一地点;将所述相同的流文本作为会议容器或活动容器中的元素,并在会议容器或活动容器中显示所述相同的流文本,如将该同一时间作为会议容器或活动容器的会议时间或活动时间,将该同一地点作为会议容器或活动容器的会议地点或活动地点;再从目标容器中提取出其他预设要素对应的不同的流文本,整合之后显示在会议容器或活动容器中,如从目标容器中提取出用户要素对应的甲乙丙,作为会议容器或活动容器的参与人员。

b.容器附带信息检测

举例来说,假设当容器满足附带创建者且创建者的状态为特定状态时,容器内满足触发检测转换条件,则可以转换为一个可限制交互或者限制可见性的结构的容器。其中,可限制交互可以表示该容器是否可被编辑、点击等;限制可见性可以表示该容器是否显示在文档中,是否根据用户权限显示在文档中。

c.容器+元素综合检测

举例来说,假设当父容器附带有用户信息,且正文元素满足时间、地点的条件时,则可以实现转换成一个指派的“会议应用”的结构的容器,其中,指派的对象可以是用户信息中所表示的用户或用户组,该用户或用户组在电子设备中可以存储为一唯一识别标识号。

示例性的,获取流文本容器的属性信息中的元素归属信息;从所述元素归属信息中确定父容器所归属的用户;在所述流文本容器中的流文本具有时间、地点的预设要素时;基于所述用户、时间要素对应的流文本、地点要素对应的流文本,构建“会议应用”的结构的容器。比如,“会议应用”的结构的容器中显示有一页面,所述页面用于显示会议相关的时间、地点、参与人员信息;进一步的,在构建“会议应用”的结构的容器时,可以将所述用户、时间要素对应的流文本、地点要素对应的流文本设置于所述页面上参与人员信息、时间、地点等相应的位置。

在一实施例中,上述要素的检测范围可以包括以下几类:

A).单一的容器检测:即将单一的容器作为检测对象,以确定是否需要将该容器转化为其他类型的容器。

B).多级容器检测:在当前容器下,如果满足将要素检测转换成一个单一结构的容器的条件,以及在该容器上附带检测同一父级容器下的所有子级容器与元素的条件时,可以触发多容器的元素检测及转换。举例来说,当多条件满足时,可以将当前检测到的属于同一父级容器的多个元素或子级容器转换成链式结构的容器,例如包含任务链与任务节点的结构的容器,其中,任务节点可以包括人物、事件以及时间三要素等,或者可以包括由组容器和单一的节点组成的类似看板的结构,该单一的节点同样可以由预设的定义要素进行转换。

C).上下容器关联检测,在设定规则下收敛:即当前转换的容器可以是在原有容器的基础上进行转换得到的,或者可以是在预设的位置设置该转换后的容器。例如,当某个容器发生结构转换时,会进行上下文容器检测,当满足上下文容器与当前容器再次满足另一级别定义的要素时,再进行转换,直到该类型的转换链达到一定级别上限或者截止条件时,完成结构升级的收敛。

举例来说,在文档的开头可以设置一汇总容器,用于汇总该文档中满足预定条件的待办项容器,其中,该汇总容器中的元素可以为满足预定条件的待办项容器中的元素。而该预定条件可以是预设的优先级、预设的用户等。在汇总容器的情况下,检测的要素为容器+元素综合检测,检测的范围为上下文容器关联检测,该预定条件即可以作为设定规则下的收敛条件。

再举例来说,可以使用多级容器来表示一组织结构,多级容器中的每一容器均可以表示一部门,容器中的元素可以是具体的部门成员,也可以是表示下级部门的容器。其中,多级容器的层级关系可以等同于容器所表示的部门的层级关系。假设整个组织结构中的部门类型可以包括:事业部、二级部门、三级部门等类型。另外,每一类型的部门还可以设置有对应级别的管理者,如事业部设置有事业部类型管理者。在以容器表示部门的例子中,部门的管理者可以附带于容器中,如体现为容器的创建者,或者容器属性信息指定的用户。

具体的应用中,在多级容器中,当一容器不包含子容器,且满足容器中的元素(部门成员)大于预设人数(如,5人)时,则可以将该容器转换为三级部门类型的容器;当一容器中的所有子容器为三级部门类型的容器,且设置有一二级部门类型的管理者时,则可以将该容器转换为二级部门类型的容器;同样的,当一容器中的所有子容器为二级部门类型的容器,且设置有事业部类型的管理者时,则可以将该容器转换为事业部类型的容器。

在转换的结果上,可以体现为交互限制和/或编辑权限限制等,例如从普通流畅编辑的流文本转换为一个类似控件的容器,并可以允许带编辑权限,即编辑方式不会像流文本一样,而是类似控件,而升级可以附带权限,限制某些项对于当前协作者的编辑。

在多级容器表示的多级容器的情况下,检测的要素为容器+元素综合检测,检测的范围为上下文容器关联检测,部门转换为事业部类型的部门,也就是达到了转换的上限,即可以作为设定规则下的收敛条件。

在步骤S405中,响应于检测到满足第二触发条件,将选定的容器转换为流文本。

本实施例中,当检测到满足第二触发条件时,可以将选定的容器转换为流文本。

其中,上述第二触发条件可以基于实际业务需要进行设置,如设置为用户选择容器并触发容器转化对象的操作等,本实施例对此不进行限定。

图5示出了根据本发明的一示例性实施例的文档处理装置的结构框图;本实施例的装置可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。如图5所示,该装置包括:属性信息获取模块110、属性项确定模块120以及目标位置确定模块130,其中:

属性信息获取模块110,用于响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项;

属性项确定模块120,用于将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

目标位置确定模块130,用于根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

由上述描述可知,本实施例通过响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项,并将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,由于是响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,以及将所述至少一个属性项中满足预设条件的属性项确定为目标属性项,进而可以实现根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置,从而实现灵活地调整文档中容器的位置,进而实现对文档的排版与协同,可以提高文档处理的智能化水平。

图6示出了根据本发明的另一示例性实施例的文档处理装置的结构框图;本实施例的装置可以应用于具有文档处理功能的终端设备(如,智能手机、平板电脑、笔记本电脑或台式计算机等),或者可以应用于服务端(如,一台服务器或多台服务器组成的服务器集群等)。其中,属性信息获取模块210、属性项确定模块220以及目标位置确定模块230与前述图5所示实施例中的属性信息获取模块110、属性项确定模块120以及目标位置确定模块130的功能相同,在此不进行赘述。

如图6所示,本实施例中的属性项,可以包括以下至少一项:

编辑权限、预设挂载信息、协作边界、交互方式、元素归属信息以及关联度设定信息。

在一实施例中,上述容器的元素可以包括以下至少一项:

流文本;

网页或网页对应的部分内容;

待办项;

看板;

图形,所述图形包括思维导图、UML、流程图中的至少一种,所述思维导图中包含至少一个模块,所述思维导图对应于父容器,所述模块对应于子容器,所述至少一个模块对应的子容器之间具有关联关系,并基于所述关联关系进行连接;

多媒体数据。

在一实施例中,在所述文档包含两个以上的容器的情况下,上述目标位置确定模块230还可以用于将所述两个以上的容器按照所述目标属性项的参数值排序结果,在所述文档中进行排列。

在一实施例中,属性项确定模块220还用于以下任一项:

基于当前选择的属性项确定目标属性项;

将优先级最高的属性项确定为目标属性项;

基于当前检测到对所述容器触发的操作确定目标属性项。

在一实施例中,上述容器可以为父容器或子容器,其中,父容器中包含至少一个子容器。

在一实施例中,上述父容器和子容器具有不同的编辑权限,且父容器的编辑权限高于子容器的编辑权限。

在一实施例中,上述属性项包括编辑权限,容器的类型包括待办项容器,上述待办项容器中包含待办项;

待办项容器的编辑权限属于容器创建者或待办任务派发者,所述待办项的编辑权限属于任务协作者。

在一实施例中,上述装置还可以包括容器选中模块250;

容器选中模块250可以用于:

响应于在所述容器的范围内检测到触控操作,确定所述容器被选中;和/或,

响应于检测到基于预设组合快捷键选择的对象包括容器中的元素的任一部分,确定所述容器被选中。

在一实施例中,在所述属性项包括编辑权限的情况下,所述装置还包括:编辑权限设置模块260;

编辑权限设置模块260可以用于基于以下任一项属性项设置所述编辑权限:

预设挂载信息、协作边界以及交互方式。

在一实施例中,上述装置还可以包括:

容器元素更新模块270,用于基于从第三方应用中获取的预设信息对所述容器中的元素进行更新;和/或,

容器元素同步模块280,用于将所述容器中的元素同步更新至第三方应用中。

在一实施例中,上述容器元素更新模块270还可以用于:

基于所述第三方应用提供的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新;或,

基于所述第三方应用提供的权限以及所述容器的选项中的权限,采用获取的预设信息对所述容器中的元素进行更新。

在一实施例中,容器可以具有协同容器;

上述装置还可以包括:

容器协作更新模块290,用于响应于检测到针对所述容器的预设交互操作,触发协同容器进行协作更新。

在一实施例中,容器协作更新模块290还可以用于基于预设的优先级,对所述协同容器和/或所述协同容器中的元素进行更新。

在一实施例中,装置还包括优先级更新模块240,所述优先级更新模块240可以用于:

在所述协同容器为流文本容器的情况下,对所述协同容器中的元素进行更新的优先级高于对所述协同容器进行更新的优先级;

在所述协同容器为视图类容器的情况下,对所述协同容器进行更新的优先级高于对所述协同容器中的元素进行更新的优先级。

在一实施例中,容器协作更新模块290还用于基于与所述协同容器类型关联的方式,对所述协同容器进行更新。

在一实施例中,上述装置还可以包括:

预设操作执行模块300,用于基于预先设定的协同边界,对所述至少一个容器执行预设操作,所述预设操作包括合并操作和/或分裂操作。

在一实施例中,在所述预设操作包括合并操作的情况下,预设操作执行模块300还可以用于对合并操作后得到的容器中的重复元素进行去重处理。

在一实施例中,所述容器的元素包含特征项以及信息项,在所述预设操作包括合并操作的情况下,预设操作执行模块300还可以用于响应于确定第一容器的第一特征项的级别高于第二容器的第二特征项的级别,通过将所述第二容器的第二信息项合并入所述第一容器的第一信息项的方式,实现对所述第一容器和所述第二容器的合并。

在一实施例中,在将所述第二特征项并入所述第一特征项之后,预设操作执行模块300还可以用于:

提升所述第一特征项的级别;和/或,

提升所述第一容器的级别。

在一实施例中,上述装置还可以包括:

容器转化模块310,用于响应于检测到满足第一触发条件,将所述文档中的选定对象转换为容器,所述容器的属性信息基于所述第一触发条件确定。

在一实施例中,容器转化模块310还用于响应于检测到所述文档中的流文本具有预设的要素,将所述要素所关联的流文本转换为所述要素对应的类型的容器。

在一实施例中,所述要素为预设的关键词。

在一实施例中,所述预设的关键词包括待办项,或时间、地点、事件以及人物中的至少两项;

所述要素对应的类型的容器包括待办项容器。

在一实施例中,容器转化模块310还可以用于响应于接收到用于转换容器的指令,将当前在所述文档中选定的内容转换为指令指定类型的容器。

在一实施例中,容器转化模块310还用于响应于检测到在所述文档中选定多个对象,且所述多个对象满足设定条件,则将所述多个对象转换为容器。

在一实施例中,上述装置还可以包括:

流文本转化模块320,用于响应于检测到满足第二触发条件,将选定的容器转换为流文本。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本发明文档处理装置的实施例可以应用在网络设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本发明的文档处理装置所在电子设备的一种硬件结构图,除了图7所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等;从硬件结构上来讲该设备还可能是分布式的设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器处理时实现:

响应于在文档中选中至少一个容器,获取各个所述容器的属性信息,所述属性信息包括至少一个属性项;

将所述至少一个属性项中满足预设条件的属性项确定为目标属性项;

根据所述目标属性项,确定所述至少一个容器在所述文档中的目标位置。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由本发明的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

相关技术
  • 语音处理方法及装置、家电设备、存储介质电子装置
  • 文本处理方法、装置、设备、计算机设备和存储介质
  • 印尼语文档摘要生成方法、装置、存储介质及终端设备
  • 目录文档的操作方法、装置、电子设备、可读存储介质
  • 一种在线文档检索方法、装置、存储介质及电子设备
  • 文档图像处理装置、文档图像处理方法、及存储计算机程序的命令的可计算机读出的存储介质
  • 文档处理装置、存储介质及文档处理方法
技术分类

06120115587942