资源预览内容
第1页 / 共5页
亲,该文档总共5页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
用于提供文档内容多样重现的系统和方法专利名称:用于提供文档内容多样重现的系统和方法技术领域:本发明涉及电子文档,尤其涉及一种用于多样电子文档的数据存储格式。背景技术:当今的计算机用户有着多种多样的用来浏览电子文档的工具。桌面电脑、膝上电脑、袖珍电脑以及平板电脑只是用户用来浏览电子文档的不同类型的设备中的少数几个例子。在这些设备型号中,每一种都有不同于其它的形式因素,并且都以稍微有些差别的方式显示文档。例如,一台掌上电脑(PDA)的可视区域就明显的不同于桌面电脑所采用的显示器。而与膝上型电脑相比,桌面电脑又或许有着不同的显示区域。综合这些问题,电子文档以多种不同的格式生成,并各具有不同的浏览属性。用户所经常面对的一个问题是一个特定的文档或许可以很好的在一种设备上显示,例如膝上型电脑,然而它却不能在其它设备上正常显示,例如在掌上电脑(PDA)上。程序开发者已经尝试开发一种文档格式,使之可以在不同的设备类型上显示。例如,一种“可回流”的文档显示法,就像HTML,当窗口大小改变时,它被允许在一定程度上调整大小,而不会引起一系列的对文档版面的不利影响。然而,使用这种格式,却经常会妨碍文档作者精密控制此文档该如何显示的能力。另外,因为可回流的文档易于在多种不同的设备中浏览,因此它并不需要在任何一个设备上提供一个最佳的浏览经验。相反,有些格式允许文档有着更多的操作来控制文档如何显示,而这些格式通常使文档只能适用于很有限的设备。例如,一个字处理文档能以一种视觉上满意的样式显示在桌面电脑上。可是,这个字处理文档,如果显示在PDA里,可能就会被压缩,或者不适当的显示。此外,用一个字处理为一种特定大小纸张而创建出来的文档,像信纸般大小,就可能不能在其它大小如A4的纸上正确打印。有些文档格式允许对文档如何显示采用严格的控制,其本质上是将文档的内容制成一幅绘片。这种文档格式的一个缺点是为了这个文档能在它将要被显示的设备上显示,整个文档必须被制作成若干不同的版本以适应这些设备。另外,固定格式的文档的内容是不可编辑的。发明概述本发明涉及一个用于在一个单一文件内提供文档内容多重表达方式的系统和方法。简要的说,本发明利用一种复合的文件格式来包含多重的数据流,每一重数据流就是文档内容的一个重现。其它的被用于单一或多样重现的资源也被存储在这个复合文件里。元信息被存储在复合文件中,描述文档内容的每一个重现的。元信息也可包括这样的规则,这些规则是帮助一种给定的设备或应用程序识别一个适当的重现的选择标准。附图的简要说明图1是一个说明了可以被用来执行本发明的计算装置的功能块框图。图2是一个概述说明了具有一个依照本发明而构造的复合文件的系统的构成的功能块框图。图3是一个树形层次的图示,它表示了如图2所示的复合文件。图4是一个可以被包含在一个依据本发明所构造的复合文件内部的信息表格图,其描述了每一个在这个复合文件内部的多样重现。图5是一个依照本发明的一个实现方法的有着许多流以及一个存放处的复合文件的特定范例的示意图。图6是依照本发明的另外一个具有许多流的复合文件的范例示意图。图7是一个依照本发明的逻辑流程图,它从总体上说明了在一个复合文件内部使一个适当的重现适用于一个请求方应用程序的处理过程。图8是一个依照本发明的逻辑流程图,它概述说明了用来创建一个多样重现复合文件的处理过程。优选实施例的详细说明本发明提供了一种用于提供一个包含相同文档内容多样显示法的单一文档的机制。每一种显示法都能被最优化,以提供在一种特定设备或应用程序里优质的显示。本发明的机制是优选的基于一种复合文档格式,这种格式允许相同内容的多样重现被存放在一个单一文档内。元信息被包括在这个单一文档的内部,这个文档描述了每一个多样重现以及任何能和那些重现一起被使用的可支持的文件。发明人们已经确定了采用对象连接和嵌入法(OLE)的复合文件格式尤其适合本发明的实现方法。本发明的说明首先参考一个说明性的计算环境范例,本发明的实施例能在这个环境里被执行。其次,本发明的一个特定的实现方法的详细范例将会被说明。关于某些特定的实现方法的细节,可替换的实现方法也被包括在其中。最后,依照本发明所构建的复合文件的实现方法的范例将会被说明。很清楚,本发明的实施例不只局限于这里所描述的那些实施例。本发明的说明性的计算环境图1说明了一个可以被用于本发明说明性的实现方法的计算装置。关于图1,用以实现本发明的一个示范性的系统包括一个计算装置,如计算装置100。在一个非常基础的构造中,计算装置100通常包括至少一个处理单元102以及系统存储器104。根据实际的构造和计算装置的类型,系统存储器104可以是易失性的(如RAM)、非易失性的(如ROM、闪存等)或这两种存储器的结合。系统存储器104通常包括一个操作系统105、一个或多个程序模块106,并可以包括程序数据107。这种计算装置100的基础构造在图1中通过那些在虚线108内的组件而被说明。计算装置100可以具有附加的特征或功能性。例如,计算装置100也可以包括附加的数据存储装置(可移动的和/或不可移动的),像这样的,例如,磁盘、光盘或磁带。这些附加的存储装置在图1中通过可移动的存储装置109以及不可移动的存储装置110来说明。计算机存储媒体可包括易失性和非易失性的、可移动的和不可移动的媒体,这些媒体媒体能通过任何用于信息存储的方法或技术来实现,例如计算机的可读指令、数据结构、程序模块,或其它数据。系统存储器104,可移动的存储装置109和不可移动的存储装置110都是计算机存储媒体的例子。计算机存储媒体包括,但并不局限于RAM,ROM,EEPROM,闪存或其它记忆存储技术,CD-ROM,数据多用途盘(“DVD”)或其它光储装置,磁带盒,磁带,磁盘存储装置或其它磁存储装置,或者其它任何可以被用来存储所需信息以及可以通过计算装置100访问的存储媒体。任何这样的计算机存储媒体可以是装置100的部件。计算装置100也可以具有像键盘122,鼠标123,笔,语音输入装置,触摸输入装置,扫描仪等这样的输入装置112。像显示屏,扬声器,打印机等这样的输出装置114都能被包括在内。这些装置在本领域都是众所周知的,因此没有必要在这里详尽的讨论。计算装置100也可以包含通讯连接116以允许次装置与其它计算装置118通讯,如通过一个网络。通讯连接116是一个通讯媒体的例子。通讯媒体通常可以通过计算机的可读指令,数据结构,程序模块,或在一个已调制的数据信号里的其它数据来实现,例如一束载波,或其它的传输机制,并包括任何信息传送媒体。“已调制的数据信号”这个术语意思是一个具有一个或多个自身特征集合或者以一种为了能在信号中将信息编码的方式改变的信号。举个例子,并不限于此,通讯媒体包括有线媒体,如有线网络或者直接连线连接;以及无线媒体,如声控,RF,红外线以及其它无线媒体。这里所用的术语计算机可读取的媒体包括存储媒体和通讯媒体。组件的概要论述图2是一个概述了实现本发明的一个环境组成的功能块框图。图示是多个应用程序220,221,222,一个“重现管理器”210,以及一个复合文件201。应用程序220,221,222中的每一个都被配置成用来在一种特别针对此应用程序的格式下操作或显示一个文档。例如,应用程序A220可以是一个字处理器等类似的,应用程序B221可以是一个能够显示HTML信息的e-maill应用程序,并且应用程序C222可以是一个固定格式的文档浏览器,例如一个图像浏览器等。复合文件201是一个优选的OLE复合文件。OLE文档模型在本领域是已知的,并且作为一种在一个单一文档内部包含多种完全不同的数据类型的机制被广泛认可的。然而,OLE复合文件按照惯例是用来关联一个具有内嵌文件的单一文档,或者其它也包含在一个OLE复合文件内部的支持的内容的实体。重要的是,复合文件内部的每一个要素都是通过一种能被所创建的应用程序操作的方法存储的。复合文件201将结合图3和图4,在下面做更加详细的论述。简单的说,复合文件201是一个包括了特定文档内容的多样显示法(“重现”)的单一文件。显示法可以是可见的或别的方式。每一个重现都被作为一种特定装置类或媒体的“目标”。举例来说,重现A202可以是一个字处理文档,重现B203可以是一个可回流的字处理文档的标识语言版本,以及重现C204可以是一个字处理文档的固定格式版本。除了多样重现之外,复合文件201包含了一个存储器205,用来容纳可以被一个或多个多样重现202、203、204所使用的其它文件或资源。元数据207包括了用来描述每一个多样重现202、203、204的信息,其中包括在存储器205内,可被用来与一个特定的重现相关联的那些支持的文件。每一个重现都包括“内容”(如文本和标识字体)以及可以包含一个”资源”的集合(如图像,字体,等等)。尽管不是必须的,但可以预见的是,多样重现很可能具有不同的内容,因为需要用来在不同设备上布置内容的标识,在不同的重现里总是不同。然而,这些重现经常涉及到相同的资源。本发明的一个方面是每一个共享的资源都只在复合文件201中出现一次。与一些多个部分组成的文档格式不同的是复合文件201允许一个特定资源的实例被包含在存储器205的内部,并且用来与任意数目的多样重现202、203、204相关联。另外,本发明相对于其它文档格式的一个优点,是具有在一个单一文档内部,使可编辑的重现(如一个字处理文档)和一个固定格式的重现(如XAML)相结合的能力。这些不同的文件类型能够在一个多样重现文档中共存,并且合适的重现会基于多样的因素而被使用,正如一个软件在时间消耗或一个用户意图上的有效性(例如协作/编辑文档相对于打印,等等)。重现管理器210可以是一个操作系统服务或功能,以负责使文档文件对应用程序有效。复合文件201陈列出标准(例如组件对象模型或“COM”)接口从而使每一个重现可以被当作一个整体或单个的流来操作。通过重现管理器210请求对复合文件201的访问,应用程序220、221和222中的任意一个或者多个可以打开并且编辑复合文件201。基于请求中的应用程序类型或其它的标准,重现管理器210打开复合文件201并返回一个特定的重现的接口到这个请求方应用程序。图3是一个以树形层次表示的复合文件201结构的图示。复合文件通常被认为是“在一个文件内的一个文件系统”。在复合文件201内部,是一个“存储器”的层次结构,其类似于一个文件系统内的目录,以及“流”,其类似于一个文件系统内的文件。依照本发明,每一个重现的内容都被放在一个单独的流或流的集合中。因此,在一种传统文档格式下将表示一个完整的文档文件的数据被存储在复合文件201的一个特定的流中。一个或多个重现涉及的每一个资源,也都被放在一个分离的流中。然而,这些资源也可以集中在一个通用存储器中。在这个层次范例的根部301之下是多个流(例如,流302,流304,和流306),以及一个存储器308。在这范例中,流302包含了第一重现(重现A),流304包含了第二重现(重现B),以及流306包含了第三重现(重现C)。依照这个范例,每一个重现都表示一个文档的一个不同的外观显示法。一个在这个范例中被称作“¥x006RenditionList”310的特别的流,包含了关于在复合文件201内每一个重现的元信息。重现列表310包括一个表格312,这个表格描述了在复合文件201内部的每一个重现。下面将结合图4来具体说明表格312。简要地说,在复合文件201里,表格312标识了每一个重现的各个成分。图4是一个可以被储存在重现列表310里的信息表格图示。重现列表310可以用表格401来表示,在表格401里,每一行都与一个重现结合。在一个实施例中,表格中的列,包括一个重现标识列410,一个文件名列412,一个规则列414,以及一个说明列416。下面是每一列用途的简要说明。重现表格的格式允许在每一个重现里的一个流作为一个“起始流
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号