CN1677343A - 网格画布 - Google Patents

网格画布 Download PDF

Info

Publication number
CN1677343A
CN1677343A CNA2005100531143A CN200510053114A CN1677343A CN 1677343 A CN1677343 A CN 1677343A CN A2005100531143 A CNA2005100531143 A CN A2005100531143A CN 200510053114 A CN200510053114 A CN 200510053114A CN 1677343 A CN1677343 A CN 1677343A
Authority
CN
China
Prior art keywords
grid
row
canvas
described object
layout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2005100531143A
Other languages
English (en)
Other versions
CN1677343B (zh
Inventor
D·G·蒂托夫
K·B·库普
K·L·扬
O·V·奥维齐凯恩
P·法拉戴
J·L·福斯勒
D·R·莱亨鲍尔
J·元
J·T·克里索培
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1677343A publication Critical patent/CN1677343A/zh
Application granted granted Critical
Publication of CN1677343B publication Critical patent/CN1677343B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Fencing (AREA)
  • Catching Or Destruction (AREA)
  • Baking, Grill, Roasting (AREA)
  • Housing For Livestock And Birds (AREA)

Abstract

一种布局智能地调整大小而没有复杂性。对象和元素被附加到分别定义的行和列网格线的虚拟网格。对象和网格之间的关系是双向的,使得移动一个(网格线或对象)将影响另一个(对象或网格线)。换言之,扩展/折叠对象将推动网格线,而移动网格线将扩展/折叠对象。可在对象之前或之后创建虚拟网格以提供更大的灵活性。子对象可具有其自己的虚拟网格,这允许在需要时有更精细的控制。

Description

网格画布
技术领域
本发明一般涉及计算机图形领域,尤其涉及显示屏上对象的布局。
背景技术
当设计用户界面元素(窗口区域、控件等)的布局时,通常使用设计者画布(canvas),并将元素(此处也称为对象)放置到画布上。然而,当构建应用程序并且画布所覆盖的区域被调整大小时,很难以一种智能的方式调整所有元素的大小。现有的方法往往是不完整、复杂或对设计者不透明的。
期望设计一种布局,使得它能够调整大小,而设计者不需要书写代码来令其发生。创建能够智能地调整大小的应用程序布局是当前通过不完整的机制、极其复杂的机制或设计者不可访问的代码来解决的问题。
一种常规的机制是画布风格的布局。这一类型的布局提供了可在其上钉住新元素的区域,这类似于在公告牌上贴通知。就如在公告牌上一样,一旦被放置,对象就是固定的,除非程序员明确地移动它们。
另一种常规系统是按比例调整大小布局。除整个公告牌稍后被认为是可按比例拉伸的单个图像之外,这些布局与画布风格的布局相同。这一类型的布局对旨在随增加的屏幕尺寸而增大的固定功能用户界面(如,简单的游戏)是可接受的,然而对于可更好地应用屏幕以显示更大的信息密度的情况(例如文字处理显示)是较差的。
表格风格的布局是另一种常规布局机制。这些布局类似于HTML中找到的那些布局。可用空间被切割成各个单元,其中每一单元是其内容的容件。通常,较大的元素(例如,图像)必须在单元之间划分以创建期望的布局。
另一种类型的布局机制是基于附加的布局。在这些布局中,允许每一对象将其自身“附加”到整体画布的边缘;例如,如果它被附加到左侧和右侧,则其宽度在应用程序被调整大小时改变,而保持边距固定。
诸如Java的Gridbag等“高级”布局也是已知的。GridBag向每一子数据分配定位信息(包括跨越信息以及边距),并在所有子数据上推论以产生结果。GrigBag容件本身不携带任何信息。结果比先前提到的布局更有功能,但是极难使用工具(即,很难以清楚且简单的用户界面来呈现)。
“弹簧和支柱(Springs and structs)”是一种常规布局,其中,每一对象坐标可被有效地定义为来自其它坐标的表达式。例如,在“弹簧和支柱”环境中,可将两个元素配置为总是相距10个像素。尽管最初是可表达的,然而这一机制快速地陷入困境,尤其是当运行时间极端地涉及重新计算要求,它最终对任务是不适当的。
鉴于以上原因,需要一种克服现有技术的限制和缺点的系统和方法。
发明内容
本发明针对一种在没有复杂性的情况下智能调整大小的布局。元素(即对象)被附加到被分别定义的行和列网格线的虚拟网格。对象和网格之间的关系是双向的,使得移动一个(网格线或对象)将影响另一个(对象或网格线)。换言之,扩展/折叠对象将推动网格线,而移动网格线将扩展/折叠对象。虚拟网格可在对象之前或之后创建,以提供更多灵活性。子对象可具有其自己的虚拟网格,这在需要时允许更精细的控制。
当参考附图前进时,从以下说明性实施例的详细描述中,本发明的另外的特征和优点将变得显而易见。
附图说明
当结合附图阅读时,将更好地理解以上概述以及以下较佳实施例的详细描述。为说明本发明的目的,附图中示出了本发明的示例性构造;然而,本发明不限于所揭示的特定方法和手段。附图中:
图1是依照本发明具有对象的示例性网格画布的图示;
图2是依照本发明生成网格画布的示例性方法的高层流程图;
图3是依照本发明的示例性系统的高级框图;
图4是依照本发明的另一示例性网格画布的图示;
图5是依照本发明的另一示例性网格画布的图示;
图6是依照本发明的另一示例性网格画布的图示;
图7示出了依照本发明创建网格画布布局的示例性方法;
图8是依照本发明的另一示例性网格画布的图示;
图9是依照本发明的多个重叠对象的示例性图示;以及
图10所示是可在其中实现本发明的各方面的示例性计算环境的框图。
具体实施方式
本发明针对一种布局,其中,对象被附加到分别定义的行和列网格线的虚拟网格。对象和网格之间的关系是双向的,使得扩展/折叠对象将推动网格线,而移动网格线将扩展/折叠对象。这一布局机制在本发明中被称为“网格画布”布局机制。
图1示出了一个示例性网格画布布局。网格画布布局机制是父画布和子画布之间的协作。父画布10实际上是在其上对象30、40可被拖曳到任何位置,并且对象保留在所放置的地方的画布。在任一时刻,网格画布10可以被分割成所需要的行R和列C。网格画布的每一子画布维护一网格边框以及相对于该边框的边距。例如,对象30的网格边框是行R1的所有(即,R1C1:R1C2)。边距设置允许网格边框内的多种类型的“附件”,它允许使用从框边界的合适的偏移。行R和列C本身由父网格画布10拥有,并可用常规的方式(如,固定尺寸、百分比尺寸、自动尺寸、加权尺寸)来定尺寸。
本发明将图片划分成仅表示位置的虚拟单元。因此,例如,对象30不需要被分割成多个单元,其每一个需要自身移动。相反,对象30跨越底层网格画布10的若干虚拟单元。此外,对象可以重叠。网格线是虚拟的,并担当坐标系统,而虚拟单元仅是坐标系统的表现。本发明打破了子单元必须相对于网格线放置于何处的依赖性。
本发明可以在能够以行和列计算和排列子对象的用户界面面板来实现。子对象可以是任何对象,如面板或控件。列和行网格线的交叉形成了槽缝的网格。子对象或对象可占用若干相邻的网格槽(如,对象30占用由行R1、列C1和行R1、列C2确定的槽或单元)。对象的布局行为由它所跨越的列和行的设置来确定。例如,可通过指定对应的列上的像素宽度值和对应的行的像素高度值向网格槽分配一固定尺寸。列宽度可以相对于跨越它的子对象的期望宽度来计算。可以向行分配一剩余可用空间的比例。对象可重叠,因为两个或多个子对象可占用布局槽的同一子集(如,见图5中的对象20和30)。
子对象可具有多个属性,例如但不限于以下属性:四个网格坐标(网格单元的边框)、边框的四个边距、以及对象的高度和宽度。例如,边距和高度以及宽度可被指定为“自动”,使得它们占用尽可能多的可用空间以维持适当的比例和位置。更具体地,对于宽度和高度,希望有各种类型的规格:绝对(如,100像素、2英寸等等)、百分比(如,百分之10)、自动(即,自然尺寸)以及星(“*”)(如,*、25*等等)。星是使用剩余空间的规格。如果两个列被标记为“*”,则两个对象的空间与其星值成比例地划分。这期望地为基于权值的分布。
图2是生成网格画布的示例性方法的高层流程图。在步骤100,通过指定行和列网格线的虚拟网格创建底层网格或父网格。然后使用在步骤110的对象具有的各种性质和属性定义一个或多个对象。此时也可定义行和列。提供循环直到定义完成。然后在步骤120测量网格并放置对象。可构想尽管在放置对象之前声明网格,然而网格可在放置对象之前或之后的任何时刻配置。例如,首先可在页面上布置对象,然后配置网格。
布局容件期望地以一行、一列开始。网格具有固定数量的行和列,但是没有单元。行和列可以是固定的或可拉伸的。当绘制对象时,较佳地给予它们两种类型的属性:行、行跨度、列、列跨度,以指定网格线的边框和左边、右边、顶部、底部、宽度、高度。对象被放置在网格线边框中。
由此,示例性网格画布能够创建丰富的对话框和组件布局。该特征集期望地包括以列和行表示的布局;重叠;对列和行的绝对值、百分比、“到内容”和行与列的加权比例定尺寸的支持;对子对象位置的全控制;以及定尺寸行为。
期望地,对象在行和列中相对于网格线来排列。行和列例如可被锁定,和/或给予一最小尺寸。对象可被放置在网格内,使得它们可依照所跨越的行和列的设置来拉伸。多个对象可重叠,其每一个使用单元的不同区域。这一示例在图5中示出,并在下文描述。较佳地,网格是可绑定数据的(databindable),其中,行和列的数量是未知的。
依照本发明的一个系统包括一布局引擎,它实现用于确定对象尺寸和位置,以及网格自己的列和行的尺寸和位置的优化算法和过程。如图3以高层所示,示例性布局引擎200驻留在计算机内或结合微处理器或控制器,并与用户界面210和显示屏220通信。布局引擎包括分别用于为对象定尺寸和定位,以及为画布定尺寸和定位的例程203和206。
较佳地,布局确定可以用两种方式作出(在两个维度上都是独立的:水平(宽度)和垂直(高度))。第一个示例性方式是对预定尺寸的计算(例如,当尺寸由布局作者明确地设置时)。在这一情况下,尺寸在列(行)之间的尺寸分布是在考虑对象的自然尺寸。第二个示例性方式是对其自然尺寸的计算(如,当没有定义明确尺寸时)。在这一情况下,确定网格的自然尺寸是考虑对象的自然尺寸和列(行)上的尺寸规格、并在百分比尺寸规格和加权比例尺寸规格的情况下保存列(行)尺寸比例。
运行时间
网格画布是可在运行时间系统中使用的元素。网格画布10被划分成行R和列C,如图4中所示的。尽管在图4中示出了两行R1、R2和两列C1、C2,可构想网格画布可被划分成任意数量的行和列。每一行和列期望地具有其上的定尺寸信息(如,固定、百分比、自动或加权)。
子对象可被放置在父网格画布上的任何地方。示例性子对象在图5中被示出为四个对象20、30、40、50。对象20和30覆盖多个单元(一行和一列被认为形成一个单元)。对象20驻留在行R1和R2以及列C1和C2中,而对象30被布置在行R1和列C1及C2中。对象40完全位于由行R2和列C1形成的单元内,而对象50完全位于由行R2和列C2形成的单元内。
在这一点上,假定图5的布局底部的行R2期望具有绝对高度,而顶部的行R1期望占有所有的剩余空间。当该布局被调整大小得更高时,期望的结果在图6中示出。注意,行R2以及其中包含的对象或对象的部分保持在其原始的固定高度。另一方面,行R1及其中包含的对象或对象的部分被垂直地调整大小,以覆盖该方向上的额外空间。对象和单元彼此相关的部分在行R1中保持与原始的、未调整大小的行R1相同。
这一布局可以通过适当地配置行/列(例如,底部行高度=“150像素”;顶部行高度=“*”,其中,“*”意味着在考虑了固定的行/列之后采用可用空间的比例;如果没有其它行在其上具有“*”,则“*”将使用整个剩余的空间),并配置对象与网格包括边距的关系来实现。使用了一种坐标系统,其中,单元由C1,R1是(0,0);C2,R1是(1,0);C1,R2是(0,1);和C2,R2是(1,1)来定义。例如,假定对象的边缘和单元的对应边缘之间的距离是“边距”,并且边距是以像素来定义的或被定义为自动,则可如下为对象20、30、40、50定义对象关系:
对象20:网格位置=(0,0)-(1,1)(这意味着对象跨越单元(0,0)到单元(1,1),如图所示);边距=(10,10,10,10)(这意味着从每一方向上的边缘到其对应的网格单元边缘的距离是10个像素)(注意,绘图不被缩放);宽度=自动;高度=自动。
对象30:网格位置=(0,0)-(1,0);边距=(20,20,20,10);宽度=自动;高度=自动。
对象40:网格位置=(0,1)-(0,1);边距=(20,10,自动,20);宽度=固定(如,100);高度=自动。
对象50:网格位置=(1,1)-(1,1);边距=(10,10,10,自动);宽度=自动;高度=固定(如,40)。
期望地,明确值表示明确的度量,而自动值占用剩余的可用空间。可以构想,在各种实现中,可以对所有的边指定边距,然后可添加额外的附加标记。此外,由子对象请求的值可能无法由父对象实现,在这种情况下,网格画布可通过例如返回错误消息或修订值使其有效来处理其过约束(overconstrained)问题。
运行时间的功能在于测量子对象、依照它所运作的任何约束分配行况合度列高度、并稍后基于有多少空间可用来定位子对象。
设计时间
设计时间处理是使用最少量的用户指定来创建网格画布布局的动作。向布局作者或设计者提供定义布局形状和布局动态行为的能力。
图7示出了依照本发明创建网格画布的一个示例性方法。在步骤700,设计者将对象放置在显示屏上的特定位置(如,显示屏上的用户界面中)。在步骤710,确定其网格线边框。这将上述属性映射到所述网格位置。然后,在步骤720,例如依照默认方案通过将该网格线边框的范围与期望的位置进行比较,可确定适当的边距和宽度/高度。一个示例性默认方案是这样一个方案,其中:(1)如果指定的位置完全在网格线边框范围的左半部分,则设置明确的左边距和宽度,并且将又右边距设置为自动;(2)如果指定的位置完全在网格线边框范围的右半部分,则设置明确的右边距和宽度,并将左边距设置为自动;(3)如果指定的位置跨越网格线边框范围的中心线,则设置明确的左和右边距,并将宽度设置为自动;以及(4)以类似的方式处理高度及上/下边距。
图8示出了可用于解释上述设置,尤其是对于行R2、列C2中的对象50的示例性网格画布。固定值被示出为实线,而自动值被示出为虚线。通过来回切换所示出的六个定位指示符(高度、宽度和边距)中的任一个,用户可改变定位方案,并用当前有效的固定值替换任何自动值。用户也可在需要时通过将四个外部锚位(anchor)如所期望地移动到其它网格线来调整网格线边框。当移动对象或调整其大小时,其新位置被重新估算,并且计算新值,以用户所表达的任何明确的期望为模。当添加或删除行或列时,附近的对象被重新计算,以用户所表达的任何明确期望为模。
一种示例性设计方法包括确定对象的网格线边框。如果上边缘在中线之上,则其上边距是固定的。如果下边缘也在中线之上,则其高度是固定的,并且下边距被设为动态。然而,如果下边缘在中线之下,则其下边缘是固定的,并且其高度被设为动态。当绘制新网格线时自动更新赋值。
作为一个示例,假定存在可在景物上绘制的网格线,并且对象可被正常地绘制和修改(如,对象可随意地跨越网格线)。在这一环境中,为在图9中所示的多个重叠水平对象770和垂直对象780的图像提供了以下示例性解决方案(其中,“red(红)”作为对象的示例性颜色提供):<Grid Width=”300”Height=”300”><Row Size=”*”/><Row Size=”*”/><Row Size=”*”/><Column Size=”*”/><Column Size=”*”/><Column Size=”*”/><!--Rows under the columns!--><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”3”Row=”1”RowSpan=”1”LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”3”Row=”2”RowSpan=”1”LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/><!--Columns!--><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”1”Row=”0”RowSpan=”3”LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”1”Row=”1”RowSpan=”3”LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”1”Row=”2”RowSpan=”3”  LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/><!--Top Row!--><RoundedRect Fill=”Red”Column=”0”ColumnSpan=”3”Row=”0”RowSpan=”1”LeftMargin=”5”RightMargin=”5”Width=”Auto”TopMargin=”5”BottomMargin=”5”Height=”Auto”/>
</Grid>
注意,首先出现列和行信息,并且子对象的顺序就是绘制的顺序。此外,每一对象附加了描述对象嵌入其中的网格矩形的属性。相对于指定的网格矩形估算边距。可添加在调整大小过程中控制行为的附加对齐(snapto)信息。该系统能够访问网格线值,因此采用了与网格边框相关的矩形,并期望地采用了网格边界和偏移。
示例性计算环境
图10示出了适合在其中实现本发明的计算系统环境800的一个示例。计算系统环境800仅为合适的计算环境的一个示例,并非暗示对本发明的使用范围或功能的局限。也不应将计算环境800解释为对示例性操作环境800中示出的任一组件或其组合具有任何依赖或需求。
本发明可以使用众多其它通用或专用计算系统环境或配置来操作。适合使用本发明的众所周知的计算系统、环境和/或配置包括但不限于:个人计算机、服务器计算机、手持式或膝上设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费者电子设备、网络PC、小型机、大型机、包括任一上述系统或设备的分布式计算环境等等。
本发明可在诸如由计算机执行的程序模块等计算机可执行指令的一般上下文环境中描述。一般而言,程序模块包括例程、程序、对象、组件、数据结构等等,执行特定的任务或实现特定的抽象数据类型。本发明也可以在分布式计算环境中实践,其中,任务由通过通信网络或其它数据传输介质连接的远程处理设备来执行。在分布式计算环境中,程序模块可以位于本地和远程计算机存储介质中,包括存储器存储设备。
参考图10,用于实现本发明的示例系统包括计算机810形式的通用计算装置。计算机810的组件包括但不限于,处理单元820、系统存储器830以及将包括系统存储器的各类系统组件耦合至处理单元820的系统总线821。系统总线821可以是若干种总线结构类型的任一种,包括存储器总线或存储器控制器、外围总线以及使用各类总线体系结构的任一种的局部总线。作为示例而非局限,这类体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线以及外围部件互连(PCI)总线(也称为Mezzanine总线)。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是可由计算机810访问的任一可用介质,包括易失和非易失介质、可移动和不可移动介质。作为示例而非局限,计算机可读介质包括计算机存储介质和通信介质。计算机存储介质包括以用于储存诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任一方法或技术实现的易失和非易失,可移动和不可移动介质。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储设备、或可以用来储存所期望的信息并可由计算机810访问的任一其它介质。通信介质通常在诸如载波或其它传输机制的已调制数据信号中包含计算机可读指令、数据结构、程序模块或其它数据,并包括任一信息传送介质。术语“已调制数据信号”指以对信号中的信息进行编码的方式设置或改变其一个或多个特征的信号。作为示例而非局限,通信介质包括有线介质,如有线网络或直接连线连接,以及无线介质,如声学、RF、红外和其它无线介质。上述任一的组合也应当包括在计算机可读介质的范围之内。
系统存储器830包括易失和/或非易失存储器形式的计算机存储介质,如ROM831和RAM832。基本输入/输出系统833(BIOS)包括如在启动时帮助在计算机810内的元件之间传输信息的基本例程,通常储存在ROM831中。RAM832通常包含处理单元820立即可访问或者当前正在操的数据和/或程序模块。作为示例而非局限,图10示出了操作系统834、应用程序835、其它程序模块836和程序数据837。
计算机810也可包括其它可移动/不可移动、易失/非易失计算机存储介质。仅作示例,图10示出了对不可移动、非易失磁介质进行读写的硬盘驱动器841、对可移动、非易失磁盘852进行读写的磁盘驱动器851以及对可移动、非易失光盘856,如CD ROM或其它光介质进行读写的光盘驱动器855。可以在示例性操作环境中使用的其它可移动/不可移动、易失/非易失计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字视频带、固态RAM、固态ROM等等。硬盘驱动器841通常通过不可移动存储器接口,如接口840连接到系统总线821,磁盘驱动器851和光盘驱动器855通常通过可移动存储器接口,如接口850连接到系统总线821。
图10讨论并示出的驱动器及其关联的计算机存储介质为计算机810提供了计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图10中,示出硬盘驱动器841储存操作系统844、应用程序845、其它程序模块846和程序数据847。注意,这些组件可以与操作系统834、应用程序835、其它程序模块836和程序数据837相同,也可以与它们不同。这里对操作系统844、应用程序845、其它程序模块846和程序数据847给予不同的标号来说明至少它们是不同的副本。用户可以通过输入设备,如键盘862和定位设备861(通常指鼠标、跟踪球或触摸板)向计算机810输入命令和信息。其它输入设备(未示出)可包括麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等等。这些和其它输入设备通常通过耦合至系统总线的用户输入接口860连接至处理单元820,但是也可以通过其它接口和总线结构连接,如并行端口、游戏端口或通用串行总线(USB)。监视器891或其它类型的显示设备也通过接口,如视频接口890连接至系统总线821。除监视器之外,计算机也可包括其它外围输出设备,如扬声器897和打印机896,通过输出外围接口895连接。
计算机810可以在使用到一个或多个远程计算机,如远程计算机880的逻辑连接的网络化环境中操作。远程计算机880可以是个人计算机、服务器、路由器、网络PC、对等设备或其它公用网络节点,并通常包括许多或所有上述与计算机810相关的元件,尽管在图10中仅示出了存储器存储设备881。所描述的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但也可包括其它网络。这类网络环境常见于办公室、企业范围计算机网络、内联网以及因特网。
当在LAN网络环境中使用时,计算机810通过网络接口或适配器870连接至LAN871。当在WAN网络环境中使用时,计算机810通常包括调制解调器872或其它装置,用于通过WAN873,如因特网建立通信。调制解调器872可以是内置或外置的,通过用户输入接口860连接至系统总线821。在网络化环境中,描述的与计算机810相关的程序模块或其部分可储存在远程存储器存储设备中。作为示例而非局限,图10示出了远程应用程序885驻留在存储器设备881中。可以理解,示出的网络连接是示例性的,也可以使用在计算机之间建立通信链路的其它装置。
如上所述,尽管结合各种计算装置描述了本发明的示例性实施例,然而其基本概念可应用于任何计算装置或系统。
此处所描述的各种技术可结合硬件或软件来实现,或在适当时以两者的组合来实现。由此,本发明的系统和方法或其某些方面或部分,可采用包含在诸如软盘、CD-ROM、硬盘或任何其它机器可读存储介质等有形介质中的程序代码(即,指令)的形式,其中,当程序代码被加载到诸如计算机等机器中并由其执行时,该机器变为用于实施本发明的装置。在可编程计算机上的程序代码执行的情况下,计算装置一般包括处理器、处理器可读的存储介质(包括易失和非易失存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。如有需要,程序可以用汇编语言或机器语言来实现。在任何情况下,语言可以是已编译或已解释语言,并与硬件实现相组合。
本发明的方法和装置也可通过以程序代码的形式实施的通信来实现,该程序代码通过某一传输介质来发送,如通过电线或电缆、通过光纤或通过任一其它形式的传输,其中,当程序代码由诸如EPROM、门阵列、可编程逻辑器件(PLD)、客户机计算机等的机器接收被装载到其中由其执行时,该机器变为用于实施本发明的装置。当在通用处理器上实现时,程序代码与处理器相结合,以提供用于调用本发明的功能的独立的装置。另外,用于本发明的任何存储技术可以不变地为硬件和软件的组合。
尽管结合附图的较佳实施例描述了本发明,然而可以理解,可以使用其它类似的实施例,或可以对所描述的实施例作出修改和添加,以执行本发明的相同功能而不脱离本发明。因此,本发明不应当限于任何单个实施例,而是应当依照所附权利要求书的宽度和范围来解释。

Claims (28)

1.一种生成网格画布的方法,其特征在于,它包括:
定义网格;
在所述网格上定义对象;
在所述网格上定义多个行和列;以及
将所述对象放置在所述网格上。
2.如权利要求1所述的方法,其特征在于,定义所述网格包括指定行和列网格线的虚拟网格。
3.如权利要求1所述的方法,其特征在于,定义所述对象包括为所述对象定义至少一个属性或性质。
4.如权利要求1所述的方法,其特征在于,对要放置在所述网格上的多个对象重复定义对象的所述步骤。
5.如权利要求1所述的方法,其特征在于,将所述对象放置在所述网格上包括将所述对象放置在网格线边框内。
6.如权利要求5所述的方法,其特征在于,所述网格线边框包括包含所述对象的多个行和列。
7.如权利要求1所述的方法,其特征在于,定义所述网格包括生成多个虚拟单元。
8.如权利要求7所述的方法,其特征在于,将所述对象放置在所述网格上包括放置所述对象使得所述对象跨越多个虚拟单元。
9.如权利要求1所述的方法,其特征在于,它还包括在所述网格上放置第二对象,所述网格包括多个虚拟单元,其中,所述对象和所述第二对象占据所述多个虚拟单元的相同单元的至少一个。
10.一种创建网格画布布局的方法,其特征在于,它包括:
将对象放置在显示屏上;
为所述对象确定网格线边框;以及
为所述对象实现多个属性。
11.如权利要求10所述的方法,其特征在于,实现所述多个属性包括为所述对象设置边距、高度和宽度。
12.如权利要求10所述的方法,其特征在于,它还包括在实现所述多个属性之前确定所述多个属性。
13.如权利要求12所述的方法,其特征在于,确定所述多个属性包括将所述网格线边框的范围与期望位置相比较,以确定所述对象的边距、高度和宽度。
14.一种包括可在其上绘制对象的画布的网格画布布局,其特征在于,所述画布包括可定尺寸的行和列,所述行和列定义包含所述对象的虚拟单元。
15.如权利要求14所述的网格画布布局,其特征在于,它还包括担当坐标系统的虚拟网格线。
16.如权利要求14所述的网格画布布局,其特征在于,它还包括所述对象的网格边框。
17.如权利要求16所述的网格画布布局,其特征在于,它还包括所述网格边框内的边距设置,用于向所述对象提供期望的偏移。
18.一种在其上呈现网格画布布局的显示设备,所述网格画布布局包括在其上可以绘制对象的画布,其特征在于,所述画布包括可定尺寸的行和列,所述行和列定义包含所述对象的虚拟单元。
19.如权利要求18所述的显示设备,其特征在于,所述网格画布还包括担当坐标系统的虚拟网格线。
20.如权利要求18所述的显示设备,其特征在于,所述网格画布还包括所述对象的网格边框。
21.如权利要求20所述的显示设备,其特征在于,所述网格画布还包括所述网格边框内的边距设置,用于向所述对象提供期望的偏移。
22.如权利要求18所述的显示设备,其特征在于,可在所述网格画布布局上绘制第二对象,其中,所述对象和所述第二对象占据相同虚拟单元的至少一个。
23.在具有图形用户界面和显示屏的计算机系统中,一种生成网格画布的方法,其特征在于,所述方法包括:
定义网格;
接收关于所述网格的对象定义信号;
在所述网格上定义多个行和列;以及
在所述网格上显示所述对象。
24.如权利要求23所述的方法,其特征在于,显示所述对象包括依照所述对象的至少一个属性或性质显示所述对象。
25.如权利要求23所述的方法,其特征在于,对要在所述网格上显示的多个对象重复显示对象的所述步骤。
26.如权利要求23所述的方法,其特征在于,在所述网格上显示所述对象包括将所述对象放置在网格线边框中。
27.如权利要求23所述的方法,其特征在于,在所述网格上显示所述对象包括显示所述对象使得所述对象跨越多个虚拟单元。
28.如权利要求23所述的方法,其特征在于,它还包括在所述网格上显示第二对象,所述网格包括多个虚拟单元,其中,所述对象和所述第二对象占据所述多个虚拟单元的相同单元的至少一个。
CN2005100531143A 2004-03-31 2005-02-28 网格画布 Expired - Fee Related CN1677343B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/815,067 2004-03-31
US10/815,067 US20050237321A1 (en) 2004-03-31 2004-03-31 Grid canvas

Publications (2)

Publication Number Publication Date
CN1677343A true CN1677343A (zh) 2005-10-05
CN1677343B CN1677343B (zh) 2012-09-05

Family

ID=34887735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005100531143A Expired - Fee Related CN1677343B (zh) 2004-03-31 2005-02-28 网格画布

Country Status (18)

Country Link
US (1) US20050237321A1 (zh)
EP (1) EP1583036A3 (zh)
JP (1) JP2005293552A (zh)
KR (1) KR101130487B1 (zh)
CN (1) CN1677343B (zh)
AU (1) AU2005200389B2 (zh)
BR (1) BRPI0500582A (zh)
CA (1) CA2496101A1 (zh)
CO (1) CO5680120A1 (zh)
IL (1) IL167162A (zh)
MX (1) MXPA05002325A (zh)
MY (1) MY144679A (zh)
NO (1) NO20051057L (zh)
NZ (1) NZ538523A (zh)
RU (1) RU2376639C2 (zh)
SG (1) SG115729A1 (zh)
TW (1) TW200532485A (zh)
ZA (1) ZA200501720B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447901A (zh) * 2010-09-01 2012-05-09 微软公司 用于改进的高速缓存和图像分类的自适应网格生成
CN102866883A (zh) * 2011-08-30 2013-01-09 微软公司 确定图形状之间的相等间隔向导的显示
CN102929922A (zh) * 2011-09-23 2013-02-13 微软公司 用于网格上呈现磁贴的动态布局的技术
CN103959243A (zh) * 2011-09-30 2014-07-30 谷歌公司 扩展到用反向弧编码最小和最大约束的有向图的方法和装置
US9323436B2 (en) 2012-04-05 2016-04-26 Microsoft Technology Licensing, Llc Utilizing drawing guides in determining the display of smart guides in a drawing program
US9645831B2 (en) 2011-10-31 2017-05-09 Microsoft Technology Licensing, Llc Consolidated orthogonal guide creation
US10331335B2 (en) 2010-12-23 2019-06-25 Microsoft Technology Licensing, Llc Techniques for electronic aggregation of information
CN110211131A (zh) * 2019-05-21 2019-09-06 上海阿几网络技术有限公司 一种基于参数化设计的平面设计尺寸自动拓展方法
CN112346725A (zh) * 2020-11-05 2021-02-09 南方电网数字电网研究院有限公司 页面设计方法、装置、设备及存储介质

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099385A (ja) * 2004-09-29 2006-04-13 Fujitsu Ltd 形状設計支援プログラム
US7581169B2 (en) 2005-01-14 2009-08-25 Nicholas James Thomson Method and apparatus for form automatic layout
JP4665933B2 (ja) * 2006-07-04 2011-04-06 セイコーエプソン株式会社 文書編集支援装置、プログラムおよび記憶媒体
US20080062204A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Automated pixel snapping for anti-aliased rendering
US7979785B1 (en) 2006-10-04 2011-07-12 Google Inc. Recognizing table of contents in an image sequence
US7912829B1 (en) 2006-10-04 2011-03-22 Google Inc. Content reference page
US8782551B1 (en) * 2006-10-04 2014-07-15 Google Inc. Adjusting margins in book page images
US20080115081A1 (en) * 2006-11-09 2008-05-15 Microsoft Corporation Enhanced windows management feature
JP4337867B2 (ja) * 2006-12-01 2009-09-30 セイコーエプソン株式会社 文書編集支援装置、文書編集装置、プログラムおよび記憶媒体
US20080218532A1 (en) * 2007-03-08 2008-09-11 Microsoft Corporation Canvas-like authoring experience atop a layout engine
US7712226B1 (en) * 2007-09-21 2010-05-11 Stearns David R Grid system apparatus
US20090106648A1 (en) * 2007-10-19 2009-04-23 Microsoft Corporation Positioning content using a grid
KR100917756B1 (ko) * 2007-12-18 2009-09-15 한국전자통신연구원 도면을 이용한 격자지도 생성방법 및 장치
US9400597B2 (en) * 2008-07-23 2016-07-26 Microsoft Technology Licensing, Llc Presenting dynamic grids
US8751921B2 (en) * 2008-07-24 2014-06-10 Microsoft Corporation Presenting annotations in hierarchical manner
US20100218090A1 (en) * 2009-02-26 2010-08-26 Universal - Ad Ltd. Sub-page-based page layout system and method thereof
US8612858B2 (en) * 2009-05-01 2013-12-17 Apple Inc. Condensing graphical representations of media clips in a composite display area of a media-editing application
US20110249007A1 (en) * 2010-04-13 2011-10-13 Disney Enterprises, Inc. Computer rendering of drawing-tool strokes
US8819557B2 (en) 2010-07-15 2014-08-26 Apple Inc. Media-editing application with a free-form space for organizing or compositing media clips
US20120030550A1 (en) * 2010-07-28 2012-02-02 Chin Ai Method for editing multimedia
US20120102385A1 (en) * 2010-10-25 2012-04-26 Konica Minolta Systems Laboratory Inc. Determining heights of table cells
US9679404B2 (en) 2010-12-23 2017-06-13 Microsoft Technology Licensing, Llc Techniques for dynamic layout of presentation tiles on a grid
JP5673264B2 (ja) * 2011-03-18 2015-02-18 富士通株式会社 図形描画プログラム、図形描画装置
US8751924B2 (en) 2011-04-27 2014-06-10 Microsoft Corporation Rule-based grid independent of content
US9013510B2 (en) 2011-07-29 2015-04-21 Google Inc. Systems and methods for rendering user interface elements in accordance with a device type
EP2555165B1 (en) * 2011-08-04 2020-04-15 Samsung Electronics Co., Ltd. Method and device for packing multiple images
US20130167072A1 (en) * 2011-12-22 2013-06-27 Sap Portals Israel Ltd. Smart and Flexible Layout Context Manager
US8458587B1 (en) * 2012-01-27 2013-06-04 Think-Cell Software Gmbh Method of entering page layout constraints into a computer
USD728592S1 (en) * 2012-05-02 2015-05-05 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD727931S1 (en) * 2012-05-02 2015-04-28 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD728590S1 (en) * 2012-05-02 2015-05-05 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD727929S1 (en) * 2012-05-02 2015-04-28 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD728591S1 (en) * 2012-05-02 2015-05-05 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD727338S1 (en) * 2012-05-02 2015-04-21 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
USD727337S1 (en) * 2012-05-02 2015-04-21 Pantech Co., Ltd. Display screen or portion thereof with graphical user interface
US9548042B2 (en) * 2012-06-28 2017-01-17 Adobe Systems Incorporated Responsive document breakpoints systems and methods
KR101221948B1 (ko) * 2012-07-19 2013-02-08 (주)지란지교소프트 윈도우 표시 방법 및 그 방법이 기록된 기록매체
US20140095986A1 (en) * 2012-09-30 2014-04-03 Vinay Krishnaswamy Baseline Alignment
CN103870508B (zh) * 2012-12-18 2016-04-20 腾讯科技(深圳)有限公司 一种网页缩放方法、装置和系统
US9280523B2 (en) * 2013-01-23 2016-03-08 Go Daddy Operating Company, LLC System for conversion of website content
US10719829B2 (en) 2013-09-09 2020-07-21 Touchtunes Music Corporation Techniques for processing pin-inclusive transactions in connection with an electronic device
WO2015070070A1 (en) * 2013-11-07 2015-05-14 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
US9582825B2 (en) 2014-03-24 2017-02-28 Touchtunes Music Corporation Systems, apparatuses, and methods for ordering items from an electronic menu, and servicing thereof
US10037122B2 (en) 2014-09-26 2018-07-31 Oracle International Corporation Canvas layout algorithm
JP6465277B6 (ja) * 2014-10-23 2019-03-13 Dynabook株式会社 電子機器、処理方法およびプログラム
US10037131B2 (en) * 2015-05-21 2018-07-31 Adobe Systems Incorporated Facilitating object set replication
US10325384B2 (en) 2015-08-20 2019-06-18 International Business Machines Corporation Multi-attribute relation network visualization and interaction interface
US9959257B2 (en) 2016-01-08 2018-05-01 Adobe Systems Incorporated Populating visual designs with web content
KR101759827B1 (ko) * 2016-03-08 2017-07-31 네이버비즈니스플랫폼 주식회사 가변 그리드의 인덱스를 이용한 입력 인식 방법 및 시스템
WO2017200706A1 (en) * 2016-05-17 2017-11-23 Google Llc Systems and methods for automatic determination of layout constraints
KR101866033B1 (ko) * 2016-07-05 2018-06-08 에스케이 주식회사 웹 브라우저에서의 그리드 렌더링 방법 및 이를 적용한 컴퓨팅 시스템
CN108564637B (zh) * 2018-04-19 2022-03-29 北京知道创宇信息技术股份有限公司 几何模型排布方法及装置
US10824318B1 (en) 2018-10-24 2020-11-03 Amdocs Development Limited System, method, and computer program for automatic user interface layout organization
US10984170B2 (en) * 2018-12-26 2021-04-20 Software Ag Systems and/or methods for dynamic layout design
CN110162367B (zh) * 2019-05-10 2020-11-24 上海莉莉丝科技股份有限公司 用户界面自适应配置的方法、系统、设备和介质
CN111651161B (zh) * 2020-07-16 2023-04-18 深圳市易鸿达软件开发有限公司 图形化界面构建方法、装置、计算机设备及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5490241A (en) * 1989-10-06 1996-02-06 Xerox Corporation Interactive computer graphics system for making precise drawings
US5796401A (en) * 1996-08-09 1998-08-18 Winer; Peter W. System for designing dynamic layouts adaptable to various display screen sizes and resolutions
JPH11102446A (ja) * 1997-09-29 1999-04-13 Fujitsu Ltd グラフィックス入力装置
US6323879B1 (en) * 1998-05-14 2001-11-27 Autodesk, Inc. Method and system for determining the spacing of objects
US6392673B1 (en) * 1998-09-04 2002-05-21 Microsoft Corporation Method for resizing user interface elements for an operating system
US6694487B1 (en) * 1998-12-10 2004-02-17 Canon Kabushiki Kaisha Multi-column page preview using a resizing grid
US6377285B1 (en) * 1999-01-29 2002-04-23 Sony Corporation Zooming space-grid for graphical user interface
US6919890B2 (en) * 2000-09-28 2005-07-19 Curl Corporation Grid and table layout using elastics
JP2002251624A (ja) * 2001-02-23 2002-09-06 Toppan Printing Co Ltd オブジェクト配置システム、オブジェクト配置方法、オブジェクト配置プログラム、及びオブジェクト配置プログラムを記録した記録媒体
US7136081B2 (en) * 2001-05-25 2006-11-14 Nvidia Corporation System and method of line sampling object scene information

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8760453B2 (en) 2010-09-01 2014-06-24 Microsoft Corporation Adaptive grid generation for improved caching and image classification
CN102447901A (zh) * 2010-09-01 2012-05-09 微软公司 用于改进的高速缓存和图像分类的自适应网格生成
CN102447901B (zh) * 2010-09-01 2014-08-20 微软公司 用于处理要传送到远程计算设备的图形数据的方法和系统
US10331335B2 (en) 2010-12-23 2019-06-25 Microsoft Technology Licensing, Llc Techniques for electronic aggregation of information
US9164777B2 (en) 2011-08-30 2015-10-20 Microsoft Technology Licensing, Llc Determining the display of equal spacing guides between diagram shapes
CN102866883A (zh) * 2011-08-30 2013-01-09 微软公司 确定图形状之间的相等间隔向导的显示
CN102929922B (zh) * 2011-09-23 2016-08-03 微软技术许可有限责任公司 用于网格上呈现磁贴的动态布局的方法和系统
CN102929922A (zh) * 2011-09-23 2013-02-13 微软公司 用于网格上呈现磁贴的动态布局的技术
CN103959243A (zh) * 2011-09-30 2014-07-30 谷歌公司 扩展到用反向弧编码最小和最大约束的有向图的方法和装置
CN103959243B (zh) * 2011-09-30 2016-08-24 谷歌公司 扩展到用反向弧编码最小和最大约束的有向图的方法和装置
US9645831B2 (en) 2011-10-31 2017-05-09 Microsoft Technology Licensing, Llc Consolidated orthogonal guide creation
US10282219B2 (en) 2011-10-31 2019-05-07 Microsoft Technology Licensing, Llc Consolidated orthogonal guide creation
US9323436B2 (en) 2012-04-05 2016-04-26 Microsoft Technology Licensing, Llc Utilizing drawing guides in determining the display of smart guides in a drawing program
CN110211131A (zh) * 2019-05-21 2019-09-06 上海阿几网络技术有限公司 一种基于参数化设计的平面设计尺寸自动拓展方法
CN112346725A (zh) * 2020-11-05 2021-02-09 南方电网数字电网研究院有限公司 页面设计方法、装置、设备及存储介质
CN112346725B (zh) * 2020-11-05 2023-12-12 南方电网数字电网研究院有限公司 页面设计方法、装置、设备及存储介质

Also Published As

Publication number Publication date
BRPI0500582A (pt) 2005-11-01
ZA200501720B (en) 2006-11-29
AU2005200389A1 (en) 2005-10-20
CA2496101A1 (en) 2005-09-30
EP1583036A3 (en) 2011-12-07
MXPA05002325A (es) 2005-12-12
RU2376639C2 (ru) 2009-12-20
IL167162A (en) 2015-03-31
US20050237321A1 (en) 2005-10-27
TW200532485A (en) 2005-10-01
RU2005105514A (ru) 2006-08-10
NO20051057D0 (no) 2005-02-25
CO5680120A1 (es) 2006-09-29
KR20060043083A (ko) 2006-05-15
CN1677343B (zh) 2012-09-05
EP1583036A2 (en) 2005-10-05
KR101130487B1 (ko) 2012-03-27
AU2005200389B2 (en) 2010-07-29
SG115729A1 (en) 2005-10-28
NZ538523A (en) 2007-02-23
NO20051057L (no) 2005-10-03
MY144679A (en) 2011-10-31
JP2005293552A (ja) 2005-10-20

Similar Documents

Publication Publication Date Title
CN1677343A (zh) 网格画布
CN110069257B (zh) 一种界面处理方法、装置及终端
CN1301482C (zh) 便于模式识别的系统和方法
CN1154061C (zh) 根据控制的使用在工具条显示中动态显示控制的方法
CN110377285B (zh) 一种生成页面骨架屏的方法、装置及计算机设备
US7617047B2 (en) Map information system and map information processing method and program
CN1398377A (zh) 提供和呈现可定标web页面的系统和处理
CN1573749A (zh) 使用外部计划主题的Web网页绘制机制
CN1834906A (zh) 丰富数据绑定应用程序
CN1461986A (zh) 覆盖电子墨迹
CN1542599A (zh) 层次化数据的多方向显示和导航以及显示区消耗的优化
CN102547450B (zh) 延迟的图像解码
CN1716252A (zh) 模板化列表中的对齐行为
US9916291B2 (en) Method, apparatus, and terminal device for displaying multiple input boxes in a web page where display space is limited
CN1255720C (zh) 数据处理系统的含有图象变换区的显示屏幕及数据处理方法
CN1241386C (zh) 数码相机、图像处理装置、图像处理方法、图像处理系统
KR20100082826A (ko) 쌍방향 사용자 인터페이스 정의
CN106484388B (zh) 用户界面的实现方法和装置
US8028265B2 (en) System and method for improved placement in custom VLSI circuit design with schematic-driven placement
CN1991827A (zh) 一种网页开发的方法及系统
CN1924794A (zh) 数字文件处理系统、数据处理系统和外围设备
JP5718839B2 (ja) グラフィック出力における重なりを回避するためにラベルを移動させる方法、システム及びコンピューター読取可能媒体
CN1445691A (zh) 一种在电子公告板上绘制、发送包含图形贴子的方法
CN115390976A (zh) 界面设计的布局方法、界面的展示方法及相关设备
CN1311375C (zh) 服务器和信息处理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20051005

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150507

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150507

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120905

Termination date: 20160228

CF01 Termination of patent right due to non-payment of annual fee