合成布局的可视化和编辑的制作方法

文档序号:6376573阅读:291来源:国知局
专利名称:合成布局的可视化和编辑的制作方法
技术领域
本发明涉及合成布局的可视化和编辑。
背景技术
下载到客户机浏览器的网页包括标记语言、可能包括一些多媒体文件并可能包括一些脚本代码。标记语言是最常用的超文本标记语言(HTML),并可被浏览器解释来定义网页的结构以及内容中的一些或可能所有。多媒体文件可包括被自动呈现在网页的布局内的视频或图像,或者可响应于一个或多个控件的执行而呈现的视频或图像。脚本代码允许该页面具有更多动态功能,并可自动执行和/或响应于用户与页面上的控件进行交互而执行。Java脚本是脚本编码语目的不例。
网页一般包括一个或多个元素。当网页被呈现时,每一元素被安置在该网页内。一些用户界面平台允许以元素的顺序执行多个布局处理。例如,元素首先可具有没有任何方向的默认位置。网页本身可通过包含该元素位置的表达来覆盖这个默认位置。例如,在超文本标记语言(HTML)网页的上下文中,这被称为“流入(in-flow)”位置。样式表也可以应用会进一步改变该位置的其他布局位置。当多个布局处理被应用时,一般会按顺序应用这些布局处理。一旦确定了最终布局,就可将元素呈现在其适当的位置。发明内容
在此描述的至少一个实施例涉及在多个布局处理用于确定文档元素的最终位置的情况下对该文档元素的布局的计算机辅助可视化。首先确定元素的初始位置。然后,将一个或多个布局处理的第一集合应用于该元素以相对于该初始位置确定该元素的中间位置。 随后,将一个或多个布局处理的第二集合应用于该元素以相对于该元素的中间位置确定该元素的最终位置。不是只将该最终位置表示在显示器上,该实施例使得该元素的初始位置、 一个或多个中间位置以及最终位置全部都被表示在显示器上。在更具体的实施例中,还可以将在应用布局处理时执行的一个或多个变换的表示可视化,以允许设计者看见为了到达该元素的最终位置而使元素经历的所有布局处理。
在一个或多个实施例中,通过用户与中间控件进行交互以移动表示在显示器上的元素的中间位置的表示,可以改变一个或多个布局的第一集合。另外或另选地,通过用户与最终控件进行交互以移动表示在显示器上的元素的最终位置的表示,可以改变一个或多个布局的第二集合。
提供本发明内容以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。


