用于交互式打印机的打印机驱动器的制作方法

文档序号:6478469阅读:312来源:国知局

专利名称::用于交互式打印机的打印机驱动器的制作方法
技术领域
:本发明涉及一种用于在表面上打印位置编码图案的打印机驱动器。
背景技术
:本申请人先前已描述了一种使得用户能够经由打印的基片(比如纸张)从计算机系统访问信息的系统。本申请人将这种系统称为Netpage系统。在Netpage系统中,在基片上打印有编码图案,当用户使用光学感测设备与基片交互时,该感测设备读取该编码图案。计算机从感测设备接收交互数据,并使用该数据来确定用户正请求什么动作(action)。例如,用户可在表格上进行手写输入或者可在打印的项目周围做出选择手势。计算机系统参考与打印的基片相应的页面描述对这种输入进行解释。将期望即使源文档是Netpage未知的(Netpage-unware),也打印Netpage使能的(Netpage-enabled)基片(意思是生成文档,但是并不意图将其打印有位置编码图案和使其变成交互式)。
发明内容在第一方面中,本发明提供一种用于在打印机打印文档的打印机驱动器,其中,所述打印机驱动器被构造成从第一存储器接收关于所述文档的视觉描述,所述视觉描述描述用于打印的图形印图(graphicimpression);将与所述图形印图相应的打印数据发送到所述打印机;和将关于所述文档的至少一个页面的视觉描述存档在第二存储器中,其中,所述第一存储器和所述第二存储器彼此不同。可选地,将所述视觉描述存档在服务器上。可选地,所述打印机驱动器被构造成从服务器接收印图ID(identity)。可选地,所述打印机驱动器被构造成接收一组印图ID并将所述印图ID之一分配给所述至少一个页面或者所述文档。可选地,所述打印机驱动器被构造成在至少一个页面上打印标签图案,其中,标签图案标识印图ID,并且其中,根据印图ID给视觉描述编索引(index)。可选地,所述标签图案为标识印图ID和所述页面上的多个位置的位置编码图案。可选地,所述打印机驱动器被构造成将关于所述页面的输入描述与所述视觉描述一起存档,所述输入描述描述所述页面上的至少一个交互元素。可选地,所述打印机驱动器被构造成允许应用程序在输入描述中指定交互元素,其中,根据以下内容中的至少一个指定所述交互元素页面上的超链接的空间范围和URI;和页面上的输入字段的空间范围和类型。可选地,所述打印机驱动器被构造成允许应用程序经由以下内容中的任意一个来指定输入元素直通信道(pass-throughchannel);PDL;PDF注释;和Postscriptpdfmark操作者(operator)。可选地,根据⑶I转义机制(escapemechanism)提供所述直通信道。可选地,所述打印机驱动器被构造成允许应用程序指定选自包括以下内容的组中的至少一些元数据打印文档的源文档的路径;文档的创建者;文档的创建日期和时间;和文档的修改日期和时间。可选地,所述打印机驱动器被构造成将所述元数据与所述视觉描述一起存档。可选地,所述打印机驱动器被构造成标识视觉描述中的URI文本串并在输入描述中产生相应的交互元素。可选地,所述打印机驱动器被构造成当URI文本串被标识为URI时改变该URI文本串的视觉描述。可选地,所述服务器被构造成标识视觉描述中的URI文本串并在关于所述页面的输入描述中产生相应的交互元素,所述输入描述与所述视觉描述一起存档。可选地,所述服务器在处理与相应的打印印图的用户交互时标识URI文本串。在第二方面中,本发明提供一种用于在打印机打印页面的计算机系统,其中,所述计算机系统被构造成从所述页面接收视觉描述,所述视觉描述描述用于打印的图形印图;标识视觉描述中的URI文本串;产生所述视觉描述的相应输入描述,所述输入描述描述与URI文本串相应的URI和页面上的URI文本串的空间范围;和将视觉描述和相应输入描述存档。可选地,将所述视觉描述和所述输入描述存档在服务器上。可选地,所述计算机系统被构造成在页面上打印标签图案,其中,标签图案包括印图ID。可选地,根据印图ID给视觉描述和输入描述编索引。可选地,所述标签图案为标识所述页面上的多个位置的位置编码图案。可选地,所述计算机系统被构造成当URI文本串被标识为URI时改变该URI文本串的视觉描述。可选地,从包括以下装置的组选择所述计算机系统打印机驱动器;服务器;和与在客户端上运行的打印机驱动器通信的服务器。在另一方面中,本发明提供一种用于在打印机打印页面的方法,所述方法包括以下步骤接收关于所述页面的视觉描述,所述视觉描述描述用于打印的图形印图;标识视觉描述中的URI文本串;产生所述视觉描述的相应输入描述,所述输入描述描述页面上的URI文本串的URI和空间范围;将视觉描述和相应输入描述存档;和打印图形印图,其中,在页面上所述图形印图与位置编码图案重叠。可选地,在基片上预打印所述位置编码图案。可选地,打印机与所述图形印图基本同时地打印所述位置编码图案。可选地,所述位置编码图案标识所述页面上的多个位置和印图ID。可选地,根据所述印图ID给所述视觉描述和所述输入描述编索引。可选地,将所述视觉描述和所述输入描述存档在服务器上。可选地,所述方法还包括当URI文本串被标识为URI时改变该URI文本串的视觉描述的步骤。在第三方面中,本发明提供一种用于在打印机打印页面的打印机驱动器,其中,所述打印机驱动器被构造成接收关于所述页面的视觉描述,所述视觉描述描述用于打印的图形印图;将与所述图形印图相应的打印数据发送到所述打印机;和从所述打印机接收物理印图ID,其中,在置于打印机打印的页面上的标签图案中对所述物理印图ID进行编码。可选地,所述标签图案为标识物理印图ID和多个位置的位置编码图案。可选地,所述打印机分配物理印图ID并打印标签图案。可选地,所述打印机具有存储在打印机存储器中的多个物理印图ID。可选地,在打印基片上预打印标签图案,并且所述打印机从所述基片读取物理印图ID。可选地,所述打印机驱动器被进一步构造成向服务器报告物理印图ID。可选地,所述打印机驱动器被进一步构造成向服务器报告视觉印图ID,在打印之前将所述视觉印图ID分配给所述页面。可选地,给虚拟印图ID编索引到所述视觉描述。可选地,还给所述视觉印图ID编索引到以下内容关于所述页面的输入描述;和所述页面的至少一些元数据。可选地,所述输入描述描述所述页面上的至少一个交互元素的类型和空间范围。可选地,所述至少一些元数据选自包括以下内容的组中打印文档的源文档的路径;文档的创建者;文档的创建日期和时间;和文档的修改日期和时间。现在将参考附图对仅作为非限制性示例的本发明的优选实施例和其它实施例进行描述,其中图1是样本打印的netpage及其在线页面描述之间的关系的示意图;图2显示具有关于中继设备的各种替换方案的基本netpage架构(architecture)的实施例;图3显示典型的“Aurora”打印管道;图4显示Netpage文档服务的打印;图5显示用于图4中显示的打印步骤的详细数据流;图6显示从Netpage未知的应用程序的间接打印;图7显示Netpage虚拟打印机驱动器数据流;图8显示从Netpage未知的应用程序进行直接打印的数据流;图9显示Netpage虚拟打印机驱动器和“Aurora”打印机驱动器数据流;图10显示从Netpage已知的应用程序进行间接打印的数据流;图11显示使用Netpage虚拟打印机驱动器从Netpage已知的应用程序进行间接打印的数据流;图12显示支持Netpage输入描述的Netpage虚拟打印机驱动器数据流;图13显示从Netpage已知的应用程序进行直接打印的数据流;图14显示经由Netpage虚拟打印机驱动器从Netpage已知的应用程序进行直接打印的数据流;图15显示支持Netpage输入描述的Netpage虚拟打印机驱动器和“Aurora”打印机驱动器数据流;图16显示简化的具有“Azure”打印机驱动器的Windows打印架构;图17显示具有NetpageDLL的“Azure”打印机驱动器;图18显示用于打印到进行标签打印的Memjet打印机的数据流;图19显示用于打印到进行介质标识的Memjet打印机的数据流;图20显示用于在Windows下打印到进行标签打印的Memjet打印机的数据流;图21显示用于在Windows下打印到进行介质标识的Memjet打印机的数据流;图22显示用于被Netpage服务记录的打印输出(printout)的简化对象模型;图23显示用于读取空白页ID(blankID)的线性编码器;图24显示用于读取空白页ID的Netpage标签传感器;以及图25显示被构造成将空白页ID直接报告给Netpage服务的Netpage标签传感器。具体实施例方式1.Netpage系统概述1.1Netpage系统架构本发明与本申请人的netpage系统结合使用,已在上述交叉引用的专利申请中对本申请人的netpage系统进行了详细描述。简而言之,netpage系统的优选形式采用具有映射表面(mappedsurface)的形式的计算机接口,所述映射表面即为这样一种物理表面,其包含对在计算机系统中保持的表面的映射的引用。可通过适当的感测设备来查询映射引用(mapreference)0根据特定实施方式,可对映射引用进行可见或不可见编码,并以这样的方式定义映射引用,即,映射表面上的局部查询产生映射内和不同映射之间的明确的映射引用。计算机系统可包含关于映射表面的特征的信息,可基于由感测设备提供的与映射表面一起使用的映射引用来检索这样的信息。如此检索的信息可采取这样的动作形式,这些动作由代表操作者的计算机系统响应于操作者与表面特征的交互而启动。在其优选形式中,netpage系统依赖于netpage的制作和与netpage的人工交互。这些netpage是打印在普通纸张上的文本、图形和图像的页面,但是它们如同交互式网页那样工作。使用对于人类肉眼基本上看不见的墨在每个页面上对信息进行编码。然而,墨以及由此得到的编码数据可被光学成像感测设备(“读取器”)感测,并被发送到netpage系统。感测设备可采取以下形式,例如,点击器(用于在表面上的特定位置点击)、具有触针的指点器(pointer)(用于使用指点器笔画(pointerstroke)在表面上指点或做手势)或者具有标记尖头的笔(用于当在表面上指点、做手势或书写时用墨对表面进行标记)。这里对“笔”或“netpage笔”的任何提及都仅作为示例而提供。当然,将意识到,netpage笔可采取任何合适的光学成像感测设备或读取器的形式。在一个实施例中,可用感测设备点击每个页面上的活动按钮(activebutton)和超链接以从网络请求信息或者用信号向网络服务器传送偏好(preference)。在一个实施例中,自动对netpage上的手写文本进行识别,并将其转换成netpage系统中的计算机文本,从而允许表格被填写。在其它实施例中,自动对在netpage上记录的签名进行验证,从而允许安全地对电子商务交易进行授权。在其它实施例中,可点击netpage上的文本或者可对netpage上的文本做手势以基于用户指示的关键字启动搜索。如图1所示,打印的netpage1可表示这样的交互表格,该表格可由用户在打印页面上物理地填写,或者经由笔和netpage系统之间的通信“电子”地填写。示例显示包含名称和地址字段的“请求”表格和提交按钮。Netpage1包括使用可见墨打印的图形印图(impreSSi0n)2和与图形印图重叠的表面编码图案3。典型地用红外墨打印编码图案3,用具有互补的红外窗口的彩色墨打印重叠的图形印图2,从而允许编码图案3的红外成像。表面编码图案3典型地采取目标点(targetdot)的栅格的形式,目标点栅格包括标签4的集合。一个这样的标签4显示在图1的阴影区中,但是将意识到,由编码图案3限定的相连的标签4密集地平铺在整个netpage1上。存储在netpage网络上的相应页面描述5描述netpage的各个元素。具体地讲,它具有描述每个交互元素(即,示例中的文本字段或按钮)的类型和空间范围(区域)的输入描述,以允许netpage系统正确地对经由netpage的输入进行解释。提交按钮6,例如,具有与相应图形8的空间范围对应的区域7。如图2所示,netpage读取器400(比如,netpage笔)与netpage中继设备601结合工作,netpage中继设备601为用于家庭、办公或移动使用的联网设备。读取器400是无线的,并经由近程无线电链接9安全地与netpage中继设备601通信。在可替换的实施例中,读取器400利用与中继设备601的有线连接,诸如USB或其它串行连接。中继设备601执行向页面服务器10传送交互数据的基本功能,页面服务器10对交互数据进行解释。如图2所示,中继设备601可以,例如,采取个人计算机601a、netpage打印机601b或一些其它中继器601c(比如,合并web浏览器的个人计算机或移动电话)的形式。Netpage打印机601b能够周期性地或者应要求传递个性化的报纸、杂志、目录、手册和其它出版物,所有这些以高质量打印成交互式netpage。与个人计算机不同,netpage打印机是这样一种装置,例如,可将其与最早收视(consume)早间新闻的地方相邻地挂在墙壁上,所述地方是诸如在用户的厨房里、在早餐桌附近或者每天(fortheday)家人出门的地点附近。它还可以有桌面型、台式、便携式和微型版本。应要求在它们的收视地点打印的netpage将纸张的易用性与交互式介质的及时性和交互性组合起来。或者,netpage中继设备601可以是诸如移动电话或PDA的便携式设备、膝上型或台式计算机或者连接至诸如TV的共享显示器的信息装置。如果中继设备601不是应要求数字化地打印netpage的netpage打印机601b,则可通过传统的模拟印刷机(printingpress)和数字印刷机来打印netpage,传统的模拟印刷机使用诸如胶版印刷、苯胺印刷、丝网印刷、凸版印刷和轮转印刷这样的技术,数字印刷机使用诸如按需喷墨、连续喷墨、染料转印和激光印刷这样的技术。如以下将更详细地解释的,本发明提供一种使得用户能够方便地生成netpage以及扫描或打印图像的可替代装置。如图2所示,netpage读取器400与打印的netpage1上的位置编码标签图案的一部分或者其它打印的基片(诸如产品项目251的标示)交互,并经由近程无线电链接9向中继设备601传达交互。中继器601将相应的交互数据发送给相关的netpage页面服务器10以便解释。可将从netpage读取器400接收的原始数据直接作为交互数据传送给页面服务器10。或者,可以以交互URI的形式对交互数据进行编码,并将其经由用户的web浏览器601c发送到页面服务器10。Web浏览器601c然后可从页面服务器10接收URI,并经由web服务器201访问网页。在一些情况下,页面服务器10可访问在netpage应用程序服务器13上运行的应用程序计算机软件。Netpage中继设备601可被构造成支持任意数量的读取器400,读取器可与任意数量的netpage中继器一起工作。在优选实施方式中,每个netpage读取器400具有唯一的标识符。这允许每个用户对netpage页面服务器10或应用程序服务器13保持不同的形象(profile)。可向netpage注册服务器11注册netpage笔,netpage笔可与一个或多个支付卡账户链接。这允许使用netpage笔安全地对电子商务支付进行授权。Netpage注册服务器将通过netpage笔捕获的签名与先前注册的签名进行比较,从而允许它向电子商务服务器对用户ID进行认证。还可将其它生物测定法用于验证ID。Netpage笔的一个版本包括由netpage注册服务器以类似的方式验证的指纹扫描。1.2NetpageNetpage是netpage网络构建的基础。它们对与出版信息和交互服务提供基于纸张的用户接口。如图1所示,netpage包括被不可见地附加了对在线页面描述5的引用的打印页面(或者其它表面区域)。Netpage页面服务器10持续地保持在线页面描述5。页面描述具有描述可见布局和页面内容的视觉描述,页面内容包括文本、图形和图像。它还具有描述页面上的输入元素的输入描述,页面上的输入元素包括按钮、超链接和输入字段。Netpage允许netpage系统同时捕获和处理用netpage笔在其表面上作出的标记。多个netpage(例如,被模拟印刷机打印的那些netpage)可共享相同的页面描述。然而,为了能够区分通过另外的方式输入的相同页面,可以以页面ID的形式(或者,更一般地,印图ID)为每个netpage分配一个唯一的页面标识符。页面ID具有足够的精度来在数量非常大的netpage之间进行区分。在netpage图案中重复地对页面描述5的每个引用进行编码。每个标签(和/或相连标签的集合)标识它出现在其上的唯一页面,从而间接标识页面描述5。每个标签还标识它自己在页面上的位置。以下更详细地描述标签的特性。典型地,在红外反射的任意基片(诸如普通纸张)上用吸收红外的墨打印标签,或者用红外荧光墨打印标签。近红外波长对于人眼是不可见的,但是可容易被具有合适的滤波器的固态图像传感器感测。Netpage读取器400中的2D面型图像传感器对标签进行感测,并经由最靠近的netpage中继设备601将标签数据发送到netpage系统。读取器400是无线的,并经由近程无线电链接与netpage中继设备601通信。重要的是,由于交互是独立且与在先交互无关的(stateless),所以在每次与页面交互时,读取器识别页面ID和位置。对标签进行纠错编码以使它们可部分容忍表面损坏。Netpage页面服务器10为每个唯一的打印的netpage保持一个唯一的页面实例,从而允许它为关于每个打印的netpage1的页面描述5中的输入字段保持不同的用户提供值的集合。1.3Netpage标签位置编码图案3中所包含的每个标签4标识该标签在基片的区域内的绝对位置。与netpage的每次交互还应该与标签位置一起提供区域ID。在优选实施例中,标签所指的区域与整个页面一致,因此,区域ID与标签出现在其上的页面的页面ID同义。在其它实施例中,标签所指的区域可以是页面或其它表面的任意子区域。例如,它可与交互元素的区域一致,在这种情况下,区域ID可直接标识交互元素。如在本申请人先前的一些申请(比如,US6,832,717)中所述,可在每个标签4中对区域ID进行离散编码。如本申请人的其它申请(比如,于2008年2月5日提交的美国申请No.12/025,746和12/025,765)所述,可以以这样的方式通过多个相连的标签对区域ID进行编码,即,即使整个标签不在感测设备的视场中,与基片的每次交互仍然标识区域ID。优选地,每个标签4应该标识该标签相对于该标签被打印在其上的基片的方位。严格来讲,每个标签4标识标签数据相对于包含该标签数据的栅格(grid)的方位。然而,由于栅格典型地定向成与基片对准,所以从标签读取的方位数据使得能够确定netpage读取器400相对于栅格,从而基片的旋转(偏转)。如在第3节中所解释的,本发明中的netpage读取器400典型地采取滑动式(swipe)打印机或滑动式扫描仪的形式。标签4还可对与作为整体的区域或者单个标签相关的一个或多个标志进行编码。一个或多个标志比特可以,例如,用信号通知netpage读取器400以提供指示与标签的最紧邻区域(immediatearea)相关联的功能的反馈,而读取器则不必参考关于该区域的相应页面描述5。当netpage读取器位于超链接区域时,netpage读取器可以,例如,使“有效区域”LED变亮。标签4还可对数字签名或者其片段(fragment)进行编码。对数字签名(或者其一部分)进行编码的标签在需要验证产品的真实性的应用中是有用的。例如在US公开No.2007/0108285中描述了这样的应用,这里引入该文献的内容作为参考。可以以这样的方式对数字签名进行编码,即,可从与基片的每次交互检索数字签名。或者,可以以这样的方式对数字签名进行编码,即,可从基片的随机或部分扫描组装数字签名。当然,将意识到,还可将其它类型的信息(比如,标签大小等)编码到每个标签或多个标签中。关于netpage标签4的全部描述,参考本申请人先前提交的上述专利申请,这里引入这些申请的内容作为参考。2.Netpage打印机Memjet打印机是一种高速度、高质量的彩色打印机,其利用例如在美国专利No.7,125,185中所描述的页面宽度Memjet打印头。它由称为“Aurora”的打印管道驱动,如在美国专利No.6,665,094和7,125,185中所述,Aurora支持高分辨率的二值(bi-level)文本和相对低分辨率的连续色调彩色图像(contonecolourimage)的渲染和合成,在此引入这些专利的内容作为参考。例如,如在US7,125,185中所述,Aurora管道典型地部分在主打印机驱动器中、部分在嵌入的打印机软件中、部分在专用打印机硬件中、在打印引擎控制器ASIC中实现。这示出在图3中。根据打印机模型,确切的分区(partitioning)不同。Memjet打印机被设计成支持netpage打印作为基本能力。为此,Memjet打印头包括专用的一行喷嘴,这些喷嘴使用红外墨打印Netpage标签(例如,参见US6,832,717和于2008年2月5日提交的美国申请No.12/025,746和12/025,765,在此引入该文献的内容作为参考);打印引擎控制器根据提供的标签格式和标签数据支持对标签的实时渲染;Aurora管道接收标签信息,并针对特定的硬件配置对该标签信息进行格式化。在美国专利No.6,727,996中描述了基于Memjet的Netpage打印机的示例,在此引入该文献的内容作为参考。3.Netpage打印架构要求从Memjet打印机的观点来讲,应用程序是将文档发送到打印机进行打印。从Netpage服务器的观点来讲,应用程序是将文档发送到服务器进行存档并可进行打印。因此,从打印机的观点来讲,Netpage服务器也是一种应用程序。在以下论述中,我们按照Netpage意义使用术语。应用程序可以是Netpage已知(Netpage-aware),或者可以不是Netpage已知。每个文档,无论是Netpage已知还是未知,均从被存档在Netpage“虚拟文件柜(virtualfilingcabinet)”中受益。另外,Netpage已知的文档可指定交互特征,诸如超链接、表格和动态内容。基本上,Netpage服务器的介入不应该损害打印输出的逼真度(fidelity),也不应该损害打印操作的性能和可靠性。这包括各个作业相关选项,诸如渲染(rendering)意图、布局(包括多页面)、边界和水印,并且可能的话,介质选择。可通过与⑶I应用程序的用户交互直接启动打印。还可由用户经由Netpage服务器或者经由非⑶INetpage应用程序(比如,响应于用户在打印的Netpage超链接上的点击)间接地启动打印。虽然应用程序还可包括允许它指定特定打印机的逻辑,但是仅在前一种情况下,用户才能明确地选择目标打印机和指定作业选项。用于特定打印操作的目标打印机可以是指定的打印机、与用户相关的默认打印机、一系列支持walk-up打印的打印机或者根本没有打印机。当间接启动打印时,默认和walk-up打印是特别有用的。如果期望与文档的纯虚拟交互(比如,经由NetpageExplorer的交互),则打印到服务器但没有物理打印是有用的。Netpage服务器可不访问特定打印机。例如,打印机可直接连接至个人计算机,并可不被共享。或者,即使共享,也可不在服务器上配置打印机。当经由不访问打印机的应用程序启动打印时,因此物理打印不应该由服务器自身来调解(mediate)。同样,Netpage功能不应该限于服务器可直接访问的打印机。Netpage服务器应当支持许多平台上的客户端,包括Windows、MacOS和Unix。月艮务器本身也应当在多个平台上运行。因此,要求服务器所存储的文档的视觉描述可在任意支持平台上渲染。然而,这种要求与Netpage服务器的介入不损害打印输出的逼真度的要求冲突。对这种进退两难的情况的一个可行的解决方案是在需要时存储视觉描述的两个版本。一个版本将是平台相关的,并当在与原始平台相同的平台上再现时将确保最大逼真度。另一版本将是平台无关的,并将以可能小的逼真度降低为代价来确保最大便携性。可对特定的服务器实施方式进行优化以应要求产生平台无关的版本。4.Netpage打印架构以下节描述支持以下使用情况的架构从Netpage服务器直接打印到打印机经由Netpage服务器根据应用程序进行打印·从应用程序直接打印到打印机经由Netpage服务器根据Netpage已知的应用程序进行打印从Netpage已知的应用程序直接打印到打印机当Netpage服务器已经知道正被打印的文档时,对于这些使用情况中的一些使用情况添加一个维度(dimension)。这在分开的节中论述。以下,Aurora打印机驱动器表示平台无关的占位符(place-holder),其用于驱动Aurora管道和Memjet打印机的打印机驱动器的各种平台相关版本。在Windows平台上,在第5节中描述的Azure打印机驱动器实现Aurora打印机驱动器。虽然这里所论述的架构应当是平台无关的,但是它受Windows⑶I的架构影响。4.1从Netpage服务器进行打印图4显示当从Netpage服务器打印到服务器可见的打印机时的高层数据流(high-leveldataflow)0Netpage服务器依赖于支持图形渲染和标签渲染的Aurora打印机驱动器。图5显示与图4对应的详细数据流。文档服务的<打印文档>处理将打印输出记录在打印输出存储器中,绘制每个页面的有效区域映射(activeareamap),并绘制文档中的每个页面的视觉描述。主操作系统的图形和打印子系统提供用于渲染和打印文档的API(应用程序编程接口),并最后将图形和打印命令转发给Aurora打印机驱动器。API通常还支持以直通(pass-through)模式将数据直接传递给打印机驱动器。文档服务使用此模式将标签相关数据传递给打印机驱动器,标签相关数据为诸如印图ID和有效区域映射。响应于从图形子系统接收到图形命令,Aurora打印机驱动器对图形对象进行渲染,并将其合成为Aurora页面表示。驱动器利用由图形子系统提供的功能来帮助渲染,诸如字形轮廓(glyphoutline)的扫描转换。响应于从打印子系统接收到打印命令,打印机驱动器调用Memjet打印机上的打印功能,包括将Aurora流数据形式的打印数据发送给Memjet打印机。打印机驱动器和物理打印机之间的通信典型地由操作系统来调解。响应于从文档服务接收到标签相关数据,打印机驱动器产生标签信息,并将它包括在Aurora页面表示中。打印机驱动器从Netpage配置存储器中检索标签格式数据。或者,可将此数据编译到驱动器中。又或者,驱动器可从Netpage服务器检索这样的信息以增强可维护性(maintainability)。4.2经由Netpage服务器从应用程序进行打印图6显示当经由Netpage服务器从Netpage未知的应用程序进行打印时的高层数据流。虽然没有以一般形式显示,但是数据流应当表示这样的情况,即,目标打印机是各种各样的,用户的默认打印机、一组walk-up式打印机或空(null)打印机。在下一节中涉及目标打印机为指定打印机的情况。当物理打印实际发生时,它如在前一节中所描述的那样进行。从用户的观点来讲,Netpage服务器表现为虚拟打印机。用户可从任意应用程序打印到Netpage服务器,如同打印到任意其它打印机一样,无论这是否导致物理打印。图7显示图6的Netpage虚拟打印机驱动器内部的详细数据流。再次,打印机驱动器从图形和打印子系统接收图形和打印命令。命令和相关数据典型地为设备无关形式,艮口,以矢量形式指定艺术线条(lineart)和字形,并在设备无关颜色空间中指定颜色。打印机驱动器使命令序列化以产生文档的视觉描述,随后将该序列化的表示发送给Netpage服务器。它从Netpage配置存储器标识相关Netpage文档服务。如果支持多个独立的Netpage文档服务,则配置信息可以是针对特定实例的。配置信息还可标识目标打印机(比如,默认对walk-up式)。序列化的视觉表示可以是平台相关的(比如,Windows⑶I下的WMF)或者平台无关的(比如,PDF)。平台相关表示具有这样的优点,S卩,假设下流渲染平台相同,它保证最高的可能的再现逼真度。它还具有许多缺点=Netpage服务器可能必须支持多个平台相关表示;在不利用原始平台的帮助功能的情况下,复杂表示可能难以在不同的平台上渲染;被第三方控制的复杂表示可随时间演变和偏离(diverge)。序列化表示可以是任意本原(primitive)的,只要它保持设备无关并不损害打印输出的逼真度即可。由于Aurora表示的双级掩模层具有设备特定的分辨率,所以Aurora表示本身也是本原的。4.3从应用程序直接到打印机的打印图8显示当从Netpage未知的应用程序直接打印到打印机时的高层数据流。在这种情况下,如图9的详细数据流所示,打印机驱动器将在前两节中所述的Aurora打印机驱动器和Netpage虚拟打印机驱动器组合起来。与第4.1节中描述的Aurora打印机驱动器不同,混合打印机驱动器不从应用程序获得直通模式下的印图ID。相反,它明确地向Netpage服务器请求印图ID。打印机驱动器可从服务器获得一组印图ID,并随意地分配它们;可替换地,它可应要求获得印图ID。如图9所示,当打印机驱动器将文档的视觉描述发送给服务器时,它向Netpage服务器通知分配给文档的实际印图ID。4.4从Netpage应用程序经由Netpage服务器的打印图10显示当使用在美国公开No.US2007/0130117中描述的当前实现的存放(currently-implementedlodgement)禾口打印接口来从Netpage已知的应用程序经由Netpage服务器进行打印时的高层数据流,在此引入该公布的内容作为参考。这不使用本地操作系统的打印子系统。图11显示当使用第4.2节中所述的Netpage虚拟打印机驱动器的扩展版本从Netpage已知的应用程序经由Netpage服务器进行打印时的高层数据流。这为Netpage已知的应用程序提供一种用服务器直接存放文档的可替换方案,并可向用户提供更直观的存放接口。通常,直接存放对于非GUI应用程序是合适的,而虚拟打印对于⑶I应用程序更合适一些。图12显示Netpage虚拟打印机驱动器,其被扩展成支持在直通模式下从Netpage已知的应用程序接收Netpage输入描述。经由虚拟打印机驱动器“存放”的益处之一是用户可使用传统的打印工作选项,诸如页面范围、多张合并列印(n-upprinting)和海报打印、边界等。然而,它增加了问题的复杂度,即,应用于视觉描述的空间变换必须被同样地标识和应用于输入描述。这可通过使不可见的标记元素通过图形系统来实现,所述图形系统可被打印机驱动器识别,并可用于确定空间变换。每页需要至少一个标记来支持多张合并列印,每页需要多个标记(或者一个大的标记)来支持海报打印。可通过将标记与经由直通信道发送的转义序列(escapesequence)放在一起来使标记不可见。当打印机驱动器检测到转义序列的开头时,它将随后的图形对象看作标记,但是不渲染它们。4.5从Netpage应用程序直接到打印机的打印图13显示当使用存放接口从Netpage已知的应用程序直接打印到本地打印机以及打印到Netpage服务器时的高层数据流。在这种情况下,Netpage已知的应用程序执行第4.1节中所述的<打印文档>处理的功能,并与Netpage服务器进行通信以获得印图ID并存放文档。图14显示当使用第4.3节中所述的混合打印机驱动器的扩展版本从Netpage已知的应用程序直接打印到本地打印机以及打印到Netpage服务器时的高层数据流。图15显示混合打印机驱动器,其被扩展成支持在直通模式下从Netpage已知的应用程序接收Netpage输入描述。这为Netpage已知的应用程序提供一种用服务器直接存放文档的可替换方法,并可向用户提供更直观的存放接口。更具体地,它使用户能访问本地操作系统的用户接口以选择目标打印机,并使Netpage已知的应用程序能访问私人打印机,而不是经由Netpage服务器进行访问。4.6打印Netpage服务器已知的文档在特定环境下,应用程序能够(重新)打印Netpage服务器已经知道的文档。例如,在用服务器存放文档(如在第4.4节和US公开No.US2007/0130117中所述)之后,存放应用程序具有文档的句柄(其文档ID),该句柄允许应用程序经由服务器请求打印该文档任意次数。作为另一示例,NetpageExplorer是这样一种Netpage已知的应用程序,其向用户提供对存储在服务器上的文档和打印输出的阅览,并允许用户重新打印现存的文档或打印输出,并附上注解或者不附上注解。有利的是,当用户请求文档的打印输出时,打印输出与原始文档链接,而不是与和原始文档相同的新文档链接。当存放应用程序通过提供文档ID经由服务器请求(重新)打印文档时,服务器一般能够将作为结果而获得的打印输出与原始文档链接。如在第4.4节和第4.5节中所述,当用户经由NetpageExplorer的⑶I请求(重新)打印文档或打印输出时,可经由打印机驱动器对打印请求进行路由,并且NetpageExplorer将必须将文档ID或打印输出ID提供给打印机驱动器以传递到服务器,或者甚至用于检索文档的确定的版本。这可通过经由直通信道传递文档ID来实现。另一种可行性是使得服务器发现,打印输出是通过将文档描述打散(hashing)并将其与现存文档的散列(hash)匹配的现存文档。这具有这样的优点,即,被服务器记录的视觉描述与实际打印的输出精确地匹配。它具有这样的缺点,即,图形系统中的稍许改变可使得产生稍许不同的序列化的视觉描述,从而引起不匹配。当Netpage服务器暴露其文档和打印输出的文件系统阅览时,增加了用户能够经由非Netpage已知的应用程序请求重新打印文档的复杂度。为了激活这样的文档的输入描述并允许服务器记录作为结果而获得的打印输出的正确来源,文档可以以这样的方式进行自标识,即,打印机驱动器可标识文档,并可从服务器检索匹配的输入描述。如果经由文件系统暴露的文档和打印输出的公布类型要求这样一种特殊的Netpage阅览器,则可避免这种问题,所述Netpage阅览器进而一般能够是Netpage已知的,从而可正确地标识Netpage文档和打印输出。4.7检测超链接URI来自Netpage未知的应用程序的输出可包含对超链接URI(比如http://WWW.example,com形式)进行编码的文本串。打印机驱动器或Netpage服务器可检测这样的文本串,并产生相应的输入描述,该输入描述允许这样的超链接变成激活和可点击的。这样的超链接还可由Netpage服务器怠惰地(lazily)发现,即,当用户实际在页面上的位置上点击时,服务器可确定该点击是否与良构的URI的文本串的长度一致。对眼睛表现为相连的文本串的内容有时将以几个片段被传递到打印机驱动器。为了检测到完整的URI,有时将必须将空间相邻的片段合并成单个文本串。可通过URI的语法知识来辅助这个处理。可选地,打印机驱动器或服务器可改变URI文本的视觉格式以表明它是激活的超链接(比如,使用典型的蓝色、下划线视觉风格)。相反,打印机驱动器或服务器可使用文本的视觉格式来帮助确认超链接URI。5.NetpageWindows打印机驱动器本节描述支持第4节中所述的所有打印架构的Windows⑶I混合Netpage和Aurora打印机驱动器。5.1Azure打印机驱动器Azure打印机驱动器是一种用于Aurora驱动的Memjet打印机的WindowsGDI驱动器。它包括许多部件,包括接DLL、图形DLL和AuroraDLL。接DLL提供允许用户指定打印选项的公共属性表用户接口(commonpropertysheetuserinterface,CPSUI)。图形DLL实现所需的⑶I驱动器功能的子集,并且最终调用AuroraAPI函数。AuroraDLL实现Aurora打印管道的非嵌入部分。图16显示Azure打印机驱动器的简化视图。AuroraDLL支持标签信息的并入,Azure图形DLL支持将标签信息从Netpage已知的应用程序传递到AuroraDLL,并透明地穿过⑶I。5.2支持Netpage的混合Azure驱动器图17显示增加了NetpageDLL的Azure打印机驱动器。当文档需要Netpage标签时,Azure图形DLL调用NetpageDLL,NetpageDLL经由AuroraDLL将必要的标签信息插入到Aurora流中。这包括标签格式数据、固定标签数据和可变标签数据。诸如印图ID的每页信息典型地部分经由固定标签数据指定,部分经由可变标签数据指定。位置特定信息,诸如x_y位置和激活区域映射数据典型地经由可变标签数据指定。可替换地,标签信息可由打印机本身中的固件仅基于从打印机驱动器接收的印图ID(可选地,和关于每个激活区域的范围的信息)而产生。NetpageDLL可从注册表(Registry)中的打印机信息或者从Netpage服务器(但是缓存于本地)获得标签格式数据。可替换地,可在DLL中对这个信息进行硬编码。当NetpageDLL需要经由本地存储和转发服务与Netpage服务器通信时,存储和转发服务从Netpage服务器获得印图ID的范围,并应请求将它们分配给NetpageDLL。它存储从NetpageDLL接收的页面描述,当可获得Netpage文档服务时,将它们转发到Netpage文档服务。它从注册表中的打印机信息获得Netpage文档服务的名称,并经由名称解析服务(根据实现,比如,DNS或Corba命名服务)将服务名称解析为网络地址。NetpageDLL在物理打印期间具有三种标签产生模式,这三种标签产生模式对应于正被物理打印的文档的三种可能的来源,并且在虚拟打印期间具有两种文档产生模式,这两种文档产生模式对应于正被虚拟打印的文档的两种可能的来源。表1描述物理打印期间的印图ID和激活区域映射的来源。表2描述虚拟打印期间的视觉和输入描述的来源。因此,总地来讲,NetpageDLL具有与第4节中所述的五种使用情况对应的五种组合操作模式。NetpageDLL的实现类似地遵照第4节中的描述。表1物理打印期间的标签产生<table>tableseeoriginaldocumentpage16</column></row><table>应用程序印图ID的来源激活区域映射的来源Netpage未知从服务器获得^Netpage已知从服务器获得根据输入描述产生表2虚拟打印期间的文档产生<table>tableseeoriginaldocumentpage17</column></row><table>为了将NetpageDLL和与其不直接相关的Netpage的诸方面隔离开,可将由Netpage已知的应用程序提供的Netpage输入描述封装,并将其简单地通过NetpageDLL传递到Netpage文档服务。在这种情况下,需要单独向NetpageDLL提供可选的激活区域映射信息,以允许它产生标签数据。类似地,为Netpage已知的应用程序提供用于构建Netpage输入描述的SDK,以将该应用程序与封装的表示的知识隔离开,并使该应用程序不必明确地产生可选的激活区域映射。5.3Netpage打印机信息单个可配置的Azure打印机驱动器实现的意图在于支持所有的Aurora驱动的Memjet打印机,这自然扩展到Netpage支持。Azure打印机配置文件可被扩展有Netpage特定条目,诸如打印机是否启用了Netpage支持、支持哪些模式和Netpage文档服务的默认名称。这些条目也可在NetpageDLL中具有硬编码的默认设置。5.4Netpage用户接口选项对于每个物理打印机,作为默认设置,允许用户能够基于每个工作进行Netpage标签打印和文档存档。可通过高级CPSUI制表(tab)上的属性使这变得可行。还可通过布局制表上的复选框使这变得可行。还允许用户通过名称,再次经由高级制表上的属性来标识Netpage文档服务。6.页面描述语言打印机驱动器或打印机可支持页面描述语言(PDL),诸如AdobePostscript、AdobePortableDocumentFormat(PDF)或Hewlett-Packard'sPrinterCommandLanguage(PCL)。当打印机驱动器显露(expose)PDL支持时,它允许应用程序以平台无关方式产生页面描述。当打印机显露PDL支持时,它允许主机系统产生紧凑的、因此被有效率地存储的页面描述,并发送给打印机。打印机驱动器及其打印机支持的PDL有些正交。当打印机的打印机驱动器不显露PDL时,打印机可显露PDL,打印机驱动器可显露PDL,但是在将其发送给打印机之前将其渲染成图像格式。当打印机驱动器显露PDL时,打印机驱动器的Netpage扩展必须能够将PDL序列化以用于存储在Netpage服务器上。当Netpage服务器本机支持PDL作为文档格式时,这是不重要的。由于Netpage服务器本机支持PDF和序列化的⑶I,所以Netpage打印机驱动器扩展易于支持Postscript、PDF和PCL。一些PDL,包括Postscript和PDF,支持超链接和表格的定义。Postscript支持经由pdfmark操作者定义超链接和表格,当Postscript文件被提取为PDF文件,对这些定义进行解释,但是当打印Postscript文件时,通常忽略这些定义。当打印机驱动器显露的PDL支持超链接和/或表格的定义时,Netpage打印机驱动器扩展或者Netpage服务器可利用这些信息产生相应的输入描述,从而渲染激活的超链接和/或表格。在Windows⑶I环境下,当打印机驱动器公布PDL支持时,选择产生PDL而不是利用⑶I的应用程序简单地经由⑶I直通信道将PDL数据发送给打印机驱动器图形DLL。当打印机显露PDL支持时,Netpage打印机驱动器扩展必须经由PDL将标签信息发送给打印机。最低限度,如果通过打印机固件产生标签数据,则标签数据包括每个页面的印图ID。就Postscript和PDF的情况而言,这可经由每页注释或者打印机对其进行解释的文档元数据来实现。就PCL的情况而言,它可经由打印机对其进行解释的每页宏来实现。7.打印到预加标签的空白页(blank)上存在使得Memjet打印机能够启用Netpage的两种方式可给予打印机应要求打印Netpage标签的能力,或者可给予打印机标识预加标签的空白介质的能力。7.1通用数据流图18显示当打印到进行标签打印的Memjet打印机时的数据流。打印机驱动器从图形系统接收每个印图的图形描述;对印图描述进行渲染以生成印像;从Netpage服务获得印图的ID;将根据印图ID编索引的印图描述存档到Netpage服务;将印图ID和印像都发送给打印机用于打印。如第5.2节所述(图17),可由Netpage存储和转发服务来调解打印机驱动器和Netpage服务之间的通信,以确保打印机驱动器不被Netpage服务的不可用性阻碍。Netpage存储和转发服务缓存多组印图ID以用于离线分配,并存储和转发印图描述。当打印机驱动器用Netpage服务存档印图描述时,它以启动打印的用户的名义如此做。它通过向Netpage服务呈现先前以用户的名义分配的许可证(ticket)来获得如此做的授权。所述许可证还标识支持多个Netpage服务的系统中的Netpage服务。图19显示当打印到进行介质标识的Memjet打印机时的数据流。不是从Netpage服务获得印图ID,而是打印机驱动器从打印机获得印图ID,并向Netpage服务报告印图ID。当空白介质在打印期间通过打印机时,打印机从该空白介质读取印图ID。7.2ffindows数据流在Windows打印机驱动器中,印像的渲染(由图形DLL执行)与印像到打印机的发送(由语言监控器执行)完全分离。图形DLL和语言监控器可在不同的机器上运行,并可在发送到打印机之前的不确定(indeterminate)时间内将印像存储在盘上。此外,不存在从语言监控器返回到图形DLL的通信信道。图20显示当使用Windows下的Azure打印机驱动器打印到进行标签打印的Memjet打印机时的简化数据流。该数据流与图18中显示的通用数据流基本相同。Azure图形DLL将图形印图描述传递给Netpage图形扩展DLL,图形印图描述包括传递给Azure图形DLL的⑶I命令集,Netpage图形扩展DLL将印图描述序列化,并用Netpage服务存档该印图描述。由于期望用Netpage服务存档设备无关的印图描述,所以Azure图形DLL执行存档是方便的,而不是在打印管道中的后续阶段执行存档。然而,虽然Azure图形DLL执行存档是方便的,但是还可将印图描述与印像一起传递给后续管道阶段进行存档。Azure图形DLL对印图描述进行渲染以生成Borealis格式的印像,Netpage图形扩展DLL分配印图ID,并产生包括在印像中的Netpage标签数据。图21显示当使用Azure打印机驱动器打印到进行介质标识的Memjet打印机时的简化数据流。由于Azure图形DLL确定相应的印像最终打印在其上的空白介质的ID是不实际的,所以语言监控器必须向Netpage服务通知空白页ID。这导致比图19中显示的通用数据流更复杂的数据流。为了让Netpage服务将空白页ID与合适的印图描述相关联,语言监控器还必须向Netpage服务标识印图描述。由于如上所述,Azure图形DLL已经被设计成当打印到进行标签打印的Memjet打印机时分配印图的印图ID,所以这个印图ID为Netpage服务提供Azure语言监控器标识印图的便利基础。Memjet打印机向Azure语言监控器通知每个印图的成功打印。这提供用于向Netpage服务通知空白页ID的便利的触发器。Netpage图形扩展DLL和Netpage语言监控器扩展DLL均可经由Netpage存储和转发服务与Netpage服务进行通信。为了使得图形DLL将印图ID传达给语言监控器,可对图形DLL和语言监控器之间使用的Borealis格式进行增强以包括明确的印图ID。在当前的Borealis格式中,在标签数据中对印图ID进行不透明(opaquely)编码。由于语言监控器与图形DLL—样以用户的名义将信息提交到Netpage服务,所以还必须能够给出最初为打印工作而分配的许可证。因此,必须对Borealis格式进行增强以允许图形DLL将许可证传递给语言监控器。为了使得打印机向语言监控器报告空白页ID,必须对打印机和语言监控器之间使用的Cirrus协议进行增加以包括用于报告空白页ID的消息。8.记录预加标签的打印输出图22显示用于被Netpage服务记录的打印输出的简化对象模型。打印输出包括印图序列,每个印图由印图ID标识,并包含该印图的图形描述。如果用进行标签打印的Memjet打印机打印印像,则印图ID为在打印的标签中编码的印图ID。如果用进行介质标识的Memjet打印机打印印像,则在标签中编码的ID(即,“物理印图ID”)为空白页ID,并且Netpage服务可使用印图空白页记录将空白页和印图链接。可替换地,一旦空白页ID已知,Netpage服务就可简单地用空白页ID替换印图记录中的印图ID。当打印机将印像打印到空白页上时,在打印的印像和打印的标签之间可能没有配准(misregistration)。在极端的情况下,空白页可被反向进给到打印机中,这导致标签和印像之间的180度旋转。Netpage服务可将任意这样的未配准作为变换记录在印图空白页记录中,并使用该变换来校正经由该空白页捕获的任意数字墨。9.标识预加标签的空白页Memjet打印机可通过以下方式标识预加标签的空白页,即,从打印在空白页上的Netpage标签图案提取其ID,或者从打印在空白页上的更简单的光学编码提取其ID,诸如线性数据道(参见美国专利公开No.2005/0200638,在此引入该公布的内容作为参考)。数据道读取器是一种比Netpage标签传感器成本更低的硬件解决方案,但是数据道需要空白介质上另外的固定区域(realestate)。如果支持双面打印,即,在空白页的两侧预打印Netpage标签,则这可能特别繁重。数据道也不允许在打印期间确定标签图案的横向配准,也不允许确定标签图案的方位(除非存在多个数据道)。如果使用数据道,则优选地使用与Netpage标签图案相同的红外墨来打印数据道以使其不显眼,特别是如果支持双面打印。9.1使用线性编码器读取空白页ID在美国专利公开No.2005/0200638中论述了在打印期间使用线性编码器读取数据道。图23显示经由PIO连接至xPEC的用于读取数据道的线性编码器。当在打印期间空白介质被传送通过编码器时,xPEC上的软件对编码器检测到的每个数据道转变加上时间戳,并记录这些数据道转变。时钟道(clocktrack)可以是自计时或者通过单独的时钟计时,在通过单独的时钟计时的情况下,还需要用于时钟的第二线性编码器。自计时暗示着数据速率的减半。xPEC上的软件对数据道进行解码,提取空白页ID,并将空白页ID发送到主机上的语言监控器。可替换地,xPEC将原始数据道信号传递到主机进行解码。如果对打印的印像与标签图案的纵向配准感兴趣,则解码软件可使数据道的读取与印像的打印相关联,并将纵向配准与空白页ID—起报告给语言监控器。如果对空白介质的方位感兴趣,并且在该介质上存在多个数据道,则软件还可报告从数据道提取的方位指示符。9.2使用Netpage标签传感器读取空白页ID在美国专利公开No.2005/0200638中论述了在打印之前或者在打印期间使用Netpage标签传感器从Netpage标签图案读取ID。标签传感器包括图像传感器、处理器,并且可选地,还包括通信接口模块。图24显示经由LSS连接至xPEC的Netpage标签传感器。当空白介质被传送通过标签传感器,或者当空白介质位于标签传感器前面(比如,在输入托盘中)时,标签传感器使该空白介质的Netpage标签图案成像,并对标签图像进行解码以提取ID。标签传感器可被构造成以有规律的间隔读取标签,并且每次ID改变时,通知xPEC.可替换地,可由xPEC触发标签传感器在特定时间(比如,相对于打印过程的特定时间)读取标签,然后可另外报告位置(和方位)信息以允许xPEC向语言监控器报告配准信肩、ο图25显示Netpage标签传感器,其被构造成直接向Netpage服务报告空白页ID(和配准信息),而不是经由xPEC和语言监控器。标签传感器能以与其它Netpage输入设备相同的方式与Netpage服务进行通信,所述方式诸如经由USB、蓝牙或者与Netpage接入点的其它无线连接。可在作为语言监控器的相同计算机上主办(host)接入点,或者可单独主办接入点。如果在作为语言监控器的相同计算机上主办接入点,则标签传感器和xPEC可经由打印机内部的USB集线器连接至主机上的相同USB端口。9.3在打印机中分配印图ID如在美国公开No.2005/0052661中所述(在此引入该公布的内容作为参考),当印机能够打印Netpage标签时,打印机可从墨盒、打印头盒或者从打印机本身中的非易失性存储器获得印图ID。当打印机能够以这种方式自动分配印图ID时,与打印到预加标签的空白页上的打印机一样,它也要求用于报告所打印的实际印图ID的打印系统的支持。因此,这里所描述的机制同样地应用于自主分配印图ID的打印机。已参考优选实施例和许多特定的可替换的实施例对本发明进行了描述。然而,本领域的技术人员将意识到,许多与特定描述的这些实施例不同的其它实施例将也落在本发明的精神和范围内。因此,将理解,本发明的意图不在于仅限于本说明书中所述的特定实施例,而是包括在适当时通过交叉引用而并入的文档。本发明的范围仅由权利要求所限定。权利要求一种用于在打印机打印文档的打印机驱动器,其中,所述打印机驱动器被构造成从第一存储器接收关于所述文档的视觉描述,所述视觉描述描述用于打印的图形印图;将与所述图形印图相应的打印数据发送到所述打印机;和将关于所述文档的至少一个页面的视觉描述存档在第二存储器中,其中,所述第一存储器和所述第二存储器彼此不同。2.根据权利要求1所述的打印机驱动器,其中,将所述视觉描述存档在服务器上。3.根据权利要求2所述的打印机驱动器,该打印机驱动器被构造成从服务器接收印图ID。4.根据权利要求3所述的打印机驱动器,该打印机驱动器被构造成接收一组印图ID并将所述印图ID之一分配给所述至少一个页面或者所述文档。5.根据权利要求1所述的打印机驱动器,该打印机驱动器被构造成在至少一个页面上打印标签图案,其中,标签图案标识印图ID,并且,根据印图ID给视觉描述编索引。6.根据权利要求5所述的打印机驱动器,其中,所述标签图案为标识印图ID和所述页面上的多个位置的位置编码图案。7.根据权利要求1所述的打印机驱动器,其中,所述打印机驱动器被构造成将关于所述页面的输入描述与所述视觉描述一起存档,所述输入描述描述所述页面上的至少一个交互元素。8.根据权利要求7所述的打印机驱动器,该打印机驱动器被构造成允许应用程序在输入描述中指定交互元素,其中,根据以下内容中的至少一个指定所述交互元素页面上的超链接的空间范围和URI;页面上的输入字段的空间范围和类型。9.根据权利要求1所述的打印机驱动器,该打印机驱动器被构造成允许应用程序经由以下内容中的任意一个来指定输入元素直通信道;PDL;PDF注释;和Postscriptpdfmark算子。10.根据权利要求9所述的打印机驱动器,其中,根据GDI逃逸机制提供所述直通信道。11.根据权利要求1所述的打印机驱动器,该打印机驱动器被构造成允许应用程序指定选自包括以下内容的组中的至少一些元数据打印文档的源文档的路径;文档的创建者;文档的创建日期和时间;和文档的修改日期和时间。12.根据权利要求1所述的打印机驱动器,该打印机驱动器被构造成将所述元数据与所述视觉描述一起存档。13.根据权利要求7所述的打印机驱动器,该打印机驱动器被构造成标识视觉描述中的URI文本串并在输入描述中产生相应的交互元素。14.根据权利要求7所述的打印机驱动器,该打印机驱动器被构造成当URI文本串被标识为URI时改变该URI文本串的视觉描述。15.根据权利要求2所述的打印机驱动器,其中,所述服务器被构造成标识视觉描述中的URI文本串并在关于所述页面的输入描述中产生相应的交互元素,所述输入描述与所述视觉描述一起存档。16.根据权利要求15所述的打印机驱动器,其中,当处理与相应的打印印图的用户交互时,所述服务器标识URI文本串。全文摘要一种用于在打印机打印文档的打印机驱动器。打印机驱动器被构造成(i)从第一存储器接收关于文档的视觉描述,所述视觉描述描述用于打印的图形印图;(ii)将与图形印图相应的打印数据发送到打印机;和(iii)将关于文档页面的视觉描述存档在第二存储器中。文档编号G06F3/12GK101802769SQ200880107867公开日2010年8月11日申请日期2008年7月24日优先权日2007年9月21日发明者K·西尔弗布鲁克,M·霍林斯,P·拉普斯顿申请人:西尔弗布鲁克研究股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1