基于用户定制维护图形显示的制作方法

文档序号:6642739阅读:154来源:国知局
专利名称:基于用户定制维护图形显示的制作方法
技术领域
本发明一般涉及视觉显示,尤其涉及基于用户定制的显示图形。
背景技术
视觉辅助帮助人们理解信息。在人群之间传送信息或传送信息给人群几乎必要地需要产生具体化为信息的视觉显示。诸如MicrosoftPowerPoint显示应用的图形应用程序已经帮助使产生这样的视觉显示的任务自动化。这样的图形应用程序通过把该信息以一种根据在此描述的如图形的容易理解的形式使用户更有效地传送信息。
图形是诸如图表或其它绘图的观念的视觉显示。图形通常由多个诸如bulletedlists的表示具体化观念的内容的图形元素所组成。每个图形元素是显示的图形的一部分。图形元素既有文本特征又有图形特征。然而图形特征一般涉及图形元素的图示或其它视觉特性,文本特征一般涉及在图形元素内的书写文字。根据信息和观众,图形应用程序的用户一般确定能最好地传授或传送潜在信息的特定图形。一般地,传统的图形应用程序提供两种用于产生图形方式中的一种。
一方面,某些传统图形应用程序使用手动绘图方式,用户有足够的灵活性来创作和编辑图形。同样地,用户可以定位和定制在图形中图形元素的外观以使他或她看得合适。通过提供这样对于图形编辑的“自由支配”,然而,这样的手动方式导致用户必须重新定位和重新对齐图形里的那些图形元素,所述图形元素受到在图形里的其他图形元素的定制和/或重新定位影响。正如可推测的那样,这样的方式一般需要大量的时间以处理图形使之呈现出最终的产品。花费在处理图形的视觉方面而不是集中在图形中所描述的信息上的用户的时间是无效的。此外,这个方式,至少在某种程度上,需要图形设计能力。那些没有较强设计技能的用户甚者进一步被手动方式所限制。
另一方面,一些传统图形应用程序使用自动绘图方式,该方式中对于每个图形的布局和外观基于用户所想要的图形类型和对于图形预定的图形元素自动确定。在这种方式中,用户免除了在图形中对齐和定位图形元素的负担,取而代之的是将负担给了应用程序。然而,这种方式在下述意义上是有问题的,即用户通常只能被提供图形定义的有限固定的组以从中选择。另外,在没有首先完全放弃自动绘图功能的情况下,用户没有能力定制基于他或她所希望的图形,因此,首先使使用这种方式的目的实效。
正是基于这些和其他考虑,产生本发明。
发明概要根据本发明,一计算机可实现方式被提供用于在显示屏上呈现图形。图形是内容的可视显示,其中项可以或可不以预定的结构安排。内容的各种形式可使用图形显示,但是为了说明,这里所描述的内容是文本内容。在接收到的内容中,该方法包括接受用以可视地表现内容的图形定义的选择。被选择的图形定义制定了在图形定义下创建的图形的图形元素的外观和布局的默认特性。接着,该方法创建出图形以包括与在内容中的项相应的和根据先前被应用于对于内容基于不同图形定义所呈现的图形的至少一个默认特征的定制的图形元素。创建的图形然后输出到用于对用户显示的显示模块中。
根据本发明的实施例,定制是通过分析在所有可能的图形定义中一组不变的特性所识别,其中这组特性在“语义”模块中被指定。因此,语义模块定义那些可应用于与所有可能的图形定义相对应的图形的特性。还根据另一个实施例,图形的创造也考虑对于目前被呈现的图形的特定图形定义具体的定制。这些定制在与语义模块一起检索的响应于关联的图形定义的选择的“显示”模块中维持。
在进一步的实施例中,本发明提供用于可视表现内容的系统。系统包括多个可能的图形定义,每个图形定义指定了可表现内容的关联的图形的默认特性。系统也包括语义模块,该语义模块定义对于所有可能的图形定义的“语义”特性,以致每个关联的图形适用类似的语义特性来表现类似的项。此外,根据这个实施例,该系统包括定制引擎以使根据不同图形定义和语义模块定义图形是可操作的。
还根据本发明的另一个实施例,系统包括多个显示模块。一个或多个显示模块与多个可能的图形定义的一个或多个相结合。表现模型的每个模型定义了特定于图形定义的表现特性,一个或多个表现模型中的每一个模型与所述图形定义相关联。响应于用于显示的特定图形定义的选择,定制引擎根据选择的定义、在所有图形定义中不变的语义模型、和一个或多个与选择的定义相关的表现模型呈现图形。如此,图形是基于选择的定义显示,但具有被定制的外观和布局特性,正如在关联的表现模型和语义模型中所制定的。
还根据另一实施例,本发明指向用于定制具有显示在显示屏上的图形元素的图形的方法。响应于接收修改图形的请求,方法包括当维护先前应用于图形的定制时,基于请求而修改图形。特别地,定制涉及图形内和第二图形元素相关的第一图形元素的特性。例如,定制可涉及相对于第二图形元素的第一图像元素的定位或大小。在一个实施例中,修改请求具体化为指令以把图形元素添加至图形中。
本发明的各种实施例可被实现如计算机过程、计算系统或诸如计算机程序产品或计算机可读介质的制造产品。计算机程序产品可以是可由计算机系统读取并可解码用于执行计算机过程的指令的计算机程序的计算机存储介质。计算机程序产品也可以是在可由计算机系统读取的载波上并可编码用于执行计算机过程的指令的计算机程序的传播信号。
表现本发明特性的这些和各种其它特征以及优势,将从阅读以下详细的描述和评论相关的附图中显现。
附图简述

