The invention relates to the field of computer application technology. In order to solve the problems of low accuracy and poor storage scalability of element hierarchy management in traditional schemes, an embodiment of the present invention provides a management method and device based on element hierarchy in typesetting tools, comprising an element modification module that modifies a hierarchy list corresponding to at least one element according to a hierarchical change operation. The first tag module determines the value of the set tag bit as the first tag value if the information in the hierarchy list corresponding to at least one element in the canvas is modified; the lookup module confirms the display of each element when it determines that the canvas is currently idle and detects that the set tag value is the first tag value. Shows the attribute value; the element level rendering module refreshes the rendering of elements in the canvas. The embodiment of the invention adopts some technical means to ensure the complete synchronization of the double levels, so as to ensure that the level values of the elements are completely consistent with the visual presentation level at any time.
【技术实现步骤摘要】
基于排版工具中元素层级的管理方法和装置
本专利技术涉及计算机应用
,具体而言,涉及一种基于排版工具中元素层级的管理方法和装置。
技术介绍
在排版工具中,只要画布中存在多于一个的元素,则元素之间就有可能发生重叠。对于重叠的两个或多个元素,哪一个显示在上面,哪一个显示在下面就是排版工具需要在程序层面考虑的问题。传统的方案是对所有的元素按顺序编号,例如元素1编号为1,元素2编号为2,元素3编号为3。在显示的时候,按照编号顺序依次渲染每一个元素,渲染时覆盖元素区域内的其它元素外观(或进行透明度叠加,本专利不作将详细描述),于是最终生成的可视画布则能够正确显示元素的层级。此方案在一般的排版情况下能够胜任。例如,在每一次添加、删除元素,或者改变一个或多个元素层级。但是,一旦需要记录这些操作,以便在需要的时候撤消,此方案就开始变得复杂了。因为一个元素的层级改变意味着画布中其它元素的层级也需要刷新,也就是说,记录元素变化的每一次都必须是画布中所有元素全部记录才可以保证还原时不会出现层级的恢复错误。另一种方案是采用浮点数来对元素进行编号,这种方案是用来解决前一种方案对操作记录支持不佳而产生的改进方案。做法是每次添加元素时,将元素的层级编号+1,每次改变元素层级时只改变此元素的层级值,而不改变其它元素的层级值。在此方案中,由于每次操作改变仅限于所操作的元素,故记录操作时需要记录的数据少很多。但是,此方案也有明显的缺陷。因为浮点数并不能直观地描述画布中元素的层级关系,所以在每次操作结束后都必须强制刷新一次元素层级,以便最终的显示能够与层级的值一一对应。这样,如果在开发中使 ...
【技术保护点】
1.一种基于排版工具中元素层级的管理装置,其特征在于,包括:元素修改模块,用于在监测到对排版工具画布中的至少一个元素进行层级变更操作时,根据所述层级变更操作修改所述至少一个元素对应的层级列表中的信息;第一标记模块,用于如果监测到所述画布中至少一个元素对应的所述层级列表中的信息被修改,则将设定标记位的值确定为第一标记值;查找模块,用于当确定所述画布当前处于空闲状态且检测到所述设定标记的值为第一标记值时,根据所述画布中各元素当前的所述层级列表中的信息确认各元素的显示属性值;元素层级渲染模块,用于根据各元素的所述显示属性值,刷新所述画布中各元素的层级渲染。
【技术特征摘要】
1.一种基于排版工具中元素层级的管理装置,其特征在于,包括:元素修改模块,用于在监测到对排版工具画布中的至少一个元素进行层级变更操作时,根据所述层级变更操作修改所述至少一个元素对应的层级列表中的信息;第一标记模块,用于如果监测到所述画布中至少一个元素对应的所述层级列表中的信息被修改,则将设定标记位的值确定为第一标记值;查找模块,用于当确定所述画布当前处于空闲状态且检测到所述设定标记的值为第一标记值时,根据所述画布中各元素当前的所述层级列表中的信息确认各元素的显示属性值;元素层级渲染模块,用于根据各元素的所述显示属性值,刷新所述画布中各元素的层级渲染。2.根据权利要求1所述的装置,其特征在于,所述层级变更操作包括:将元素置于底层、将元素置于顶层、将元素上移一层、将元素下移一层、将元素移置于某元素上方、将元素移置于某元素下方以及将元素移置于任意层级。3.根据权利要求1或2所述的装置,其特征在于,所述元素修改模块包括:确定单元,用于确定所述至少一个元素对应的层级更新操作;第一元素修改单元,用于如果所述层级更新操作为将所述至少一个元素置于底层或将所述至少一个元素下移一层,则确定所述画布中当前的待置于底层的所述至少一个元素对应的所述层级列表中的层指针信息,将该层指针相对于画布渲染显示方向的反向进行移动;第二元素修改单元,用于如果所述层级更新操作为将所述至少一个元素置于顶层或将所述至少一个元素上移一层,则确定所述画布中当前的待置于顶层的所述至少一个元素对应的所述层级列表中的层指针信息,将该层指针相对于画布渲染显示方向的正向进行移动;第三元素修改单元,用于如果所述层级更新操作为将所述至少一个元素移置于某元素上方或将所述至少一个元素移置于某元素下方,则根据所述画布中当前的待移置于某元素上方或待移置于某元素下方的所述至少一个元素对应的所述层级列表中的层指针信息创建一个相对层,将所述相对层相对于所述画布渲染显示方向正向进行移动或者反向进行移动;第四元素修改单元,用于如果所述层级更新操作为将所述至少一个元素移置于任意层级,则确定所述画布中所述待移置于所述任意层级的所述至少一个元素对应的所述层级列表中的层指针信息,将该层指针相对于画布渲染显示方向的反向或者正向进行移动。4.根据权利要求3所述的装置,其特征在于,还包括:生成模块,用于当所述层指针被进行外部存储时,通过GUID生成算法生成字符串以作为临时的所述层指针作用于所述至少一个元素与所述层级列表的指向关系。5.根据权利要求1所述的装置,其特征在于,还包括:设定模块,用于基于设定规则对所述画布中的元素进行修改,设定所述元素在所述画布中对应的所述层级列表中的信息。6.根据权利要求5所述的装置,其特征在于,所述设定模块包括:确定单元,用于确定待修改至所述画布中的所述元素当前的所述层级列表中的信息;生成单元,用于如果所述元素当前的所述层级列表中的信息表述为将该层级属性值存储在层指针中,则生成一个新层级,并将所述新层级修改至所述层级列表中。7.根据权利要求6所述的装置,其特征在于,所述确定单元,还用于在所述层级列表中查找待修改至所述画布中的所述元素当前的层级属性值。8.根据权利要求1-7任一项所述的装置,其特征在于,还包括:第二标记模块,用于将所述设定标记位的值确定为第二标记值。9.一种基于排版工具中元素层级的管理方法,其特征在于,包括以下步骤:在监测到对排版工具画布中的至少一个元素进行层级变更操作时,根据所述层级变更操作修改所述至少一个元素对应...
【专利技术属性】
技术研发人员:吕毅,
申请(专利权)人:广州视源电子科技股份有限公司,广州视睿电子科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。