为了描述能够获得上述和其它优点和特征的方式,各实施例的更具体的描述将通过参考各附图来呈现。可以理解,这些附图只描绘了示例实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释各实施例,在附图中
图I示出了可以用来利用此处所描述的各实施例的示例计算系统;
图2示出了应用于在对应于文档的文档空间的上下文中的元素的四个顺序布局处理的示例序列;
图3示出了用于使得文档元素被显示在其最终位置及在后位置上的方法的流程图4A示出了显示有在应用了两个顺序布局处理的情况下的元素的最终位置和元素的在先位置的用户界面。
图4B示出了其中表示中间位置的可视化表示被向前调整后的图4A的用户界面。
图4C示出了其中表示最终位置的可视化表示被向前调整后的图4A的用户界面。
图5A示出了显示有在应用了四个顺序布局处理的情况下的元素的最终位置和元素的四个在先位置的用户界面。
图5B示出了其中表示第三位置的可视化表示被向前调整后的图5A的用户界面;
图5C示出了其中表示最终位置的可视化表示被向前调整后的图5A的用户界面; 以及
图6示出了用于以计算系统上运行的设计工具来调整一个或多个布局处理的计算机实现的方法的流程图。
具体实施方式
根据在此描述的各实施例,描述了在多个布局处理用于确定文档元素的最终位置的情况下,对文档元素的布局的计算机辅助可视化和可能的调整。将一个或多个布局处理的一个集合应用于元素以相对于该元素的初始位置确定该元素的中间位置。然后,将一个或多个布局处理的另一集合应用于该元素以相对于中间位置确定该元素的最终位置。不是只将最终位置显示在显示器上,而是使该元素的初始位置、中间位置和最终位置全部被显示。中间控件可用于通过移动所显示的元素的中间位置来改变一个或多个布局处理的第一集合。最终控件可用于通过移动所显示的元素的最终位置来改变一个或多个布局处理的第一隹A-口 O
首先,将参考图I来描述关于计算系统的一些引导性讨论。然后,将参考图2到6 来描述布局设计过程的各实施例。
首先,参考图I来描述关于计算系统的介绍性讨论。计算系统现在越来越多地采取多种多样的形式。例如,计算系统可以是手持式设备、电器、膝上型计算机、台式计算机、 大型机、分布式计算系统或甚至常规上不被认为是计算系统的设备。在本说明书以及权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包含至少一个物理有形的处理器以及其上能含有可由处理器执行的计算机可执行指令的物理有形的存储器。存储器可以采取任何形式,并可以取决于计算系统的特性和形式。计算系统可以分布在网络环境中,并可包括多个组分计算系统。
如图I所示,在其最基本的配置中,计算系统100通常包括至少一个处理单元102 和存储器104。存储器104可以是物理系统存储器,该物理系统存储器可以是易失性、非易失性、或两者的某种组合。术语“存储器”在此也可用来指诸如物理存储介质等非易失性大容量存储。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。 如此处所使用的那样,术语“模块”或“组件”可以指在计算系统上执行的软件对象或例程。 此处所描述的不同组件、模块、引擎,以及服务可以实现为在计算系统上执行的对象或进程 (例如,作为分开的线程)。
在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果这样的动作是以软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已经执行了计算机可执行指令来引导计算系统的操作。这样的操作的示例涉及对数据的操纵。计算机可执行指令(以及被操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可包含允许计算系统100例如通过网络110与其他消息处理器通信的通信信道108。计算系统还可以包括显示器112,显示器可显示计算系统的用户可以与之接口的一个或多个用户界面。
这里描述的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨论的。这里描述的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计算机可读介质计算机存储介质和传输介质。
计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。在该说明书和权利要求书中,“计算机程序产品” 在其上包括具有计算机可执行指令的一个或多个计算机存储介质,当这些计算机可执行指令由计算机系统的一个或多个处理器来执行时,执行计算机程序产品的功能。
“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可包括可用于携带计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链路。上述的组合也应被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输介质自动传输到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传输到计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在还利用(或甚至主要利用)传输介质的计算机系统组件中。
计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。
根据在此描述的原理,将多个布局处理的序列应用于要被呈现在显示器上的文档内的元素。作为示例,文档可以是页面(诸如网页),或者可能是桌面应用的屏幕。图2示出了应用于在对应于文档的文档空间201内的元素的四个顺序应用的布局处理211到214的示例序列200。然而,在此描述的原理可应用于任意多个顺序应用的布局处理。
此外,可应用在此描述的原理而不管布局处理的类型。在为HTML网页及使用CSS 的上下文中,存在可被顺序应用的若干布局处理。CSS中的示例包括绝对定位、相对位置和变换。然而,在此描述的原理并不限于将CSS作为布局处理的平台,也不限于这些特定类型的布局处理。
顺序应用的布局处理中的每一个基于元素的在先位置确定元素的在后位置。例如,顺序200示出了文档空间201的五个不同状态,在这五个不同状态中元素202处于不同的位置。元素202的五个不同位置被示为从其初始位置201 (I)开始一路行进到第五位置 202 (5),其中后缀标识位置的次序。此时,无需真地呈现文档,但该顺序表示计算到的元素位置如何随着所应用的每一个布局处理而改变。
走查顺序200,元素处于文档空间201内的初始状态202 (I)。作为示例,这可能是没有应用任何布局处理的元素202的默认位置。在文档被呈现时,文档描述(例如,HTML) 可以指定将元素202放在哪里。或者,在文档描述(例如,HTML)中可能不存在分配给元素 202的位置,在这种情况下初始位置202 (I)是默认位置。
在这个示例序列200中,第一布局处理211被首先应用以使得元素202移动到第二位置202(2)。然后,第二布局处理212被应用以使得元素202移动到第三位置202(3)。 接着,第三布局处理213被应用以使得元素202移动到第四位置202 (4)。最后,第四布局处理214被应用以使得元素202移动到第五位置202 (5)。省略号215表示在需要的情况下可以应用其他布局处理。在该特定示例中,各布局处理将元素移动到文档空间内的各特定位置。然而,在此描述的原理并不限于由每一布局处理造成的元素的特定移动,因为这样的移动将根据布局处理本身。虽然这些布局处理中的每一个可以是单个布局处理,但它们本身也可以包括组分布局操作的序列。
一旦计算出了元素的各位置中的每一个,则可以将这些位置可视化(例如,将其表示在显示器上)。回想,可以将在此描述的原理应用于任何多个数目的顺序应用的布局处理。因此,这样的计算可以导致标识元素的初始位置、元素的最终位置和元素的至少一个中间位置。
图3示出了用于使得文档元素被显示在其初始位置及在后位置中的方法300的流程图。仅作为示例,将参看图2的示例序列200来描述方法300。方法300可以由图I的计算系统100响应于作为计算机程序产品的一部分的计算机可执行指令的执行而执行。
方法300包括计算系统确定文档元素的初始位置(动作301)。例如,参看图2,在文档空间201的上下文中确定元素202的初始位置202(1)。再一次,该动作可以通过解释文档描述(即,HTML)、应用默认位置而发生,或者可以通过确定在没有应用任何顺序布局处理的情况下会将元素放置在哪里而发生。
计算系统随后将一个或多个布局处理的集合应用于该元素以相对于元素的在先位置确定该元素的下一位置(动作302)。回到图2,布局处理211被应用以在文档空间201 中确定元素202的下一位置202(2)。然后,处理分支成是否存在更多的布局处理集合要应用(决策框203)。在此,假设存在更多的布局处理集合要应用(决策框303处为是)。然后, 该处理转至将更多的布局处理应用于元素。
然后,计算系统将一个或多个布局处理的另一集合应用于元素以相对于该元素的在先位置确定该元素的下一位置(动作302)。回到图2,布局处理212被应用以在文档空间 201中确定元素202的第三位置202 (3)。然后,该处理再次分支成是否存在更多的布局处理要应用(决策框303)。在参考图4A到4C提供的示例中,仅存在元素的三个计算到的位置 (初始位置、单个中间位置、和最终位置)。因此,在图4A到4C的示例中,不存在要应用的其他布局处理(在决策框303中为否),并且因此计算系统将因此将各元素位置呈现在显示器上(动作304)。然而,在参考图5A到5C提供的示例中,存在元素的五个计算到的位置(初始位置、三个中间位置、和最终位置)。因此,在图5A到5C的情况下,存在其他布局处理集合要被应用(决策框303处为是),并因此计算系统将转至应用其他布局处理集合。
在图5A到5C的情况下,计算系统随后将一个或多个布局处理的集合应用于元素以相对于该元素的第三位置确定该元素的第四位置(动作302)。转至图2,布局处理213被应用以在文档空间201中确定元素202的第四位置202 (4)。在此,在图5A到5C的情况下,存在又一布局处理集合要被应用(决策框303处为是)。该处理随后转至将最终的布局处理集合应用于元素。
在图5A到5C的情况下,计算系统随后将一个或多个布局处理的最终集合应用于元素以相对于该元素的第四位置确定该元素的最终位置(动作302)。转至图2,布局处理 214被应用以在文档空间201中确定元素202的第五位置202 (5)。在此,在图5A到5C的情况下,所有布局处理已被应用(决策框303处为否),并因此计算系统随后将元素的五个位置呈现在显示器上。
在一些实施例中,以及在图4A到4C和图5A到5C的示例中,不仅表示在显示器上的各个计算到的元素位置被可视化,而且元素因布局处理的相应集合被应用而从一个位置到下一位置的变换(即,移动)也被可视化。如参考图4A到4C及图5A到5C的示例将解释的,还向所呈现的位置提供与元素的所显示的位置中的每一个相对应的控件,使得当用户操作该控件时,允许用户相对于表示在显示器上的元素的在先位置移动表示在显示器上的元素的相应位置。这导致一个或多个处理的相应集合被改变,使得下一次再应用一个或多个处理的集合时,相对于在先位置来到达移动后的位置。因此,用户不仅可以将到达最终位置前在布局元素时发生的各个位置改变可视化,而且用户还可以通过选择应更改多个布局处理的集合中的哪个集合来改变元素的最终位置。
图4A示出了其中存在所计算到的元素的三个位置的用户界面400A,并且图4A表示在仅执行图2的前两个处理211和212的情况下可如何呈现元素的各位置的示例。
可视化初始元素位置402 (I)是图2中的元素202的初始位置202 (I)的可视化表示。箭头411是由对布局处理211的应用所导致的元素移动的可视化表示。可视化元素位置402 (2)是图2中的元素202的第二(S卩,中间)位置202 (2)的可视化表示。箭头412 是由对布局处理212的应用所导致的元素移动的可视化表示。可视化元素位置402 (3)是图2中的元素202的第三(即,最终)位置202 (3)的可视化表示。在一个实施例中,可以使元素的最终位置在视觉上区别于各在先位置,因为是元素的最终位置在呈现文档后会是明显的。各在先位置仅仅是可见的,因为用户界面400A是设计工具的用户界面。
图4B和4C示出了设计者对改变布局处理211、还是改变布局处理212、还是改变它们两者具有细粒度控制的原理。相比于用户界面的在前状态400A,图4B示出了例如用户界面的状态400B。在状态400B中,设计者已移动后了与元素202的中间位置202 (2)相对应的控件。具体地,在这种情况下,该控件实际上与该中间位置202 (2)的可视化表示402(2)相同。在该示例中,设计者将可视化表示402(2)向上移动,如箭头401A所表示的。注意,图4A中的箭头401A、后面的图中的箭头401B到401D都表不控件的移动,并且可实际上不被显示。
该移动401A没有改变初始位置202 (I)的可视化表示402 (I),因为该移动没有致使元素202的初始位置202 (I)改变。然而,移动401A将中间位置202 (2)的可视化表示402 (2)改变到了不同位置402 (2) A0这是因为设计者对可视化表示402 (2)的移动 40IA已致使布局处理211的相应改变,使得对布局处理211的应用将致使元素的中间位置 202 (2)向上移动(如可视化表示402 (2)A所表示的)。该移动401A没有改变布局处理 212,因此最终位置202 (3)相对于中间位置202 (2)的相对位置保持不变。然而,由于中间位置202 (2)的可视化表示402 (2)经历了平移移动,因此元素的最终位置202 (3)的可视化表示402 (3)同样经历了平移移动(如可视化表示402 (3)A所表示的),并且箭头 412也被移动了(如箭头412A所表示的)。
相比于用户界面的在先状态400A,图4C示出了例如用户界面的另一状态400C。在状态400C中,设计者已移动了与元素202的最终位置202 (3)相对应的控件。在这种情况下,该控件同样与最终位置202 (3)的可视化表示402 (3)相同。在该示例中,设计者将可视化表示402 (3)向上移动,如箭头401B所表示的。
该移动401B没有改变初始位置202 (I)的可视化表示402 (I),因为该移动没有致使元素202的初始位置202 (I)改变。同样,布局处理211的可视化表示411没有改变, 因为该移动401B也没有改变布局处理211。此外,该移动401B没有改变中间位置202 (2) 的可视化表示402 (2),因为该移动也没有致使元素202的中间位置202 (2)改变。然而, 移动401B改变了最终位置202 (2)的可视化表示402 (3),使其移动到了不同的位置402(3)B。这是因为设计者对可视化表示402 (3)的移动401B已致使布局处理212的相应改变,使得对布局处理212的应用将致使元素的最终位置202 (3)向上移动,如可视化表示 403 (3) B所表示的。
因此,设计者可以通过移动一个控件(例如,可视化表示402 (3))来选择改变布局处理212,或者可以通过移动其他控件(例如,可视化表示402 (2))来选择改变布局处理211。因此,在已经应用了多个布局处理来到达最终位置的情况下,当将元素从一个最终位置移动到另一最终位置时,设计者可以选择这些布局处理中的哪一个要改变以致使最终位置的改变。
图5A示出了其中存在所计算到的元素的五个位置的用户界面500A,并且图5A表示在执行图2的所有四个处理211到214的情况下可如何呈现元素的各位置的示例。在此, 可视化表示402 (I)到402 (5)各自表示图2的元素202的相应的计算到的位置202 (I) 到202 (5)。箭头411到414各自是由对相应布局处理211到214的应用所致使的元素移动的可视化表示。
图5B和5C再次示出了设计者对于在移动元素的最终位置时要改变布局处理211 到214中的哪一个具有细粒度控制的原理。图5B示出了通过移动可视化表示402(3)来改变布局处理212的过程,且图5C示出了通过移动可视化表示402 (5)来改变布局处理214 的过程。然而,用户界面还准许通过移动可视化表示402 (2)来改变布局处理211,以及通过移动可视化表不402 (4)来改变布局处理213。
相比于用户界面的在先状态500A,图5B示出了例如用户界面的状态500B。在状态500B中,设计者已移动了与元素202的中间位置(即,第二中间位置)202 (3)相对应的控件(例如,可视化表示402 (3))。在该示例中,设计者使可视化表示402 (3)向上移动,如箭头401C所表示的。
该移动402C没有改变初始位置202 (I)的可视化表示402 (I)、第一中间位置202(2)的可视化表示402(2)和布局处理211的可视化表示411,因为移动401C没有改变这样的位置202 (I)和202 (2)以及布局处理211。然而,移动401C将第二中间位置202 (3) 的可视化表示402 (3)改变到了不同位置402 (3)C。这是因为设计者对可视化表示402(3)的移动401C已致使布局处理212的相应改变,使得对布局处理212的应用将致使元素的第二中间位置202 (3)向上移动(如,可视化表示402 (3)C所表示的)。该移动401C没有改变布局处理213和214,因此第三中间位置202 (4)和最终位置202 (5)相对于彼此以及相对于第二中间位置202 (2)的相对位置保持不变。然而,由于第二中间位置202 (3) 的可视化表示402 (3)经历了平移移动,元素的第三中间位置202 (4)的可视化表示402(4)同样经历了平移移动(如可视化表示402(4) C所表示的),元素的最终位置202 (5)的可视化表示402 (5)同样经历了平移移动(如可视化表示402 (5)C所表示的)。此外,箭头 413和414同样被平移地移动了(如箭头413C和414C所表示的)。
相比于用户界面的在先状态500A,图5C示出了例如用户界面的另一状态500C。 在状态500C中,设计者已移动了与元素202的最终位置202 (3)相对应的控件。在该示例中,设计者使可视化表示402 (5)向上移动,如箭头401D所表示的。移动401D改变了布局处理214,但是没有改变布局处理211到213,并且因此没有该元素202的初始位置202(1) 或中间位置202 (2)到202 (4)中的任何一个。然而,移动401D将最终位置202 (5)的可视表示402 (5)改变到了不同位置402 (5)D。此外,箭头414被更改为414D,以表示由移动401D所致使的布局处理214的改变。
因此,设计者可通过移动第一控件(例如,可视化表示402 (2))来选择改变布局处理211,通过移动第二控件(例如,可视化表示402 (3))来选择改变布局处理212,通过移动第三控件(例如,可视表示402 (4))来选择改变布局处理213,或通过选择第四控件(例如,可视化表示402 (5))来选择改变布局处理214。因此,在该示例中,在已经应用了多个布局处理来到达最终位置的情况下,当将元素从一个最终位置移动到另一最终位置时,设计者也可以选择这些布局处理中的哪一个要改变以致使最终位置的改变。
图6示出了用于以计算系统上运行的设计工具来调整一个或多个布局处理的计算机实现方法600的流程图。在图4A到4C的示例中以及图5A到5C的示例中已经应用了方法600。方法600在显示了元素的各个位置(动作601)的上下文中操作。例如,参考图 4A到4C,由可视化表示402 (I)到402 (3)来表示位置202 (I)到202 (3)。参考图5A到 5C,由可视化表示402 (I)到402 (5)来表示位置202 (I)到202 (5)。
计算系统随后检测用户对与元素的非初始位置相对应的控件的操作(动作602)。 例如,在图4A到4C的示例中,用户可能已经操作了可视化表示402 (2)(如在图4B的情况下)或可视化表示402 (3)(如在图4C的情况下)。在图5A到5C的示例中,用户可能已经操作了可视化表示402 (2)(附图没有示出对其的操作)、可视化表示402 (3)(如在图4B 的情况下)、可视化表示402 (4)(附图并没有示出对其的操作)、或可视化表示402 (5)(如在图5C的情况下)。
响应于对控件的操作,相对于元素的在先位置移动元素的相应位置(动作603)。 此外,用于到达相应位置的相应布局处理被更改(动作604),使得下一次再应用该布局处理时,到达移动后的位置。
例如,在图4B中,可视化表示402 (2)被从位置402 (2)移动到位置402 (2)A。 这致使相应的位置202 (2)同样被移动,并由此致使布局处理211的改变(如,通过箭头411 变化到箭头41IA所表示的)。
在图4B中,可视化表示402 (3)被从位置402 (3)移动到位置402 (3) B。这致使相应的位置202 (3)同样被移动,并由此致使布局处理212的改变(如,通过箭头412变化到箭头412B所表示的)。
因此,本发明的原理允许在改变要呈现在文档上的元素的最终布局时对要改变布局处理序列中的哪一个布局处理的精细控制。本发明可具体化为其它具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。因此, 本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变被权利要求书的范围所涵盖。
权利要求
1.一种包括一个或多个计算机存储介质(104)的计算机程序产品,所述一个或多个计算机存储介质在其上具有被结构化的计算机可执行指令,使得所述计算机可执行指令由计算系统(100)的一个或多个处理器(102)执行时,致使所述计算系统执行以下动作 确定文档(201)的元素的初始位置(202 (O)的动作(301); 将一个或多个布局处理(211,212)的第一集合应用于所述元素以相对于所述元素的所述初始位置确定所述元素的中间位置(202 (3))的动作(302); 将一个或多个布局处理(213,214)的第二集合应用于所述元素以相对于所述元素的所述中间位置确定所述元素的最终位置(202 (5))的动作(303,302);以及 致使所述元素的初始位置、所述中间位置和所述最终位置被表示在显示器(112)上的动作(304)。
2.如权利要求I所述的计算机程序产品,其特征在于,所述计算机可执行指令被进一步结构化,以便在由一个或多个处理器执行时,使得所述计算系统被进一步配置为执行以下动作 提供中间控件的动作,当所述中间控件被用户操作时,允许所述用户相对于表示在所述显示器上的所述元素的所述初始位置移动表示在所述显示器上的所述元素的所述中间位置,并致使一个或多个处理的所述第一集合被改变,使得下一次应用一个或多个处理的所述第一集合时到达移动后的中间位置。
3.如权利要求2所述的计算机程序产品,其特征在于,对所述中间控件的操作不改变一个或多个布局处理的第二集合。
4.如权利要求2所述的计算机程序产品,其特征在于,表示在所述显示器上的所述中间位置也是所述中间控件。
5.如权利要求I所述的计算机程序产品,其特征在于,所述计算机可执行指令被进一步结构化,以便在由一个或多个处理器执行时,使得所述计算系统被进一步配置为执行以下动作 提供最终控件的动作,当所述最终控件被用户操作时,允许所述用户相对于表示在所述显示器上的所述元素的所述中间位置来移动表示在所述显示器上的所述元素的所述最终位置,并致使一个或多个处理的所述第二集合被改变,使得下一次应用一个或多个处理的所述第二集合时相对于所述元素的所述中间位置到达移动后的最终位置。
6.如权利要求5所述的计算机程序产品,其特征在于,对所述最终控件的操作不改变一个或多个布局处理的第二集合。
7.如权利要求I所述的计算机程序产品,其特征在于,所述计算机可执行指令被进一步结构化,以便在由一个或多个处理器执行时,使得所述计算系统被进一步配置为执行以下动作 致使在应用一个或多个布局处理的所述第一集合期间执行的一个或多个变换的表示被表示在所述显示器上的动作。
8.如权利要求I所述的计算机程序产品,其特征在于,所述中间位置是第一中间位置,其中将一个或多个布局处理的第二集合应用于所述元素以相对于所述元素的所述中间位置确定所述元素的最终位置的动作包括 将一个或多个布局处理的所述第二集合的第一子集应用于所述元素以相对于所述元素的所述第一中间位置确定所述元素的第二中间位置的动作;以及 将一个或多个布局处理的所述第二集合的第二子集应用于所述元素以相对于所述元素的所述第二中间位置确定所述元素的所述最终位置的动作。
9.如权利要求I所述的计算机程序产品,其特征在于,所述中间位置是第一中间位置,其中将一个或多个布局处理的第二集合应用于所述元素以相对于所述元素的所述中间位置确定所述元素的最终位置的动作包括 将一个或多个布局处理的所述第二集合的第一子集应用于所述元素以相对于所述元素的所述第一中间位置确定所述元素的第二中间位置的动作;以及 将一个或多个布局处理的所述第二集合的第二子集应用于所述元素以相对于所述元素的所述第二中间位置确定所述元素的第三中间位置的动作;以及 将一个或多个布局处理的所述第二集合的第三子集应用于所述元素以相对于所述元素的所述第三中间位置确定所述元素的所述最终位置的动作。
10.一种用于以运行在计算系统上的设计工具来调整一个或多个布局处理的计算机实现方法,所述方法包括 在显示器上表示文档的元素的初始位置(202 (I))、相对于所述初始位置的所述元素的中间位置(202 (3))、以及相对于所述中间位置的所述元素的最终位置(202 (5))的动作(601),其中所述元素的所述中间位置是通过将一个或多个布局处理(211、212)的第一集合应用于所述元素来确定的,并且其中相对于所述中间位置的所述元素的所述最终位置是通过将一个或多个布局处理(213,214)的第二集合应用于所述元素来确定的; 检测用户对中间控件的操作的动作(602); 响应于所述用户对所述中间控件的操作,相对于表示在所述显示器上的所述元素的所述初始位置移动表示在所述显示器上的所述元素的所述中间位置的动作(603);以及 致使一个或多个处理的所述第一集合被改变,使得下一次应用一个或多个处理的所述第一集合时到达移动后的中间位置的动作(604)。
全文摘要
本发明涉及合成布局的可视化和编辑。对文档元素的布局的计算机辅助可视化和可能的调整,其中存在多个布局处理被顺序应用。将一个或多个布局处理的一个集合应用于元素以相对于该元素的初始位置确定它的中间位置。然后,将一个或多个布局处理的另一集合应用于该元素以确定该元素的最终位置。不是只将最终位置显示在显示器上,而是使该元素的初始位置、中间位置和最终位置全部都被显示。中间控件可用于通过移动所显示的元素的中间位置来改变一个或多个布局处理的第一集合。最终控件可用于通过移动所显示的元素的最终位置来改变一个或多个布局处理的第二集合。
文档编号G06F17/30GK102929910SQ20121033104
公开日2013年2月13日 申请日期2012年9月7日 优先权日2011年9月8日
发明者E·A·索尔特韦尔, C·舍尔曼 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1