通用数据输出系统转让专利

申请号 : CN02806907.2

文献号 : CN1541370B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张和刘颖

申请人 : 福来西奥德技术公司

摘要 :

位于局部区域上的信息装置光栅化信息装置上的数字文档以生成图象数据并由该图象数据创建中间输出数据。将中间输出数据传送到位于局域网上并包括输出具有设备特定的输出大小和分辨率的输出图象的输出引擎的输出设备。由中间输出数据恢复图象数据并将图象数据转换成与输出引擎的大小和分辨率兼容的指令。该方法进一步包括将这些指令提供给输出引擎以及响应指令,操作输出引擎,从而输出数字文档的图象。

权利要求 :

1.一种将可由信息装置访问的内容的至少一部分输出到输出设备的方法,所述信息装置是与所述输出设备不同的设备且包含用于与一个或多个输出设备进行无线通信的无线通信单元,所述方法包括:(a)在所述信息装置和至少两个输出设备间直接建立无线通信;

(b)从第一可用输出设备接收指定所述第一可用输出设备的属性的信息;

(c)由从所述可用输出设备接收的属性确定所述可用输出设备的属性是否与用于输出所述内容的至少一部分的要求匹配;并且如果匹配的话,(d)或者选择所述可用输出设备,使所述内容的至少一部分一致化为一个或多个输出图像,生成包含所述一个或多个输出图像的输出数据,并将包含所述一个或多个输出图像的输出数据经无线通信直接从所述信息装置传送给所选定的输出设备,或者,否则(e)从另一可用输出设备接收指定该另一可用输出设备的属性的信息,并且重复步骤(c)和(d)。

2.如权利要求1所述的方法,包括,在步骤(b)前,从所述信息装置传送要求接收的输出设备的消息,以传送指定与各个输出设备相关的属性的信息。

3.如权利要求1所述的方法,其中与所述第一可用输出设备相关的属性包括服务质量、价格指示符、状态指示符、可用性指示符以及输出数据格式指示符的一个或多个。

4.如权利要求1所述的方法,其中,与所述可用输出设备相关的属性包含名称、标识、设备类型,地址以及支持的输出设备配置文件的指示的一个或多个。

5.如权利要求1所述的方法,进一步包括:在步骤(d)前的任一步骤中,获得无线信息装置的用户首选项,所述首选项为与在所选定的输出设备处渲染所述内容相关的参数。

6.如权利要求5所述的方法,在步骤(c)的所述要求包括所述首选项。

7.如权利要求1所述的方法,进一步包括:在步骤(e)之前,获得用于支付在所选定的输出设备处渲染所述内容的支付信息。

8.如权利要求1所述的方法,进一步包括:在步骤(e)之前,获得用于实现到所选定的输出设备的无线访问的授权信息。

9.如权利要求8所述的方法,进一步包括:利用所述授权信息,授权到所选定的输出设备的无线访问,并且依赖是否成功授权到所选定的输出设备的无线访问,启动从所述信息装置到所选定的输出设备的无线访问。

10.如权利要求1所述的方法,其中,在步骤(c)或步骤(d)中,进一步包括:从用户接收所选定的输出设备的指示。

11.如权利要求1所述的方法,其中,所述使所述内容的至少一部分一致化为一个或多个输出图像的步骤包含将至少一个输出图像编码成一个或多个图像层。

12.如权利要求11所述的方法,其中,所述一个或多个图像层包括以不同分辨率编码每个图像层。

13.如权利要求1所述的方法,其中所述使所述内容的至少一部分一致化为一个或多个输出图像的步骤包含以压缩操作编码至少一个输出图像。

14.一种用于将可由信息装置访问的内容的至少一部分输出到输出设备的信息装置,所述信息装置是与所述输出设备不同的设备且包含用于与一个或多个输出设备进行无线通信的无线通信单元,所述装置包括:用于在所述信息装置和一个或多个输出设备间直接建立无线通信的装置;

从可用输出设备接收指定所述可用输出设备的属性的信息的装置;

由从所述可用输出设备接收的属性确定所述可用输出设备的属性是否与用于输出所述内容的至少一部分的要求匹配的装置,并且如果匹配的话,所述装置进一步包括用于选择可用输出设备的装置;

用于使所述内容的至少一部分一致化为一个或多个输出图象的装置,至少一个输出图像被以压缩操作编码;

用于生成包括所述一个或多个输出图象的输出数据的装置;以及

用于将包含所述一个或多个输出图像的输出数据经过所述信息装置之间的无线通信直接传送给所选定的输出设备用于输出的装置。

15.一种用于将内容的至少一部分通过到输出设备的无线通信输出给输出设备的信息装置,所述内容至少部分可由所述信息装置访问,所述信息装置是与所述输出设备不同的设备,且所述信息装置包含用于与一个或多个输出设备进行无线通信的无线通信单元和与用户进行交互的接口,所述信息装置包括:用于查找用于无线通信的输出设备的装置;

用于在所述信息装置和在所述查找中找到的一个或多个可用输出设备间直接建立无线通信信道的装置;

用于在所述无线通信信道上从至少一可用输出设备接收信息的装置,所述信息包括与所述可用输出设备相关的属性;

用于经所述信息装置的接口向所述用户提供与所述可用输出设备相关的所接收的信息的至少一部分的装置;

用于从所述用户接收所选定的输出设备的指示,并且依赖接收所选定的输出设备的至少一指示,使与内容相关的输出数据在所述无线通信信道上直接地从所述信息装置传送到所选定的输出设备用于输出的装置。

16.一种用于将内容输出给输出设备的信息装置,所述内容至少部分可由所述信息装置访问,所述信息装置是与所述输出设备不同的设备,且所述信息装置包含用于与一个或多个输出设备进行无线通信的无线通信单元和与用户进行交互的接口,所述信息装置包括:用于在所述无线通信单元上,经无线通信查找输出设备的装置;

用于发现在所述查找中找到的一个或多个可用输出设备的装置;

用于经过无线通信从至少一个发现的输出设备接收至少一信息的装置,所述信息包括与所发现的输出设备相关的属性;

用于部分基于经过无线通信从输出设备接收的所述属性,从所述一个或多个发现的输出设备中选择输出设备的装置;

用于获得授权信息的装置,所述授权信息用于启动从所述信息装置到所选定的输出设备的无线访问;以及用于利用所述授权信息授权到所选定的输出设备的无线访问,并且至少依赖是否成功授权到所选定的输出设备的无线访问,启动直接从所述信息装置到所选定的输出设备的无线访问用于输出的装置。

17.一种用于经过无线通信将内容的至少一部分从信息装置输出给输出设备的方法,所述内容至少部分可由所述信息装置访问,所述信息装置是与所述输出设备不同的设备,且所述信息装置包含用于与一个或多个输出设备进行无线通信的无线通信单元和与用户进行交互的接口,所述方法包括:(a)查找用于无线通信的输出设备;

(b)在所述信息装置和在所述查找中找到的一个或多个可用输出设备间直接建立无线通信信道;

(c)在所述无线通信信道上从至少一可用输出设备接收信息,所述信息包括与所述可用输出设备相关的属性;

(d)经过所述信息装置的接口向所述用户提供与所述可用输出设备相关的所接收的信息的至少一部分,并且依赖从所述用户至少接收所选定的输出设备的指示,(e)在所述无线通信信道上,将与所述内容相关的输出数据直接从所述信息装置传送到所选定的输出设备,或(f)重复步骤(a)至(d)。

18.如权利要求17所述的方法,其中,与所述可用输出设备相关的属性包含名称、标识、设备类型,地址以及支持的输出设备配置文件的指示的一个或多个。

19.如权利要求17所述的方法,在步骤(f)之前,进一步执行获得用于启动到所选定的输出设备的无线访问的授权信息的步骤。

20.如权利要求17所述的方法,进一步包括以下步骤:利用所述授权信息,授权到所选定的输出设备的无线访问,用于启动从所述信息装置到所选定的输出设备的无线访问。

21.如权利要求20所述的方法,其中,所述授权信息包含所述信息装置的标识、用户名称、密码、ID号、签名、物理或数字安全密码、生物特征、指纹以及声音的一个或多个。

22.如权利要求17所述的方法,在步骤(f)之前,使所述内容的至少一部分一致化为输出数据,用于在所选定的输出设备渲染。

23.如权利要求22所述的方法,其中,使所述内容的至少一部分一致化为输出数据的步骤包含使所述内容的至少一部分一致化为设备相关的输出数据,该设备相关的输出数据至少部分地与在所述无线通信信道上且从所选定的输出设备接收的属性相关。

24.如权利要求22所述的方法,使所述内容的至少一部分一致化为输出数据的步骤包含使所述内容的至少一部分一致化为设备独立的输出数据,该设备独立的输出数据至少部分地与预先定义的标准格式或语言相关。

25.如权利要求17所述的方法,其中,所述无线信息装置包含膝上型计算机、移动电话、智能电话、网络手机、网络设备、数字照相机以及PDA中的至少一个。

26.一种用于从信息装置将内容输出给输出设备的方法,所述内容至少部分可由所述信息装置访问,所述信息装置是与所述输出设备不同的设备,且所述信息装置包含用于与一个或多个输出设备进行无线通信的无线通信单元和与用户进行交互的接口,所述方法包括:(a)在无线通信单元上经过无线通信查找输出设备;

(b)发现在所述查找中找到的一个或多个可用输出设备;

(c)经无线通信从至少一个发现的输出设备接收至少一信息,所述信息包括与所发现的输出设备相关的属性;

(d)部分基于经过无线通信从输出设备接收的所述属性,从所述一个或多个发现的输出设备中选择输出设备;

(e)获得授权信息,所述授权信息用于启动从所述信息装置到所选定的输出设备的无线访问;

(f)利用所述授权信息授权到所选定的输出设备的无线访问,并且至少依赖是否成功授权到所选定的输出设备的无线访问,(g)启动直接从所述信息装置到所选定的输出设备的无线访问,或者(h)重复步骤(a)至(g)或(d)至(g)。

27.如权利要求26所述的方法,其中,所述授权信息包含所述信息装置的标识、用户名称、密码、ID号、签名、物理或数字安全密码、生物特征、指纹以及声音的一个或多个。

28.如权利要求26所述的方法,其中,获得用于启动无线访问的授权信息的步骤包含从所述用户经过所述接口接收所述授权信息。

29.如权利要求26所述的方法,其中,在步骤(f)或步骤(g)中,进一步包括以下步骤:经过无线通信向所述输出设备发送用于授权的所述授权信息的至少一部分,以及经过所述无线通信从所述输出设备接收与是否成功授权相关的响应。

30.如权利要求26所述的方法,进一步包括:在步骤(g)之前,获得用于支付在所选定的输出设备处渲染所述内容的支付信息。

31.如权利要求26所述的方法,其中,选择输出设备的步骤包含从所述用户接收所选定的输出设备的指示。

说明书 :

技术领域

本发明涉及向输出提供内容,特别地,涉及提供信息装置能普遍地向输出设备输出内容而不需要为每个输出设备安装专用的设备相关驱动程序或应用程序的通用输出。

背景技术