图1所示了根据本发明的实施例的用于创建和编辑图形的计算机图形应用程序的用户界面。
图2所示了根据本发明的可实现的实施例一示例计算机系统。
图3是一功能图,显示了根据本发明的实施例的计算机图形应用程序的各种组件,包括定制系统。
图4所示了根据本发明的实施例在图3的多个详细定制系统中的功能图。
图5A到5C依次所示了图4中定制系统的操作以管理图像在计算机图形应用程序中编辑的定制。
图6是一流程图,所示了根据本发明的实施例用于显示(“显示过程”)基于用户定制的图形的过程的操作特征。
发明的详细描述本发明在下文将结合显示本发明的实施例的附图做更充分地描述。本发明可具体化为多种不同的形式并不应该认为被在此描述的实施例的限制;而是,提供这些实施例以使本发明全面和完整,并充分地把本发明的范围传达给本领域的技术人员。相同的标号代表相似的元素。
一般,本发明涉及定制在一个或多个图形中显示的内容的视觉表现。内容可以是信息的任何形式,但是在此描述成根据本发明的示例实施例的文本数据。内容可通过用户(例如,通过键盘、鼠标等)、应用程序、或两者的结合提供。每个图形包括至少一个图形元素,该图形元素可有文本特征、图形特征或两者。
根据实施例,本发明提供用于基于用户定制对在图形内的一个或多个图形元素的外观和布局特性显示(在此为“显示过程”)图形的计算机可实现方法。这样的特性包括颜色、定位、大小、形状、格式和其他与图形元素相关的视觉特征。
显示过程在具有用于创建和编辑图形的用户界面(UI)的计算机图形应用程序中具体化。计算机图形应用程序既可为单机计算机应用程序也可为另一计算机应用程序的子组件,诸如,而非限制,呈现应用程序、文字处理应用程序、绘图应用程序或电子表格应用程序。那些本领域的技术人员可理解计算机图形应用程序对于这些通常在应用程序的办公套件中,诸如Microsoft Office和OpenOffice中,收集的其它计算机应用程序的形式的可应用性。
本发明在一般由一个或多个计算机或其它设备执行的计算机可执行指令(例如,程序模块)上下文中被描述。程序模块的功能可按需结合或分布在各种实施例中。程序模块包括一个或多个执行特定任务或实现特定抽象数据类型的例行程序、程序、对象、组件、数据结构等。
现在参考图1,根据本发明的实施例中所示了用于在计算机图形应用程序中创建和编辑图形的一示例UI102。UI102被划分为多个区域,或“窗格”,每个区域负责计算机图形应用程序功能的各种方面。在一实施例中,多个窗格包括内容窗格104、图形窗格106和图库窗格105。
图形窗格106显示由计算机图形应用程序使用来自内容窗格104的内容所创建的图形内容108。图形内容108可以是视觉呈现的任一形式,诸如绘图、图表等,在此称为“图形”用于命名。图库窗格105提供给用户可应用于在内容窗格104内的内容和在图形窗格106中呈现如图形108的多个可供选择图形定义(例如,109a,109b)。这些三个窗格(104,105和106)的每个窗格根据本发明的各种实施例,关于计算机图形应用程序的操作依次被更加详细地描述。
图形窗格106,在图1中也称为“绘图布窗格”是一窗口、窗口玻璃、图形视图类、或者其它允许用户观察和编辑通过计算机图形应用程序呈现在UI102中的图形内容的显示区域。同样地,图形窗格106包括由计算机图形应用程序呈现的图形108并提供应用程序的用户功能以按照他或她的喜好编辑、或定制图形108。图形108包括一个或多个图形元素,诸如表现进入内容窗格104的内容的图像元素122-131。图形108的定制参考与图形相联系的特性的任一类型,包括,但不局限于,图形元素122-131以及在这些元素中的任一文本的视觉特性和位置。
图1中所示的轮式图表图形108用作说明的目的。应该理解的是图形的任一类型有任意数量的图形元素,例如,122-131,是在本发明的范围内被考虑的。为此,图形元素122-131可包括,但不局限于,节点、转换、标注、或剪裁。节点可以是在图形内容中形状的一种。节点的例子包括圆形、方形、三角形、或类似图形分割的形状的部分。本领域的技术人员可辨认节点的不同类型。转换是节点间相互联系的图形表现。转换通常为线、箭头、或暗示两个节点之间关系的其它形状。
内容窗格104是窗口、窗口玻璃、大纲视图类、或允许用户输入内容115主体(在下文中称为“内容”)至计算机图形应用程序UI102的其它显示区域。同样地,内容窗格104可操作以通过计算机图形应用程序接收用于创建图形108的内容115。基本上,内容115是用户把呈现的图形108传送的概念。在一实施例中,内容115包括文本数据,该文本数据可基于或不基于特定格式化特性或“预定结构”安排。图1所示了根据这个实施例基于特定格式化特性安排的文本数据,其中该文本数据115表现了具有相互关系的概念的分级列表。在其它实施例中,内容115能包括不是文本的信息,诸如任一其它的数据形式包括,但不局限于,剪裁部分、图片、视频、音频、或其它视听材料。
在一实施例中,内容窗格104可操作于接收来自用户的输入和显示该输入作为用于通过用户编辑的内容115。在这方面,内容115即可通过用户手动地(例如,通过键盘)进入内容窗格104,也可从计算机图形应用程序或另一应用程序一起的另一区域粘贴。根据另一实施例,内容窗格104的内容115可连接到另一应用程序或程序,使得如同在其它程序中的内容数据被创建或修改,内容窗格104内的内容115自动地显示或被修改。在另一实施例中,用户可手动地刷新链接的数据,使得用户强迫内容数据在内容窗格104中更新,而不是让图形应用程序或其它程序自动更新。在另一实施例中,用户可请求和接收来来自另一程序的内容数据,诸如数据库。另外,内容115可通过计算机图形应用程序或另一应用程序自动地输入内容窗格104(也就是说,没有用户交互)。
图库窗口105是窗口或其它可操作以表现各种图形定义的类型的图形用户界面组件,诸如为了说明而显示的图形定义109a和109b。图形定义109a和109b可由用户选择以应用于内容窗格104内的内容115来呈现图形108。在一实施例中,图库窗格105允许用户在不同的图形定义109a和109b之间切换和把相同的内容应用到选择的图形定义,例如,109a和109b,而不需要从便笺区重新创建每个图形108。
每个图形定义,例如,109a和109b,与用于图形108的一组默认特性相关联。在一实施例中,这些特性涉及具体化图形元素布局和外观的任一可视或非可视特性,例如,在图形108内的122-131。响应于用户选择特定图形定义109a或109b,计算机图形应用程序使用选择的图形定义109a或109b作为对于图形108布局和外观的框架。根据本发明的实施例,计算机图形应用程序基于在选择的定义109a或109b中定义的特性动态地呈现图形108,如当前根据已经应用到(1)在所有图形定义(例如,109a和109b)中不变的这些特性的任一一种或(2)严格应用到选择的图形定义109a和109b的这些特性的任一一种的特定的任一定制。图形108的动态产生从而涉及对于对于图形108在不同时间点时指定的不同特性,此时由用户选择特定图形定义,举例来说,109a和109b。
图1中所示的图库窗格105是图形定义,例如,109a和109b的简化图库。实际上,图1中只显示了图形定义的两种选择,例如,109a和109b。然而本发明不局限于这样有限的选择,而是图库窗格105可表现给用户任何数量的图形定义,例如,从中选择109a和109b。第一图形定义109a表现了轮状图。第二图形定义109b表现了金字塔型图。根据本发明,第一(109a)和第二(109b)图形定义在图1中以缩略图的形式表现。在其它实施例中,图形定义109a和109b可在描述名的菜单或列表上表现,该描述名允许用户从列表中选择一名字。本领域的技术人员可以认识到其它表现在图库窗格105内的图形定义109a和109b的方式也包括在本发明内。
随着以上所述的UI102的结构已被知晓,现在根据本发明的实施例参考图1描述计算机图形应用程序的操作。图形窗格106显示从内容窗格104和选择的图形定义109a或109b中的内容115创建的呈现的图形108,由可被定制的所指定的特性作为简要描述。图形108包括表现各种包含在内容115主体内的项(例如,116a、116b、118a和118b)或“条目”的图形元素122-131。在图1所示的实施例中,每个图形元素122-131对应内容115的单个项。然而,其它实施例包含表现内容115多个项的单个图形元素,例如,122-131,并且其它实施例还包含由多个图形元素,例如,122-131表现的内容115的单个项。
在不背离本发明范围的情况下,可以任一顺序输入内容115至内容窗格104和选择图形定义109a或109b。如果图形定义109a或109b由用户在任一内容115进入内容窗格104之前被选择,图形108在没有任一内容,或者,具有一组样式内容的情况下显示。相反,用户可在选择图形定义109a或109b之前把数据输入至内容窗格104作为内容115。在这种情况下的实施例中,计算机图形应用程序可提供给用户用于图形定义109a或109b的默认选择;如此,当内容115输入时,图形窗格106可显示默认图形定义109a或109b的图形108,当用户持续添加内容115时,图形108在图形元素(例如,122-131)内增长。或者,图形窗格106可保持空白(就是说,没有图形108)直到用户从图库窗格105中选择图形定义109a或109b。
图1所示了本发明的一示例实施例,在此用户以文本内容的形式,更精确地,以分层结构表的形式输入内容115。此外,用户已经选择了轮状图表图形定义109a。图形窗格106显示图形108,图形108属于根据用户的选择的轮状图形类型109a。轮状图表图形108表现分层结构表115。在图形108内的每个图形元素122-131对应在分层结构表115中的项(也就是说,文本行)。如上所描述的,然而,其它实施例包括每个图形元素122-131对应在分层结构表115中的多个项,并且还有其它实施例包括一个以上的图形元素122-131对应分层结构表115中的单个项。
在一实施例中,内容窗格104中文本内容115的结构确定在图形窗格106中显示的图形元素122-131的结构和外观。例如,轮状图表图形108的第一层是对应在内容窗格104中文本内容115的第一主行116a的父元素131。轮状图表图形108的第二层包括父元素131的下级元素126、127、128、129和130,并且因此这些下级称为“子元素”。子元素126、127、128、129和130对应于在第一行116a下缩进的文本内容115的行118a。轮状图表图形108的第三层也是父元素125并且对应于文本内容115的第二主行116b。最后,轮状图表图形108的第四层包括为父元素125下级的子元素122、123和124。子元素122、123和124对应在第二主行116b下缩进的文本内容115的行118b。从以上的例子,可以理解的是内容窗格104中的文本内容115通过在图形108中的各种图形元素122-131被表现,并且文本内容115的结构通过图形108中的图形元素122-131的结构被表现。
随着以上的实例已被知晓,本发明的实施例包括修改图形108以响应于在文本内容115内的更改。例如,如果图1中所示的作为第一主行116a的子级在那些行118a最顶行的缩进被移除,在轮状图表图形108的第一层和第二层之间会产生一新层。这个新层包括图形元素129。该更改意味着由于行118a的最顶行现在是拥有从属其之下的子元素的“主行”,子图形元素126、127、128和130将变成图形元素129的子元素。
在图2中所示了一合适的操作环境的例子,在其中可实现本发明。该操作环境只是合适的操作环境的一个例子,并非对本发明的使用范围或功能做任何限制。其它公知的适用于本发明的计算系统、环境、和/或配置包括,但不局限于,个人电脑、服务器电脑、手持设备或膝上型电脑、多处理器系统、基于微处理器的系统、可编程消费者电器、网络PC、小型机、大型计算机、包括任何诸如以上系统或设备的分布计算环境等。
参考图2,一用于实现本发明的示例系统包括诸如计算设备200的计算设备。在它大部分基本配置中,计算设备200通常包括至少一个处理单元202和存储器204。根据实际的配置和计算设备的类型,存储器204可以是易失性(诸如RAM)、非易失性(诸如ROM、闪存等)或两者的结合。图2通过虚线206示出了计算设备的大部分基本配置。另外,设备200也可拥有额外的特性/功能。例如,设备也可以包括额外的存储器(可移动和/或不可移动),该存储器包括,但不局限于,盒式磁带或光盘或磁带。这样的额外存储器在图2中通过可移动存储器208和不可移动存储器210示出。计算机存储介质包括在任一方法或技术中用于诸如计算机可读指令、数据结构、程序模块、或其它数据的信息的存储的易失性和非易失性、可移动和不可移动介质。存储器204、可移动存储器208和不可移动存储器210都是计算机存储介质的例子。计算机存储器介质包括,但不局限于,RAM、ROM、EEPROM、闪存或其它存储技术,CD-ROM、数字化多功能光盘(DVD)或其它光盘存储、盒式磁带、磁带、磁盘存储器或其它磁存储设备,或任何其它可以被用来存储想要的信息并且可以被设备220访问的介质。任一这样的计算机存储介质可以是设备200的部分。
设备200也包括允许设备和其它设备通信的通信连接212。通信连接212是通信介质的例子。通信介质通常体现了诸如载波或其它传送机制的已调数据信号中的计算机可读指令、数据结构、程序模块或其它数据,也包括任何信息传递介质。术语“已调制数据信号”是指在该信号中以编码信息的方式来设置或改变其一个或多个特征的信号。例如,而非限制,通信介质包括诸如有线网或直线连接的有线介质,和诸如声音、射频、红外线和其它无线介质的无线介质。
设备200也具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等。输出设备216也包括诸如显示屏、扬声器、打印机等。设备可帮助形成以上所讨论的用户界面102。所有这些设备在本领域是公知的,没有必要在此详细讨论。
计算设备200通常包括计算机可读介质的至少一些形式。计算机可读介质可以是可由处理单元202访问的任一可用介质。例如,而非限制,计算机可读介质可包括计算机存储介质和通信介质。以上的任何组合应该包含在计算机可读介质的范围内。
计算机设备200可以在网络化的环境中运行,该环境使用逻辑连接连接到一个或多个远程计算机(图中未示)。远程计算机可以是个人计算机、服务器计算机系统、路由器、网络个人计算机、对等设备或其它共用网络节点,通常包括以上描述的和计算机设备200相关的多个或全部组件。在计算机设备200和远程计算机之间的逻辑连接包括局域网(LAN)或广域网(WAN),但是也可以包括其它网络。这样的网络环境在办公室、企业范围的计算机网络、内联网和因特网中是普遍的。
当在LAN网络环境中使用时,计算机设备200通过网络接口或适配器连接到LAN。当在WAN网络环境中使用时,计算机设备200通常包括调制解调器或通过诸如因特网的WAN建立通信的其他装置。调制解调器可以是内置的或外置的,可以通过通信连接212或其它适当的机制连接到计算机处理器202。在一网络连接的环境中,它的程序模块或其中的一部分可以存储在远程存储器储存设备内。举例说明,但非限制,远程应用程序可驻留在连接到远程计算机系统的存储器设备中。可以理解的是所示的网络连接是示例的,也可以使用在计算机间建立通信链路的其他装置。
随着图2的计算环境已被知晓,图3所示了根据本发明的实施例,体现计算机图形应用程序100组件的操作图。计算机图形应用程序100包括在结合图1中提到的有内容窗格104、图形窗格106和图库窗格105的用户界面(UI)102。功能(框图)箭头308、310和312分别代表为了操作计算机图形应用程序100而与内容窗格104、图形窗格106和图库窗格105的用户交互。
更具体地,与内容窗格104的用户交互308导致内容115的输入进入计算机图形应用程序100。响应于这样的输入,计算机图形应用程序100显示用于显示的在内容窗格104内的内容115和通过用户使能编辑。并且,如上所描述的,计算机图形应用程序100创建表现该内容115的图形108并且通过图形窗格106显示该图形108。与图形窗格106的用户交互310导致其中所显示的图形108的编辑。同样,用户交互310表现对于显示在图形窗格106内的图形108的定制。与图库窗格105的用户交互312导致从多个图形定义,例如,109a和109b中对特定图形定义的选择,其图形表现通过图标、菜单、工具栏、缩略图或其它已知的可选择的UI组件由图库窗格105显示。如此,特定图形定义109a或109b的选择通过图库窗格105产生基于选择的定义109a或109b在图形窗格106内图形108的呈现。
除了以上描述的用户界面组件外,计算机图形应用程序100也包括定制系统300和布局引擎303。定制系统300和布局引擎303一起运行以提供给用户界面102用于呈现在图形窗格106上的适当的图形108。为了达到这样,定制系统300把体现由被选的图形定义109a或109b特定的外观和布局数据301以及到达该处的任一关联的定制传递给布局引擎303。为了命名,该数据301在下文中称为“定制数据”。定制数据301共同定义要被呈现的图形108所基于的特性,如在被选图形定义109a或109b中和根据已经被应用到(1)在所有图形定义中不变的这些特性的任一一种(以下称为“语义”特性)或(2)可精确地适用于被选图形定义109a或109b的这些特性中的任一一种(以下称为“表现”特性)所指定的。定制系统300更多的详细说明将在以下结合图4提供。
布局引擎303把定制数据301解释成产生用于呈现的图形108的布局树302。然后遍历布局树302以识别用于呈现图像108的外观和布局特性。在一实施例中,通过称为“输出引擎”304的布局引擎303的组件执行布局树302的遍历。在该实施例中,输出引擎304呈现提供给图形窗格106用以显示和编辑的图形108。接收到图形108后,图形窗格106显示给用户用于观看和编辑的图形108。布局引擎303的功能和结构在根据在2004年9月30日提交的序号为10/955,271、发明名称为“在应用程序内用于创建和布置图形的方法、系统和计算机可读介质”(Method,System and Computer-Readable Medium for Creating and Laying Out aGraphic Within an Application Program)的共同申请的美国专利申请中的本发明的实施例中详细描述,该专利申请整体引用在此作为参考。应该理解的是可以通过除了布局引擎303外的装置使用定制数据301构造图形108,以上所描述的布局引擎只是为了说明以传送本发明的示例实施例。
现在参考图4,根据本发明的实施例以功能图的格式显示定制系统300。定制系统300包括定制引擎412和图形模型库402。图形模型库402是维持多个表现模型(例如,408和410)和一语义模型404的数据结构。定制引擎412使用表现模型(例如,408和410)和语义模型404创建用于提交给布局引擎303的定制数据301用于图形108的创建。
在一实施例中,图形模型库402对于计算机图形应用程序100的每个实例和/或会话是特定的。如所指的,图形模型库402和它的组件用虚线示出以说明库402以及在存储器中对于计算机图形应用程序100的每个实例的模型408、410和404的示例。例如,如果用户使用计算机图形应用程序100同时创建和/或编辑两个不同的图形108,对于两个不同图形108的每个图形创建图形模型库402和相关联的模型408、410和404。或者,图形模型库402和它的组件可在计算机图形应用程序100的一个以上的实例和/或会话中不变。该实现和选择有关,两种选择都完全考虑在本发明的范围内。
表现模型(例如,408和410)是维持特定于可由图库窗格105选择的每个图形定义109a和109b现有特性的数据结构。本发明的实施例通过表现模型和图形定义109a与109b的1对1的相互关系被示例性地描述。如所指的,图1所示了可由图库窗格105选择的两个图形定义109a和109b的可用性,从而,图4中显示只有两个表现模型408和410维持在图形模型库402中。应该理解的是图库窗格105可操作于选择任意数量图形定义109a和109b以及图形模型库402可包括任意数量的表现模型(例如,408和410)。
语义模型404是维持在所有可通过图库窗格105由用户选择的在所有图形定义109a和109b中不变的当前特性的数据结构。如所指的,在图形模型库402中只存在一个语义模型404。再次,以上所描述的本发明的实施例涉及维持具有计算机图形应用程序100的每个实例和/或会话的一语义模型404,因此具有一个以上的语义模型404是可能的。
响应于通过图库窗格105接收图形定义109a或109b的选择,定制引擎412检索适当的表现模型408或410(也就是说,与选择的图形定义306相关的表现模型408)和语义模型404。然后定制引擎412创建基于对选择的图形定义109a或109b定义的现有特性的定制数据301,如在关联表现模型408和语义模型404指定的那样。
在表现模型408和410以及语义模型404中指定的特性基于来自内容窗格104和图形窗格106的输入动态更新。关于内容窗格104,一旦用户通过用户交互308添加内容115,表现模型408和410以及语义模型404被更新以反映该内容115的添加。例如,如果分层结构表有文本内容行“A”、“B”和“C″,那么在图形模型库402中的表现模型408和410的每个表现模型以及语义模型404有对应于文本内容行“A”、“B”和“C″的每个内容行的图形元素的存储器内表现。响应于用户添加第四文本内容行“D”,定制引擎412更新表现模型408和410的每个表现模型以及语义模型404以包括对应于该新的文本内容行的图形元素的存储器内表现。因此,由定制引擎412创建的定制数据301将借助适当的表现模型408或410以及指定同一表现模型的语义模型404而包括该新图形元素的添加。
关于图形窗格106,一旦用户通过用户交互310编辑呈现的图形108,定制引擎412更新对应于编辑的图形108,或者,语义模型401相关联的图形定义306的表现模型(例如,408或410)以反映用户的定制。在这方面,如果定制是对于表现特性的更改,就是说,“表现更改”,那么定制引擎412更新适当的表现模型(例如,408或410)。相反,如果定制是对于语义特性的更改,也就是说,“语义更改”,那么定制引擎412更新语义模型404。
一般地,对于图形108任一特性的更改的分类是作为“表现”更改或“语义”更改是和选择有关,任一这样的分类都在本发明的范围内。只为了说明,在此描述的示例语义更改作为对于图形元素的颜色更改以及在此描述的示例表现更改作为对于图形元素大小的更改。随着这些说明已被知晓,图5A-5C示出了响应于进入图形窗格106的本发明的关于更新表现模型408和语义模型404的操作特征。
图5A示出了具有通过图形窗格106显示的具有图形元素502、504、506、508和510的图形500。图形元素502、506和510分别对应于包括在内容窗格104的内容115中的文本内容行、或实体,“A”、“B″、“C″。图形500还没有被用户编辑,因此没有定制。如所指的,在图形窗格106中显示的图形500使用由图形500所属的图形定义109a或109b定义的默认特性。用于图形500的表现模型408和语义模型404结合这些默认特性显示,实际上,这些默认特性由定制引擎412使用以产生用于该特定图形500的定制数据301。如此,呈现的图形500在没有定制的情况下体现由选择的图形定义109a或109b指定的特性。
如以上所描述的,表现模型408和语义模型404是存储内表现,并且使用虚线显示。这些模型404和408的每个模型包括对应于包括在图形500内的图形元素502、504、506、508和510的每一个的表现。特别地,表现模型408包括分别对应于图形元素502、504、506、508和510,并且维持与每个相应的图形元素相关联的特性的表现502’、504’、506’、508’和510’。这些特性是只特定于图形500所属的图形定义109a或109b的“表现”特性。在一用于说明图5A-5C的示例实施例中,这些图形元素502、504、506、508和510的大小构成表现特性。
同样地,语义模型404包括分别对应于图形元素502、504、506、508和510,并且维持与每个相应的图形元素相关联的特性的表现502’、504’、506’、508’和510’。这些特性是在可通过图库窗格105选择的所有图形定义109a和109b中不变的“语义”特性。在一用于说明图5A-5C的示例实施例中,这些图形元素502、504、506、508和510的颜色构成语义特性。
图5B所示了编辑图形元素502的颜色以及图形元素506的大小的用户交互310的结果。由于根据在此描述的示例实施例,图形元素的颜色构成语义特性,定制引擎412更新对应于图形元素502的语义模型404中的表现502”以适应颜色更改。由于根据在此描述的示例实施例,图形元素的大小构成表现特性,定制引擎412更新对应于图形元素506的表现模型408中的表现506’以适应大小更改。
图5C所示了根据不同于图5A-5B中所示的图形500的图形定义109a或109b,在图形511的图形窗格106上的呈现。图形511包括图形元素512、514、516、518和520。响应于通过图库窗格105用户的请求,该图形511呈现在图形窗格106上以切换图形定义109a和109b用于查看内容115(例如,″A″、″B″和″C″)。接收到这样的请求,定制引擎412检索与新的图形定义109a或109b以及语义模型408相关联的表现模型410。
由于对应于请求的图形定义109a或109b的图形(例如,511)还没有呈现在图形窗格106上,用户也还没有机会定制任何表现特性。如所指的,根据相关联的图形定义109a或109b,检索到的表现模型410指定了用于图形元素的默认特性,并且定制引擎412创建定制不指定任何表现更改的数据301。从而,由于对于图形元素506的大小更改被认为用于该“表现”更改的说明,特定定制对于图形511是变化的。实际上,在检索到的表现模型410中特定的所有表现特性是对于选择的图形定义305的默认特性。然而,由于语义模型410对于图5B所示的图形500每个语义更改(例如,颜色)已经被更新,特定定制在图形511中是不变的。
图5A-5C所示的例子以及以上所描述的在高的层次上说明了本发明的实施例。实际上,图形元素的颜色和大小体现了仅两种可根据本发明,通过使用表现模型和语义模型对于图形被定义的特性。如以上所描述的,和在图形中图像元素的外观或布局相关的任何其它特性可构成表现特性或语义特性。这样的特性包括,例如,在图形中区别于其它图形元素的图形元素的位置、在图形中区别于其它图形元素的图形元素的标度、在图形元素中文本数据的字体大小、图形元素的旋转度、在图形中区别于其它图形元素的图形元素的Z轴次序以及可应用于在图形或整个图形内的图形元素的任何其它可能的格式和布局特性。
例如,与其它图形元素相关的图形元素的位置可构成分别由表现模型或语义模型指定的表现或语义特性。在任一情况下,计算机图形应用100通过响应于新图形元素添加到图形中,定标应用于重新定位的图形元素的x和y偏移而应用定制。或者,x和y偏移体现基于极坐标的径向偏移。在一实施例中,相对于本身为正矩形的图形的(例如,正方形、矩形等)位置移动基于x和y偏移被应用,然而相对于本身为环状的图形(例如,椭圆、圆等)的位置移动基于径向偏移被应用。
对于径向和线性位置定制,图形元素相对于其默认位置已经移动的距离根据位置移动是“表现”或“语义”更改而被存储在表现或语义模型中。如所指的,这些定制随图形维持并且,如果作为语义更改存储,那么跨过对应其它图形定义的图形,即使在图形更改之后。响应于对于图形布局的更改(例如,添加或删除图形元素),在该图形中图形元素已经被重新定位,计算机图形应用程序100基于存储的相关更改确定用于先前重新定位的图形元素的新位置。对于线性定制,该过程包括使用来自在图形中另一图形元素的先前重新定位的图形元素的偏移。对于径向定制,该过程包括使用半径,形状位置角和图形元素之间的角度。
现在参考图6,一流程图所示了体现用于显示基于结合本发明的实施例所示的用户定制的过程600的操作特征。为了说明,该过程600在此称为“显示过程”并结合图1-4中所示的计算机图形应用程序100描述。如所指的,在此描述的显示过程600根据示例实施例由计算机图形程序100执行,各种结合于此描述的组件参考图6使用相同的编号和术语进行描述。
显示过程600通过使用开始于开始操作602并且结束于终止操作630的操作流程被执行。开始操作602被初始化以响应于用户或其它应用程序运行计算机图形应用程序以创建或编辑表现进入应用程序100的内容115的图形108。从开始操作602,操作流程转移到接收内容操作604。
接收内容操作604接收用户或应用程序请求在图形108中可视地表现出的内容115。在一实施例中,该内容115是文本内容,可以或不可以以一种格式被安排。根据该实施例的示例文本内容是一个结构化的列表。同样,在一实施例中,通过第一接收操作604接收的内容115由用于计算机图形应用程序100的用户界面102的内容窗格104显示给用户。从接收内容操作604,操作流转移到创建操作606。
创建操作606创建用于结合在开始操作602上运行的计算机图形应用程序100的实例使用的表现模型408或410和语义模型404。创建的语义模型410指定在所有可能的图形定义109a和109b中不变的默认语义特性。创建的表现模型108或410指定由选择的图形定义109a或109b定义的默认表现特性。
根据一实施例,创建的表现模型408或410所基于的选择的图形定义109a或109b为默认图形定义,例如,109a或109b,对于计算机图形应用程序100的所有实例预定。在该实施例中,计算机图形应用程序100被预编程以使应用程序的启动呈现一由用户使用的默认图形定义109a或109b的选择,直到用户请求图形切换到另一图形定义109a或109b。根据可供选择的实施例,计算机图形应用程序100可向用于呈现一选择的屏幕(举例来说,UI对话)允许用户选择用于呈现在图形窗格106内初始图形108的特定图形定义109a或109b。如所指的,创建操作606基于选择的图形定义109a或109b创建表现模型408或410。
在表现模型408或410以及语义模型404创建之后,操作流程依次转移到呈现操作612。呈现操作612在显示屏上呈现图形108用于被用户查看和编辑。图形108的可视特征(也就是说,图形元素的布局和外观)由呈现操作612基于在由创建操作606创建的语义模型404和表现模型408或410中的特性说明所定义。如以上所描述的,语义模型404不仅用于对于由呈现操作612显示的图形108定义某些可视特性,也就是说,“语义特性”,而且对于所有属于可呈现于计算机图形应用程序100中的所有图形定义109a和109b的图形108。相反,然而,表现模型408或410仅仅用于对于正被呈现的图形108定义某些可视特性,也就是说,“表现特性”而对其它图形则不定义什么。实际上,对应于其它图形定义109a或109b的图形108只呈现那些对应于该图形定义109a或109b表现模型408或410中指定的特性。当图形108呈现在显示屏之后,操作流程转移到第一询问操作614。
第一询问操作614确定是否被运行以激活开始操作602计算机图形应用程序100的实例已经终止,从而表示没有进一步有关图形定义109a和109b内容、定制或选择的输入将收到除非计算机图形应用程序100被随后激活以创建新的实例。
如果实例已经被终止,操作流程在终止操作630处结束。否则,操作流程分支“不”到第二询问操作616。第二询问操作616确定是否当前呈现在图形窗格106内的图形108已经被以任一方式编辑(也就是说,被定制)。如果是这样的,第二询问操作616操作流程分支“是”到第三询问操作618。否则,第二询问操作616把操作流程分支“不”到第四询问操作624。
第三询问操作618检验由第二询问操作616检测的定制以确定是否定制涉及表现更改或语义更改。如以上反复提到的,表现更改是只影响当前呈现的图形108所对应的特定图形定义109a或109b的更改。相反,语义更改是影响可由计算机图形应用程序100选择的所有图形定义109a和109b的更改。任一可涉及图形(例如,108)、或它的图形元素的特性,可标识为表现特性,并且因而经受表现更改、或语义特性,并且因而经受语义更改。实现和选择有关,仅仅为了说明,在此描述的图形元素的大小作为示例表现特性,并且在此描述的图形元素的颜色作为示例语义特性。
如果第三询问操作618确定定制是表现更改,操作流程分支“P”到第一更新操作620。第一更新操作620用定制更新检索到的表现模型408或410。另一方面,如果第三询问操作618确定定制是语义更改,操作流程分支“S”到第二更新操作622。第二更新操作622用定制更新由创建操作606创建的语义模型404。从第一更新操作620和第二更新操作622中,操作流程返回到呈现操作612,在此呈现基于更新的模型(也就是说,表现模型或语义模型)的图形108。然后操作流程如先前描述地继续。
当第二询问操作616把操作流程分支为“不”的情况下,调用第四询问操作624。第四询问操作624确定是否用户或其它应用程序已经选择一新图形定义109a或109b用于在图形窗格106上显示。这样的选择解释成用户或其它应用程序希望查看基于不同图形定义109a或109b在接收操作604接收到的内容115。如果第四询问操作624确定这样的选择已经做出,操作流程转移到切换操作626。
切换操作626创建与新选择的图形定义109a或109b相关联的表现模型408或410(或,检索,如果该表现模型已经被创建),然后把操作流程转回到呈现操作612。呈现操作612然后呈现基于当前语义模型404(也就是说,由创建操作606创建的语义模型或相同的更新的版本)的图形108并且表现模型408或410通过切换操作626创建或检索。
然而,如果第四询问操作624确定新图形定义109a或109b的选择还没有发生,操作流程分支“不”到第五询问操作627。第五询问操作627确定是否一用户或另一应用程序已经输入信息导致对于内容115结构的更改。这种结构中的更改是由于已经(如果已经移除)或将(如果已经添加)对应于在图形108中的图形元素的内容的添加或删除引起的。这样的移除或删除可包括导致图形元素添加或删除的格式更改。如果第五询问操作627检测到在内容115中将要导致对于图形108的结构更改的更改,操作流程分支“是”到一第三更新操作628。否则,操作流程分支“不”到第一询问操作614并且如以上描述地继续。
第三更新操作628更新当前使用的表现模型408或410(也就是说,有创建操作606创建的表现模型或由切换操作626创建或检索的表现模型)和语义模型404以反映对于内容115的更改。从第三更新操作628,操作流程转移到呈现操作612,在此基于更新的表现模型408或410以及更新的语义模型404呈现图形108。从呈现操作612,操作流程如以上描述地继续。
虽然本发明已经以特定于结构特性、方法行为、以及包括这种行为的计算机可读介质的语言被描述,可以理解的是在权利要求中定义的本发明不限制于所描述的特定结构、行为、或介质。本领域的技术人员将识别其它在本发明范围和精神内的实施例或改进。例如,在显示过程600中操作执行的次序根据一示例实施例显示。根据其它实施例,这些操作的执行次序可被改变。例如,创建操作606可在检索内容操作604之前执行而不背离本发明的范围。
此外,尽管表现模型(例如,408和410)与图形定义(例如,109a和109b)之间1对1的互相关性被描述,根据本发明的实施例,一个以上的表现模型(例如,408和410)可与单个图形定义109a或109b相关联。此外,可以理解的是UI102可被构造成具有少于或多余三个窗格(例如,104、105和106)。实际上,在这些窗格(例如,104、105和106)中任一窗格上的功能可以其它图形用户界面组件的类型,诸如,例如,工具栏、缩略图、菜单、命令栏、对话框等被另外地或附加地提供。
更进一步,尽管在此描述的表现模型(例如,408、410)作为特定于每个图形定义,例如,109a和109b,其它在本发明范围内可预期的实施例涉及在多个图形定义306中不变的表现模型(例如,408、410)。在这些实施例中,具有相似特性的图形定义,例如,109a和109b在图形分类中一起分组并且表现模型对于这些分类是特定的而不是单独特定于组成分类的类型。例如,分类可把所有具有可操作用于以径向方式位置移动的图形元素的图形定义,例如,109a和109b一起分组以在该类别的所有图形定义中持续这些移动。同样地,另一分类可把所有可操作于对于一x-y坐标系统的位置移动的图形定义,例如,109a和109b一起分组。
权利要求
1.一种用于通过显示模块呈现用于显示的图形的计算机实现的方法,该方法包括接收对于图形的图形定义的选择;基于图形定义创建图形,并把先前所作图形的定制应用到对应于一不同图形定义的不同图形;和提供已创建的图形给显示模块以在此显示。
2.如权利要求1所定义的计算机可实现方法,其特征在于,图形表现具有项的内容并且其中所选择的图形定义是多个可能的图形定义中的一个,创建行为包括对于所有可能的图形定义检索定义语义特性的一语义模型以使每个相关联的图形表示使用类似语义特性内容中的一类似项,其中定制涉及第一语义特性;和通过参考语义模型识别定制。
3.如权利要求2所定义的计算机实现的方法,其特征在于,显示模块包括显示屏,在此可将用户界面呈现给用户,在用户界面上显示图形,所述方法进一步包括通过用户界面接收对于图形的一新的定制,所述新的定制涉及第二语义特性;和更新在语义模型中的第二语义特性以反映新的定制。
4.如权利要求3所定义的计算机实现的方法,其特征在于,进一步包括接收对使用新的图形定义可视地表现内容的请求;和对于新的图形定义基于更新的语义模型创建一新的图形以使新的图形用定制和新的定制显示。
5.如权利要求2所定义的计算机实现的方法,其特征在于,所述创建行为包括检索定义特定于所选择的图形定义的表现特性的表现模型,其中表性特性中的至少一个基于先前对于图形做出的更改而被定制;和通过参考表性模型识别定制的表现特性;和创建图形以包括涉及第一语义特性的定制和定制的表现特性。
6.如权利要求5所定义的计算机实现的方法,其特征在于,显示模块包括显示屏,在此可将用户界面呈现给用户,在用户界面上显示图形,所述方法进一步包括通过用户界面接收对于图形的一新的定制,所述新的定制涉及表现特性中的第二个;和更新在表现模型中的第二表现特性以反映所述新的定制。
7.如权利要求6所定义的计算机实现的方法,其特征在于,进一步包括接收对可视地表现内容作为新的图形定义的请求;对应于新的图形定义基于用于新的图形定义的语义模型和表现模型创建一新的图形以使新的图形用对于第一语义特性的定制被显示而不是用对于第二表现特性的新的定制显示。
8.如权利要求7所定义的计算机实现的方法,其特征在于,进一步包括接收对要求切换回属于选择的图形定义的图形的请求;和基于用于图形定义的语义模型和表现模型重新创建图形以使图形用对于第一语义特性的定制以及对于第二表现特性的新的定制而被重新显示。
9.如权利要求2所定义的计算机实现的方法,其特征在于,内容包括文本内容而项则包括在文本内容内的文本行。
10.如权利要求6所定义的计算机实现的方法,其特征在于,定制涉及在图形内相对于在图形内其它图形元素的图形元素的位置移动。
11.一种用于呈现用于在显示屏上显示的图形的系统,该系统包括多个可能的图形定义,每个图形定义指定用于相关联的图形的可操作以表现内容的默认特性;一语义模型,对于所有可能的图形定义定义了语义特性,以使每个相关联的图形在使用类似的语义特性的内容中表示类似的项;一定制引擎,可操作以使用语义模型来创建对应于第一图形定义的第一图形和对应于第二图形定义的第二图形使得第一图形和第二图形有类似的语义特性;和一用户接口,呈现对于多个用于由用户选择的可能的图形定义中的每一个的图形表现,和响应与第一图形定义或第二图形定义相关联的图形表现的选择,分别在由定制引擎定义的显示屏上显示第一图形或第二图形。
12.如权利要求11所定义的系统,其特征在于,进一步包括多个表现模块,其中所述多个表现模块中的至少一个表现模块指定特定于第一图形定义的表现特性,其中响应于在用户界面上第一图形定义的选择,定制引擎使用特定于第一图形定义的语义模型和表现模型定义第一图形作为具有和所有可能的图形定义类似的语义特性以及特定于第一图形定义的表现特性。
13.如权利要求12所定义的系统,其特征在于,用户界面包括一内容窗格,显示用于由用户编辑的内容主体;和一图库窗格,对于由用户选择的多个可能的图形定义中的每一个定义显示所述图形表现;和一图形窗格,响应于来自图库窗格第一图形定义的选择显示用于由用户编辑的第一图形。
14.如权利要求13所定义的系统,其特征在于,在第一图形显示在图形窗格中的同时,定制引擎更新语义模型以响应于用户编辑语义特性中的一个使得响应于通过图库窗体由第二图形定义的用户的随后选择,定制引擎定义第二图形以使其具有经编辑的语义特性。
15.如权利要求13所定义的系统,其特征在于,定制引擎更新特定于第一图形定义的表现模型以响应于用户编辑表现特性中的一个于此同时第一图形显示在图形窗格中,用于由定制引擎随后使用以定义第一图形。
16.一计算机实现的方法,用于定制显示在显示屏上的图形,其中图形包括多个图形元素,所述方法包括接收要求修改图形的请求;和基于请求修改图形,同时相对于在图形中第二图形元素,维持先前应用到图形中第一图形元素的特性的定制。
17.如权利要求16所定义的方法,其特征在于,定制涉及相对于第二图形元素的第一图形元素的定位。
18.如权利要求16所定义的方法,其特征在于,定制涉及相对于第二图形元素的第一图形元素的大小。
19.如权利要求16所定义的方法,其特征在于,请求包括对图形增加或移除图形元素的指令。
20.如权利要求16所定义的方法,其特征在于,对于图形的默认特性由第一图形定义指定,所述方法进一步包括接收要求在新的图形中对应于第二图形定义表现多个图形元素的请求;和基于第二图形定义创建新的图形和把定制应用到新的图形。
全文摘要
公开了一种用于在计算机图形应用程序中基于用户定制而显示图形的方法和系统。定制涉及在图形中一个或多个图形元素的各种特性。这样的特性包括位置、大小、格式化和其它与图形元素相关联的视觉属性。这些特性可定义为语义特性或表现特性。语义特性在所有图形定义中不变。表现特性对于每个特定图形所属的图形定义是特定的。从而,对于显示的图形的语义特性的定制被保存在存储器中,其不仅仅应用于当前显示的图形,也应用于所有在将来可显示的其它图形定义。相反,对于表现特性的定制只对于当前显示的图形保存,并且不对所有其它图形定义保存。
文档编号G06F9/44GK1755622SQ20051009912
公开日2006年4月5日 申请日期2005年8月31日 优先权日2004年9月30日
发明者K·K·王, S·A·舍曼, D·赖特, M·J·科特勒, I·伯科 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1