专利名称:用于将格式化文档转化为网页的系统和方法
技术领域:
本发明的实施例涉及用于将文档转化为网页的系统和方法。
背景技术:
许多计算机用户熟悉并能熟练使用比如MicrosoftWord这样的文字处理应用程序来创建文档。这样的文档可包括创建所需格式的各种样式,以及其它元素,如表格、列表以及像图像和二进制文件这样的嵌入资源。
虽然用文字处理应用程序创建的文档可被容易地转化为非常接近于用户选择来创建文档的样式和元素的打印形式,但是这样的文档可能不容易在网站上发布。例如,嵌入在文档中的各种文档样式、元素和资源可能不与用于将内容呈现在网页上的格式兼容。
此外,虽然文字处理应用程序允许用于创建文档的样式和元素具有灵活性,但是通过简单地将文档转化为诸如超文本标记语言(HTML)等web兼容格式而创建的网页可能不适合特定网站的页面的“外观和感觉”。例如,许多网站具有用于每一页面的一致的格式(如字体类型和大小、颜色、图像位置等),以使用户导航通过网站页面时,该网站的外观和感觉相对统一。然而,通过对文字处理应用程序创建的文档的简单转化而创建的页面可能不适合特定网站的样式。
例如,用户可使用文字处理应用程序来创建随后需要被添加到网站的文档。该文档可包括文字处理应用程序中可用的不同样式和元素。为将文档转化为网页,文档内容通常被复制到文本编辑程序中,以去除所有的格式,然后内容被复制到诸如MicrosoftFrontPage这样的HTML编辑器中,以使内容可如所需地被格式化以反映该站点的格式。另外,嵌入在文档中的任何资源(如图像、二进制文件)可被手动复制到web服务器中的所需位置,并且使用HTML编辑器在网页上手动重新创建到资源的链接。用于将文档手动转化为网页的这一处理可能是繁重且耗时的。
因此,需要提供一种可将文档转换为可用web浏览器来显示的网页的系统和方法。
发明内容
本发明的实施例涉及用于将文档转换为网页的系统和方法。
本发明的一个示例性实施例涉及计算机系统,该计算机系统包含被编程为将文档的文档样式映射到网页的样式的映射模块、被编程为基于映射模块的映射将文档内容转化为超文本标记语言的转化模块、以及被编程为基于超文本标记语言来呈现网页的呈现模块。
本发明的另一个示例性实施例涉及用于将文档转换为网页的方法,该方法包括将文档中的文档样式映射到网页的样式、基于该映射将文档内容转化为超文本标记语言、以及基于超文本标记语言来呈现网页。
本发明的又一个示例性实施例涉及具有计算机可执行指令的计算机可读介质,该计算机可执行指令用于执行以下步骤将文档中的文档样式映射到网页的样式、基于该映射将文档内容转化为超文本标记语言、以及基于超文本标记语言来呈现网页。
现在将参阅附图,该附图不必按比例绘出,附图中图1根据本发明的一个实施例示出了一个示例通用计算系统,图2根据本发明的另一个实施例示出了一个示例计算系统,图3根据本发明的一个实施例示出了示例服务器,图4更详细地示出了图3中的服务器,图5根据本发明的一个实施例示出了用于创建文档并将文档转换为网页的示例方法,图6根据本发明的一个实施例示出了用于定义内容类型转换的示例用户界面,图7根据本发明的一个实施例示出了用于将文档样式映射到超文本标记语言样式的示例对话框,图8根据本发明的一个实施例示出了用应用程序创建的示例文档,图9根据本发明的一个实施例示出了示例文档库,图10示出了选择了下拉菜单的图9的示例文档库,图11根据本发明的一个实施例示出了用于转换的示例性方法,
图12根据本发明的一个实施例示出了用于定义转换网页属性的示例用户界面,以及图13示出了通过图8的文档转换生成的示例网页。
具体实施例方式
下面将参考示出本发明实施例的附图来更详细地描述本发明。然而,本发明可用多种不同形式来实施,且不应被认为限于这里所述的实施例。实际上,所提供的这些实施例是为了让本发明详尽和完整,而且该实施例可完全将本发明的范畴传达给本领域的技术人员。在全文中,相同的标号指代相同的元素。
本发明的实施例涉及用于将文档转换为网页的系统和方法。
在示例实施例中,包括样式和元素的文档被转换为诸如超文本标记语言(HTML)等web兼容的格式,以使文档内容可被显示为网页。该转换可通过将文档中的样式映射到网页的样式来实现。
现在参考图1,可在示例计算机系统100上创建包括样式和如表格、列表和嵌入资源等元素的文档。例如,文档可使用如MicrosoftWord、Excel或PowerPoint等应用程序128在计算机系统100上创建。其它应用程序也可用于创建文档。
计算机系统100可采用各种形式,如台式计算机、膝上型计算机以及手持式计算机。另外,尽管示出了计算机系统100,但是此处所揭示的系统和方法也能用各种不同的计算机系统来实现。
系统100包括处理器单元102、系统存储器104以及将包括系统存储器104在内的各个系统组件耦合到处理器单元102的系统总线106。系统总线106可以是多种类型的总线结构中的任一种,包括存储器总线、外围总线以及使用多种总线体系结构的任一种的局部总线。系统存储器包括只读存储器(ROM)108和随机存取存储器(RAM)110。基本输入/输出系统112(BIOS)被储存在ROM 108中,它包含帮助在计算机系统100内的元件之间传递信息的基本例程。
计算机系统100还包括用于读写硬盘的硬盘驱动器112、用于读写可移动磁盘116的磁盘驱动器114、以及用于读写如CD ROM、DVD或其它光介质等可移动光盘119的光盘驱动器118。硬盘驱动器112、磁盘驱动器114以及光盘驱动器118分别通过硬盘驱动器接口120、磁盘驱动器接口122以及光盘驱动器接口124与系统总线106相连。驱动器及其相关联的计算机可读介质为计算机100提供计算机可读指令、数据结构、程序和其它数据的非易失性存储。
尽管这里示出的示例环境能使用硬盘112、可移动磁盘116以及可移动光盘119,但是在示例系统100中也能使用能够储存数据的其它类型的计算机可读介质。可用于示例操作环境的这些其它类型计算机可读介质的示例包括磁带盒、闪存卡、数字视频盘、伯努利盒式磁带、随机存取存储器(RAM)以及只读存储器(ROM)。
多个程序模块可被储存在硬盘112、磁盘116、光盘119、ROM 108或RAM 110中,包括操作系统126、应用程序128、其它程序模块130以及程序数据132。
用户可通过如键盘134、鼠标136或其它点击设备等输入设备将命令和信息输入到计算机系统100中。其它输入设备的示例包括工具条、菜单、触摸屏、话筒、操纵杆、游戏垫、输入笔、圆盘式卫星电视天线以及扫描仪。这些和其它的输入设备一般通过与总线106相连的串行端口140而连接到处理单元102。然而,这些输入设备也可通过如并行端口、游戏端口或通用串行总线(USB)端口等其它接口连接。LCD显示器142或其它类型的显示设备也通过如视频适配器144等接口与系统总线106相连。除显示器142之外,计算机系统通常可包括其它外围输出设备(未示出),如扬声器和打印机。
计算机系统100可使用到一个或多个如远程计算机146等远程计算机的逻辑连接在网络化环境中工作。远程计算机146可以是计算机系统、服务器、路由器、网络PC、对等设备或其它普通网络节点,并通常包括许多或所有上文相对于计算机系统100所描述的元件。网络连接包括局域网(LAN)148和广域网(WAN)150。这样的网络环境常见于办公室、企业范围计算机网络、内联网和因特网。
当在LAN网络化环境中使用时,计算机系统100可通过网络接口或适配器152与局域网148相连。当在WAN网络化环境中使用时,计算机系统100通常包括调制解调器154或用于通过如因特网这样的广域网150建立通信的其它装置。调制解调器154可为内置或外置的,它通过串行端口140与系统总线106相连。在网络化环境中,上文相对于计算机系统100描述的程序模块或其部分可被储存在远程存储器存储设备中。应当认识到,所示的网络连接是示例性的,也可使用在计算机之间建立通信链路的手段。
此处所描述的实施例可被实现为计算机系统中的逻辑操作。逻辑操作可被实现为(1)在计算机系统上运行的计算机实现的步骤或程序模块的序列,以及(2)在计算系统内运行的互连逻辑或硬件模块。该实现是取决于特定计算系统的性能需求的选择问题。因此,组成此处所描述的实施例的逻辑操作被称作操作、步骤或模块。本领域的技术人员会认识到,在不背离如所附权利要求书中所述的本发明的精神和范畴的前提下,这些操作、步骤和模块能以软件、固件、专用数字逻辑以及任何其组合来实现。该软件、固件或类似的计算机指令序列可被编码并被储存在计算机可读存储介质中,并也能在载波信号中编码,用于在计算机设备之间进行传送。
现在参考图2-4,示出了示例性系统200。系统200包括计算机系统210和服务器220。系统210能以类似于上述计算机系统100的方式配置,系统210包括应用程序212和文档215。在示例实施例中,应用程序212是MicrosoftWord、Excel或PowerPoint。也可使用其它应用程序。
例如,MicrosoftWord可用来创建文档215。文档215包括内容217和元数据218。文档215可包括用于定义如文本、表格和列表等内容如何被格式化的特定样式。另外,文档215可包括嵌入的资源,如图像和二进制文档。
一旦文档215由计算机系统210中的应用程序212创建并保存,文档215就可被上传到服务器220,作为文档225。在示例实施例中,服务器220是MicrosoftSharePointTM门户服务器。也能使用其它类型的服务器。
一旦文档225位于服务器220上,文档225就可被转换为网页320。例如,转换模块310可用来将文档225转换为可显示为网页320的HTML内容227,而且任何资源由资源提取模块330提取到资源库229,这一点将在下文中进一步描述。在示例实施例中,配置转换模块310,以使所得的网页320具有类似于特定网站上其它网页的格式。
现在参考图5,示出了用于创建文档并将文档转换为网页的示例方法400。一般而言,方法400包括在操作500处创建内容类型和文档模板。内容类型定义可用于特定文档的文档属性,如元数据、批准这种类型文档所需的工作流、有关这种类型文档的保留策略等等。内容类型的一个属性是用于创建给定内容类型的项的文档模板。该文档模板是给定格式的启动文档实例,它是在用户选择与给定内容类型相关联的文档模板时被创建的。
使用如操作600处的模板来创建文档。例如,可用如MicrosoftWord、Excel或PowerPoint等应用程序来创建文档。当对指定的内容类型创建新的文档时,与内容类型相关联的模板被用来定义可用于该文档的样式。在某些实施例中,模板包括默认样式以及与该文档相关联的其它组件(比如横幅等所需图像)。
在示例实施例中,这些默认组件中的至少某一些不能被用户修改。例如,在某些实施例中,所选来创建文档的模板可将文档作者限于特定的格式化样式(如标题1、标题2、正文文本和项目符号列表),以帮助转换,这将在下文中进一步描述。模板也可定义具有如标题和摘要等名称的特定的内联命名字段。如下文详细描述的,这些样式和/或内联字段可在将文档转化为网页的转换期间使用。
在其它实施例中,可以不使用模板而创建文档。
接下来,在操作700处,文档被保存在文档储存库中。最后,文档在操作800处被转换,以创建用于网页的HTML。
下面将更详细描述方法400的每个步骤。
I内容类型和模板定义现在参考图6,示出了用于建立对内容类型的转换的示例用户界面502。用户界面502包括包含复选框512的启用页面创建部分510。若选择了复选框512,则用户界面502所呈现的剩余选项被启用,并且可按如下所述来实现转换。若没有选择复选框512,则用户界面502所呈现的剩余选项被禁用。另外,当没有选择复选框512时,对内容类型的转换不能进行。在一个例子中,复选框512的默认情况是未被选择。
用户界面502的文档类型部分514允许用户选择哪个文档类型可被转换。在所示例子中,复选框516被选中,以使具有“xml”扩展名的MicrosoftWord文档可被转换。在其它实施例中,附加文档类型可被列出或被移除。其它示例文档类型包括与用MicrosoftExcel创建的文档相关联的“xls”文档扩展名,以及与用MicrosoftPowerPoint创建的文档相关联的“ppt”文档扩展名。
用户界面502的转化部分520允许用户配置文档如何被转换为HTML。在所示例子中,用户可在单选按钮522、524和526之间做出选择。若选择了单选按钮522,则与文档相关联的样式被无变更地转换为HTML。换言之,文档中的格式继续留在HTML中,以使网页非常接近文档中的格式。若选择了单选按钮524,则文档中的样式被映射到HTML的特定样式,这将在下文中进一步描述。最后,若选择了单选按钮526,用户可选择用来将可扩展标记语言(XML)文档转换为HTML的自定义可扩展样式表语言(XSL)文件。在替换实施例中,可提供附加选项,以允许使用可被插入到转换模块中的附加转化模块。
若选择了单选按钮524,则允许用户定义与用来创建文档的文档模板相关联的样式和元素如何被转换为HTML。例如,在所示的实施例中,对话框521(如图7中所示)在用户选择转化部分520中的“映射样式”(Map Styles)按钮时显现。对话框521包括列527,它枚举与文档模板相关联的文档样式和其它公用元素523(如表格、列表、超链接、图像和正文文本)的列表,以及在发生转换时每个样式或元素如何被映射到层叠样式表类529中。对话框521也包括列528,它枚举可对文档样式或元素选择的可用HTML样式的列表,以及两个被标记为“<keep existingstyle>”(保持现有样式)和“<clear style>”(清除样式)的选项。若用户选择特定样式列528中的“<keep existing style>”或列527中的元素,则文档中的样式或元素在发生转换时被保持。若用户选择特定样式列528中的“<clear style>”或列527中的元素,则文档中的样式就被剥离并在发生转换时被无样式所替代。在某些实施例中,列528中的列表是以字母顺序排序的,而且仅有那些可应用于特定的所选择文档样式或元素的HTML样式被列入列528中。
例如,若列527的列表523中的文档样式“标题1(Heading 1)”如图7所示而被选择,则CSS类“ms-header”就被列入列表529中,以表明样式“标题1”将在执行转换时被映射到CSS类“ms-header”。另外,列528列出可用于映射列527中所选文档样式或元素的HTML样式,并且当前选择的样式被突出显示。用户可通过从列528中选择不同的HTML样式来改变文档样式“标题1”是如何被映射的。例如,若选择CSS类“ms-footer”,则与文档样式“标题1”相关联文档中的任何内容将在转换期间被映射到HTML样式“ms-footer”中。
现在回到图6,用户界面502的资源提取配置部分530允许用户选择单选按钮532,该单选按钮指定如图像和二进制文件等嵌入在文档中的所提取的资源要在转换期间被保存到与网页相关联的子文件夹中。若用户相反选择了单选按钮534,则允许用户指定要对其提取资源的特定路径位置(通常在服务器上)。如下文中进一步描述的,所提取资源自动链接到转换期间所创建的HTML中,以使资源在所得的网页中被正确地引用。
另外,用户可选择复选框536,以在提取图像资源时将该图像资源转化为HTML兼容的格式。例如,诸如位图(BMP)和加标签的图像文件格式(TIFF)等格式的图像资源可在提取时被自动转化为HTML兼容的格式,如可移植网络图像(PNG)或联合图像专家组(JPEG)格式。在示例实施例中,显示在文档中的图像尺寸在提取时被保存。例如,若原始图像尺寸是1000×1000像素,但是图像在文档中被缩放为200×300像素大小,则到所得的HTML中的图像的链接被配置为显示大小为200×300像素的图像。在某些实施例中,图像的分辨率被降低,以使所得的图像较小,以允许在访问网页时进行更有效的下载。
用户界面502的页面布局部分540允许用户定义有关内容类型的网页如何在转换后被呈现。部分540中列出的页面布局定义了如何使用一组字段控制来布置该页面的内容。下拉菜单542允许用户在定义如何显示所得的网页的不同页面布局模板之间做出选择。
用户界面502的默认创建位置部分550允许用户定义在转换时发生页面创建的默认位置。若复选框551被选中,则用户可在框551内设置默认路径。在某些实施例中,若用户选择对主存网页无效的路径,则提供警告消息,且用户可选择不同的路径。另外,若复选框554被选中,则用户将不被允许选择有关在转换期间创建网页的不同位置,如下文所描述的。
II文档创建和保存到库中现在参考图8,可用各种应用程序来创建文档。若创建具有支持转换的内容类型的新文档,则可转换该文档。在所示的示例中,用MicrosoftWord来创建文档625。该文档包括如文本630和嵌入图像635等内容。文本630依照各种样式640来格式化。
在某些实施例中,仅提供依照内容类型而映射到HTML样式的样式640,以使每个文档样式可在转换期间被映射。在其它实施例中,可提供尚未被映射到HTML样式的附加文档样式。一旦进行转换,这些文档样式就可被剥离或被映射到默认的HTML样式。
现在参考图9,当完成文档时,文档625就被保存在文档库710中,如MicrosoftWindowsSharePointTM服务文档库。
现在参考图10,一旦文档625被保存在库710中,就可通过选择与文档625相关联的示例下拉菜单720来启动转换。菜单720包括允许用户从文档625创建网页的条目730。如用户选择条目730,则转换开始。在其它实施例中,能以其它方式启动转换,如在将文档加载到库中时自动启动,这将在下文中进一步描述。
III转换现在参考图11,示出了用于转换的示例方法802。在操作810处,启动转换。在某些实施例中,仅对特定的文档内容类型支持转换。因此,若试图转换不支持的文档内容类型,就显示出错消息,且转换不会发生。
另外,当启动转换,向用户显示图12中所示的示例用户界面805。用户界面805包括页面位置部分807以及页面标题和描述部分809。页面位置部分807允许用户选择在当前的发布站点中创建网页,或者选择一发布站点。在某些实施例中,若用户界面502中的复选框554(见图6)在定义内容类型时被选中,则用户就不被允许选择页面位置,而是向用户呈现默认位置。页面标题和描述部分809允许用户提供有关页面的标题以及描述。一旦用户完成部分807和809并选择“保存”(Save),转换就可开始。
现在回到图11中所示的方法802,接下来,控制被传递到操作820,且文档中的任何嵌入资源(如图像635)被提取并被保存在由内容类型所定义的位置处(见用户界面502的部分530)。在一个实施例中,所提取的资源的每一个都依照命名约定而被赋予名称,以唯一地标识每个资源。例如,每个资源可根据命名约定“<页面URL名>_<ID><扩展名>”来命名。若用于保存由内容类型定义的资源的位置不能被访问或者不允许保存资源,则就可显示出错信息,且用户可通过使用用户界面502的部分530编辑内容类型来定义用于保存所提取的资源的不同位置(见图6)。
接下来,在操作830中,任何图像资源被按需要处理,以创建HTML兼容的图像。然后,控制被传递到操作840,且文档样式被映射到如由内容类型所定义的HTML样式(见用户界面502的部分520)。
接下来,在操作850处,在HTML中创建到所提取的资源的链接。例如,若资源是图像,则提供引用链接,以使图像按需显示在网页上。若资源是如文档等嵌入的二进制文件,则提供到文档的链接。在某些实施例中,如下所述地跟踪网页和资源之间的关系,以使例如资源可在删除文档和/或网页时被删除。
最后,在操作860处,呈现网页。从文档625的转换来创建图13中所示的示例页870。
在某些实施例中,用户可在转换后编辑文档或者网页。若用户编辑文档,则用户可再次进行转换,以使对文档的改变被反映在网页中。在某些实施例中,若用户试图编辑网页本身,则提供警告,表明若该网页被编辑,且随后资源文档被再次转换以创建新网页的话,对该网页的编辑可能会丢失。在其它实施例中,创建页面和资源文档之间的反向链接,以使若用户试图编辑网页本身,则用户可自动回到被打开用于在用来创建该文档的应用程序中编辑的源文档。在其它实施例中,限制用户编辑网页,并且用户必须编辑资源文档,然后重新转换该文档。在还有其它实施例中,当用户编辑通过转换而创建的网页时,该编辑被自动反映在源文档中。
在某些实施例中,当用户编辑已经被转换的文档时,一旦用户保存并关闭该文档,则该文档就被自动重新转换,以使变化反映在网页中。在其它实施例中,若用户删除源文档,则与该文档相关联的网页也被自动删除。在其它实施例中,若网页被删除,则与该网页相关联的所提取资源也被删除。
在某些实施例中,配置转换,以在文档被加载到文档库中的任何时候或者根据由用户定义的特定规则而自动运行。在其它实施例中,向用户提示关于在将文档加载到文档库中时是否运行转换。在另外的实施例中,用户可同时执行库中一组文档的转换。
在其它实施例中,可进行转换而不首先将文档上传到文档库中。例如,在一个实施例中,可在客户计算机上进行转换。在另一个实施例中,可在文档驻留在客户计算机上的同时启动转换,且该转换过程的第一部分涉及将文档自动上传到所需文档库中。
在替换实施例中,提供预览转换过程,以允许用户预览转换。示例预览过程不会导致创建可由其它人访问的网页,而是允许用户在实际开始整个转换过程之前预览所转换的网页看上去如何。
在某些实施例中,转换模块是可扩展的,以使可添加附加文档转化器,以允许附加文档类型的转换。在其它实施例中,附加图像转化器可被添加到转换模块,以允许转换模块将附加图像类型转化为web兼容的图像类型。
上述的各个实施例是仅作为说明而提出的,且不应被认为是对本发明的限制。本领域的技术人员会容易认识到,在不背离本发明真实精神和范畴的前提下,可对所附权利要求书中所述的本发明做出与这里所示和描述的示例实施例和应用不同的修改和变化。
权利要求
1.一种计算机系统,包含映射模块,它被编程为将文档的文档样式映射到网页的样式,转化模块,它被编程为基于所述映射模块的映射将所述文档的内容转化为超文本标记语言,以及呈现模块,它被编程为基于所述超文本标记语言呈现所述网页。
2.如权利要求1所述的系统,其特征在于,还包含被编程为创建所述文档的应用程序。
3.如权利要求1所述的系统,其特征在于,还包含资源提取模块,它被编程为从所述文档中提取资源。
4.如权利要求3所述的系统,其特征在于,所述转换模块还被编程为创建到所述超文本标记语言中所提取的资源的链接。
5.如权利要求3所述的系统,其特征在于,还包含图像处理模块,它被编程为处理从所述文档中提取的图像资源。
6.如权利要求5所述的系统,其特征在于,所述图像处理模块还被编程为将所述图像资源转化为与所述网页兼容的格式。
7.一种用于将文档转换为网页的方法,所述方法包含将文档中的文档样式映射到网页的样式,基于所述映射将所述文档的内容转化为超文本标记语言,以及基于所述超文本标记语言呈现所述网页。
8.如权利要求7所述的方法,其特征在于,还包含创建所述文档,以及将所述文档上传到服务器。
9.如权利要求7所述的系统,其特征在于,还包含从所述文档中提取资源。
10.如权利要求9所述的系统,其特征在于,还包含在所述超文本标记语言中链接所提取的资源。
11.如权利要求9所述的系统,其特征在于,还包含将所提取的资源保存到服务器上的特定位置。
12.如权利要求9所述的系统,其特征在于,包含处理从所述文档提取的图像资源。
13.如权利要求12所述的系统,其特征在于,所述处理步骤还包含将所述图像资源转化为与所述网页兼容的格式。
14.一种具有计算机可执行指令的计算机可读介质,所述指令用于执行以下步骤将文档中的文档样式映射到网页的样式,基于所述映射将所述文档的内容转化为超文本标记语言,以及基于所述超文本标记语言呈现所述网页。
15.如权利要求14所述的计算机可读介质,其特征在于,还包含创建所述文档,以及将所述文档上传到服务器。
16.如权利要求14所述的计算机可读介质,其特征在于,还包含从所述文档中提取资源。
17.如权利要求16所述的计算机可读介质,其特征在于,还包含在所述超文本标记语言中链接所提取的资源。
18.如权利要求16所述的计算机可读介质,其特征在于,包含将所的提取资源保存到服务器上的特定位置。
19.如权利要求16所述的计算机可读介质,其特征在于,包含处理从所述文档中提取的图像资源。
20.如权利要求19所述的计算机可读介质,其特征在于,所述处理步骤还包含将所述图像资源转化为与所述网页兼容的格式。
全文摘要
用于将文档转换为网页的系统和方法可包括映射模块,它被编程为将文档的文档样式映射到网页的样式。该系统也可包括转化模块,它被编程为基于该映射模块的映射将文档的内容转化为超文本标记语言;以及呈现模块,它被编程为基于该超文本标记语言呈现该网页。该方法可包括将文档中的文档样式映射到网页的样式、基于该映射将文档的内容转化为超文本标记语言、以及根据该超文本标记语言来呈现网页。
文档编号G06F17/30GK1801149SQ200510125040
公开日2006年7月12日 申请日期2005年11月16日 优先权日2004年12月16日
发明者S·J·克罗克特, N·J·芬克, W·J·格里芬, B·A·琼斯, G·佩朗塔托斯, R·R·斯托科 申请人:微软公司