本发明涉及通用数据输出,以及特别地,涉及提供用于信息装置和输出设备的新数据输出方法和新光栅图象处理。
如在此所述,信息装置通常指计算设备,其包括固定计算机和移动计算设备(普遍设备)。这些信息装置的例子包括,但不限于,台式计算机、膝上型计算机、网络计算机、掌上计算机(手持计算机)、个人数字助理(PDAs)、Internet激活移动电话、智能电话、寻呼机、数字俘获设备(例如,数字照相机和摄像机)、Internet设备、e-books、信息板(pad)以及数字或web板(例如,电视、监视器和投影仪),以及音频输出设备。
为简单和方便起见,在下文中,下述描述将输出设备称为打印机以及将输出过程称为打印。然而,应当理解到,用在描述本发明中的术语打印机和打印涉及用作特定例子的一个实施例以便简化本发明的描述。在此使用索引打印机和打印是为了应用于或延伸到输出设备的更大的范围和定义并且不应当视为限制本发明的范围和原理。
受日益增加的带宽、处理功率、无线移动设备以及无线软件应用程序的推动,数百万的用户使用他们的普遍或移动计算设备正或将创建、下载和传送内容和信息。因此,需要允许用户方便地从他们的普遍计算设备,将内容和信息输出给任何输出设备。例如,人们需要直接和方便地从他们的普遍信息装置输出,而不依赖于与用于打印的固定计算机(台式个人计算机)同步。
为示例说明,用他的手持计算机接收e-mail的机场的移动工作人员可希望希望走近附近的打印机或传真机来打印他的e-mail。另外,移动工作人员也希望从他的移动设备打印他的工作清单、约定簿、名片和他的航行时刻表。如另一个例子,使用他的移动设备访问电子商务站点的用户可希望打印出事务确认。如另一例子,用数字照相机照相的用户可希望轻易地将其打印到附近的打印机。在上述任何一种情况下,移动用户可希望仅仅走到打印机,并方便地打印存储在移动装置上的或从网络(例如,Internet、企业通信网)下载的文件(字处理文档、PDF、HTML等等)。
通常,将输出设备(例如,打印机)经有线连接,诸如电缆线连接到信息装置.通过使用,例如,无线通信或红外通信,无线连接也是可能的.不管是有线还是无线连接,用户必须首先在信息装置中安装对应于特定输出设备型号和品牌的输出设备驱动程序(在输出设备是打印机的情况下,安装打印机驱动程序).使用设备相关或特定的驱动程序,信息装置可将输出内容或数字文档处理为特定的输出设备的输入要求(例如,打印机输入要求).输出设备的输入要求对应于输出设备(例如,打印机)得知的输入类型.例如,打印机的输入要求可包括打印机特定的输入格式(例如,一个或多个图象、图形或文本格式或语言).因此,输出数据(或在输出设备是打印机的情况下的打印数据)在此是指对输入相关输出设备可接受的数据.输入要求的例子可包括,但不限于,音频格式、视频格式、文件格式、数据格式、编码、语言(例如,页面描述语言、标记语言等等)、指令、协议或特定输出设备品牌或型号能理解或使用的数据.
输入要求可是基于属性或公开标准或两者的结合。因此,总的来说,输出设备的输入要求是设备相关。根据最佳操作的规格,不同的输出设备型号可具有由输出设备制造商(例如,打印机制造商)指定、设计或采用的它们自己的输入要求。因此,不同的输出设备通常要求使用特定的输出设备驱动程序(例如,打印机驱动程序),用于准确的输出(例如,打印)。有时,代替使用设备驱动程序(例如,打印机驱动程序),设备驱动特征可包含为应用程序软件的一部分。
安装设备驱动程序(例如,打印机驱动程序)或应用程序可由例如,使用由打印机制造商提供的CD或软盘的人工安装来实现。或者,用户能从网络下载具体的驱动程序或应用程序。对家庭或办公用户来说,根据驱动程序的类型以及用户使用计算设备和网络的技术水平,该安装过程可花费大概从几分钟到几个小时。即使通过即插即用安装,对每个打印机或输出设备来说,仍然要求用户执行多个步骤的过程。
该安装和配置过程对否则将他们的时间花费在做其他创新的或有趣的工作的终端用户来说增加了复杂度和工作。此外,可阻碍许多单纯的用户将新的外围设备(例如,打印机、扫描仪等等)增加到他们的家用计算机或网络上以避免安装和配置的不方便。因此,期望信息装置能输出到不至一个输出设备,而没有安装多个专用设备相关驱动程序的不便。
另外,传统的输出或打印方法对移动设备用户比对家用或办公用户来说提出了相当高的挑战和困难。对预先安装设备相关驱动程序的需求减小了移动(普遍)计算和输出的好处和原理。例如,移动用户可希望在机场、加油站、便利商店、公用电话亭、旅馆、会议室、办公室、家里等等打印可输出e-mail、演示文档、web页或其他文档。用户将在这些位置的任何一个找出与用户的基站相同品牌或型号的打印机是非常不可能的。因此,在传统的打印方法下,每次在打印前,在每个这样的远程位置,用户不得不安装和配置打印机驱动程序。通常,对正在使用的上百、或甚至上千打印机型号,以及信息装置的有限存储容量、存储空间以及处理能力,不是可行的选项。
此外,用户可不希望由于查找驱动程序或下载它以及安装它,仅是为在机场打印出或显示出email的一页而被打扰。对促进普遍或移动计算来说,这肯定是不期望和令人气馁的过程。因此,需要更方便的打印方法来支持用户能仅仅走到输出设备(例如,打印机或显示设备)并容易输出数字文档,而不必安装或预先安装特定的输出设备驱动程序(例如,打印机驱动程序)的普遍计算范例。
对移动用户来说,另一个挑战是许多移动信息装置具有有限的存储空间、处理容量和能力。这些限制对小和低成本的移动设备,包括例如,PDAs、移动电话、屏幕电话、寻呼机、e-bok、Internet Pads、Internet设备等等更明显.有限存储空间在安装和运行大的或复杂的打印机或装置驱动程序方面产生困难,更不必说对多种打印机和输出设备的多个驱动程序.慢的处理速度和有限电源产生了驱动输出设备的困难.例如,通过小移动信息装置处理或转换数字文档为输出数据非常慢以致其不适合于生产输出.集中处理也会耗尽或消耗电源或电池资源.因此,需要一种方法以便具有有限处理能力的小移动设备仍然能合理地将内容输出到各种输出设备.
为将内容(例如,数字文档)输出或渲染(render)到输出设备上,通常要求在内容上进行光栅图象处理(raster image processing)(RIP)操作。RIP操作可是计算集中并且包括(1)光栅化(rasterization)操作,(2)色空间转换,以及(3)半色调(halftoning)操作。RIP也可包括其他操作,诸如缩放、分段、颜色匹配、颜色校正、GCR(灰色成分替换)、黑色生成、图象增强压缩/解压缩、编码/解码、加密/解密GCR、其他中的图象增强。
RIP中的光栅操作涉及将包含在内容在的对象和描述(例如,图形、文本等等)转换成适合于输出的图象形式。光栅可包括另外的操作,诸如缩放和内插操作,用于匹配特定的输出大小和分辨率。RIP中的色空间转换包括将输入色空间描述转换成用于在输出设备渲染所需的适当的色空间(例如,RGB至CMYK转换)。使用较低的亮度和色度级,数字半色调是用于渲染连续的色调图象(tone image)的成象技术。半色调操作诸如误差扩散可是计算集中并且当输出设备的色深(bit depth)(例如,每个象素位)小于输入光栅图象色深时包括。
通常,RIP操作包含在信息,或作为输出设备或输出系统(例如,打印机控制器中)的一部分中。图1示例说明传统的数据输出方法102的流程图,其中在信息装置中实现RIP110。不包括执行复杂的RIP操作的打印机控制器的输出设备,诸如,低成本、低速喷墨打印机,通常采用数据输出方法102。在数据输出方法102中,信息装置在步骤100获得内容(例如,数字文档),用于在输出设备处渲染和输出。信息装置可包括应用程序(例如,设备驱动程序),其实现RIP操作110。信息装置在步骤120生成输出数据并在步骤130,将所输出的数据传送到输出设备,用于渲染。与内容有关的输出数据是以包含在输出设备中的输出引擎(例如,显示引擎、打印机引擎等等)可接受的形式(例如,以适当的输出大小和分辨率)。传统输出方法102中的输出数据通常是设备相关。
图1A的数据输出方法102的一个缺点在于要不是输出需要整个光栅图象处理生成110的话,信息装置执行大部分操作。RIP操作可要求集中计算。许多信息装置,诸如移动信息设备可具有不足的计算能力和/或存储器来以可接受的速度执行在输出过程中需要的RIP生成110。
图1A的传统数据输出方法102的另一个缺点在于所生成的输出数据是设备相关,因此,通常对其他输出设备来说非常不便携。因此,信息装置需要安装用于多个输出设备的多个应用程序或设备驱动程序,其可进一步对用在具有有限存储器、存储和处理能力的信息装置中的可行性变得复杂。
图1B示例说明另一种传统的数据输出方法104的流程图,其中在输出设备中实现RIP.实现过程104的输出设备的一个例子是高速激光打印机,其包括用于执行RIP操作的打印机控制以及用于渲染内容的输出引擎(例如,打印机引擎).打印机控制器可内部安装到或外部连接到输出设备(在该例子中为打印机)上.在数据输出方法104中,信息装置在步骤100获得用于输出的内容,并在步骤160生成用于在步骤170传送给输出设备的输出数据或打印数据.打印数据包括与内容有关的信息并通常用页面描述语言(PDL),诸如PostScript和PCL等等编码.在步骤180中,打印机接收输出数据或打印数据(在PDL中),在步骤190中,包含在打印机中的打印机控制器解释PDL、执行RIP操作,并生成对打印机引擎来说可接受的形式(例如,以适当的输出大小、色深、色空间和分辨率的光栅图象)的打印机引擎打印数据.在步骤150中,打印机引擎用打印机引擎打印数据渲染该内容.
将理解到,索引包括语言,诸如PDL的打印数据或输出数据应当解释为使用那种语言编码打印数据或输出数据的含义。相应地,索引生成语言,诸如PDL的数据输出过程应当解释为使用那种语言编码数据输出过程的含义。
在图1B所示的传统数据输出方法104中有许多缺陷。这些缺陷对具有有限处理能力和存储器的移动计算设备来说尤其明显。一种这样的缺陷是包括页面描述语言(PDL),诸如PostScript或PCL的输出数据或打印数据非常复杂。生成复杂的PDL可增加信息装置的存储器和处理要求。此外,解释、解码,然后光栅图象处理复杂的PDL能增加教育处、减小打印速度,以及增加输出设备或其打印机控制器的成本。
另一缺点在于包括PDL的输出数据可产生非常大的文件大小,这将增加信息装置、输出设备和/或打印机控制器等等的存储器和存储要求。大的文件大小也可增加在信息装置和输出设备间的通信链接中所需的带宽。
最后,对输出设备中的光栅文本来说,打印机控制器可需要包括多个字体。当在打印机控制器不包括或缺少特定字体或国际字符时,渲染或输出可能会变得不准确或不相容。

发明内容

因此,本发明提供方便的通用数据方法,其中信息装置和输出设备或系统共享光栅图象处理操作。此外,新数据输出方法消除了在信息装置中安装多个设备相关专用驱动程序或应用程序以便输出到多个输出设备的需要。
根据本发明,普遍或通用输出的电子系统和方法信息装置方便地将内容输出到实际的任何输出设备。信息装置可中央处理单元、输入/输出控制单元、储存单元、存储单元以及有线或无线通信单元或适配器。信息装置最好包括可实现为软件应用程序、助手应用程序、或设备驱动程序(在打印机的情况下为打印机驱动程序)的客户机应用程序。客户机应用程序可包括通过硬件和软件部件,例如,包括驻留在其主信息装置上的一个或多个通信芯片组管理和控制性能。
信息装置中的客户机应用程序能与具有本发明的输出控制器的输出设备通信、管理和使数据或软件部件与其同步。
渲染输出设备中的内容指的是在打印设备的情况下,将内容的图象打印到基片上;在显示设备的情况下,显示内容的图象;以及在语音或声音输出设备或系统中播放所述内容的音频表示。
输出控制器可是驻留在输出设备中的电路板、卡或软件部分。另外,输出控制器可外部连接到输出设备上作为外部部件或“盒”。可尤其用嵌入处理器、软件、固件、ASIC、DSP、FPGA、芯片上系统、专用芯片组实现输出控制器。在另一实施例中,输出控制器的功能性可由运行在外部连接到输出设备的PC、工作站或服务器上的应用程序提供。
在如参考图1A所述的传统的数据输出方法102中,信息装置将输出数据传送给输出设备,用于渲染。输出数据对应于意欲输出的内容并且大部分光栅图象处理过(RIPed),因此是设备相关的,因为光栅图象处理是典型的设备相关操作。可用一种或多种压缩或编码技术编码或压缩输出数据。在本发明中,信息装置产生用于输出到输出设备的中间输出数据。中间输出数据包括对应于该内容的光栅化图象。然而,还没有执行RIP(例如,色彩匹配和半色调)的设备相关图象处理操作。因此,中间输出数据比由参考图1A的输出方法生成的输出数据更设备独立和更便携。
在本发明的一种实现中,中间输出数据包括MRC(混合光栅内容)格式、编码和压缩技术,与传统的图象编码和压缩技术相比,其进一步提供提高的图象质量和压缩比。
在本发明的光栅图象过程和数据输出方法的例子中,将诸如打印机驱动程序的客户机应用程序包括在信息装置中并在内容上执行部分光栅图象处理操作,诸如光栅化。信息装置生成包括对应于内容的输出图象的中间输出数据并将该中间输出数据发送给输出设备或输出系统,用于渲染。包括在输出设备或输出系统中的输出控制器应用程序或部件实现光栅图象处理操作的剩余部分,尤其诸如数字半色调、色彩校正。
象传统的光栅图象处理方法,该发明提供信息装置和输出设备或输出系统间光栅图象处理计算负载的更平衡分布。可在输出设备或输出系统中实现诸如数字半色调和色空间变换的计算密集图象处理操作。因此,当与参考图1A所述的、整个光栅图象处理在信息装置中实现的传统的数据输出方法相比时,该新的光栅图象处理方法降低了信息装置的处理和存储要求。另外,在该发明中,包括在执行部分光栅图象处理操作的信息装置中的客户机应用程序或设备驱动程序与包括在执行光栅图象处理操作的信息装置中的传统输出应用程序相比,能具有更小的大小。
在另一实现中,本发明提供具有更普遍地由多个输出设备接受的输出性能的信息装置。包括客户机应用程序的信息装置生成可包括设备独立属性的中间输出数据。输出控制器包括解释和处理该中间输出数据的部件。信息装置能将内容输出给包括输出控制器的不同输出设备或输出系统,即使当这些输出设备属于不同商标、品牌、型号并具有不同输出引擎和输入数据要求时。不象传统的输出方法,用户不需要预先在信息装置中安装用于每个输出设备的多个专用设备相关驱动程序或应用程序。
小型客户机应用程序、信息装置中降低计算要求以及在多个输出设备渲染的更通用数据输出方法的组合使得移动设备具有更小的存储空间和处理能力来实现数据输出功能,相反,用传统的输出方法是很难实现的。
另外,与包括页面描述语言(PDL)打印机控制器的传统的输出方法104相比,本发明能降低输出设备或输出系统的成本.在本发明中,信息装置产生中间输出数据并将其发送给输出设备或系统.在一个优选实施例中的中间输出数据包括对应于意欲输出的内容的光栅化输出图象.与过程104中所述的传统的方法相比,包括在输出设备或输出系统中的输出控制器解码和处理中间输出数据用于输出,而不执行复杂的解释和光栅化.相比起来,传统的数据输出方法104生成复杂的PDL并将该PDL从信息装置发送到包括打印机控制器(尤其例如,PostScript控制器或PCLS控制器)的输出设备.与解码和处理包括光栅化输出图象的本发明的中间输出数据相比,PDL的解释和光栅图象处理具有更高的计算要求.当与使用包括在本发明的数据输出方法中的输出控制器相比时,实现具有例如,PDL的传统的打印机控制器增加了部件成本(例如,存储器、储存器、ICs、软件和处理器等等).
另外,与包括光栅化输出图象的中间输出数据相比,包括PDL的输出数据能产生大的文件大小。用于本发明的数据输出方法相当地将更小的输出数据从信息装置传送到输出设备。更小的输出数据大小能加速传输、更低通信带宽以及降低存储要求。最后,本发明能提供传统的方法来在具有或不与静态网络的连接的输出设备上渲染内容。在传统的网络打印中,信息装置和输出设备必须连接到静态网络。在本发明中,通过信息装置和输出设备间的局部通信和同步,安装硬件和软件来保持静态网络连接性对启动输出设备渲染内容是不必要的。
根据本发明的几个方面,提供在附加独立权利要求中定义的主题。
本发明的另外的目的和优点根据参考附图进行的优选实施例的详细描述,将是显而易见的。

附图说明

