一种支持粘贴的快速对象成组方法
技术领域
本发明属于对象成组技术领域,具体涉及一种支持粘贴的快速对象成组方法。
背景技术
在交互式软件操作中,对象往往定义为页面上的一个操作元素,为便于对多个操作元素进行统一操作(如选择、移动等),往往通过对象成组的方式来实现。成组后的操作元素称为组对象,而原先的各个对象成为组对象的子对象。与组对象有关的操作包括:组的生成,解散,往组对象中增加一个或多个子对象,从组对象中删除一个或多个子对象。
在组对象不允许嵌套的情形下,由于组对象的生成和解散过程比较简单,因此当需要往组对象中增加或删除子对象时,可以通过解散组再重新生成组对象的方法来实现。但即便是可以这样操作,组对象的属性数据在解散后会丢失。
当组对象允许嵌套时,情形变得复杂。考虑到操作效率,因此必须能够支持动态往组对象中增加或删除子对象。而当前主流的版面设计软件,比如《方正飞腾创艺》,《Adobe Indesign》等都需要在对象同级条件下才能进行成组操作(参见相关软件操作说明书),这就大大限制了操作的便捷性。
动态往组对象中增加或删除子对象的常见方法是:通过鼠标拖动来实现对象在对象树中的移动。类似于在Windows的资源管理器中,把文件或目录在目录树中进行拖放操作。这种操作方式比较便捷,但这种方式需要存在这样一棵可视化的“对象树”,在交互式版面设计软件中,这样的“对象树”会占用有限的屏幕面积,使用频率不高,开关这个“对象树”窗口也会浪费操作时间。另外,即便实现了这样的对象树和鼠标拖动方式改变对象的层次,在对操作效率敏感的场合很难应用。在报社的组版车间的实际应用中,大量通过快捷键操作来提高操作效率,对熟练的操作人员来说,往往出现软件的界面呈现和反应跟不上他的实际键盘操作速度,即操作人员通过一连串的按键完成了他的工作,而软件要过一会儿才能处理完的全部的操作序列。
发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种支持粘贴的快速对象成组方法,该方法能够使用复制及粘贴功能快速实现对象成组,即动态往组对象中增加子对象,而无需在对象树中利用鼠标拖动对象,从而提高了操作效率,并能很好地应用于对操作效率敏感的场合。
为达到以上目的,本发明采用的技术方案是:一种支持粘贴的快速对象成组方法,包括以下步骤:
(1)选中一个或多个同层对象;
(2)执行复制或剪切操作,将选中的对象数据序列化后保存到操作系统的裁剪板上;复制操作的功能是把选中的一个或多个对象的数据放到操作系统的裁剪板上;而剪切操作除了执行复制的功能以外,还同时删除了选中的对象;
(3)选中需要添加子对象的目标组对象;
(4)执行粘贴操作,操作系统取得当前裁剪板上的数据,验证是有效的对象数据后,创建相应的对象,并恢复对象的所有属性值,将选中的一个或多个对象插入到目标组对象中。
进一步,步骤(1)中所述的选中一个或多个同层对象是在对象树中通过鼠标和键盘的组合来实现;或者是在展示对象的页面上通过鼠标和键盘的组合来实现。
步骤(1)中所述的对象是指顶层对象、组对象、组对象中的子对象或非组对象。
进一步,如果步骤(3)中没有选中一个目标组对象,那么执行步骤(4)的操作结果是常规的粘贴结果,即把对象粘贴到顶层。
本发明的效果在于:采用本发明所述的方法,可以使用复制及粘贴功能快速实现对象成组,即动态往组对象中增加子对象,而无需在对象树中利用鼠标拖动对象,从而提高了操作效率。另外,由于本发明在进行对象的复制和粘贴的过程中,高效地实现组对象动态增删子对象以及改变现有的对象层次,除了被操作的对象,其他对象的层次关系,以及组对象本身属性均不受到影响,因此本发明所述的方法特别适用于对操作敏感的场合。
附图说明
图1为移动或复制对象的操作流程图;
图2为选中两个对象“地图_图片”和“地图_文字_PDF_叠盖”后的状态图;
图3为执行剪切操作后,并且选择目标组对象的状态图;
图4为执行粘贴操作后的状态图。
具体实施方式
下面结合具体实施方式和说明书附图对本发明作进一步的描述。
如图1所示,一种支持粘贴的快速对象成组方法,包括以下步骤:
(1)选中一个或多个同层对象;具体操作时,可以在对象树中通过鼠标/键盘组合实现对象的多选,也可以在展示对象的页面上通过鼠标/键盘组合实现对象的多选;在交互式操作软件中,两种选中方式的结果状态是相同的;被选中的对象可以是顶层对象,也可以是一个组对象中的子对象,还可以是组对象或其他非组对象,但不同层的对象不允许同时选中(见S11);
(2)执行复制或剪切操作;复制操作的功能是把选中的一个或多个对象的数据存放到操作系统的裁剪板上;而剪切操作除了执行复制的功能以外,还同时删除了选中的对象(见S12);
(3)选中目标组对象,即选中所要添加对象的组对象(见S13);
(4)执行粘贴操作;即操作系统取得裁剪板上的数据,验证为有效对象 数据后,创建相应的对象,并恢复对象的所有属性值,并把对象加入到选中的目标组对象中(见S14);如果在执行粘贴操作前,没有选中一个目标组对象,则执行粘贴操作的结果是常规的粘贴,即把对象粘贴到组的顶层。
如果要删除一个或多个对象,在选中所要删除的对象后执行删除操作即可,但当组对象内的子对象个数为1时,则禁止删除操作,同理,剪切操作也不允许。
上述的删除、复制、剪切和粘贴的功能可以通过交互式操作软件的菜单及工具栏中相应的命令实现,也可以通过键盘的加速健(即快捷键)来实现,如Ctrl+C表示复制,Ctrl+V表示粘贴,等等。采用加速健的方式来实现上述功能的效率较高,特别适用于对操作敏感的场合。
下面以将一个组的子对象移动到另一个组为例,详细地说明实现本发明所述方法的步骤。
在交互式操作软件中,可以提供可视化的“对象树”,也可以不提供,本实施例中,提供了可视化的对象树,而对于操作熟练的技术人员,为了提高操作的效率,也可以关闭可视化的对象树,直接在展示对象的页面上操作。在本实施例中,往目标组对象中添加或删除子对象完全可以通过键盘操作实现,而无需利用鼠标在对象树中拖动对象,该对象树也无需呈现在操作页面上,因此本发明所述的方法特别适用于对操作效率敏感的场合。本实施例之所以提供了对象树,是为了更加直观的说明采用本发明所述的方法实现动态往组对象中添加子对象的效果。
如图2所示,本实施例的目的是将“媒体显示组”的两个子对象“地图_图片”和“地图_文字_PDF_叠盖”移动到“地图导航组”中。
首先,选中“媒体显示组”的两个子对象“地图_图片”和“地图_文字_PDF_叠盖”。由于“地图_图片”和“地图_文字_PDF_叠盖”处在同一个层次,因此可以同时选中,对于不同层次的对象则不能同时选中。
本实施例中,为了适应操作者的操作习惯,选中对象的方式设置与Windows操作系统选中文件的方式相同,这样操作人员很容易接受,操作起来也非常方便,即用鼠标配合“Shift”和“Ctrl”健对多个对象进行选择。
然后,执行剪切操作,即将“地图_图片”和“地图_文字_PDF_叠盖”两个对象数据序列化后保存到操作系统的裁剪板上,并从原来的位置删除这两个对象。剪切操作可以由“Ctrl+X”组合健来实现。
然后,选中需要添加子对象的组对象“地图导航组”,如图3所示。
最后,执行粘贴操作,即操作系统把裁剪板上的数据取出,验证为有效的对象数据后,创建相应的对象,并恢复对象的所有属性值,并把对象“地图_图片”和“地图_文字_PDF_叠盖”加入到组对象“地图导航组”中。本实施例中,把恢复出来的两个对象加入到了组对象“地图导航组”其他子对象的后面,如图4所示。复制操作可以由“Ctrl+V”组合健来实现。
本发明所述的方法并不限于具体实施方式中所述的实施例,本领域技术人员根据本发明的技术方案得出其他的实施方式,同样属于本发明的技术创新范围。