图1A是根据现有技术的传统数据输出方法及其相应的光栅图象处理的流程图。
图1B是根据现有技术,用于包括传统的打印机控制器的输出设备的第二传统数据输出方法及其相应的光栅图象处理的流程图。
图2A和2B是示例说明能实现本发明的过程和装置的操作环境的部件的框图。
图3A是示例说明根据本发明的信息装置实现的硬件/软件部件的示意性框图。该信息装置包括操作系统。
图3A是示例说明根据本发明的信息装置实现的硬件/软件部件的第二示意框图;
图4A是具有传统打印机控制器的传统打印系统或打印机的框图。
图4B是第二传统输出系统或输出设备的框图。
图5A是根据本发明,具有传统打印机控制器和输出控制器的打印系统或打印机的示意框图。
图5B是根据本发明,包括输出控制器的第二输出系统或输出设备的示意性框图。
图6A是示例说明根据本发明的输出控制器的硬件/软件部件的示意性框图。输出控制器包括操作系统。
图6B是示例说明根据本发明的输出控制器的硬件/软件部件的第二示意性框图。输出控制器不包括操作系统。
图6C是示例说明根据本发明的输出控制器的硬件/软件部件的第三示意性框图。输出控制器结合本发明的打印机控制器和输出器的功能性。
图7A-7F示例说明相对于输出设备,诸如打印机的输出控制器的各种配置和实现。
图8A是示例说明无线通信单元的硬件/软件部件的示例性实现的框图;
图8B是示例说明无线通信单元的硬件/软件部件的第二示例性实现的框图。
图9是本发明的通用数据输出方法及其相应的光栅成象过程的流程图。
图10是相对于参考图2所述的部件、系统和装置的本发明的通用数据输出方法的框图。
图11是示例说明实现可选地包括在图10的输出过程中发现过程的一种方法的流程图。
图12A和12B是包括在图10的输出过程中的示例性客户机应用程序过程的流程图。
图13A和13B是包括在图10的输出过程中的示例性输出设备和输出系统过程的流程图。

具体实施方式

以下阐述的是用在描述本发明的实现方式中的术语的定义。提供这些定义以便于理解和示例说明本发明的实现方式并且决不应当视为将本发明的范围限制到具体的例子、类和种类。
输出设备配置文件(或对象)
输出设备配置文件(或对象)包括软件和数据实体,其在其自身内封装描述输出设备的数据和属性以及用于操作数据和属性的指令。输出设备配置文件可驻留在不同硬件环境或平台或应用程序中,以及可以文件、消息、其他形式和技术中的软件对象或部件传送。为简化讨论,配置文件或对象也可包括。例如,可具有由一个类、类的合成,或整个应用程序组成的变化粒度的软件部分的原理。
在此使用的术语配置文件或对象并不限制软件或数据作为其媒介。以计算机可读形式的包含信息、描述、属性、数据、指令等等的任何实体或媒介,诸如硬件、软件、基于或包括声音、文本、图形、图象或视频信号、以模拟或数字形式的电子信号等等均是配置文件和对象定义的有效形式。
配置文件或对象也可在其一个字段或属性中包含对另一配置文件或对象的索引或指针,或对数据和/或内容的索引或指针。对配置文件或对象的索引可包括指针、标识答、名称、路径、地址或与能找到对象、配置文件、数据或内容的位置有关的任何描述的一个或多个,或组合。
输出设备配置文件可包含可识别和描述,例如,特定输出设备诸如打印机的能力和功能性的一个或多个属性。输出设备配置文件可存储在输出设备、信息装置的存储器部件或网络节点中。网络节点包括连接到网络上的任何装置、服务器或存储单元。如下文更详细的描述,请求输出服务的信息装置可与输出设备连接。在这种局部服务谈判期间,可将部分输出设备配置文件从输出设备加载到信息装置上。通过获得输出设备配置文件(或在打印机的情况下,打印机配置文件),信息装置可了解由输出设备提供的能力、兼容性、标识和服务。
例如,输出设备配置文件可包含下述字段和/或属性描述的一个或多个。每个下述字段是可选的,此外,每个下述字段或属性可或不可存在于特定的实现方式中(例如,可为空或NULL):
输出设备的标识(例如,商标、型号、注册、IP地址等等)
●由输出设备提供的服务和特征设置(例如,色彩或灰度级输出、激光器或喷墨、双向、输出质量、每页的价格、服务质量等等)
●输出设备支持的输入语言的类型、格式、输出数据和/或输入要求(例如,PostScript、PCL、XML、RTL等等)
●设备特定的或从属参数和信息(例如,通信协议、色空间、色彩管理方法和渲染意图、分辨率、半色调方法、dpi(点每英寸)、色深、页面大小、打印速度、独立颜色通道或墨水量等等)
●用于图象处理的数据和表,诸如颜色表、半色调表、比例因子、编码/解码参数和方法、压缩和解压缩参数和方法等等。
●包含有关输出设备及其服务的参数和信息的另一配置文件(例如,色彩配置文件、半色调配置文件、通信配置文件、光栅配置文件、服务质量等等)。
●有关由输出设备提供的多个服务的支付信息。
●输出设备支持的信息或安全要求以及认证类型。
●输出设备配置文件的日期和类型、其改进和更新的历史
●包含算术或指令或数据的软件部分,其可加载以便在信息装置内运行。例如,图形用户界面(GUI)软件部分可加载到信息装置上。软件部分可通过本发明的客户机应用程序包含到或装入信息装置中以便俘获用户首选项(例如,打印质量、页面布局、复制量、每页的名片数等等)。在另一例子中,软件部分可包括用于其它中的压缩/解压缩、编码/解码、色彩匹配或校正、分段、缩放、半色调、加密/解密的方法、指令或可执行程序。
●对一个或多个输出设备参数的指针或索引,包括上述输出设备配置文件或对象字段或属性描述的一个或多个。例如,有时,可将输出设备参数的快到期或原始版本存储在网络节点(连接到网络上的任何设备、服务器或存储单元)中,或可由客户机应用程序获得的信息装置内。任何输出设备配置文件可包括对这些输出设备参数的指针或多个指针。
内容(或数据内容、数字内容、输出内容)
内容(或数据内容、数字内容、输出内容)是用于输出,可包括其他内容类型中的文本、图形、图象、表格、视频、音频的数据。内容可包括数据本身或对那个数据的索引。内容可以任何格式、语言、编码或组合,并且可是以部分或全部专有的格式、语言或编码。数字文档是可包括描述数字文档本身和/或对数字文档的索引的属性和字段的内容的例子。数字文档的例子可是文件类型:HTML、VHTML、PostScript、PCL、XML、PDF、MS Word、PowerPoint、JPEG、MPEG、GIF、PNG、WML、VWML、CHTML、HDML、ASCII、2字节国际编码字符等等的任何一个或组合。在本发明的描述中,可与术语数据内容、输出内容或数字内容互换使用内容。
中间输出数据
输出数据(或在打印机的情况下为打印数据)是从信息装置发送到输出设备的电子数据。输出数据与用于输出并以各种格式和语言(例如,POSTSCRIPT、PCL、XML)编码的内容有关,其可包括压缩或加密数据。一些输出设备制造商可也将专用或非专用语言、格式、编码、压缩、加密等等的组合包括在输出数据(或打印数据)中。
中间输出数据是本发明的输出数据,并且其包括由信息装置生成的输出文件或数据、或客户机应用程序或包括信息中的设备驱动程序的更宽定义。中间输出数据可包括文本、向量图形、图象、视频、音频、符号、表格或组合,以及除此之外,可用一种或多种页面描述语言、标记语言、图形格式、成象格式、元文件编码。除此之处,中间输出数据也可包含指令(例如,输出首选项)和描述(例如,数据布局)。可压缩、加密或标记部分或所有中间输出数据。
在本发明的优选实施例中,中间输出数据包含光栅图象数据。例如,能在信息装置中光栅化包含在内容中不是以图象形式的向量图形和文本信息或对象或将其一致成为图象数据并包括在中间输出数据中。RIP的设备相关图象处理操作诸如,数字半色调和色空间转换能在输出设备或输出系统实现。
中间输出数据可是设备相关或设备独立。在一种实现中,如果所使用的光栅参数,诸如分辨率、比例因子、色深、输出大小和/或色空间是设备相关,光栅化输出图象是设备相关。在本发明的另一种实现中,如果所使用的光栅参数是设备独立的,那么光栅化图象可是设备独立的。当那些参数包括基于标准或规格的一组预定或预先定义的光栅参数,光栅参数可变为设备独立。通过预先定义或设备独立的光栅参数,本发明的客户机应用程序能光栅化至少一部分内容并生成包含在中间输出数据中的设备独立图象。通过这样做,中间输出数据可变为设备独立,因此,成为用已经预先构造成接受中间输出数据的输出设备通用可接受的。
在信息装置将光栅化或将文本和图形信息转换成图象数据的一个优点在于输出设备或打印机控制器不再需要执行复杂的光栅操作而且它们不必包括多种字体。因此,采用在此描述的中间输出数据和数据输出方法能潜在地降低输出控制器、打印机控制器和/或输出设备的成本和复杂性。
图象数据编码的一种形式称为混合光栅内容或MRC。通常,存储在MRC中的图象包括不至一个图象或位图层。在MRC中,基于分段标准,尤其诸如背景和前景、亮度和色度,在不同层中分段图象。例如,MR包括具有背景层、前景层和切换或选择器层的三层。这三层是同延的并且可包括不同分辨率、编码和压缩。前景和背景层根据尤其基于分段标准、色彩型号的部分或通道、图象编码表示(HLS、RGB、CMYK、YCC、LAB等等)分段图象的各个部分的方式,每个包含附加层。对每个点来说,切换层可指定前景或背景层是否有效。MRC中的每个层可具有不同色深、分辨率、色空间,其允许例如,与背景层独立的压缩前景层。先前使用图象数据的MRC形式来最小化存储要求。另外,已经提出了用彩色图象传真传送中的MRC格式。
在本发明的一个实施例中,中间输出数据包括采用MRC格式、编码和/或相关压缩方法的一个或多个光栅化输出图象。在该实现中,输出图象中的不同层可具有不同的分辨率并且可包括不同压缩技术。可用不同的压缩或编码技术分段和压缩原始内容(例如,数字文档)中的不同信息,诸如色度和亮度和/或前景和背景信息。也可将原始内容中的分段元素或对象信息存储在不同图象层中并具有不同分辨率。因此,与其他传统图象编码和压缩技术相比,通过MRC,有机会降低输出数据文件大小、保留更多的图象信息、增加压缩比并提高图象质量。下面将更详细地描述本发明中的光栅化的实现、光栅图象处理以及包括MRC编码的中间输出数据。
光栅化
光栅化是将数字文档中的图形和文本转换成图象数据的操作.对包括在数字文档中的图象数据来说,光栅化可包括缩放和内插.光栅化操作具有包括,尤其是色深和分辨率的光栅化操作的特征.指定的光栅化操作可具有好几个光栅化参数,包括输出大小、色空间,色彩通道等等.在光栅化操作中使用的一个或多个光栅化参数值可按缺省指定,可将一个或多个光栅化参数值提供给信息装置作为光栅化向量的分量.在指定的应用程序中,光栅化向量可指定仅一个光栅化参数的值,在光栅化操作中使用的其他光栅化参数采用默认值.在另一种应用中,光栅化向量可指定不至一个,但小于全部的光栅化参数值,在光栅化操作中使用的至少一个其他光栅化参数值采用默认值.并且在另一应用中,光栅化向量可指定用在光栅化操作中的所有光栅化参数值.
图2A和2B是示例说明能实现本发明的过程和装置的操作环境的部件的框图。图2A表示包括信息装置200和输出设备220的电子系统。输出设备200包括输出控制器230。图2B示例包括信息装置200和输出系统250的电子系统的第二种实现方式。输出系统250包括输出设备220和可外部连接到,或者与输出系统250中的输出设备220关联的输出控制器230。
信息装置200是具有处理能力的计算设备。在一个实施例中,信息装置200可是移动计算设备,诸如掌上型计算机、手持设备、膝上型计算机、个人数字助理(PDA)、智能电话、屏幕电话、e-book、Internet垫片、通信垫片、Internet设备、寻呼机、数字照相机等等。信息装置200也可包括静态计算设备,诸如台式计算机、工作站、服务器等等是可能的。
图3A和3B是示例说明包括在本发明的信息装置200中的硬件/软件部件的例子的框图。
信息装置200可包含部件,诸如处理单元380、存储单元370、可选存储单元360和输入/输出控制单元(例如,通信管理器330)。信息装置200可包括接口(未示出),用于与用户交互作用。可用软件或硬件或组合来实现接口。这种接口的例子包括,但不限于鼠标、键盘、触触或非触敏屏、按钮、软键、记录笔、扬声器、麦克风等等的一个或多个。
信息装置200通常包含与其他电子设备,诸如网络节点(未示出)、输出设备220和输出系统230(250?)连接的一个或多个网络通信单元350。网络通信单元可用硬件(例如,硅芯片集、天线)、软件(例如,协议堆栈、应用程序)或组合来实现。
在本发明的一个实施例中,信息装置200和输出设备220或输出系统250间的通信接口240是无线通信接口,诸如短程无线接口,包括根据蓝牙或IEEE802.11标准实现的那些接口。也可用无线通信的其他标准和/或装置实现通信接口,尤其包括无线电、红外、蜂窝、超声波、水听器,用于访问一个或多个网络节点和/或设备。也可包括有线连接,尤其诸如串行或并行接口、USB接口和火线(IEEE1394)接口。到局域网,尤其诸如Ethernet或令牌环形网的连接也可在本发明中实现,用于信息装置200和输出设备220间的局部通信。可用来实现信息装置200和输出设备220间的无线接口的通信单元350的硬件/软件部分的例子将在下面参考图8A和8B更详细地描述。
为简化起见,图3示例说明信息装置200包括一个通信单元350的一种实现方式。然而,应注意到,信息装置200可包含不至一个通信单元350以便支持具有不同设备和/或网络节点的各种接口、协议和/或通信标准。例如,信息装置200可通过蓝牙标准接口或通过IEEE802.11标准接口与一个输出设备220通信同时通过并行电缆接口,与另一个输出设备220通信。信息装置200也可连接到有线或无线网络(例如,Internet或企业通信网)以便发送、接收和/或下载信息。
信息装置200可是具有由制造商预先配置的功能性的专用设备(例如,email终端、web终端、数字照相机、e-book、web垫片、Internet设备等等)。另外,信息装置200可允许用户安装另外的硬件部分和/或应用软件205以便扩展其功能性。
信息装置200可包含多个应用程序205以便实现其特征设置和功能性。例如,可实现文档浏览或编辑应用程序来帮助用户浏览以及可能部分或整个编辑用某种格式或语言(例如,页面描述语言、标记语言等等)编写的数字文档。数字文档可本地存储在信息装置2000中或网络节点(例如,内容服务器)中。文档浏览应用程序的例子是Internet浏览器,诸如Internet Explorer、Netscape Navigator或WAP浏览器。这些浏览器可检索和显示用标记语言,尤其诸如HTML、WML、XML、CHTML、HDML所写的内容(例如,数字内容)。信息装置200中的软件应用程序的其他例子可包括文档编辑软件,诸如MicrosoftWordTM,其允许用户浏览和/或编辑具有各种文件扩展名(例如,doc、rtf、html、xml等等)的数字文档,不管是本地存储在信息装置200中还是网络节点中。同样,软件应用程序205的其他例子包括图象采集和编辑软件。
如在前参考图1所述,在向具有有限存储器和处理能力的信息装置200提供输出能力方面存在许多困难。为解决这些难题,信息装置200包括客户机应用程序210,帮助提供本发明的通用数据输出能力。客户机应用程序210可包括能由信息装置200的处理单元380执行的软件和数据。客户机应用程序210可实现为独立的软件应用程序或作为另一软件应用程序的一部分或特征,或以设备驱动程序的形式,其可由信息装置200中的其他应用程序软件205调用、共享和使用。客户机应用程序210也可包括调用其他应用程序(例如,文档浏览应用程序、编辑应用程序、数据和/或图象采集应用程序、通信管理器、输出管理器等等)205的部分以便提供某些特征设置,如下面所述。图3示例说明客户机应用程序210是与其他应用程序205分开的应用程序的结构,诸如在客户机应用程序是设备驱动程序的情况下;然而,应当注意,客户机应用程序210可是在图3中未示出的其他应用程序的组合或一部分。客户机应用程序210可在信息装置200中不同地实现,以及可在不同的操作系统或平台上运行。客户机应用程序210也可在没有操作系统的环境中运行。例如,图3A示例说明包括操作系统240A的信息装置200A的实现方式,而图3B示例说明信息装置200B不包括操作系统的实现方式。
客户机应用程序210包括光栅化部件310,以便根据一个或多个光栅化参数,使内容一致为一个或多个光栅输出图象、中间输出数据生成器部件320,生成和/或编码包括一个或多个输出图象的中间输出数据;以及通信管理器330,管理与输出设备220或系统250或输出控制器230的通信和交互作用。通信管理能实现为客户机应用程序210的一部分(如图产3所示)或实现为单独的应用程序(未示出)。客户机应用程序中的部分可用软件、硬件或组合来实现。例如,客户机应用程序210可包括或利用下述的一个或多个:
●获得用于输出的内容的部件或操作(例如,数字文档)。客户机应用程序210可从其他应用程序205(例如,文档浏览应用程序、内容创建和编辑应用程序等等)获得数字文档,或客户机应用程序210可为用户提供其自己的能力来浏览、编辑和/或选择数字文档。
●光栅化内容的部件或操作,根据一组光栅化参数,诸如比例因子、输出大小、色深、色空间和分辨率,将除对象或元素外的文本、图形和图象包括到一个或多个光栅图象中.可用各种方式,例如,从输出设备220下载的、或本地存储在信息装置200中的,或由用户手工输入的输出设备配置文件获得光栅化参数.另外,光栅化参数可是基于作为一组缺省、或硬编码在客户机210中的存储在信息装置200中的预缩放准或规格,或在与输出设备220、输出控制器230和/或用户通信后由客户机应用程序210计算的.
●生成包括对应于该内容(例如,数字文档)的至少一个光栅化输出图象的中间输出数据的部件或操作。该过程可进一步包括尤其是压缩、编码、加密和颜色校正的一个或组合。该中间输出数据可包括尤其例如,图象、指令、文档和/或格式描述、色彩配置文件。
●通过有线或无线通信链路240,将中间输出数据传送给输出设备220或系统250的部件或操作。
客户机应用程序210也可选地包括或利用下述部件或操作的一个或多个:
●与至少一个或多个输出设备220通信以便加载输出设备配置文件的部件或操作。
●直接或间接(诸如通过操作系统或部件或对象模型、消息、文件传送等等)与驻留在相同的信息装置200中的其他应用程序205以便获得所需,或与本发明的普遍输出过程相关的对象、数据、和/或内容(例如,获得用于打印的数字文档)的部件或操作。
●直接或间接管理和利用由驻留在其主信息装置200中的硬件部件(例如,通信单元350)提供的功能性的部件或操作。
●在主信息装置中提供图形用户界面以便与用户交互作用的部件或操作。
●获得用户首选项的部件或操作。例如,用户可通过GUI直接输入他或她的首选项。也可采用一组默认值。可预置或根据与输出设备220或输出控制器230通信和谈判的结果,通过信息装置200获得默认值。
参考图12,在客户机应用过程中进一步详细地描述本发明的客户机应用程序210的上述功能性和过程。
输出设备220是能输出数字内容的电子系统,而与输出介质是基片(例如,纸)、显示、投影还是声音独立。输出设备220的典型的例子是打印机,其将包含文本、图形、图象或任何组合的数字文档输出到基片上。输出设备220也可是能显示静止图象或视频的显示设备,诸如但不限于,电视、监视器和投影仪。输出设备220也可是能输出声音的设备。任何能以音频(例如音乐)或数据(例如,文本或文档)格式播放或读取数字内容的设备也是可能的输出设备220。
在此频繁地将打印机称为输出设备的例子以便简化讨论,或作为具体实施中的主输出设备220。然而,应当认识到,本发明也可应用于其他输出设备220,尤其诸如传真机、数字复印机、显示屏、监视器、电视、投影仪、声音输出设备。
用输出设备220渲染内容是指将内容输出到特定的输出介质(例如,纸、显示屏等等)上。例如,用打印机渲染内容在基片上生成图象,用显示设备渲染内容在屏幕上生成图象,以及用音频输出设备渲染内容生成声音。
传统的打印系统一般包括光栅图象处理器以及打印机引擎。打印机引擎除其他部件外,包括存储缓冲器、标记引擎。光栅图象处理器将内容转换适合于打印的图象形式。存储缓冲器保存准备打印的光栅化图象;以及标记引擎将着色剂传送给基片(例如,纸)。
光栅图象处理器也可位于输出设备(例如,包括在打印机控制器410中)或外部实现(在信息装置200、外部控制器、服务器等等中).光栅图象处理器可实现为硬件、软件或组合(未示出).例如,可在信息装置200中的软件应用程序或设备驱动程序内实现光栅图象处理器.光栅图象处理操作的例子包括图象和图形解释、缩放、分段、色空间变换、图象增强、色校正、半色调、压缩等等.
图4A示例说明包括打印机控制器410和打印机引擎420A的一个传统打印机系统或打印机400A的框图。打印机控制器410包括解释器402和光栅图象处理器406,以及打印机引擎420包括存储缓冲器424A和标记引擎426A。
标记引擎可使用多种不同技术的任何一种来将光栅图象传送给纸或其他介质,或换句话说,将着色剂传送给基片。可使用的不同标记或打印技术包括击打式打印或非击打式打印。击打式打印的例子包括点阵、电传打印机、菊花轮等等。非击打式打印技术可包括喷墨、激光、静电、热、染料升华等等。
打印机的标记引擎426和存储缓冲器424形成其打印机引擎420,其也可包括另外的电路和部件,诸如固件、硬件或芯片或芯片组,用于解码和信号转换等等。到打印机引擎420的输入通常是由光栅图象处理器406生成的最终光栅化打印机引擎打印数据。这种输入通常是设备相关,以及打印机或打印机引擎特定的。打印机引擎420可采用该设备相关输入并生成或渲染输出页(例如,在基片上用墨水)。
当光栅图象处理器位于输出设备220内时,其通常包括在打印机控制器410中(如图4A所示)。打印机控制器410可解释、光栅化、以及将以页面描述语言(例如,PostScript,PCL)、标记语言(例如,XML、HTML)或其他特定的文档格式或语言(例如,PDF、EMF)的形式的输入打印数据转换成打印机引擎420A能理解的最终格式、语言或指令的打印机引擎打印数据。
发送给具有打印机控制器410的打印机的打印数据通常是以要求进一步解释、处理或转换的形式(例如,附录)。打印机控制器410接收打印数据、解释、处理并将打印数据转换成能由打印机引擎420A理解的形式。与打印数据的类型独立,通常,用户在他或她的信息装置200中需要设备特定的驱动程序以便输出能由特定的打印机或输出设备220接受的适当的语言、格式或文件。
图4B示例说明另外的传统输出设备400B。输出设备400B可是打印设备、显示设备、投影设备、或声音设备。在输出设备是打印设备或打印机的情况下,参考图4B的打印机不包括打印机控制器410。例如,打印机400B可是低成本打印机,诸如台式喷墨打印机。在该例子中的RIP操作可以包含在信息装置200中的软件应用程序或以设备驱动程序来实现。信息装置200通过光栅化和转换数字文档为能由输出引擎(或在打印机的情况下的打印机引擎)420B理解的输出数据(例如,转换成具有每个象素一个或多个位的压缩CMKY数据)。
与类型或技巧水平独立,不同输出设备220通常需要信息装置200中的不同的打印机驱动程序或输出管理应用程序以便提供输出能力。具有有限存储器和处理能力的一些移动设备可具有存储多个设备驱动程序或执行计算集中的RIP操作的困难。每次需要打印到新打印机上,安装新设备相关或特定的打印机驱动程序是不可行的。为克服这些困难,本发明对输出设备220或输出系统250提供了几种改进,如下面的详细描述。
在本发明中,输出设备220可包括输出控制器230以便帮助管理与信息装置200的通信和谈判过程以及处理输出数据。输出控制器230可包括用于至少一个输出设备220的专用的硬件或软件或两者的组合。输出控制器230可是内部安装,或外部连接到一个或多个输出设备220上。输出控制器230有时称为打印服务器或输出服务器。
图5A和5B示例说明本发明的输出控制器230的两个示例性内部实现方式。图5A示例说明在参考图4A的传统打印机内实现输出控制器230,其包括传统的打印机控制器410(5A)。输出控制器230(5A)包括解释器510A部件,用于解码本发明的中间输出数据,以及转换器部件530A,用于将一个或多个解码的输出图象转换成适合于输入到打印机控制器410(5A)的打印机控制器打印数据。可选图象处理部件520A包括在输出控制器230(5A)中。
图5B示例说明包括在参考图4B、不包括打印机控制器的传统输出设备220中的输出控制器230的实现方式。输出控制器230(5B)包括解释器510B部件,用于解码本发明的中间输出数据;图象处理器520B部件,用于执行一个或多个图象处理操作,诸如色空间转换、色彩匹配和数字半色调;以及可选编码器530B部件,如果图象处理的结果还不是适合于输出引擎420B的所需形式,将所处理过的输出图象一致化为适合于输出给输出引擎420B的输出引擎输出数据。
在一种实现中,输出设备220可包括通信单元550或适配器以便与信息装置220连接。输出设备20有时可包括不至一个通信单元550以便支持不同设备的不同接口、协议或通信标准。例如,输出设备220可通过蓝牙接口与第一信息装置200通信,同时通过并行接口与第二信息装置200通信。无线通信单元的硬件部件的例子将在下面参考图8A和8B更详细地描述。
在一个实施例中,输出控制器230不包括通信单元,而宁可利用或管理驻留在相关输出设备220,诸如图5中所示中的通信单元。在另一个实施例中,输出控制器230可包括或提供通信单元给输出设备220,如图6所示。例如,具有无线通信单元的输出控制器230可内部安装或外部连接到传统打印机以便为其提供先前缺乏的无线通信能力。
图6包括示例说明在三种不同实现中输出控制器230的硬件/软件部件的三个功能框图。输出控制器230的每个部件可包括软件、硬件或组合。例如,输出控制器230可包括使用专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、固件、芯片上系统以及各种通信芯片组中的一个或多个或组合。输出控制器230还包含具有软件部分的嵌入处理器670A或嵌入应用程序软件以便实现其特征设置和功能性。
输出控制器230可包含嵌入操作系统680。通过操作系统,可由操作系统管理的应用程序软件提供输出控制器230的一些或所有功能性和特征设置。可将另外的应用程序软件安装或升级到更新的版本以便例如,提供另外的功能性或故障补丁。图6A和6C示例说明具有操作系统680的实现的例子,而图6B示例说明没有操作系统680或可选嵌入处理器670的例子。
输出控制器230通常包括存储单元640、或可与例如,打印机控制器410共享存储器单元。存储器单元和存储单元,尤其诸如ROM、RAM、闪速存储器和盘驱动器可提供永久或易失存储。存储器单元或存储单元可存储实现输出控制器230的功能性的输出设备配置文件、对象、编码、指令或数据(统称为软件部分)。在数据输出操作期间或之前,可将部分软件部分(例如,输出设备配置文件)加载到信息装置200上。
输出控制器230可包括处理器部件670A和670C、存储器部件650、可选存储部件640、以及可选操作系统部件680.图6表示如果存在的话,存储器650、储存器640、处理器670和操作系统680部件能共享或由输出控制器230中的其他操作部分,诸如解释器610和图象处理器650的一种体系结构或实现方式.图6表示包括在输出控制器230中的两个通信单元660A和660B,然而,本发明的输出控制器230可包括多个通信单元660.输出控制器不包含任何通信单元而宁可利用输出设备的通信单元也可能的.
输出控制器230可外部地连接到输出设备220或内部集成到输出设备220中。图5A和5B示例说明在输出设备220内的输出控制器230的实现。然而,输出控制器230也可实现为有线或无线地连接到输出设备220的外部盒或站。实现为到输出设备220的外部盒或站的输出控制器230可包含其自己的用户接口。这种实现的一个例子是连接到输出系统250中的输出设备220的打印服务器。另一种结构和实现是如果输出设备220为打印机,与现有的打印机控制器410集成或组合输出控制器230的功能性(称为“组合控制器),如参考图7C至7F所示。组合控制器也可内部集成或外部连接到输出设备220,并包括打印机控制器410以及本发明的输出控制器230的功能性(例如,输入解释和/或光栅图象处理)。这种配置的一个优点在于输出控制器230和打印机控制器410的功能性或部件可共享的资源,诸如处理、存储器单元等等。图6C示例说明打印机控制器410、解释器610C和转换器630C共享使用由操作系统680C管理的处理器670C、存储器650C和储存器640C的组合控制器实现或输出控制器230的例子。参考图7,更进一步示例说明相对于输出设备220或输出系统250,输出控制器230的各种示例性实现和结构。
输出控制器230的其他可能的实现方式包括例如,传统的个人计算机(PC)、工作站、以及输出服务顺或打印机。在这些情况下,输出控制器230的功能性可使用安装在计算机(例如,PC、服务器或工作站)中的应用程序软件来实现,同时该计算机有线或无线连接到输出设备220。使用PC、服务器、工作站或其他计算机来实现具有应用程序软件的输出控制器230的特征设置正好是输出控制器230的另一可能实施例并且绝不脱离本发明的精神、范围和过程。
应当注意输出控制器230和打印机控制器410间的差别。打印机控制器410和输出控制器230均是控制器并且是用于至少一个输出设备220的专用硬件和/或软件。输出控制器230是指具有本发明的特征设置、能力和功能性的控制器。打印机控制器410可包含尤其诸如解释输入页面描述语言、光栅图象处理以及查询的功能。输出控制器230可包括除本发明的特征设置、功能性、能力和过程外的打印机控制器410的部分或全部特征。
用于提供通用数据输出的输出控制器230的功能性和部件可包括或利用:
●从多个信息装置200接收输出数据的部件和操作;输出数据可包括包含至少一个与意欲输出的数据内容有关的光栅化图象的中间输出数据。
●解释和/或解码中间输出数据的部件和操作。
●处理中间输出数据的部件和操作。这些部件和操作可包括图象处理功能,尤其诸如缩放、分段、色彩校正、色彩管理、GCR、图象增强、解压缩、解密、和/或半色调。
●生成输出引擎输出数据的部件和操作,输出引擎输出数据以用于输入到输出引擎可接受的输出数据格式。
●将输出引擎输出数据发送给输出引擎的部件和操作。
当与包括打印机控制器410的输出设备220关联时,本发明的输出控制器可进一步包括或利用:
●将中间输出数据转换成打印机控制器打印数据(例如,PDL,诸如PostScript和PCL)的部件和操作,打印机控制器打印数据以打印机控制器可接受的格式.
●将打印机控制器打印数据发送给一个或多个打印机控制器的部件和操作。
除上述部件和功能性外,输出控制器230可进一步包括下述的一个或多个:
●通过有线或无线接口,与一个或多个信息装置200通信的部件和操作。
●通信和/或管理包括在输出控制器230或输出设备220中的通信单元的部件和操作。
●将至少部分输出设备配置文件(在打印机的情况下为打印机配置文件)存储在存储部件中的部件和操作。
●通过将至少部分输出设备配置文件传送给请求服务的信息装置,响应来自信息装置200的服务请求的部件和操作。输出控制器230可在一个或多个会话中传送输出设备配置文件或对象。
●将由主输出设备220提供的服务广播或通告给请求该服务的一个或多个信息装置200的部件和操作。
●通过例如,根据所请求或渲染给客户机(信息装置200)的服务,计算和处理支付来实现支付处理和管理功能的部件和操作。
●提供用户接口,诸如显示屏、触摸按钮、软键等等的部件和操作。
●实现作业管理功能,尤其诸如查询和假脱机的部件和操作。
●实现安全或验证过程的部件和操作。例如,输出控制器230可在其存储部件(或共享存储部件)中存储访问控制列表,其指定什么设备或用户可从其主(或连接的)输出设备220获得服务。因此,授权信息装置200可在符合控制列表后,获得访问。
当输出控制器230实现为固件、或嵌入应用程序时,输出控制器230的功能性的配置和管理可通过例如,使用主计算机中的控制器管理软件来任意实现。主计算机可是台式个人计算机(PC)、工作站或服务器。主计算机可局部或通过网络连接到输出设备220或控制器230。可通过有线或无线通信来实现主计算机和输出控制器230间的通信。在主计算机中的管理应用程序软件能管理输出控制器230的设置、配置和特征设置。此外,主计算机的配置应用程序可下载和/或安装应用程序软件、软件部分和/或数据到输出控制器230,用于升级、更新和/或修改输出控制器230的特征和能力。
在一种实现中的输出设备220包括或连接到如上所述的输出控制器230。由输出控制器230提供的功能性和特征自动包括在输出设备220的功能性中。然而,输出设备220可实现或包括至少部分提供输出控制器230的特征和功能性的其他控制器和/或应用程序。
因此,输出设备220可包括下述功能性的一些或全部:
●从多个信息装置200接收多个服务请求或查询(例如,服务请求、数据查询、对象或部分查询等等)并且通过返回可包含数据、软件、指令和/或对象的部分来适当地响应它们折部件和操作。
●从多个信息装置200接收输出数据的部件和操作,输出数据可包括包含与意欲输出的内容有关的一个或多个光栅化图象的中间输出数据。
●解释和/或解码中间输出数据的部件和操作。
●处理和/或中间输出数据为适合于在与输出设备有关的输出引擎渲染的形式(例如,输出引擎打印数据)的部件和操作.
●将与内容有关的表示或图象渲染到输出介质(例如,基片或显示屏)上的部件和操作。
输出设备220可进一步包括下述功能性的任何一个或多个:
●用于建立和管理与请求服务的信息装置200的通信链路的部件和操作。通信链路可包括有线或无线通信的部件和操作。
●用于将至少一部分输出设备配置文件(例如,打印机配置文件)存储在存储元件中的部件和操作。
●将至少一部分输出设备配置文件(例如,在打印机的情况下的打印机配置文件)提供给请求服务的一个或多个信息装置200的部件和操作。输出设备220可在一个或多个会话中传送输出设备配置文件。
●将所提供的或可用的服务通告或广播给一个或多个信息装置200的部件和操作。
●通过例如,根据由客户机所请求的或渲染给客户机(信息装置200)的服务,计算和处理支付来实现支付处理和管理功能的部件和操作。
●实现作业管理功能性。尤其诸如查询和假脱机的部件和操作。
●提供用户接口,诸如显示屏触摸按钮、软键、开关等等的部件和操作。
●实现安全性或验证过程的部件和操作。例如,输出设备220可在其存储部件(或共享存储部件)内存储访问控制列表,其指定什么设备或用户可从其获得服务。因此,授权信息装置200在符合控制列表后获得访问。
图7A-7F示例说明相对于输出设备230(220?)的输出控制器230的各种另外的配置和实现方式。有时将打印机用作示例性的输出设备230以便论证各种配置。然而,应当注意,本发明的输出设备230(220?)并不限于打印机。
如参考图4所述,打印机可以或可不包含打印机控制器410。包括打印机控制器410的打印机400A通常比不包括打印机控制器410的打印机400B具有更高的速度以及更昂贵。
图7A表示输出控制器230可外部级联到一个或多个打印机(仅示出一个)。信息装置200与输出控制器230A连接,然后,输出控制器230A与输出设备220,诸如打印机220连接。输出控制器230A与打印机220A间的通信链路可是有线链路或无线链路,如前所述。图6A和6B示例说明输出控制器的功能部件设计的两个例子,能实现如图7A所示的配置。在该实现方式中的图象处理器620是可选的。
图7B表示将输出控制器230B安装为打印机220B内部的一个或多个电路板或卡的另一种实现方式。输出控制器230B可与打印机控制器410和打印机220B的其他部件共存。这种实现的一个例子是将输出控制器230顺序地与打印机控制器310连接。图5A表示为实现的一个例子。
图7C表示输出控制器230和打印机控制器410的功能性组合为单个控制器(称为“组合控制器”)230C的另一种实现.在该实施例中,当与实现如图7B所示的两个单独的控制器相比,可降低材料的成本.例如,组合控制器230C可共享相同的处理器、存储器、和储存器来运行两种类型的控制器的应用程序和功能性,因此,当与提供两个单独的控制器相比时,可具有较低的部件成本.图6C示例说明组合控制器功能部件实现的例子.
一些打印机不包括光栅图象处理器或打印机控制器410,如图4B所示。这种类型的打印机的例子是更低成本的台式喷墨打印机。到喷墨打印机的输入可由每个象素输入一个或多个位的压缩CMYK数据(专用或公开)组成。为输出给不包括打印机控制器的打印机,通常在信息装置200中要求设备特定的软件应用程序或打印机驱动程序以便执行光栅图象处理操作。因此,输出控制器230能实现成包括不具有打印机控制器的打印机的各种输出设备220和/或输出系统250,用于执行光栅图象处理操作。
图7D和图7E示例说明在输出设备220或系统250中的输出控制器230的两种实现。输出设备230或系统250可包括显示设备、投影设备、音频输出设备或打印设备。在当输出设备220D或220E是打印机时的情况下,其不包括打印机控制器。图7D示例说明安装为输出设备220D的外部部件或“盒”的输出控制器230D的实现。例如,输出控制器230可实现为打印服务器中的应用程序,或独立的盒或站。在这种配置中,可在输出控制器230D中实现一些或全部光栅图象处理操作。输出控制器230D从信息装置220接收中间输出数据并生成包括在输出设备220D中的输出引擎可接受的输出引擎输出数据。输出控制器230D可将输出数据经有线或无线通信链路或连接发送给输出设备220D。图6A和6B示例说明能实现用于图7D和7E的配置的输出控制器的功能部件设计的两个例子。
图7E表示输出控制器230E的第五实现,其中输出控制器230E包含在输出设备220E中作为一个或多个电路板或卡,并可包含在嵌入处理器上运行的软件和应用程序。相对于输出设备220D(图7D),输出设备220E不包括打印机控制器410。因此,输出控制器230E实现包括部分或全部光栅成象处理操作的本发明的功能性和能力。
图7F表示第六种实现,将打印机控制器310和输出控制器的功能性集成为单独外部组合控制器部件或“盒”230F的外部组合控制器230F。两个控制器功能可共享公用处理器以及公用存储空间以便运行两种类型的控制器的应用程序。在该配置下,信息装置200或组合控制器230F能执行或共享至少一部分光栅图象处理功能性。图6C表示组合控制器230F的功能部件的例子。
如7图F所示的组合控制器230F的另一实现是使用运行包括输出控制器230和打印机控制器410的功能性的一个或多个应用程序的外部计算设备(PC、工作站或服务器)。
上述是输出控制器230的不同实现和结构的例子。其他实现方式也是可能的。例如,可在外部盒或站内实现部分输出控制器230的功能性而剩余的功能性可驻留在输出设备220内作为单独的板或与打印机控制器410集成。如另一个例子,输出控制器230的功能性可实现为连接到相同输出设备220的多个外部盒或站。如另一个例子,相同的输出控制器230可连接到多个输出设备220。
图8A和8B是示例说明无线通信单元的硬件/软件部件的两种可能结构的框图。这些无线通信单元可在信息装置200、输出控制器230和输出设备220中实现或包括在其中。参考图8A,可实现无线适配器230以便通过无线链路启动设备(例如,信息装置200和输出设备220)中的数据/语音传输。使用与天线816耦合的RF收发机814来接收和传送无线射频信号。RF收发机814还将无线电信号转换成电信号以及将电信号转换成无线电信号。RF收发机814通过接口812连接到RF链路控制器810。接口812可执行诸如模数转换、数模转换、调制、解调、压缩、解压缩、编码、解码、以及其他数据或格式转换功能的功能。
RF链路控制器810实现使得主机(例如,信息装置200、输出控制器230、输出设备220等等)在无线电链路上通信的实时低层(例如,物理层)协议处理。由链路控制器810执行的功能可包括,但不限于错误检测/校正、功率控制、数据包处理、数据加密/解密和其他数据处理功能。
可利用各种无线电链路。特别关注在2.4Ghz未许可的频带中操作的一组竞争技术。该组目前包括蓝牙、家用射频(Home RF)以及基于IEEE802.11标准的实现。这些技术的每一种具有不同的协议设置并且它们均提供用于无线局域网(LANs)的解决方案。这些技术中的干扰会限制同时采纳这些协议。期望出现新局域网技术以及汇合现有的技术。不然,可在本发明中实现所有这些现有的和未来的无线技术,而没有限制,因此,决不脱离本发明的范围。
在当前可用的无线技术中,蓝牙很有利,因为它要求相对低的功耗和蓝牙使能的设备在piconet中操作,其中在点对多点系统中连接几个设备。参考图8B,可实现一个或多个红外(IR)适配器820以便通过红外传输,在设备中启动数据传输。根据红外数据协会(IrDA)标准和规格,容易实现IR适配器820。通常,使用IrDA标准来提供用于通常使用用于连接的电缆的设备的无线连接技术。IrDA标准是点对点(对蓝牙中的点对多点)、窄角(narrow angle)、特定的数据传输标准。
根据数据传送的所需速率,改变红外适配器820的结构。图8B示例说明红外适配器820的一个实施例。收发机826接收/发射IR信号并将IR信号转换成电信号/将电信号转换成IR信号。UART(通用异步接收/发射机)822执行串行化/去串行化的功能,将串行数据流转换成数据字节/将数据字节转换成串行数据流。UART822通过编码器/解码器(ENDEC)824连接到IR收发机826。该结构通常适合于以相对低的速率传送数据。需要其他部件(例如,包成帧器、锁相环)用于更高数据传输率。
图8A和8B示例说明无线通信单元的示例性硬件结构。可将这些硬件部件包括在设备(例如,信息装置200、输出控制器230、输出设备220等等)中以便支持各种无线通信标准。然后,有线链路,诸如并行接口、USA、固件接口、Ethernet和令牌环网络也可在本发明中,通过使用适当的适配器和结构来实现。
图9是能实现本发明的通用输出方法的示例性光栅成象过程(RIP)902的逻辑流程图。可由在信息装置200中运行的应用程序获得和/或生成内容(例如,数字文档)900。例如,文档浏览应用程序可允许用户下载和/或打开本地存储或在网络节点中的数字文档900。如另一例子,文档创建或编辑应用程序可允许用户在他/她的信息装置200中创建和编辑数字文档。
信息装置中的客户机应用程序210可以由驻留在信息装置200中的其他应用程序调用的设备驱动程序的形式以便提供输出服务。另外,本发明的客户机应用程序可是包括除其他功能性,诸如内容采集、预览、浏览和/或编辑等等以外的数据输出和管理部分的应用程序。例如,信息装置200中的客户机应用程序210本身包括除在此描述的输出管理功能外的允许用户下载、浏览和/或编辑数字文档900的部分和功能。
光栅图象处理方法902允许信息装置200诸如移动设备普遍和方便地将内容(例如,数字文档)输出给包括输出控制器230的输出设备220或系统250.信息装置200中的客户机应用程序210可执行部分光栅图象处理操作(例如,光栅化操作).光栅图象处理的其他操作,诸如半色调可由输出设备220或由输出控制器230完成.在传统的数据输出方法中,光栅图象处理可完全在信息装置(例如,参考图1A不包括打印机控制器的打印机)或输出设备(例如,参考图1B包括打印机控制器的打印机)中实现.本发明提供在信息装置200和输出设备220或系统250间共享光栅图象过程操作的更平衡的方法.例如,在发送给输出引擎或打印机引擎,用于步骤960中的最终输出前,由从客户机应用程序210至输出控制器230的不同部分或整个输出系统的一部分来处理内容600(例如,所处理的光栅图象).因为光栅图象处理操作不是完全在信息装置200中袜,对信息装置200有很少的处理需求.因此,本RIP过程可允许具有极少的存储器和处理能力的另外的移动设备以便具有数据输出能力.
在步骤910,光栅化操作中,根据一个或多个光栅化参数,诸如输出大小、色深、色空间、分辨率、色彩通道的数量等等,可使包括文本、图形和图象对象的内容(例如,数字文档)一致或光栅化为图形形式。在光栅化操作期间,根据指定的光栅化参数设置,将内容中的文本和向量图形信号光栅化或转换成图形或位图信息。可调整和/或内插内容或数字文档中的图象信息以便适合特定的输出大小、分辨率和色深等等。光栅化参数通常是设备相关,因此,可根据输出设备220及其输出引擎的不同需求和属性改变。有许多方法来获得设备相关光栅化参数,如下面参考图12A更详细地描述。在一个例子中,设备相关光栅化参数可从存储在信息装置200、输出设备220或输出控制器230中的输出设备配置文件获得。
在另一种实现中,可按标准或规格预定光栅化参数。在该实现中,在步骤910中,光栅化内容900以便适合或匹配其预先定义的或标准的光栅化参数。因此,光栅化输出图象变为设备独立。设备独立的一个优点是用这些标准或规格的知识实现或创建的控制器、设备和/或输出设备可接受光栅化输出图象。具有预定或标准属性的光栅化图象通常更便携。例如,基于预缩放准和/或规格,可预先编程客户机应用程序210和输出设备220或其输出控制器230以便接收、和/或输出光栅图象。
有时,用于光栅化参数的预缩放准或规格需要改变或更新。用于提供容易更新或升级的一种可能的实现是将信息和相关的光栅化参数存储在文件或配置文件中代替将这些参数硬编码到程序、部件或应用程序中。客户机应用程序210、输出控制器230和/或输出设备220能读取文件或配置文件以便获得与光栅化参数有关的信息。为升级或更新标准的规格或缺省要求,仅替换或编辑文件或配置文件代替更换软件应用程序或部件,诸如客户机应用程序210。
在步骤920中,将以图象形式的光栅化图象编码到中间输出数据中。描述输出内容的中间输出数据可包括图象信息、指令、描述和数据(例如,色彩配置文件)。光栅化输出图象可进一步要求在存储为中间输出数据间,处理尤其包括压缩、编码、加密、平滑、图象增强、分段、色彩校正的一个或多个。中间输出数据中的输出图象可以任何图象格式和用任何压缩技术诸如JPEG、BMP、TIFF、JBIG等等编码。在一个实施例中,使用混合光栅内容(MRC)格式及其相关的编码和/或压缩方法来生成输出图象。优先于其他图象格式和技术使用MRC的好处可尤其包括例如,更好的压缩比、更好的数据信息保留、更小的文件大小和/或相对更好的图象质量。
在步骤930中,为进一步处理和最终输出,将中间输出数据传送到输出设备220或输出系统250.通过信息装置200和输出设备200间的无线或有线通信链路可实现以及能通过一个或多个会话来实现中间输出数据的传输.
在步骤940中,输出设备220或输出系统250接收所传送的中间输出数据。输出设备220或输出系统250可包括输出控制器230以便协助与信息装置200通信和/或处理中间输出数据。输出控制器230相对于如图7A-7F所示的输出设备220,可具有各种配置和实现方式。除其他操作外,解释过程940可包括解析、解码、解压缩、解密、图象空间转换。如果所接收的中间输出数据要求这些处理的话。从中间输出数据解码或检索输出图象并可暂时存储在包括在输出设备/输出系统(220/250)或输出控制器230中的缓冲器或存储器中,用于进一步处理。
如果中间输出数据包括具有MRC格式或编码技术的部分,其可包含用来增强图象质量的另外的分段信息(例如,前景和背景)。例如,尤其在缩放、色彩校正、色彩匹配、图象增强、图形保真和/或数字半色调中的不同技术或算法可应用于图象信息的不同段或层上以便改进输出质量或最大化图象信息的保留或恢复。稍后,可将多层组合或映射到单层中。这些图象处理和转换部件和/或操作可包括在本发明的输出控制器230中。
在步骤950中,来自中间输出数据的解码或检索输出图象需要进一步处理或转换。这可尤其包括缩放、分段、内插、色彩校正、GCR、黑色生成、色彩匹配、色空间变换、图形保真、图象增强、图象平滑和/或数字半色调操作中的一个或多个。
在输出设备220不包括打印机控制器的实施例中,输出控制器230或包括输出控制器的输出设备220在执行输出图象上的RIF操作的剩余部分(例如,色空间转换或半色调)后,可在步骤950中,进一步将输出数据转换成对输入到用于渲染的打印机引擎可接受的形式。
在输出设备220或输出系统250包括传统的打印机控制器的另外的实施例中,输出控制器可简单地解码和/或将中间输出数据(在该例子中的打印数据)转换成打印机控制器可接受的格式或语言。例如,打印机控制器可要求输入页面描述语言(例如,PostScript、PCL、PDF等等)、标记语言(HTML、XML等等)或其他图形或文档格式。在这种情况下,输出控制器230可解释、解压缩和将中间打印数据转换成具有与打印机控制器输入要求有关的最佳输出分辨率、色深、色空间和输出大小的输出图象。然后,将输出图象编码或嵌入到打印机控制器打印数据(例如,页面描述语言)并将其发送给打印机控制器。打印机控制器打印数据是用于输入到打印机控制器可接受或兼容的打印数据。在打印机控制器接收打印机控制器打印数据后,打印机控制器可进一步在输出图象上执行诸如解析、光栅化、缩放、色彩校正、图象增强、半色调等等的操作并生成适合于输入到打印机引擎的适当的打印机引擎输入数据。
在步骤960中,将由输出控制器230或打印机控制器在步骤950中生成的输出引擎输出数据或打印机引擎打印数据发送给输出设备的输出引擎或打印机引擎,用于最终输出。
图10示例说明本发明的通用数据输出过程的流程图,包括参考图9示例说明的光栅图象处理。通用数据输出过程允许信息装置200将内容或数字文档普遍地输出给输出设备。数据输出过程可包括或利用:
●用户接口部件和操作,其中用户初始化输出过程并提供用于输出的选定输出内容(例如,数字文档)的标识。
●处理指示用于输出的内容,并生成中间输出数据的客户机应用程序或操作。中间输出数据可包括与该内容有关的至少部分光栅输出图象描述的客户机应用程序或操作。
●将中间输出数据传送给一个或多个选定输出设备200的信息装置部件或操作。
●解释中间输出数据并可进一步处理或转换输出数据为用于渲染该内容的输出引擎更可接受的形式的输出设备部件(例如,输出控制器)或操作。
参考图10,在步骤1000中,用户可初始化通用输出方法或过程1002。通常,用户通过调用在他/她的信息装置200中的客户机应用程序210,初始化输出过程。可将客户机应用程序210运行为独立的应用程序或由其他应用程序205(诸如由文档浏览、创建或编辑应用程序)运行或作为驻留在相同的信息装置200中的另一应用程序205的一部分或部件或特征。当由其他应用程序205运行,诸如,在当客户机应用程序是设备驱动程序或助手应用程序时的情况,客户机应用程序210可从其他应用程序205获得信息,诸如内容(例如,数字文档)。这可例如,由一个消息或其组合,或通过操作系统或特定对象或部件模型等等便于实现。
在输出过程1002中,用户可需要选择一个或多个输出设备220,用于输出服务。可实现任选的发现过程步骤1020来帮助用户选择输出设备220。在发现过程步骤1020期间,用户信息装置200可(1)查找可用输出设备220;(2)为用户提供可用输出设备220的清单;以及(3)为用户提供选择一个或多个输出设备220来承担输出作业的装置。下面将参考图11来更详细地描述发现过程1020的例子。
可选发现过程1020有时是不必要的。例如,用户可忽略发现过程1020,如果他或她已经知道指向输出的输出装置(例如,打印机)220的话。在这种情况下,用户可通过有线连接或直接指向在其附近的那个输出装置220,诸如在红外连接的情况下,简单地将信息装置200连接到那个输出装置220。如另一个例子,用户可预先选择或设置频繁地用作最佳缺省的输出设备220。因此,如果发现缺省输出设备220或打印机可用的话,可部分或完全忽略发现过程1020。
在阶段1030中,客户机应用程序可与输出设备220、用户和/或驻留在的信息装置200中的其他应用程序交互作用以便(1)获得必要的输出设备配置文件和/或用户首选项,(2)执行功能或部分光栅图象处理操作,诸如光栅化、缩放和色彩校正,和/或(3)至少部分将光栅化内容(例如,数字文档)转换或编码成中间输出数据。中间输出数据的处理和生成可部分反映所获得的输出设备配置文件和/或用户首选项的关系,如果有的话。然后,通过有线或无线局部通信链路240,将由客户机应用程序210生成的中间输出数据传送到包括或与选定的输出设备220或输出系统250有关的输出控制器230。参考图12更详细地描述示例性客户机应用程序过程。
在步骤1040中,本发明的输出控制器230接收中间输出数据。在所选定的输出设备230不包括打印机控制器的情况下,本发明的输出控制器230可进一步执行功能,尤其诸如地解析、解释、解压缩、解码、色彩校正、图象增强、GCR、黑色生成和半色调。另外,输出控制器230可进一步将中间输出数据转换或一致为适合于输出引擎(例如,在打印机的情况下为打印机引擎)的形式或格式。因此,从输出控制器生成的输出引擎输出数据通常是设备相关且通过包括在选定的输出设备220或输出系统250中的输出引擎(或在打印机的情况下为打印机引擎)可接受,用于最终输出。
在所选定的输出设备220是打印机的情况下,以及当打印机包括或连接到打印机控制器时,输出控制器230可生成与打印机控制器连接所需的适当的语言或输入格式(称为打印机控制器打印数据)。打印机控制器可例如,要求特定的输入,诸如页面描述语言(PDL)、标记语言,或特定的图象或图形格式。在这些情况下,在步骤1040中的输出控制器230可解释和解码中间输出数据,然后将中间输出数据转换成所需的打印机控制器打印数据(例如,PDL,诸如PostScript或PCL)。然后,将由输出控制器生成的打印机控制器打印数据发送到打印机控制器,用于进一步处理。打印机控制器可执行除其他操作外的解释和光栅图象处理操作。在处理后,打印机控制器生成适合于在打印机引擎渲染的打印机引擎打印数据。
在任何一种情况下,输出控制器230或打印机控制器生成适合于发送给包括在输出设备中的输出引擎或打印机引擎或与其连接的用于渲染的输出引擎输出数据。输出数据可暂时缓存在输出设备220的部件中。参考图13,更详细地描述输出设备过程1040的实现。
当用户请求输出服务时,包括在通用普遍输出过程1002中的步骤可自动进行。另外,在每个和每一步骤中可向用户提供进行、取消或输入信息的选项。例如,用户通过例如,指出取消信号或命令或通过中止客户机应用程序210,或通过关闭信息装置200等等,在任何时间取消输出服务。
图11是发现过程720的例子的流程图,其可是可选步骤以便帮助用户定位用于输出作业的一个或多个输出设备220。然而,可部分或全部忽略发现过程1020。发现过程1020的实现可要求驻留在信息装置200和输出设备220中的兼容硬件和软件部件。信息装置200可在该过程中利用客户机应用程序210或其他应用程序205。发现过程1020可包括:
●信息装置200与可用输出设备220通信以便获得与输出设备220有关的信息和属性和/或其服务,诸如输出设备性能、特征设置、服务可用性、服务质量、条件。
●信息装置200将用户信息提供到每个可用和/或兼容输出设备220上。
●用户选择或客户机应用程序210(自动或不自动)选择一个或多个输出设备220,用于来自可用或兼容输出设备220的输出服务。
在发现过程1020期间可使用各种协议和/或标准。无线通信协议是最佳的。另一方面,也可实现有线通信。应用协议或标准的例子可包括,但不限于,尤其蓝牙、HAVi、Jini、Salutation、Service LocationProtocol、以及Universal Plug-and-Play。可在发现过程1020中实现标准和专用协议或组合。然而,这些不同协议、标准或组合将不脱离本发明的精神和范围。
在一个实施例中,驻留在信息装置200中的应用程序(为讨论简单起见,在此称为“通信管理器”,未示出)帮助与输出设备220通信并管理服务请求和发现过程1020。通信管理器可是客户机应用程序210的一部分或特征。另外或组合,通信管理器也可是单独的应用程序。当通信管理器是单独的应用程序时,客户机应用程序210可具有通信、管理或访问通信管理器的功能性的能力。
当用户通过信息装置200请求输出服务时,发现过程1020可由用户手动地或由通信管理器自动启动。
在可选步骤1100中,用户可指定查找或匹配标准。例如,用户可查找提供免费服务的彩色打印机和/或打印机。用户可手动地每次为发现过程1020指定那个标准。另外或组合,用户可设置能应用到多个发现过程1020的缺省首选项。然而,有时,不要求查找标准:信息装置200可简单地查找能提供输出服务的所有可用输出设备220。
在步骤1101中,信息装置200查找可用输出设备220。查找过程可由例如,信息装置200(例如,通过通信管理器的帮助)多播或广播或通告其服务请求或等待可用输出设备220响应来实现。另外,信息装置200可从一个或多个输出设备220“收听”服务广播,然后识别所需要或可接受的一个或多个输出设备220。同时,相同网络(例如,LAN)的多个输出设备向控制点登记(未示出)它们的服务是可能的。控制点是维持有关相同网络内的所有服务设备上的记录的计算系统(例如,服务器)。信息装置200可连接控制点并查找可查询所需服务。
在步骤1102中,如果未找到可用输出设备220,通信管理器或客户机应用程序210可向用户提供备用方案1104。这种备用方案可包括例如,放弃发现过程1020、再次尝试发现过程1020,或当找到可用输出设备220时告知。例如,发现过程1020可不检测在当前有线/无线网络中的任何可用输出设备220。然后,将特定的查找标准(如果有的话)保存或寄存在通信管理器中。当用户进入具有可用输出设备220的新网络时,或当将新兼容输出设备220增加到当前网络上时,或当输出设备220变为对任何理由可用时,通信管理器可将这种可用性告知用户。
在步骤1106中,如果发现可用输出设备220,通信管理器可从每个所发现的输出设备220获得一些基本的信息,或部分或全部输出设备配置文件。这些信息的例子包括,但不限于,设备标识、服务费用、预约、服务特征、设备性能、操作指令等等。最好通过信息装置200的用户接口(例如,显示屏、扬声器等等),将这些信息提供给用户。
在步骤1108中,基于所提供的信息,如果有的话,用户可选择一个或多个输出设备220,以便承担输出作业。如果不满意任何一个可用输出设备220,用户可拒绝该服务。在这种情况下,可向用户提供备选方案,诸如,通过对查找标准所做的一些改变,再次尝试步骤1110。用户可选择在任何时间中止服务请求。在步骤1112,通过选定或确定的一个或多个输出设备220,可“锁定”信息装置200和选定的输出设备220间的通信链路。可删去未选定的其他输出设备220。然后输出过程1020可进行到图10的步骤1030的客户机应用程序过程。
图12A是参考图10的步骤1030的示例性客户机应用程序过程的流程图。用于通用输出的客户机应用程序过程1202可包括或利用:
●获得所需输出的内容(例如,数字文档)的客户机应用程序210。
●获得输出服务参数的客户机应用程序(例如,光栅化参数、输出作业参数)。实现的一个例子是从包括设备从属参数的输出设备配置文件(例如,打印机配置文件)获得输出设备参数。可将这种配置文件存储在输出控制器230、输出设备220或信息装置200。
●通过(1)用户输入(自动或手动)或选择或(2)基于预定首选项或预定缺省,或(3)上述的组合,可选地获得用户首选项的客户机应用程序210。
●根据从上述步骤诸如,通过输出设备配置文件、用户选择、预定用户首选项、预定缺省或标准等等获得的一个或多个光栅参数,光栅化意欲输出的至少部分内容的客户机应用程序210.
●生成包含至少部分与意欲输出的内容有关的光栅化图象的中间输出数据的客户机应用程序210。
●将中间输出数据传送给输出设备220或输出控制器230的客户机应用程序,用于进一步处理和/或最终输出。
客户机应用程序210可以任何方法获得内容(例如,数字文档)900或对该内容的指针或索引。在优选实施例中,客户机应用程序210是以设备驱动程序或独立应用程序的形式,以及可由客户机应用程序210,从在相同信息装置200中的其他应用程序205获得内容或其索引。为示例说明例子,用户可通过在他/她的信息装置200中使用文档浏览、预览和/或编辑应用程序205,首先浏览或下载或创建数字文档,然后通过将客户机应用程序210运行为设备驱动程序或助手应用程序来请求输出服务。客户机应用程序210与文档浏览或编辑应用程序通信以便获得数字文档或该数字文档的索引。如另一个例子,客户机应用程序210是独立的应用程序,以及其运行另一应用程序来帮助定位和获得数字文档,用于输出。在这种情况下,用户可首先运行客户机应用程序210,然后调用驻留在相同信息装置200中的另一应用程序205(例如,文档编辑和/或浏览应用程序)来预览或下载数字文档。然后,客户机应用程序210与文档浏览或编辑应用程序通信以便获得用于输出的数字文档。
在另一实施例中,客户机应用程序210本身提供包括用于用户选择用于输出的内容(例如,数字文档)的能力的多个功能性或特征设置。例如,本发明的客户机应用程序210可提供用户能直接输入或选择用户希望输出的数字文档的索引或路径的GUI。
为在内容(例如,数字文档)900上执行光栅化操作,在步骤1210中的客户机应用程序210需要获得输出设备220的设备从属参数,诸如光栅化参数。设备从属参数可包括在输出设备配置文件中。客户机应用程序210可以任何方式获得输出设备配置文件或光栅化参数。例如,可通过下述的一个或组合来获得输出设备配置文件或光栅化参数:
●客户机应用程序与输出设备220通信以便加载与一个或多个光栅化参数有关的输出设备配置文件或信息。
●客户机应用程序210从网络节点(例如,服务器)获得输出设备配置文件。
●用户选择存储在用户信息装置200中的输出设备配置文件。
●客户机应用程序210自动检索或使用尤其缺省配置文件、预定标准值或默认值。
●客户机应用程序210通过至少部分基于其从输出设备220、用户、缺省值和网络节点的一个或组合获得的信息,计算,可包括近似获得输出设备参数。
注意到步骤1210是可选的步骤是很重要的。在一些实例中,在现有可选发现过程(图10中的步骤1020)期间,通过客户应用程序210,已经获得部分或全部输出设备配置文件或相关的设备相关信息。在这种情况下,可部分或全部忽略步骤1210。
在一种实现中,客户机应用程序210与一个或多个输出设备220通信以便加载存储在一个或多个输出设备220或它们的相关的一个或多个输出控制器230的存储器或存储部件中的输出设备配置文件.在一些实例中,所加载的输出设备配置文件可包含对设备参数的部分或全部索引或指针,而不是设备参数本身.可将实际输出设备参数存储在网络节点或信息装置200中,使用索引或指针,可由客户机应用程序210或通过其他应用程序205检索它们.应当注意,多个信息装置200可请求从相同的输出设备220同时或至少在重叠周期期间获得输出设备配置文件.输出设备220或其相关的输出控制器230可具有同时或用另外的方法管理多个通信链路和提供输出设备配置文件给多个信息装置200的部件或系统.另外,输出设备220可提供部件或系统来从不同信息装置查询请求并根据方案,诸如先来先服务、服务质量等等,用顺序的方式为他们提供服务.可通过例如,输出控制器230作为可选特征设置,实现具有或不具有查询或假脱机功能的多用户通信和服务管理能力.
在另一实现中,可将一个或多个输出设备配置文件本地存储在信息装置200中。客户机应用程序210可提供用户能从预先存储的配置文件选择配置文件的GUI。例如,GUI可向用户提供输出设备名称的清单(例如,品牌和型号),每个对应于本地存储的输出设备配置文件。当用户选择输出设备220时,然后,客户机应用程序210可检索对应于由用户选定的名称的输出设备配置文件。
在某些情况下,在以前所述的发现或通信过程期间,客户机应用程序210用以前描述的各种方法已经获得输出设备ID、名称或索引或其他信息。在这种情况下,客户机应用程序210基于没有用户干预获得的输出设备ID、名称或索引,可自动地启动或检索存储在信息装置200中的输出设备配置文件。
在另一实现中,客户机应用程序210可使用本地存储在用户信息装置200中的一组预定默认值。这些默认值可存储在一个或多个文件或表中。客户机应用程序210可访问文件或表来获得这些默认值。客户机应用程序210也可基于在上述步骤(例如,在可选发现过程中,基于所获得的部分或不完全的打印机配置文件信息等等)期间获得的信息,创建或计算某些默认值。用户可有或可没有机会来修改或重写一些或所有默认值。
最后,如果,为任何原因,没有设备相关信息可用,客户机应用程序210可使用标准输出和光栅化参数或预定缺省参数。上述示例说明实现方式的许多例子和变化,在实现中的这些和其他可能的变化不脱离本发明的范围。
在步骤1220中,客户机应用程序210可选地获得用户首选项。在一个示例性实现中,客户机应用程序210可用GUI(图形用户界面)获得用户首选项。为简化起见,可向用户呈现标准GUI表格,而与包含在输出过程中的输出设备220的品牌和型号无关。通过该界面,用户可指定一些设备独立输出参数,诸如页面范围、每页名片的数量、复制数量等等。另外或组合,客户机应用程序210也可将输出设备相关特征和首选项包括到呈现给用户的GUI中。可由包含在通过在以前步骤中描述的部件和过程获得的输出设备配置文件中的信息,部分或全部支持GUI的设备相关部分。为示例说明,设备相关特征和性能可尤其包括打印质量、色彩或灰度级、双向或单端、输出页大小。
最好,用户首选项的一些或全部部件、属性或字段具有默认值。部件或全部默认值可硬编码到客户机应用程序210的软件程序或硬件部件中。另外,客户机应用程序210也可访问文件以便获得默认值,或其可基于在上述步骤或部件期间(例如,从输出设备配置文件)获得的信息,计算某些默认值。用户可有或可没有预先配置、或修改或重写一些或全部默认值的能力。客户机应用程序210可通过或没有用户干预或知识,获得和使用一些或所有默认值。
在步骤1230中,本发明的客户机应用程序210执行光栅化操作以便根据在上述步骤获得的光栅化参数,将可包括向量图形、文本和图象的对象和信息的内容(例如,数字文档)一致为一个或多个输出图象.在光栅化过程期间,根据指定的光栅化参数设置,将内容中的文本和向量图形对象或信息光栅化或转换成图象或位图形式.在该内容中的图象信息可要求缩放和内插操作以便一致光栅化参数.光栅化过程可进一步包括操作诸如,缩放、内插、分段等等以便适合或一致一个或多个输出图象为指定的光栅化参数设置,诸如目标输出大小、分辨率、色深、色空间和图象格式等等.
在步骤1240中,客户机应用程序210生成包括光栅化的一个或多个输出图象的中间输出数据。本发明的中间输出数据可包含图象信息、指令、描述以及数据,尤其诸如色彩配置文件。创建和生成中间输出数据可进一步包括生成尤其诸如压缩、编码、加密、平滑、分段、缩放和/或色彩校正。可用不同的格式和/或压缩方法(例如,JPEG、BMP、TIFF、JBJG等等或组合)不同地编码和/或实现包含在中间输出数据中的图象。一个优选实现方式是用混合光栅内容(MRC)描述生成或编码中间输出数据中的输出图象。在本发明的数据输出过程中使用MRC提供机会来通过应用不同的压缩技术以便分段内容中的元素来提高压缩比。另外,MRC提供机会来在输出图象的编码过程期间维持更原始的内容信息,因此,部分地改进输出质量。
在步骤1250中,客户机应用程序210通过局部通信链路240,将中间输出数据传送给输出设备220。通信链路可用有线或无线技术实现,以及传输可包括一个或多个会话。
应当意识到图12A示例说明在本发明的数据输出方法1002中的客户机应用程序1030的一个例子。具有更多或更少步骤的其他实现也可可能的,以及在图12中未出的几个另外的可选过程也可包括在客户机应用程序过程1030中。然而,使用这些不同的变化,不会导致脱离本发明的范围。例如,当选定输出设备220将服务提供给受限用户组时,可包括可选验证步骤。当客户机应用程序210通过与输出设备或输出控制器通信,获得输出设备配置文件时,可将验证过程增加到步骤1210中。如另一个例子,当客户机应用程序将中间输出数据传送给一个或多个输出设备220或输出控制器230时,也可在步骤1250中实现验证过程。可通过例如,将信息装置200的标记与存储在输出设备220或输出控制器230中的标识的认可控制列表进行比较,实现简单的验证。也可使用其他更复杂的验证和加密方案。可单独地或组合地将信息,尤其诸如用户名称、密码、ID号、签名、安全密钥(物理或数字)、生物特征、指纹、声音用作验证手段。可由用户手动提供或由选定的输出设备220或输出控制器230自动选择这些标识和/或验证信息。通过成功验证,用户有权访问由输出设备220提供的所有或部分服务。客户机应用程序210获得的输出设备配置文件可根据所请求或确定的服务类型或质量改变。如果验证失败,拒绝用户部分或全部访问服务是可能的。在这种情况下,可向用户提供备选方案,诸如选择另一输出设备220或另外的服务。
另一可选过程是参考图12,在输出服务前后,诸如步骤1210或1250,要求用户提供支付或储蓄或契约。支付或储蓄的例子可尤其包括现金、信用卡、银行卡、借记卡、智能卡、电子货币。输出控制器220(230?)可将支付计算或交易处理提供为本发明的可选特征设置。
图12B示例说明另一示例性的客户机应用程序输出过程1030,通过该过程,信息装置200可将内容普遍和通用地输出给与本发明的输出控制器230有关或具有本发明的输出控制器230的一个或多个输出设备220。
除忽略获得输出设备配置文件的步骤1210外,图12B中所示的过程与图12A所描述的过程类似。在该实施例中,客户机应用程序210利用一组硬编码、包括光栅化参数的标准或预定输出设备参数,通过光栅化参数,客户机应用程序210能执行光栅化操作和其他所需的图象处理功能。可向用户提供改变这些参数或输入另外的参数的选项。光栅化参数包括输出大小、输出分辨率、色深、色空间、色彩通道、比例因子等等。这些预定参数通常遵循规格或标准。相同的规格和标准也可定义或至少部分描述中间输出数据。可将预定标准参数存储在信息装置200、输出控制器230和/或输出设备220中的文件或配置文件中,用于更新或升级。
在客户机输出过程1204中,由于预定光栅化参数,客户机应用程序210可不需要从选定的输出设备230更新打印机配置文件。因此,当与在图12A所示的过程1202相比时,在该过程1204中,在信息装置200和输出设备220间的无双向通信是必要的。客户机应用程序210基于标准和/或预定参数,执行光栅化操作1225,并生成具有那些光栅化参数的预定或标准属性的光栅化输出图象。将包括至少一个光栅化输出图象的最终中间输出数据在步骤1250中从信息装置200传送到输出设备220,或传送到其相关的输出控制器230,用于渲染或输出。与在如图12A所示的过程1202中生成的中间输出数据相比,在过程1202中生成的中间输出数据通常是较低设备相关。可预先编程包括或与输出设备220相关的输出控制器230以便解释包括对应于这些标准或预定参数的性质或属性的光栅输出图象。
可将标准或预定光栅化参数硬编码或编程到客户机应用程序210和/或输出控制器230中。然而,代替硬编码这些参数,便于更新或修改的一种技术是将这些标准参数存储在缺省文件或配置文件中。可由信息装置200中的应用程序(例如,客户机应用程序210)和/或由输出设备2220或输出控制器230中的应用程序或部件检索和利用包含在文件或配置文件中的标准或预定参数。用这种方法,可通过替换或修改文件或配置文件,代替修改或更新信息装置200、输出设备220和/或输出控制器230中的程序、应用程序或部件,很容易实现对那些预定或标准参数的任何必要的更新、升级或所需修改。
向信息装置200提供通用输出性能的客户机应用程序过程1204可包括或利用:
●获得意欲输出的内容(例如数字文档)的客户机应用程序210。
●客户机应用程序210通过(1)用户输入(自动或手动)或选择或(2)基于预置首选项或预定默认值,或(3)上述的组合,可选地获得用户首选项(在步骤1220中)。
●根据预定或标准光栅化参数,光栅化内容(在步骤1230或1225中)的客户机应用程序210。
●生成用于在输出设备220渲染或输出的中间输出数据(在步骤1240中)的客户机应用程序210,中间输出数据至少部分包含与意欲输出的内容有关的光栅化图象。
●将中间输出数据传送给输出设备220(在步骤1250中),用于进一步处理和最终输出的客户机应用程序210。
与图12A所示的过程1202相比,图12B所示的客户机输出过程1204的一个优点在于所生成的中间输出数据通常是低设备相关。设备独立属性允许中间输出数据对具有输出控制器或与输出控制器有关的大多数输出设备来说更便携和更易接受。两个数据输出过程(1202和1204)允许通用输出;允许用户在信息装置200中安装单个客户机应用程序210或部件以便向不至一个输出设备220提供输出能力。
图13A示例说明本发明的输出设备1302及其相关的光栅成象方法的一个例子。在该输出设备过程1302中,输出设备220能从信息装置200接收中间输出数据。输出设备过程1302及其操作可包括或利用:
●接收中间输出数据的输出设备/系统或输出控制器(在步骤1300中)。中间输出数据至少部分包括光栅输出图象,其描述用于在输出设备220或系统250渲染的至少部分内容。
●解释(在步骤1310中)中间输出数据的输出设备/系统或输出控制器。在一个优先实施例中,中间输出数据包括利用一个或多个MRC格式或部分的输出图象。
●在光栅图象上执行图象处理操作(在步骤1320中)的输出设备/系统或输出控制器。图象处理操作可尤其包括,但不限于图象解压缩、缩放、半色调、色彩匹配。
●转换和/或生成(在步骤1330中)以适合于输入到包括在输出设备220中的输出引擎(例如,在打印机的情况下的打印机引擎)的格式或描述的输出引擎输出数据的输出设备/系统或输出控制器。
●在步骤1370中渲染或生成最终输出(例如,输出引擎输出数据)的输出设备220中的输出引擎。
输出设备220或输出系统250可内部或外部地包括输出控制器230以便帮助输出过程1302的管理和操作。如图7所示,有许多可能的与输出设备220有关的输出控制器230的配置和实现。在下文中,将输出控制器230看作连接到其上的输出设备的内部部分。此后,可由与其有关的输出控制器部分或全部实现下述输出设备的操作。
在步骤1300中,由客户机应用程序210启动输出设备过程1302,将中间输出数据传送到输出设备220或输出系统250。在步骤1310中,输出设备220读取和解释包含与打算输出的内容有关的至少一个光栅输出图象的中间输出数据。在读取和解释过程1310期间,输出设备220可包括解析中间输出数据并执行尤其诸如解压缩、解码、以及解密操作的部件。可不同地编码输出图象以及其可包括一个或多个压缩方法。
在图象编码方法包括MRC格式的情况下,那么,在一个示例实现中,在步骤1310的解码和映射输出图象期间,可将包括MRC的图象中的较低分辨率层和信息映射、缩放或内插到较高分辨率输出图象上以便产生更好的图象质量。因此,在步骤1310,在中间输出数据包括MRC部分的情况下,可解压缩、处理、映射和组合MRC图象的每层到单个组合的输出图象层。步骤1310也可尤其包括缩放、色空间变换、和/或内插。除使用具有不同层的不同缩放和内插比的映射方法的可能性外,使用MRC的另一优点在于在步骤1320中,可利用包含在MRC中的分段信息来将不同的图象处理和增强技术应用于MRC图象的不同层的数据上。
在步骤1320,输出设备220可进一步在解码输出图象上执行图象处理操作。这些图象处理操作可尤其包括,例如,色彩校正、色彩匹配、图象分段、图象增强、图形矢真、图象平滑、数字水印、缩放、内插和半色调。图象处理操作1320可与步骤1310结合或同时操作。例如,当解码和/或解压缩图象的每行、象素或部分时,应用图象处理操作1320。在另一实现中,图象处理1320可在已经解码或解压缩整个输出图象或大部分图象后发生。
如果中间输出数据包括MRC部分,那么在步骤1310中,有另外的机会来提高图象质量.用MRC编码的图象包含传统的单层图象格式通常不具有的分段信息.例如,前景可在一层中,以及背景在另一层中.如另一个例子,色度信息可在一层中以及亮度可在另一层中.可使用MRC中的该分段信息来将不同或选择性的图象处理方法和算法应用于不同层或段以便提高图象质量或保留或恢复图象信息.不同图象处理技术或算法可包括色彩匹配、色彩校正、黑色生成、半色调、缩放、内插、图形矢真、平滑、数字水印等等.例如,可将色度色彩匹配应用到前景信息以及将感性色彩匹配应用到背景信息,反之亦然.如另一个例子,可将错误扩散半色调应用到前景上以及将随机半色调应用到背景上,反之亦然.如另一个例子,可将双三次插值应用到层上以及将双线性或最小距离内插应用到不同层上.
在步骤1330中,输出设备220或输出控制器230可将处理过的图象(例如,半色调)转换成输出设备220的输出引擎可接受的。该转换步骤是可选的,由特定输出设备引擎(例如,在打印机的情况下为打印机引擎)的类型、格式和输入要求而定。不同输出引擎可具有不同的输入光栅图象输入要求。例如,不同输出引擎可要求不同输入图象格式,每个象素的位或字节数、压缩或非压缩格式、或不同色空间(例如,诸如,RGB、CMY、CMYK或HI-FI色彩,诸如绿、橙、紫、红等等的组合。每次在行、列、多行、多列、程序块、段或组合中编码输入的光栅,用于将光栅数据发送给输出引擎。在一些情况下,如果步骤1320的结果已经是输入设备引擎可接受的形式,可忽略步骤1330。换句话说,然而,可要求进一步转换和/或处理以便满足特定的输出设备引擎的特定输入要求。
注意从步骤1310至步骤1330的上述处理可要求一个或多个存储缓冲器以便暂时存储处理过的结果是很重要的。存储缓冲器可存储或保存在上述任何一个步骤中的输出图象的行、列、部分、或程序块。在其他可能的组合中,可以交替的方式,或以交织或交叉的方式顺序地执行将信息存储到存储缓冲器中以及从存储缓冲器检索信息。可用输出控制器230部分或全部实现步骤1310至步骤1330操作。
在步骤1370中,包括在输出设备220或输出系统250中的输出设备引擎接收在步骤1330或步骤1320中生成的输出引擎输出数据。输出引擎输出数据是以满足输出引擎的输入要求和属性的,诸如色空间、色彩通道、色深、输出大小、分辨率等等。然后,输出引擎采用该输出引擎输出数据并通过其标记引擎或显示引擎输出或渲染该数据内容。
包括输出设备过程1302的数据输出方法1002的一个优点在于相对于参考图1的传统过程,它对信息装置200具有更少的处理要求,因此,更使得信息装置200具有相对更低的处理能力和存储空间以便具有输出能力。
例如,一些图象处理功能,诸如半色调(例如,错误扩散)可要求相当大的处理和计算能力。在包括输出设备过程1302的数据输出过程1002中,通过包括在输出设备220或输出系统250,而不是信息装置200中的输出设备部件(例如,输出控制器230)来在步骤1320中执行半色调,因此,代替信息装置200的计算要求。数据输出1302的另一好处在于中间输出数据比按参考图1A的传统输出方法102所生成的输出数据具有更小的设备相关。设备独立提供机会允许信息装置200中的单个驱动程序或应用程序,将中间输出数据输出给包括输出控制器230的多个输出设备220。
一些输出设备220可包含打印机控制器410.这种类型的输出设备或打印机的例子尤其是PostScript打印机或PCL打印机.图13B示例说明具有包括打印机控制器410的打印机的输出设备过程1304的例子.如图1所述,具有打印机控制器的打印机要求输入,诸如页面描述语言(例如,PostScript、PCL等等)、标记语言(HTML、XML等等)、特定的图象格式、特定的国形格式,或组合,由打印机控制器的类型而定.
有许多用于将数据输出能力和过程提供给包括打印机控制器的打印机或打印系统的打印系统配置。在一个例子中,输出设备220中的现有的打印机控制器可包括由输出控制器提供的特征设置以便形成“组合控制器”,如前面参考图7C和7F所述。在另一例子中,本发明的输出控制器230可顺序地或级联到现有的打印机控制器。输出控制器230可内部安装(参考图7B)或外部连接到(参考图7F)输出设备220。对包括打印机控制器的输出设备220来说,输出控制器230可在步骤1310中简单地解码中间输出数据,然后,在步骤1350中将其转换成用于输入到打印机控制器可接受的形式。
用于包括打印机控制器410的输出设备过程1304和操作可包括或利用:
●接收中间打印数据或输出数据(参考步骤1300)的输出设备220或系统250中的输出控制器230或部件,中间打印数据至少包括至少部分与用于在输出设备220渲染的内容有关的光栅图象。
●解释中间输出数据(参考步骤1310)的输出设备220或系统250中的输出控制器230或部件,在一个优选实施例中,中间输出数据包括利用一个或多个MRC格式或部件的输出图象。
●将中间输出数据转换成打印机控制器打印数据(参考步骤1350)的输出设备220或系统250中的输出控制器230或部件,打印机控制器打印数据包括对打印机控制器的输入要求来说可接受或兼容的格式或语言(例如,PDL、PDF、HTML、XML等等)。
●接收打印机控制器打印数据的输出设备220或系统250中的输出控制器230或部件,打印机控制器可解析、解释和进一步处理(例如,光栅化、缩放、图象增强、色彩校正、色彩匹配、半色调等等)并将打印机控制器打印数据转换成打印机引擎打印数据(参考步骤1360),打印机引擎打印数据由对输入到输出设备220或输出系统250中的打印机引擎来说可接受的格式或描述组成。
●通过输入打印机引擎打印数据,渲染或生成最终输出(参考步骤1370)的输出设备220或系统250中的打印机引擎或部件。
在输出设备过程1304中,步骤1300(接收中间输出数据)和步骤1310(解释中间输出数据)均与在前面部分中参考图13A所述的输出设备过程1302中的步骤1300和步骤1310相同。
在步骤1350中,输出控制器230将中间打印数据转换成以输入到打印机控制器来说兼容或可接受的形式的打印机控制器打印数据。例如,打印机控制器可要求输入特定的页面描述语言(PDL),诸如PostScript。然后,输出控制器230创建PostScript文件并将在步骤1310中生成或检索的输出图象嵌入PostScript文件中。输出控制器230还能创建和将来自步骤1310的输出图象嵌入其他打印机控制器打印数据格式、指令或语言。
在步骤1360中,打印机控制器接收在步骤1350中生成的、包括打印机控制器可接受的输入语言或格式的打印机控制器打印数据。打印机控制器可解析、解释并解码输入打印机控制器打印数据。打印机控制器可进一步在输出图象上执行光栅图象处理操作,尤其诸如光栅化、色彩校正、黑色生成、GCR、图形矢真、缩放、图象增强,以及半色调。然后,打印机控制器可生成适合于输入到打印机引擎的打印机引擎打印数据。根据特定的打印机引擎的要求,可改变打印机引擎打印数据的类型和/或格式。
注意,从步骤1310到步骤1360的上述过程可要求一个或多个存储缓冲器来暂时存储处理过的结果是很重要的。存储缓冲器能在任何一个上述步骤中存储或保留输出图象的行、列、部分、或程序块。在其他可能的组合中,可顺序地、交替地、以交织或交叉的方式将令牌存储到存储缓冲器和从存储缓冲器检索信息。能输出控制器230实现步骤1310至步骤1360的过程和操作。
在步骤1370中,包括在输出设备220或输出系统250中的打印机引擎基于在步骤1360中生成的打印机引擎打印数据,生成或渲染最终输出。例如,打印机引擎打印数据可以CMY、CMYK以及RGB等等的形式工,以及这可以每个象素一个或多个位的格式,满足打印机引擎的大小和分辨率要求。包括输出设备220的打印机引擎可采用该打印数据并通过其标记引擎生成或渲染输出页。
已经参考所示的实施例,描述和示例说明了本发明的原理,将意识到在排列和细节方面可修改所示例的实施例而不脱离这些原理。鉴于可应用本发明的原理的许多可能的实施例,应认识到详细的实施例仅是示例目的,而不应当视为限制本发明的范围。相反,我要求本发明的所有这些实施例均落入由下述权利要求书及其等效的范围内。
除非上下文指出,否则,权利要求中对元件的实例的数目的引用,不管其引用一个实例还是不至一个实例,至少要求元件的所述实例数,但不是为了使权利要求的范围排除具有比所述的元件的多的实例的结构或方法。特别地,但不限于,权利要求中对一个或多个输出市长国系统、图象或一个图象,光栅化参数或一个光栅化参数的引用不是为了使权利要求的范围排除具有、包括、采用或提供两个或以上输出设备或系统、图象或光栅化参数的结构或方法。
相关申请的交叉索引
本申请要求2001年1月19日提交的临时申请No.60/262,764的优先权,其整个内容在此合并作为参考。