CN1525305A - 网络中可打印文档的客户方呈现方法 - Google Patents

网络中可打印文档的客户方呈现方法 Download PDF

Info

Publication number
CN1525305A
CN1525305A CNA2004100016311A CN200410001631A CN1525305A CN 1525305 A CN1525305 A CN 1525305A CN A2004100016311 A CNA2004100016311 A CN A2004100016311A CN 200410001631 A CN200410001631 A CN 200410001631A CN 1525305 A CN1525305 A CN 1525305A
Authority
CN
China
Prior art keywords
document
printing
printing server
computing machine
server computing
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
CNA2004100016311A
Other languages
English (en)
Other versions
CN1525305B (zh
Inventor
Ma
M·A·劳仁斯
S·基拉利
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 CN1525305A publication Critical patent/CN1525305A/zh
Application granted granted Critical
Publication of CN1525305B publication Critical patent/CN1525305B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1214Improving printing performance achieving reduced delay between job submission and print start at the submitting node
    • EFIXED CONSTRUCTIONS
    • E21EARTH DRILLING; MINING
    • E21BEARTH DRILLING, e.g. DEEP DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
    • E21B44/00Automatic control systems specially adapted for drilling operations, i.e. self-operating systems which function to carry out or modify a drilling operation without intervention of a human operator, e.g. computer-controlled drilling systems; Systems specially adapted for monitoring a plurality of drilling variables or conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1232Transmitting printer device capabilities, e.g. upon request or periodically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1239Restricting the usage of resources, e.g. usage or user levels, credit limit, consumables, special fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • EFIXED CONSTRUCTIONS
    • E21EARTH DRILLING; MINING
    • E21BEARTH DRILLING, e.g. DEEP DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
    • E21B7/00Special methods or apparatus for drilling
    • E21B7/02Drilling rigs characterized by means for land transport with their own drive, e.g. skid mounting or wheel mounting
    • E21B7/022Control of the drilling operation; Hydraulic or pneumatic means for activation or operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities

Abstract

在促进打印功能的网络中,提供了一种装置,用于使用所存储的管理设置来将打算送给远程打印机的打印作业呈现在客户计算机上。对于该客户的应用程序是透明的,故该客户计算机使所存储的远程打印机的管理设置与存储在该打印服务器上的设置同步。通过使用所存储的管理设置,在将这个所呈现的文件发送到该打印服务器以便用于转送到该打印机之前,该客户将该打印作业译成该打印机可直接辨识的本地打印机语言。通过排列这些远程打印作业,各自的打印服务器的在线状态对于该客户的应用程序是透明的,从而促进了离线打印。

Description

网络中可打印文档的客户方呈现方法
                             技术领域
本发明一般涉及计算机网络系统,更具体地说,涉及联网环境中的打印文档。
                             背景
在包括打印机的传统网络中,打印服务器连接到一台或多台实际的打印机以及一个或多个打印客户。通常,这些客户计算机采取文档形式发送待打印的信息,被称作“打印作业”,此信息并按某种中间数据格式来加以编码与有关应该使用哪种打印机的信息一起发送到该打印服务器。当该打印服务器接收这个打印作业和打印机信息时,它将该作业发送到与所选择的打印机有关联的合适的打印队列。当该服务器将作业从该打印队列到附装的打印机时,它使用有关该打印机的所存储的信息(包括管理设置、打印机设置和打印机驱动器)来解释和转换这些打印作业。然后,该打印服务器将这些打印作业从被传送的中间数据格式译成本地打印机语言,并将它们发送到该打印机。呈现的过程只是从某种中间数据格式到可以直接发送到该打印机的最终打印机特定格式的转换。
这种客户薄弱、服务器加强的技术有许多关联的问题。有关这种资源密集的服务器方呈现的最重要的问题是:很难度量(scaling)服务器网络。由于客户提供很少的打印功能特性,因此,反而将这些任务卸载给该服务器,必须严格限制与打印服务器连接的激活的打印客户的数量,以避免使该服务器过载。一旦打印作业已到达该服务器,而没有通知该客户,则在应用管理设置和打印机设置方面存在另一种固有的困难。如果该客户不知道正在实行哪些管理设置,则实际的打印输出可能会在意料之外。在客户按特定打印机的驱动器所规定的中间数据格式来发送打印作业的情况下,会出现典型打印网络的另一个缺点。由于某种原因,如果该服务器和客户所存储的打印机驱动器不同,则这种中间数据格式的服务器的转换可能会以失败告终,从而产生拙劣的打印性能。最后,由于打印作业只在该服务器上排成队列,因此,服务器方呈现阻碍离线打印。在典型打印网络中,当服务器离线时,客户不仅无法使用与那个服务器连接的打印机,而且也不会为那台离线的打印机排列文档。这样,当该服务器再次变得可用时,打印特定文档的责任就落在该客户的用户身上。
一些打印网络实施已经解决了以上所描述的部分(而不是全部)问题。例如,客户方呈现在一些打印网络中一直受到支持。在客户方呈现实施中,该打印服务器将打印作业发送到合适的打印机,但该客户将采取把中间数据格式的文档译成本地打印机语言。当客户能够将该打印机格式化的文档传递给打印服务器时,仍然存在一个问题:客户预期的格式可能没有正确地应用被存储在该服务器上的管理设置。此外,该客户所执行的文档的离线呈现可能会违反管理命令,因此经常是不允许的。
在其他打印网络中,将管理设置传达给该客户,但该客户无法呈现文档,而是将中间数据格式发送到该打印服务器来呈现。在这些网络中,前面段落中所描述的许多问题仍然存在。在这些网络中打印服务器度量(scaling)几乎仍然是不可能的,因为这些服务器仍然担负着呈现文档的任务,并且,必须谨慎地对服务器打印驱动器和客户打印驱动器进行匹配。
结果,仍然需要一种支持离线打印的打印网络,作为自动化和透明打印方案。
                             概述
本发明针对在将所呈现的打印作业发送到打印服务器之前,使用存储在客户上的管理设置,在该客户上排列并呈现该打印作业。本发明还针对当打印服务器不可用时,允许用户执行打印命令;以及,一旦合适的打印服务器再次可用,就通过它对那些打印作业进行路由选择。
在本发明的一个实施例中,客户在网络上与至少可使用一台打印机的打印服务器进行通信。该打印服务器存储打印到远程打印机所必要的所有信息,包括打印机设置、打印机驱动器和管理设置。在该客户上,两个独特的模块提供打印功能特性、远程打印系统和本地打印系统。该远程打印系统跟与该远程打印机有关的打印服务器、超高速缓存打印机和管理设置进行通信。这些所存储的设置也被该打印系统定期更新,以保持与该打印服务器的最近的设置同步。此外,该远程打印机的打印机驱动器也被存储在该客户上,并且可以被该远程打印系统和本地打印系统使用。
当该客户上的应用程序发送打印到该远程打印机的命令时,该应用程序和关联的程序首先将该打印作业转换成某种中间数据格式。然后,通过远程打印系统来传递该打印作业。随后,该打印作业经路由选择到本地打印系统,而不是如在传统打印网络中那样被直接传递出去到打印服务器,在该本地打印系统中,该打印作业存储在本地队列中,并且最终由使用所存储的打印机驱动器的由本地打印引擎来加以呈现。依照合适的存储的打印机和管理设置来执行该呈现过程。由于这些设置存储在该客户上,服务器的在线状态对于该应用程序而言是透明的。然后,本地打印引擎通过远程打印系统将完全呈现的打印作业发送到打印服务器。
当本地打印引擎通过远程打印系统开始发送该打印作业时,如果打印服务器不可用,则本地打印系统只是暂停打印作业的队列,直到该打印服务器恢复在线为止。为了推动这个过程,远程打印系统为该打印服务器按预定的时间间隔来轮询网络,并且也可以轮询什么时候接收指示即,可使用新的网络节点”。一旦该打印服务器再次在逻辑上与客户连接,本地打印系统就通过远程打印体系结构将该打印作业发送到该打印服务器。
通过以下参照附图来详细描述说明性实施例,本发明另一些特点和优点将会显而易见。
                            附图简述
所附权利要求书详细陈述了本发明的各个特点,但通过以下详细的描述并结合附图,可以最佳程度地理解本发明及其目的和优点。在这些附图中:
图1是示意图,通常展示了可在本发明的一个实施例中使用的示例性计算机系统;
图2是示意图,展示了用于执行本发明的一个实施例的示例性程序结构;
图3是流程图,展示了根据本发明的一个实施例的计算机系统所采用的打印步骤;
图4是流程图,展示了根据本发明的一个实施例的远程打印机例示;
图5是详细的流程图,展示了根据本发明的一个实施例的、使用图2中的示例性程序结构的远程打印机例示;
图6是流程图,展示了根据本发明的一个实施例的、打印到远程打印机的一种应用程序;以及,
图7是详细的流程图,展示了根据本发明的一个实施例的、使用图2中的示例性程序结构来打印到远程打印机的一种应用程序。
                         详细描述
转向这些附图,其中类似的参考数字提及类似的元件,下文在计算环境的上下文中描述本发明。虽然对实践本发明未作此要求,但是,本发明被描述成由PC(PC)所执行的计算机可执行指令(例如,程序模块)来加以实施。通常,程序模块包括执行特殊任务或实施特殊的抽象数据类型的例行程序、程序、对象、部件、数据结构和类似物。
可以在除PC以外的计算机系统配置中实施本发明。例如,可以在手持设备、多处理器系统、基于微处理器或可编程的消费电子设备、网络PCs、小型计算机、大型计算机和类似物中实现本发明。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由连接通信网络而被的远程处理设备来执行任务。在分布式计算环境中,程序模块可置于本地记忆存储设备和远程记忆存储设备二者之中。
虽然本发明可以被并入如以上所提出的许多种类型的计算环境,但是,以下在采取常规PC 20形式的示范通用计算设备的上下文中对本发明进行详细的描述。
在对本发明进行详细的描述之前,结合图1来描述本发明工作的计算环境。
PC 20包括处理单元21、系统存储器22,以及将包括该系统存储器的各种系统部件耦合到处理单元21的系统总线23。系统总线23可能是几种类型的总线结构,包括存储器总线或存储控制器、外围总线和使用各种总线构造的局部总线。该系统存储器包括只读存储器(ROM)24和随机存取存储器(RAM)25。基本输入/输出系统(BIOS)26被存储在ROM 24中,该基本输入/输出系统包含有助于在PC 20内部的各个元件之间传送信息(例如,在启动期间)的基本例行程序。PC 20还包括用于从硬盘60读取并对其写入的硬盘驱动器27以及用于从可移动磁盘29读取并对其写入的磁盘驱动器28。
硬盘驱动器27和磁盘驱动器28分别通过硬盘驱动器接口32和磁盘驱动器接口33连接到系统总线23。这些驱动器及其关联的计算机可读媒体为PC 20提供计算机可读指令、数据结构、程序模块和其他数据等非易失存储。虽然这里所描述的示范环境使用硬盘60和可移动磁盘29,但是,精通该技术领域的人将会理解:也可以在示例性操作环境中使用可以存储由计算机存取的数据的其他类型的计算机可读介质,例如,光盘驱动器和磁盘、盒式磁带、快闪存储卡、数字化视频光盘、伯努里式磁带匣、随机存取存储器、只读存储器和类似的媒体。
许多程序模块可以存储在硬盘60、磁盘29、ROM 24或RAM 25上,包括操作系统35、一个或多个应用程序36、其他程序模块37和程序数据38。用户可以通过输入设备,例如,键盘40和定位设备42,将命令和信息输入PC 20。其他输入设备(未示出)可以包括话筒、操纵杆、游戏键盘、圆盘式卫星电视天线、扫描仪或类似的输入设备。这些和其他的输入设备经常通过被耦合到该系统总线的串行端口接口46而被连接到处理单元21,但也可以由其他接口例如,并行端口34、游戏端口或通用串行总线(USB)来加以连接。监视器47或其他类型的显示设备也经由接口,例如,视频适配器48连接到系统总线23。除了该监视器以外,PCs通常包括其他外围输出设备,例如,通过并行端口接口34连接到系统总线23的扬声器和打印机30。
PC 20可以在使用与一台或多台远程计算机,例如,打印服务器49的逻辑连接的联网环境中进行工作。打印服务器49可能是另一台PC、服务器、路由器、网络PC、对等设备或其他的共同网络节点,通常包括以上相对于PC 20而描述的许多元件,尽管打印服务器49经常专用于将来自PC 20的打印请求经路由选择到附装的打印机50。图1中所描绘的逻辑连接包括局域网(LAN)51和广域网(WAN)52。这类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是很普遍的。
当PC20用于LAN联网环境中时,它通过网络接口或适配器53连接到局域网51。当PC20用于WAN联网环境中时,它通常包括用于在WAN 52上建立通信的调制解调器54或其他装置。调制解调器54(可能是内置的,也可能是外置的)经由串行端口接口46连接到系统总线23。在联网环境中,相对于PC 20而描绘的程序模块或其各个部分都可存储在远程记忆存储设备中。可以理解,所示的网络连接是示例性的,在各台计算机之间也可使用建立通信链路的其他装置。
除非另有指示,在下文中将参照由一台或多台计算机执行的动作和操作的符号表示,来描述本发明。由此,可以理解这类动作和操作(有时被称作“计算机执行的”)包括用结构形式来表示数据的电信号计算机的处理单元所执行的操作。这项操作对该数据进行变换,或者将其保存在该计算机的存储系统的位置,这样,以精通该技术领域的人所熟悉的方式重新配置或改变该计算机的操作。保存数据的数据结构是该存储器的物理位置,具有该数据的格式所定义的特殊属性。但是,前述上下文中描述了本发明,而精通该技术领域的人将会理解:这并不意味着进行限制,下文所描述的各种动作和操作也可以在硬件中加以执行。
根据本发明的一个重要的方面,客户PC 20使用与打印服务器49的管理设置同步的、存储的管理设置,在本地呈现文档;并且,在使用合适的本地打印机语言将文档转发到打印服务器49之前,客户PC 20在本地对它们进行排列。
遵照本发明,客户PC 20能够进一步准备文档,用于向远程打印机50呈现,而在逻辑上不与打印服务器49连接。然后,客户PC 20可以轮询打印服务器49,直到它变得可用为止;并且,客户PC 20呈现并转发这些文档,用于在以后的时间打印。
转向这些附图,图2中示出用于执行本发明的一个实施例的示例性软件体系结构。在客户PC 20上,示出单一应用程序36正在按用户级(在该等级中,运行于计算机上的程序与该计算机用户相互作用)运行。在其他实施例中,在客户PC 20上同时可能运行许多应用程序,其中的每个应用程序可以使用打印子系统202-203。为了打印到在本地或远程地所连接的PC 20打印机,大多数应用程序36本身不执行所有所需的功能特性,而是依靠外部模块。但是,在可选择的实施例中,这些打印子系统可能是应用程序36本身的一部分、操作系统35的一部分或使用基础操作系统功能的单独程序。
在图2所示的实施例中,希望打印文档的应用程序36首先与操作系统模块35进行通信。这些操作系统模块35与应用程序36一起提供将特定用途文档数据转换成更通用的中间数据格式所必要的功能特性,并且将新近格式化的文档传送到打印子系统。在另一个实施例中,应用程序36自己将特定用途文档数据转换成通用中间数据格式,而无须操作系统35的协助。在另一个实施例中,应用程序36将特定用途文档数据与哪个应用程序36已发送该特定用途文档数据的某个指示一起发送到打印子系统,该打印子系统能够将该特定用途数据转换成本地打印机语言。作为选择,应用程序36执行打印子系统本身,并且,以后直接将特定用途数据转换成本地打印机语言。
在特定用途数据已转换成中间数据格式之后,操作系统模块35将该文档转发到打印路由器201——打印子系统的第一级。该打印路由器201根据其目标打印机对打印作业进行路由选择;不论它是通过打印服务器49连接到客户PC 20的远程打印机50,还是通过并行端口接口34或某种其他的通信媒体(无须利用打印服务器49)在逻辑上连接到客户PC 20的本地打印机30。在一个实施例中,打印路由器201根据单独的远程或本地指示器来作出这个决定,此决定与该打印作业一起由操作系统模块35或应用程序36来发送。作为选择,打印路由器201可以从该文档本身得到这个指示器。如果打印作业打算送给远程打印机50,则远程打印功能特性202所专用的那组子模对其进行接收和处理。另一方面,如果该打印作业打算送给本地打印机30,则本地打印功能特性203所专用的那组子模对其进行接收和处理。在其他实施例中,打印路由器201可能是打印子系统的任选部件。相反,客户PC 20只可以打印到远程打印机或本地打印机,并且只可以执行那组特定的子模块。客户PC 20也可以打印到远程打印机和本地打印机,但可以为这两种打印功能反复应用许多相同的子模块。
在图2所揭示的实施例中,本地打印子系统203包括所展示的各个部件,尽管在其他实施例中,可以在本地打印子系统203中的或多或少的部件中执行由这些部件所代表的功能特性。本地供应者220协调子系统203的其他部件,并且使整个本地打印过程自始至终和谐配合。操作系统功能221执行各种转换并传送功能,从而可以获得操作系统35已经执行的内容。当首先为本地打印机30登记关于活动打印功能特性的操作系统35时,本地打印子系统203将特定打印机数据存储在打印机清单223中。该数据经常包括本地打印机30以及将要被使用的驱动器和设置的规格。在选择性实施例中,当发送打印作业时,只登记打印机30;并且,在打印时间获得并应用打印机清单223中所规定的各种设置。
当打印作业经路由选择给本地供应者220时,首先用调度程序部件224为该作业登记,调度程序部件224将该作业放置在合适的假脱机文件队列225中。这些假脱机文件存储表示采用中间数据格式的文档的信息,以及在呈现该文档的过程中应该使用的各种打印特征。当作业准备好用于解除假脱机(即,准备好打印)时,调度程序224将该假脱机文件从队列225传送到打印处理器222,打印处理器222准备打印文档。然后,打印处理器部件222将该文档发送到打印机驱动器226,用于译成本地打印机语言。将所呈现的文档(现在专门为本地打印机30而进行格式化)发回给本地供应者220,本地供应者220将所呈现的文档发送到利用通过端口监视器204所提供的操作系统功能特性的合适的打印机。当本地打印机30是目标时,端口监视器204可以使用(例如)并行端口接口34。通过使用操作系统功能特性,端口监视器204能够潜在地通过众多不同的通信媒体来进行通信,并能够对这些通信媒体进行监控。
在选择性实施例中,假脱机文件队列225不需要由本地打印子系统203来保持,但可以在操作系统35或应用程序36中加以执行。例如,一旦已完成打印旧文档,应用程序36(与打印子系统203进行密切的通信)就将会只开始打印新文档。虽然通常会在如今的许多PC 20上找到参照图2所描述的本地系统203,但是,在其他实施例中,可以用类似但又不同的模块来代替参照图2所描述的各种部件。
遵照本发明,如图2中所揭示的,远程打印子系统202分成为所展示的各个部件。在其他实施例中,这些部件所代表的功能特性在或多或少的部件中被加以实施。第一个部件——核心210所提供的功能特性类似于本地供应者部件220所提供的功能特性;它使各种其他的远程部件和谐配合并且相互协调,同时从接收到完成一直跟踪特定的打印作业。
在一个实施例中,一旦已为活动打印功能特性选择远程打印机50,远程打印子系统202的核心210就通过连接管理器217(可使用不同的联网协议(例如,SMB 219和RPC 218))与跟远程打印机50连接的打印服务器49进行通信。然后,连接管理器217接收与远程打印机50有关的信息,包括管理设置、打印机设置、驱动器和其他设置。该信息传回到核心210,核心210将本地打印子系统的打印机清单223和高速缓冲管理器215用作存储空间。同步管理器216定期使该被存储的信息同步化,以便与打印服务器49中所存储的最新近的信息相匹配。在一些实施例中,同步管理器216在某段时间之后请求被更新的信息。在其他实施例中,同步管理器216只在接收“在打印服务器49上已登记该信息的变化”这个通知之后才更新所存储的信息。在其他实施例中,当客户20上的核心210修改存储在打印服务器49上的信息时,这些设置先放在高速缓冲存储器中。
随后,当打印作业经路由选择到远程打印子系统202时,核心210使用同步管理器216来确保这各种设置和驱动器是最新的,然后使用本地打印和远程打印功能特性来呈现并打印该作业。如果与远程打印机50连接的打印服务器49不可用,则核心210用信号通知可达性事件系统212为打印服务器49轮询网络。当服务器49变得可用时,通知核心210,并发送所呈现的打印作业。在其他实施例中,如果不能利用打印服务器49,则取消该打印作业;或者,应用程序36本身或其他系统功能继续按某种预定的时间间隔来发送该打印作业,直到打印服务器49恢复在线为止。在图2所揭示的实施例中,虽然以上将各种部件描述成正在与打印服务器49进行通信,但是,只有连接管理器217具有与打印服务器49的逻辑连接,并且,所有通信都通过连接管理器217来加以路由选择。在选择性实施例中,这些其他的部件通过连接管理器217所使用的那些同样的网络协议来使用网络硬件。
远程打印子系统202的其余的部件为以上所描述的那些部件提供支持。事件管理器211用于在远程打印子系统202中的各个部件之间传送各种事件通知。端口监视器213通过网络51把发送到打印服务器49的各个通信相互协调,并且响应于利用外部端口监视器204可使用的系统请求相类似的系统请求。最后,清除器214删除因各种原因(例如,如果提出请求的用户已退出客户PC 20)而超过它们使用性的打印机实例和作业实例。
通过参照以下的图3-7,将会更好地理解图2中所描述的远程打印子系统202的软件体系结构,同时进一步详细地描述了该体系结构所执行的各种功能。
如图3中所描述的,根据本发明的各种打印服务执行许多重要的任务,以支持客户方呈现和管理信息维护。在步骤301期间,这些打印服务可相互协调从打印服务器49接收到的写特定打印机50有关的管理信息和设备信息的存储。在一个实施例中,这些打印服务的部件可相互协调从打印服务器49所收到的管理信息和设备信息。然后,将该信息存储在位于客户PC 20上的数据结构中,随后可以在那里使用该信息,以便正确地打印文档。
在步骤303期间,只要这台打印机50仍然保持运行,这些打印服务就会继续使客户20上的管理信息和设备信息与存储在打印服务器49上的信息同步。在一个实施例中,通过定期用打印服务器49上的信息替换存储在客户20上的信息,来执行这种同步。在另一个实施例中,只在打印服务器49已更新与合适的打印机50有关的某个信息之后,才使该信息得以同步。在另一个实施例中,执行这两种同步方法,从而增加网络信息流通量,同时也提高了存储在客户PC 20上的信息的精确度。
在步骤305期间,这些打印服务将所存储的管理设置和设备设置应用于文档。通过应用这些设置,这些打印服务确保该文档的格式化是合适的,并且,网络安全问题得到了解决。即使不能利用打印服务器49,由于与该服务器上所存储的设置相比,这些设置也相对比较现时,因此,利于离线呈现。以下将进一步描述应用这些设置的细节。
最后,在步骤307期间,这些打印服务将所呈现的文档发送到打印服务器49,以便转发到打印机50。通过在客户PC 20上呈现该文档,可为打印服务器49解除繁重的计算负担,从而使其更容易度量。由于常常根据步骤303来使服务器49和客户20上的设置同步,因此,两者的呈现过程很有可能相同,从而排除了异常打印过程的担忧。
前述步骤描述得非常概括,而以下的图4-7将进一步详细地描述本发明的各个实施例。将文档打印到所规定的远程打印机50的过程中的第一个步骤是:利用操作系统35为打印机50登记将来的打印任务。虽然打印机登记在该技术领域中众所周知,但是,本发明的各个特殊方面使图4和图5中所揭示的登记过程很独特。图4描述了遵照本发明的通过操作系统35来登记打印机50的一般过程;而图5描述了在图2的示例性软件体系结构中这种方法。
如在该技术领域中众所周知,本实施例设想了用于在步骤401期间在操作系统35中增加新的远程打印机50的一种方法,以便随后的打印命令可以识别打印机50。在一项实施中,操作系统35通过网络来进行浏览,从而从其连接的远程打印机50的可用打印服务器49清单中进行检索。然后,操作系统35将这些远程打印机50自动加入数据库,或者允许用户选择该用户可能会对其发送打印作业的那些打印机50。在其他实施例中,用户规定该用户可能会添加的远程打印机50的网络通路,并且,这台新的打印机登记在该操作系统的数据库中。在其他实施例中,该初始登记不是由操作系统35来执行,并且,只有当应用程序36发送特定的打印作业时,才执行随后的步骤403-407。
一旦用户已登记远程打印机50,控制打印的那些服务就在步骤403期间由打印服务器49接收管理信息和设备信息。在不同的实施中,这些打印服务在应用程序36、操作系统35或打印子系统202、203中加以执行。从打印服务器49那里接收的设备信息包括驱动器版本信息、打印机驱动器本身、该打印机的规格、对该打印机所进行的修改、该打印机的较佳输出等。另一方面,打印服务器49的管理设置包括远程打印机50的较佳设置、为远程打印机50考虑的特定设置、为客户PC 20考虑的访问等级等。为了检索该信息,客户PC 20在登记期间由打印服务器49请求该信息。在一个实施例中,这项检索是不会使PC 20慢下来的异步过程。在另一个实施例中,只有当即将处理打印作业时,才由打印服务器49检索该信息。
然后,在步骤405期间,将所接收的信息存储在客户PC 20上。通过在本地存储该信息,可允许客户PC 20随后使用管理设置和打印机设置(而无须使用打印服务器49)来呈现文档。这样,可以允许更快的呈现过程(因为客户PC20不需要等候网络通信的各种结果),并且也可以允许离线呈现(因为客户PC20能使用存储的管理设置)。在一个实施例中,打印子系统、应用程序36和操作系统35可存取该存储的信息。
通过使用从打印服务器49接收的设备信息,可以在步骤407期间在客户PC 20上创建打印机事例。打印机事例指的只是存储一堆设备信息的数据抽象概念,以便这些打印服务可以在处理打印作业时存取该设备信息。通过分开表示不同打印机的设备信息,打印机事例有利执行从应用程序36发送到特定打印机的打印命令。如在该技术领域中众所周知,打印机事例经常保存在客户20上,以代表在本地连接的打印机30,其信息由用户输入或通过共同通信接口(例如,并行端口接口34、USB等)被加以检测。在一项实施中,用类似于代表本地打印机30的打印机事例的格式来存储代表远程打印机50的打印机实例。
最后,在步骤409期间,这打印服务的某些部件也使管理信息和设备信息与存储在该打印服务器上的信息同步。这个步骤实质上等同于以上参照步骤303所描述的步骤。通过使客户20上所存储的管理信息和设备信息与打印服务器49上所存储的信息保持现时,这个实施例促进了打印和离线呈现的精确度。
在图4中以高级纵览方式中描述这些步骤,图5描述了图2的示例性软件体系结构中的打印机登记的一项实施。第一个步骤501等同于步骤401,并且依靠该操作系统所执行的类似的传统协议。其余的步骤近似地分解如下:步骤503-507对应于步骤403,步骤509-511对应于步骤405,步骤513对应于步骤407。
一旦用户已添加新的远程打印机50,操作系统35就将通知发送到远程打印子系统202的核心部件210。然后,在步骤503期间,核心210从连接管理器217那里请求与远程打印机50有关的管理设置和设备信息。在选择性实施例中,该功能特性不需要在不同的部件中加以执行。核心210和连接管理器217确实可以是操作系统35或应用程序36的一部分。
在接收到这个请求时,连接管理器217就使用合适的网络协议218和219,以便在步骤505期间从打印服务器49中检索信息。在一个实施例中,连接管理器217更喜欢使用远程程序调用(RPC)协议218来与打印服务器49进行通信,同时保持使用其他流行的协议(例如,SMB(或UNIX环境中的Samba)219)来进行通信的能力。在选择性实施例中,使用其他协议来执行客户PC 20与打印服务器49之间的信道。如果在客户PC 20和打印服务器49中的这个或那个不支持特定的联网协议,则这两台计算机尝试选择性协议,直到选择可相互理解的协议为止。打印服务器49通常以类似于以上所描述的打印机事例的数据抽象概念来存储管理信息和设备信息。这样,在一个实施例中,连接管理器217请求关于特定的远程打印机50的信息,并且,打印服务器49将打印机50的网络标识符与存储在该数据抽象概念中的打印机的关联特征进行匹配,并返回那些关联的特征。
在步骤507期间正在接收该信息的连接管理器217将其发送到核心210供进行处理。在一个实施例中,核心210在步骤509期间将打印服务器49所应用的管理设置存储在远程子系统的高速缓冲管理器215的高速缓存项目中。高速缓冲管理器215的数据结构包括存储信息的高速缓冲存项目。在一项实施中,这些高速缓存项目与其各自的远程打印机有关联,这些各自的远程打印机使用标识符表格(最好是使这些高速缓存项目的存取更快的散列表格)。作为选择,可使用该技术领域中众所周知的其他存储装置来存储并访问管理设置。
在一个实施例中,将管理设置存储在远程打印子系统202中,而在步骤511期间,将核心210所接收的其他设备信息发送给本地供应者220。然后,在步骤513期间,本地供应者220在其打印机223清单中创建代表远程打印机50的本地阴影打印机事例。对应于远程打印机50的这个本地阴影打印机事例的格式化方式等同于对应于以上所描述的本地打印机30的本地打印机事例。但是,代表本地打印机30的本地打印机事例通过外部端口监视器204来发送打印作业,而代表远程打印机49的本地阴影打印机事例通过该远程打印子系统的端口监视器213来发送打印作业。较佳的是,本地打印子系统203处理这些本地阴影打印机事例象处理所有其他的本地打印机事例一样,从而在处理对这些远程打印机50的打印命令时利用本地打印功能特性。
在步骤515期间,远程打印子系统202中的过程确保存储在客户PC 20上的管理信息和设备信息与存储在打印服务器49上的信息同步。在一个实施例中,同步管理器216定期从打印服务器49请求更新的信息,然后,此更新信息替换存储在高速缓冲管理器215和本地打印子系统203中的信息。在另一个实施例中,同步管理器216定期将在本地存储的管理信息和设备信息与打印服务器49上的信息进行比较。如果它们不同,那么,同步管理器216替换存储在高速缓冲管理器215和本地打印子系统203中的不同的信息。在另一个实施例中,核心210通过连接管理器217来轮询打印服务器49,以确定关于打印服务器49的管理设置和设备设置是否已改变。打印服务器49可以保持指出是否已发生变化的很小的数据结构,该数据结构可以由核心210来进行存取。核心210所接收的响应发送到同步管理器216,然后,同步管理器2 16适当地更新在本地存储的设置。这些方法只是起说明性的作用,同步管理器216或远程打印子系统202的另一个部件可以使用其他方法来保持管理设置和设备设置及时。
一旦已为远程打印机50由操作系统35登记,应用程序36就可以为其发送打印作业。图6和图7中描述了本发明所设想的独特的打印过程。图6描述了应用程序36打印到远程打印机50的一种过程;而图7描述了在图2的示例性软件体系结构中的一种做法。
当然,将数据打印到远程打印机50的过程中的第一个步骤是:访问具有打印性能的应用程序36,并利用那个性能。这样,在步骤601中,用户发送来自应用程序36的某个打印命令,从而指出:应该将文档发送到远程打印机50。在不同的应用程序中,使用不同的方法来执行这项功能。在一项实施中,用户从菜单中选择“打印”命令,或者,通过按压键盘40上的组合键或一连串键来选择“打印”命令。然而这项打印命令选好后,它仍然向用户请求关于将哪台打印机作为目标的输入。在选择性实施中,可以预先将远程打印机50选作当前的“预置”打印机。
在处理这项打印命令之后,应用程序36在操作系统模块35的帮助下,在步骤603期间将用专有应用程序格式存储的文档转换成中间数据格式。这种中间数据格式包含足够的信息,以便在远程打印机50上精确地打印该文档。但是,这种中间数据格式对于远程打印机50和应用程序36而言都不是特定的。利用这种方法,可以对该文档进行格式化和修改,而无须担心其特殊的应用程序源或目标打印机,并且,执行这些变换的那些子系统在很大程度上可以与打印机50或应用程序36的选择无关。但是,在其他实施例中,可能不需要中间数据格式。在以上所描述的情况(其中,应用程序36直接打印到远程打印机50,而无须使用基础操作系统35所提供的功能特性)中,应用程序36只使用其自己的特定用途格式,直到必须将该文件转换成供传输的本地打印机语言为止。在其他实施例中,打印子系统依据每种不同的特定用途格式来执行对文档的格式化更改,从而避免转换成中间数据格式。
一旦已创建该中间文件,就在步骤607期间将其放置在客户20上的队列上。在一个实施例中,这个队列用每一打印机事例一个队列来表示数据结构。当文档加入该队列时,将这些文档放置在具有某些例外的先进先出格式中,这对于精通该技术领域的人而言是众所周知的。加入该队列的第一个文档是打印到远程打印机50的第一个文档。与远程打印机50连接的打印服务器49也将有关其自己的队列的数据发送给客户20,这两台计算机可以合并它们的队列,以便客户20在相对于打印服务器49所接收的其他打印作业而言的合适的时间发送打印作业。客户20也可以使用所接收的数据来通知用户何时将打印其打印作业以及关于其他用户的文档采用什么顺序。在其他实施例中,在应用程序36内执行该队列,或者,没有队列可执行;并且,如果原来的打印请求被拒绝,则应用程序36按预定的时间间隔来发送打印请求。
当文档达到队列的前部并准备发送到远程打印机50时,客户20在步骤609中确定打印服务器49是可用。如在该技术领域中众所周知,客户20用许多种潜在方法中的一种方法来进行这种确定,这些潜在方法包括:通过使用基础网络功能特性来仅仅启用(pinging)打印服务器49;通过使用达成的网络协议之一来询问打印服务器49是否可以接受打印作业;或者,通过在打印请求失败之前假定打印服务器49可用。如果客户20确定打印服务器49可用,则将该中间文件译成远程打印机50的本地打印机语言,并且,在步骤611期间将最后形成的文档发送到打印服务器49。
由于有关远程打印机50的驱动器、打印机设置和管理设置的信息如步骤405-407中所描述的那样存储在客户20上,因此,可以将该中间文件有效率地译成本地打印机语言。这些存储的设置可以是在上一次更新时由同步管理器216存储的稳定的设置,也可以是就在打印特定文档之前从打印服务器49那里接收的新近的设置。在一个实施例中,尽管网络信息流通量会增加但利用新近的设置是较佳的方法。在选择性实施例中,陈旧的设置是较佳的,尽管服务器49和客户20更有可能是非同步的。设备设置和打印机设置描绘远程打印机50的物理属性,而管理设置则较佳地要求在呈现该中间文件时,对其执行各种格式化编辑和打印编辑(例如,将页打印到一张纸的两侧)。在其他实施例中,管理设置在步骤603之前由应用程序36来接收,并且,应用程序36使用这些设置来创建具有已被应用的管理设置的中间文件。在其他实施例中,首先将打印机设置和管理设置应用于该中间文件,然后,通过使用打印机设置和驱动器,将该中间文件转换成远程打印机50可读的文档。用远程打印机50的本地打印机语言来书写这种文档。一旦被呈现,该文档就发送到打印服务器49,在那里,该文档经路由选择到合适的远程打印机50。若必要的话,打印服务器49将该文档加入合适的打印机队列,但与典型的打印网络不同,打印服务器49在将该文件发送到打印机50之前不需要执行任何文件转换或格式化更改。通过在客户20上呈现该文档打印服务器49的资源可自由地用于其他任务。
如果打印服务器49在被客户20轮询时不可用,则在步骤613中,该中间文件只保留在那台打印机的队列中。在一个实施例中,客户20按预定的时间间隔来轮询打印服务器49,以确定打印服务器49是否已可用。客户20也可以等候网络或设备活动,该网络或设备活动指出:打印服务器49可能已可用。然后,客户20按预定的时间间隔并在某项活动之后进行轮询,以便尽可能迅速地推动打印。在选择性实施例中,客户20按预定的时间间隔来轮询打印服务器49。遗憾的是,这些时间间隔通常要么太长——延长打印文档之前可能的等候时期;要么太短——在这种情况下,在轮询过程中使用颇有价值的网络资源和CPU资源。在另一个实施例中,客户20听取设备和网络活动,并且在接收通告之后,对打印服务器49进行轮询。但是,如果客户20错过该设备或网络通告,则客户20将永远不会轮询打印服务器49,也永远不会打印该文档。通过结合这两种方法,第一个实施例提供了两者的优点,同时避免了许多缺点。
已在高级层次上描述了这些步骤,图7描述了图2的示例性软件体系结构中的、根据本发明的一个实施例的打印过程的一项实施。第一步骤701-703等同于步骤601和603。其余的步骤分解如下:步骤705-707对应于步骤605,步骤709-711对应于步骤607,步骤713对应于步骤609,步骤715-717对应于步骤611,以及,步骤719-721对应于步骤613。由于以上已相当详细地包括通过应用程序36来发送打印命令和用中间数据格式来创建文件这些初始步骤,因此,以下的描述将从步骤705开始。
一旦应用程序36和操作系统模块35已创建中间文件格式,通过打印路由器201就在步骤705期间将该中间文件经路由选择到远程打印子系统的核心210。在一个实施例中,打印路由器201保持由操作系统35所登记的远程打印机和本地打印机的清单,并且,当打印作业转发到路由器201时,根据目标打印机属于哪个清单,将该打印作业发送到合适的打印子系统。在选择性实施例中,利用“该打印作业是否打算送给远程或本地打印机”这个单独的指示来发送该打印作业,并且,该指示由路由器201来截取和处理。
该核心在接收并处理了该中间文件后,在步骤709期间,它将该中间文件转发给本地供应者220。在一个实施例中,本地供应者220象对本地打印作业那样来接收和处理这个所发送的文件。由此,本发明的这个实施例在远程打印情况中使用本地打印功能特性,从而排除了复制许多这些功能的需求。在步骤711期间,本地供应者220确定该打印作业以哪个本地阴影打印机事例为目标,并将其放置在与那个本地阴影打印机事例有关联的队列中。在选择性实施例中,远程打印子系统202本身执行本地打印功能特性,所以将该打印作业放置在远程队列中,从而使本地打印子系统203能够自由地把焦点放在本地打印作业上。
一旦打印作业已到达合适的队列的前部,在所呈现的文档发送到打印服务器49之前,远程端口监视器213首先确定打印服务器49是否可用(步骤713)。在一个实施例中,在本地打印子系统203执行任何呈现之前,远程端口监视器213核对可用性。在选择性实施例中,流水线处理打印文档的各个部分。所以,只在本地打印子系统203已执行某种呈现之后,远程端口监视器213才核对可用性。但是,一旦已确定该服务器不可用,两个实施例就会集中在一起,因为失去了在第二个实施例中局部呈现的数据。
如果打印服务器49可用,则在示例性实施例中,本地供应者220将该打印作业发送到打印处理器222,打印处理器222应用与该本地阴影打印机事例有关联的被存储的设备设置和管理设置。这些管理设置包括以上根据步骤611所描述的那些设置。由于高速缓冲管理器215所存储的高速缓冲器输入使管理设置与其各自的远程打印机50和打印服务器49相匹配,因此,将该打印机的标识发送到高速缓冲管理器215,并返回所请求的设置。在某些情况中,核心210验证:目前存储的设置与被存储在打印服务器49上的设置同步。在一个实施例中,核心210(正在与同步管理器216进行通信)使用连接管理器217来更新具有如以上在步骤509中所描述的最近的管理设置的高速缓冲管理器215。但是,如果打印服务器49在此过程期间不可用,则打印处理器222使用所存储的设备设置和管理设置,而无须更新它们。通过允许该打印过程在不更新所存储的设置的情况下继续进行,这个实施例促进了离线打印和呈现。在其他实施例中,核心210要求在该打印过程继续进行之前利用打印服务器49来更新管理设置,从而阻碍了离线打印和呈现。在其他实施例中,核心210没有更新管理设置,而是使用上次被同步管理器216所同步化的管理设置,直到被明确通知进行更新为止。
然后,在步骤715期间,存储在客户20上的打印机驱动器226和操作系统功能221将该文档译成合适的本地打印机语言。通过使用该技术领域中众所周知的各种方法,来应用设备设置和管理设置,并执行合适的打印机驱动器所进行的转换。实际上,在一个实施例中,这些功能由基本上未被修改的传统本地打印子系统203来执行,该文件的最终目的地对于该传统本地打印子系统203而言是透明的。
在本发明的一个实施例中,流水线处理打印文档的各个部分。这样,在步骤717期间,通过该远程打印子系统的端口监视器213来发送现在使用本地打印机语言的文档的各个部分。当呈现该文档的各个部分时,它们通过端口监视器213来加以发送,同时,呈现随后的各个部分。当然,如上所述,远程端口监视器213只使这些任务和谐配合。远程端口监视器213与连接管理器217进行通信,连接管理器217执行将打印作业发送到打印服务器49所必要的各个网络协议。在选择性实施例中,当呈现该文档时,远程端口监视器213不需要同时发送它。相反,本地供应者220在将该文档放置在假脱机文件队列225中之前呈现该文档,或者,本地供应者220在将该文档发送到端口监视器213之前从该队列中完整地呈现该文档。对于本发明的实施而言,执行所识别的各项操作的精确方式不是必需的。
在步骤713中,如图7中所揭示的,如果远程端口监视器213确定打印服务器49不可用,则控制传递到步骤719,在那里,停止这些设置的应用和本地打印子系统203所执行的转换,并且暂停与打印服务器49相对应的该客户的队列。其后,在步骤721期间,客户20开始轮询服务器49。在一个实施例中,本地供应者220所管理的队列被远程端口监视器213暂停,因为这是处理许多现存的本地打印子系统203中的打印机故障的一种简单又众所周知的方法。在选择性实施例中,本地打印子系统203执行处理打印机故障的任何特定的方法,包括:取消所有打印作业,以及指出应用程序36应该在将来的某个时间重新发送打印作业数据。
在本发明的一个实施例中,在步骤721期间,被并入远程打印子系统202的可达性事件系统212使用连接管理器217来轮询打印服务器49。可达到性事件系统212较佳地执行以上根据步骤613所描述的轮询方法之一。一旦远程可达性事件系统212向核心210发送通知,即打印服务器49可用,就解除对该队列的暂停,并且,该打印操作继续进行到步骤715,其中,对该中间文件加以处理并发送到打印服务器49。
如果部分或所有该远程打印子系统的部件失灵,或者,在已执行所有打印作业之前,用户退出系统,则本发明的一个实施例也规定清除器部件214。清除器214确保删除与已被取消或不应该再被打印的作业相对应的任何本地阴影打印机事例、超高速缓冲输入或假脱机文件。这样,在使跨越多个子系统和部件的打印作业协调的过程中,所固有的潜在困难可能因这个部件的功能特性而得到缓和。
鉴于本发明的原理可以应用到许多可能的实施例,故应该认识到:这里根据绘制的附图而描述的各个实施例意在只起说明性的作用,而不应该被视作限制本发明的范围。例如,精通该技术领域的人将会认识到:可以在硬件中执行软件中所示的说明性实施例的元件,反之亦然;并且,在不脱离本发明的精神的前提下,可以在配置和细节方面修改这些说明性实施例。另外,在不脱离本发明的前提下,可以修改、补充并/或重新安排这些说明性步骤。所以,如这里所描述的本发明计划可将所有这类实施例包括在以下权利要求书及其相等物的范围以内。

Claims (25)

1.一种用于远程打印网络上的文档方法,该网络包括联网客户计算机、目标联网打印机设备和打印服务器计算机,该方法的特征在于包括:
将该打印服务器计算机所应用的关于该目标联网打印机设备的管理设置存储在该客户计算机上;
使用该客户计算机上的同步管理器来更新所存储的管理设置,以便保持与当前的打印服务器计算机管理设置同步;
将所存储的管理设置应用于该客户计算机上的该文档;
将使用该目标联网打印机设备的本地打印机语言的文档呈现在该客户计算机上;以及,
将所呈现的文档发送到该打印服务器计算机。
2.权利要求1的方法,其特征在于:其中,将该文档呈现在该客户计算机上的步骤和发送所呈现的文档的步骤实质上同时发生。
3.权利要求2的方法,其特征在于:其中,将该文档呈现在该客户计算机上的步骤还包括:
当该打印服务器计算机不可用时,对该网络进行轮询,以确定该打印服务器计算机何时变得可用。
4.权利要求3的方法,其特征在于:其中,轮询该网络的步骤还包括:响应于指出该打印服务器计算机可能可用的设备和网络活动,对该打印服务器计算机进行轮询。
5.权利要求3的方法,其特征在于:其中,轮询该网络的步骤还包括:定期轮询该网络。
6.权利要求1的方法,其特征在于:其中,将该文档呈现在该客户计算机上的步骤利用本地打印功能特性。
7.权利要求6的方法,其特征在于:其中,将所呈现的文档发送到该打印服务器计算机的步骤利用本地打印功能特性。
8.权利要求1的方法,其特征在于:其中,将该文档呈现在该客户计算机上的步骤异步地加以执行。
9.权利要求1的方法,其特征在于:其中,将该文档呈现在该客户计算机上的步骤包括将该文档附加到队列。
10.权利要求1的方法,其特征在于:其中,结合在该客户计算机上登记该目标联网打印机设备,来最初执行对这些管理设置的更新。
11.权利要求1的方法,其特征在于:其中,将所存储的管理设置应用于该文档的步骤还包括:
如果该打印服务器计算机不可用,则将所存储的管理设置应用于该文档。
12.权利要求1的方法,其特征在于:其中,将所存储的管理设置应用于该文档的步骤还包括:
如果该打印服务器计算机可用,则在将所存储的管理设置应用于该文档之前,执行更新所存储的管理设置的步骤。
13.响应于发出打印文档的命令的应用程序,在促进客户方打印呈现的网络中的一种客户计算机系统,该客户计算机系统的特征在于包括:
操作系统,用于处理并解释该打印命令;
打印路由器,用于根据指定的目标联网打印机设备,将该打印命令经路由选择到远程打印子系统;
远程打印子系统,用于存储由打印服务器计算机所接收的管理设置,并将被转变成本地打印机语言的文档发送到该打印服务器计算机;
呈现子系统,用于将所存储的管理设置应用于该文档,并根据该目标联网打印机设备所使用的本地打印机语言来转变该文档;以及,
同步管理器,用于从该打印服务器计算机那里请求关于该目标联网打印机设备的当前管理设置。
14.权利要求13的计算机系统,其特征在于:其中,该同步管理器定期请求当前的管理设置。
15.权利要求13的计算机系统,其特征在于:其中,在该呈现子系统应用所存储的管理设置之前,该同步管理器请求当前的管理设置。
16.权利要求13的计算机系统,其特征在于还包括:
可达性事件系统,用于如果该打印服务器计算机不可用,则轮询该打印服务器计算机。
17.权利要求16的计算机系统,其特征在于:其中,该可达性事件系统定期轮询该打印服务器计算机。
18.权利要求16的计算机系统,其特征在于:其中,响应于指出该打印服务器可能可用的设备和网络活动,该可达性事件系统轮询该打印服务器计算机。
19.包括用于执行一种在网络上远程打印文档方法用的计算机可执行指令的一种计算机可读媒体,该网络包括联网客户计算机、目标联网打印机设备和打印服务器计算机,该方法的特征在于包括:
将该打印服务器计算机所应用的该目标联网打印机设备的管理设置存储在该客户计算机上;
使用该客户计算机上的同步管理器来更新所存储的管理设置,以便保持与当前的打印服务器计算机管理设置同步;
将所存储的管理设置应用于该客户计算机上的该文档;
将使用该目标联网打印机设备的本地打印机语言的文档呈现在该客户计算机上;以及,
将所呈现的文档发送到该打印服务器计算机。
20.权利要求19的计算机可读媒体,其特征在于:其中,将该文档呈现在该客户计算机上的步骤还包括:
当该打印服务器计算机不可用时,对该网络进行轮询,以确定该打印服务器计算机何时成为可用。
21.权利要求20的计算机可读媒体,其特征在于:其中,轮询该网络的步骤还包括:响应于指出该打印服务器计算机可能可用的设备和网络活动,轮询该打印服务器计算机。
22.权利要求20的计算机可读媒体,其特征在于:其中,轮询该网络的步骤还包括:定期轮询该网络。
23.权利要求19的计算机可读媒体,其特征在于:其中,将所存储的管理设置应用于该文档的步骤还包括:
如果该打印服务器计算机不可用,则将所存储的管理设置应用于该文档。
24.权利要求19的计算机可读媒体,其特征在于:其中,将所存储的管理设置应用于该文档的步骤还包括:
如果该打印服务器计算机可用,则执行这个步骤:在将所存储的管理设置应用于该文档之前,更新所存储的管理设置。
25.一种用于响应于发出打印文档的命令的应用程序来促进客户方打印呈现的网络系统,该网络系统的特征在于包括:
客户计算机,其中,该客户计算机包括:
操作系统,用于处理并解释该打印命令;
打印路由器,用于根据指定的目标联网打印机设备,将该打印命令经路由选择到远程打印子系统;
远程打印子系统,用于存储从打印服务器计算机所接收的管理设置,并将被转变成本地打印机语言的文档转发到该打印服务器计算机;
呈现子系统,用于将所存储的管理设置应用于该文档,并根据该目标联网打印机设备所使用的本地打印机语言来转变该文档;
同步管理器,用于从该打印服务器计算机那里请求关于该目标联网打印机设备的当前管理设置;
该打印服务器计算机,用于保持该目标联网打印机设备的当前管理设置,用于在接收到请求时就将该当前管理设置发送到该客户计算机,并用于将已转变的文档转发到该目标联网打印机设备;以及,
该目标联网打印机设备,用于创建来自该已转变的文档的输出。
CN2004100016311A 2003-01-03 2004-01-02 网络系统及其中可打印文档的客户方呈现方法 Expired - Fee Related CN1525305B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/337,115 2003-01-03
US10/337,115 US7365872B2 (en) 2003-01-03 2003-01-03 Client computer system, method and computer readable medium comprising executable instructions for rendering printable documents in a native printer language on the network
US10/337115 2003-01-03

Publications (2)

Publication Number Publication Date
CN1525305A true CN1525305A (zh) 2004-09-01
CN1525305B CN1525305B (zh) 2010-05-26

Family

ID=32507428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100016311A Expired - Fee Related CN1525305B (zh) 2003-01-03 2004-01-02 网络系统及其中可打印文档的客户方呈现方法

Country Status (14)

Country Link
US (2) US7365872B2 (zh)
EP (1) EP1435565B1 (zh)
JP (2) JP4989844B2 (zh)
KR (1) KR101099262B1 (zh)
CN (1) CN1525305B (zh)
AU (1) AU2003271331B2 (zh)
BR (1) BR0306093A (zh)
CA (1) CA2454492C (zh)
MX (1) MXPA03012018A (zh)
MY (1) MY143417A (zh)
PL (1) PL364213A1 (zh)
RU (1) RU2349953C2 (zh)
TW (2) TWI342693B (zh)
ZA (1) ZA200309901B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100403251C (zh) * 2005-06-29 2008-07-16 三星电子株式会社 在离线时控制图像形成装置的打印作业的方法和装置
CN100440131C (zh) * 2005-03-30 2008-12-03 精工爱普生株式会社 打印作业信息显示系统、打印系统、打印作业管理装置
CN102189848A (zh) * 2010-02-09 2011-09-21 苹果公司 便于进行无驱动打印的系统
CN102446076A (zh) * 2010-09-30 2012-05-09 佳能株式会社 打印系统、打印方法、打印服务器及控制方法
US8610928B2 (en) 2010-02-09 2013-12-17 Apple Inc. Framework that supports driverless printing
US8675215B2 (en) 2012-01-31 2014-03-18 Apple Inc. Using regions of interest to scale print data for print jobs
US8891115B2 (en) 2012-02-03 2014-11-18 Apple Inc. Configuration of print data for print jobs based on document-processing capabilities of printers
CN101335757B (zh) * 2007-06-28 2015-04-22 三星电子株式会社 在网络图像形成装置中允许分组的方法和装置
US9298401B2 (en) 2012-02-03 2016-03-29 Apple Inc. Configuring print jobs associated with unsupported document formats
CN106354439A (zh) * 2015-07-15 2017-01-25 日本冲信息株式会社 一种印刷系统

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553414B1 (en) * 1998-10-02 2003-04-22 Canon Kabushiki Kaisha System used in plural information processing devices for commonly using peripheral device in network
US8843617B2 (en) 2000-03-01 2014-09-23 Printeron Inc. Multi-stage polling mechanism and system for the transmission and processing control of network resource data
CA2301996A1 (en) 2000-03-13 2001-09-13 Spicer Corporation Wireless attachment enabling
US7365872B2 (en) 2003-01-03 2008-04-29 Microsoft Corporation Client computer system, method and computer readable medium comprising executable instructions for rendering printable documents in a native printer language on the network
US7730175B1 (en) 2003-05-12 2010-06-01 Sourcefire, Inc. Systems and methods for identifying the services of a network
CN100354859C (zh) * 2003-10-06 2007-12-12 佳能株式会社 信息处理装置、信息处理方法
WO2006099892A1 (en) * 2005-03-25 2006-09-28 3Dconnexion Holding Sa Synchronizing settings for manual input devices
US7685316B2 (en) * 2005-06-16 2010-03-23 Cisco Technology, Inc. System and method for coordinated network configuration
US7505170B2 (en) * 2005-07-13 2009-03-17 Microsoft Corporation Conversions between spool files and PDL within a pipeline of modular filters
US7733803B2 (en) * 2005-11-14 2010-06-08 Sourcefire, Inc. Systems and methods for modifying network map attributes
JP4685624B2 (ja) * 2005-12-28 2011-05-18 スター精密株式会社 環境設定データ設定方法、環境設定データ設定プログラム及び印刷データ供給装置
US7941504B2 (en) * 2006-02-07 2011-05-10 Efraim Gershom Global peripheral device sharing system and method
US20070294335A1 (en) * 2006-02-07 2007-12-20 Efraim Gershom Global peripheral device sharing system and method
JP4298738B2 (ja) * 2006-10-24 2009-07-22 キヤノン株式会社 クライアントコンピュータ及び情報処理方法
JP5137641B2 (ja) * 2008-03-19 2013-02-06 キヤノン株式会社 情報処理装置、画像処理システム及び画像処理方法並びにプログラム
US8474043B2 (en) * 2008-04-17 2013-06-25 Sourcefire, Inc. Speed and memory optimization of intrusion detection system (IDS) and intrusion prevention system (IPS) rule processing
WO2010045089A1 (en) * 2008-10-08 2010-04-22 Sourcefire, Inc. Target-based smb and dce/rpc processing for an intrusion detection system or intrusion prevention system
TWI450185B (zh) * 2009-01-09 2014-08-21 Hon Hai Prec Ind Co Ltd 列印系統及方法
US9817622B2 (en) 2010-01-20 2017-11-14 Hewlett-Packard Development Company, L.P. Cloud printer with a common user print experience
JP2011180954A (ja) * 2010-03-03 2011-09-15 Seiko Epson Corp 機器制御装置、機器制御プログラムおよびサーバー
JP5809238B2 (ja) 2010-04-16 2015-11-10 シスコ テクノロジー,インコーポレイテッド 準リアルタイムネットワーク攻撃検出のためのシステムおよび方法、ならびに検出ルーティングによる統合検出のためのシステムおよび方法
US9436414B2 (en) 2010-05-08 2016-09-06 Hewlett-Packard Development Company, L.P. Managing a printing device behind a firewall
US8433790B2 (en) 2010-06-11 2013-04-30 Sourcefire, Inc. System and method for assigning network blocks to sensors
US8671182B2 (en) 2010-06-22 2014-03-11 Sourcefire, Inc. System and method for resolving operating system or service identity conflicts
JP2012043398A (ja) * 2010-07-21 2012-03-01 Canon Inc コンテンツ印刷システム、および印刷中継システム、および制御方法、およびプログラム
US8570566B2 (en) 2010-09-17 2013-10-29 Printeron Inc. System and method that provides user interface on mobile network terminal for releasing print jobs based on location information
US9853864B2 (en) 2010-09-17 2017-12-26 Printeron Inc. System and method for updating printer location information field
US8970873B2 (en) 2010-09-17 2015-03-03 Printeron Inc. System and method for managing printer resources on an internal network
JP5717407B2 (ja) * 2010-11-15 2015-05-13 キヤノン株式会社 印刷中継システム、画像形成装置、システムの制御方法、およびプログラム
JP5713641B2 (ja) * 2010-11-16 2015-05-07 キヤノン株式会社 印刷中継システム、および印刷中継システムの制御方法、およびプログラム
EP2646899B1 (en) 2010-11-30 2020-02-26 Hewlett-Packard Development Company, L.P. System for internet enabled printing
US8601034B2 (en) 2011-03-11 2013-12-03 Sourcefire, Inc. System and method for real time data awareness
JP5565346B2 (ja) * 2011-03-11 2014-08-06 ブラザー工業株式会社 プリンタ
US8730502B2 (en) * 2011-05-20 2014-05-20 Xerox Corporation Method and system for managing print jobs using a cloud administration system
US8630008B2 (en) 2011-05-20 2014-01-14 Xerox Corporation Method and system for managing print device information using a cloud administration system
CN102999300A (zh) * 2011-09-08 2013-03-27 泰金宝电通股份有限公司 互动式系统
JP5921156B2 (ja) 2011-11-16 2016-05-24 キヤノン株式会社 印刷装置、レイアウト変更方法、及びプログラム
US9658806B2 (en) * 2011-12-16 2017-05-23 Intel Corporation Driverless printing by a target printer
US9069501B2 (en) 2012-02-28 2015-06-30 Hewlett-Packard Development Company, L.P. Mechanism that allows initiating print without being aware of the printer email address
EP2864894B1 (en) 2012-06-26 2020-06-10 Hewlett-Packard Development Company, L.P. Exposing network printers to wi-fi clients
US9400622B2 (en) 2012-06-29 2016-07-26 Hewlett-Packard Development Company, L.P. Path independent print queues
JP6182855B2 (ja) * 2012-12-04 2017-08-23 株式会社リコー 画像処理システム及び情報同期方法
US9122436B2 (en) 2013-03-11 2015-09-01 Xerox International Partners Virtual printer interface node
US8970859B2 (en) 2013-03-11 2015-03-03 Xerox International Partners Virtual printer interface node
US9098218B2 (en) 2013-03-11 2015-08-04 Xerox International Partners System for authenticating communications between a non-cloud ready networked printer and a cloud-based servise through a virtual printer interface device
US8913272B2 (en) * 2013-03-11 2014-12-16 Xerox International Partners Virtual printer interface node
US8970885B2 (en) 2013-03-11 2015-03-03 Xerox International Partners Virtual printer interface node
US8908214B2 (en) 2013-03-11 2014-12-09 Xerox International Partners Virtual printer interface node
US8908213B2 (en) 2013-03-11 2014-12-09 Xerox International Partners Virtual printer interface node
US8917414B2 (en) 2013-03-11 2014-12-23 Xerox International Partners Virtual printer interface node
US9047027B2 (en) 2013-03-11 2015-06-02 Xerox International Partners System for authenticating communications between a non-cloud ready networked printer and a cloud-based service through a virtual printer interface device
US9277353B2 (en) * 2013-04-02 2016-03-01 Xerox Corporation Methods and systems for locating peripheral devices
US9356882B2 (en) 2014-02-04 2016-05-31 Printeron Inc. Streamlined system for the transmission of network resource data
RU2575994C2 (ru) * 2014-06-19 2016-02-27 Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом" - Госкорпорация "Росатом" Способ реализации сетевой печати
KR200483273Y1 (ko) 2014-11-10 2017-04-27 엠아이산업 주식회사 도난 방지 기능이 부가된 그레이팅
JP6499423B2 (ja) 2014-11-18 2019-04-10 キヤノン株式会社 情報処理システム、情報処理装置、及びその制御方法とプログラム
KR200482817Y1 (ko) 2015-05-08 2017-03-07 엠아이산업 주식회사 완충 그레이팅
EP3376748B1 (en) * 2017-03-15 2020-02-26 Zhuhai Seine Technology Co., Ltd. Image forming apparatus and system
JP7207947B2 (ja) * 2018-10-29 2023-01-18 キヤノン株式会社 印刷制御装置および印刷変換プログラム
WO2022060364A1 (en) * 2020-09-18 2022-03-24 Hewlett-Packard Development Company, L.P. Data visualization models and instruction models for rendering data visualization models
US11573747B2 (en) 2020-09-25 2023-02-07 Fmr Llc Systems and methods for a printer reverse redirector
JP2022070771A (ja) * 2020-10-27 2022-05-13 シャープ株式会社 画像形成装置、設定方法及びシステム

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US626693A (en) * 1899-06-13 Bicycle-support
US4466065A (en) 1982-05-17 1984-08-14 International Business Machines Corporation Queuing capability in a foreground task
JP2741726B2 (ja) * 1993-06-28 1998-04-22 富士通株式会社 共用出力手段のセキュリティ確保方法及びセキュリティ確保システム
JPH07225731A (ja) * 1994-02-10 1995-08-22 Fuji Xerox Co Ltd ネットワークにおける文書処理装置
JPH07248889A (ja) * 1994-03-11 1995-09-26 Fuji Xerox Co Ltd プリントシステム
US5580177A (en) 1994-03-29 1996-12-03 Hewlett-Packard Company Printer/client network with centrally updated printer drivers and printer status monitoring
JP3056948B2 (ja) * 1994-06-09 2000-06-26 キヤノン株式会社 印刷装置及びその制御装置、及び印刷装置の制御方法
US6043898A (en) 1996-05-31 2000-03-28 Sun Microsystems, Inc. Method and system for concurrently executing multiple spooling systems in a networked computer system
US6452692B1 (en) * 1996-12-02 2002-09-17 Sun Microsystems, Inc. Networked printer server
JP3262518B2 (ja) * 1996-12-27 2002-03-04 キヤノン株式会社 プリントシステムおよび情報処理装置および印刷制御装置およびその方法およびコンピュータ読み取り可能なプログラムが格納された記憶媒体
US6184996B1 (en) 1997-06-18 2001-02-06 Hewlett-Packard Company Network printer with remote print queue control procedure
US6144959A (en) * 1997-08-18 2000-11-07 Novell, Inc. System and method for managing user accounts in a communication network
JPH11161451A (ja) 1997-09-26 1999-06-18 Hitachi Koki Co Ltd 印刷システム
EP0907120A3 (en) 1997-10-02 2004-03-24 Tumbleweed Software Corporation Method amd apparatus for delivering documents over an electronic network
US6288790B1 (en) 1998-05-15 2001-09-11 International Business Machines Corporation Mobility support for printing
RU2189638C2 (ru) 1998-05-27 2002-09-20 Дайболд, Инкорпорейтед Способ напечатания документа с помощью автоматического банковского аппарата, автоматический банковский аппарат (варианты) и способ печатания документа с его помощью
US6498656B1 (en) 1998-08-26 2002-12-24 International Business Machines Corporation Rule based selection criteria for controlling print job distribution
US6266693B1 (en) * 1998-08-31 2001-07-24 Toshiba America Information Systems Inc. Method of controlling printer information in a network environment
US6563955B2 (en) * 1998-11-13 2003-05-13 Xerox Corporation Method and apparatus for analyzing image data to use multiple transforms for enhanced image data transmission
JP2000172465A (ja) * 1998-12-01 2000-06-23 Canon Inc インターネットプリンティングシステム
US6424424B1 (en) * 1999-01-19 2002-07-23 Hewlett-Packard Company Method and apparatus for automatic installation of shared printers over a network
JP2000301803A (ja) * 1999-04-21 2000-10-31 Canon Inc 印刷システム、印刷データ処理装置、印刷データ処理方法および記憶媒体
JP2000330734A (ja) 1999-05-14 2000-11-30 Tokyo Denshi Sekkei Kk ネットワークプリント方法および該方法を用いたネットワークプリントシステム
JP2001043046A (ja) * 1999-07-27 2001-02-16 Canon Inc 印刷処理システム及びその処理方法
JP3927731B2 (ja) * 1999-07-29 2007-06-13 キヤノン株式会社 印刷システム、情報処理装置、情報処理方法、印刷ジョブ登録方法及び記録媒体
JP2001146049A (ja) * 1999-11-19 2001-05-29 Nec Corp プリンタシステム及びそれを用いた描画処理方法及び描画処理を行うプログラムを記録した記録媒体
US6842766B2 (en) 1999-12-09 2005-01-11 Microsoft Corporation Client side caching of printer configuration
TW448653B (en) 1999-12-21 2001-08-01 Inventec Corp Sever structure supporting client's terminal equipment
JP2001222481A (ja) 2000-02-08 2001-08-17 Canon Inc 印刷システム及び印刷制御方法
JP2001282474A (ja) * 2000-03-30 2001-10-12 Canon Inc 印刷制御装置、印刷システム、印刷制御方法及び記憶媒体
JP4438036B2 (ja) * 2000-06-13 2010-03-24 キヤノン株式会社 印刷システム、印刷方法及び記憶媒体、画像処理装置及びその制御方法
US6814510B1 (en) * 2000-08-02 2004-11-09 Xerox Corporation Method and apparatus for automatic update of a printer driver configuration and status
JP2002140297A (ja) * 2000-10-31 2002-05-17 Pfu Ltd 稼働率算出方法、稼働率算出システム、および記録媒体
JP2002215361A (ja) 2001-01-16 2002-08-02 Canon Inc 情報処理装置及び印刷管理装置及び印刷管理システム及びその方法及びコンピュ―タ読み取り可能なプログラムが格納された記憶媒体及び印刷制御プログラム
JP2002215350A (ja) * 2001-01-16 2002-08-02 Canon Inc 情報処理装置、情報処理システム、分散出力制御方法および記録媒体
JP3826080B2 (ja) * 2001-10-30 2006-09-27 キヤノン株式会社 情報処理装置及びその制御方法、制御プログラム、並びに媒体
US7149826B2 (en) * 2002-08-05 2006-12-12 Hewlett-Packard Development Company, L.P. Peripheral device output job routing
US7365872B2 (en) * 2003-01-03 2008-04-29 Microsoft Corporation Client computer system, method and computer readable medium comprising executable instructions for rendering printable documents in a native printer language on the network
US20050213115A1 (en) 2004-03-29 2005-09-29 Bruce Johnson Print job system and method
US7505168B2 (en) 2004-12-30 2009-03-17 Microsoft Corporation Distributed client side printing methods and systems

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100440131C (zh) * 2005-03-30 2008-12-03 精工爱普生株式会社 打印作业信息显示系统、打印系统、打印作业管理装置
CN100403251C (zh) * 2005-06-29 2008-07-16 三星电子株式会社 在离线时控制图像形成装置的打印作业的方法和装置
CN101335757B (zh) * 2007-06-28 2015-04-22 三星电子株式会社 在网络图像形成装置中允许分组的方法和装置
CN102189848A (zh) * 2010-02-09 2011-09-21 苹果公司 便于进行无驱动打印的系统
US8610928B2 (en) 2010-02-09 2013-12-17 Apple Inc. Framework that supports driverless printing
US8610927B2 (en) 2010-02-09 2013-12-17 Apple Inc. Walk-up printing without drivers
CN102446076A (zh) * 2010-09-30 2012-05-09 佳能株式会社 打印系统、打印方法、打印服务器及控制方法
CN102446076B (zh) * 2010-09-30 2014-11-05 佳能株式会社 打印系统、打印方法、打印服务器及控制方法
US8675215B2 (en) 2012-01-31 2014-03-18 Apple Inc. Using regions of interest to scale print data for print jobs
US8891115B2 (en) 2012-02-03 2014-11-18 Apple Inc. Configuration of print data for print jobs based on document-processing capabilities of printers
US9298401B2 (en) 2012-02-03 2016-03-29 Apple Inc. Configuring print jobs associated with unsupported document formats
CN106354439A (zh) * 2015-07-15 2017-01-25 日本冲信息株式会社 一种印刷系统

Also Published As

Publication number Publication date
BR0306093A (pt) 2005-05-17
US7365872B2 (en) 2008-04-29
JP4989844B2 (ja) 2012-08-01
US20080130051A1 (en) 2008-06-05
KR20040062888A (ko) 2004-07-09
MY143417A (en) 2011-05-13
JP5133430B2 (ja) 2013-01-30
TWI450534B (zh) 2014-08-21
US20040130740A1 (en) 2004-07-08
EP1435565B1 (en) 2018-03-21
KR101099262B1 (ko) 2011-12-28
TWI342693B (en) 2011-05-21
CN1525305B (zh) 2010-05-26
CA2454492C (en) 2013-07-30
JP2011081843A (ja) 2011-04-21
AU2003271331B2 (en) 2009-12-10
PL364213A1 (en) 2004-07-12
TW200417200A (en) 2004-09-01
RU2349953C2 (ru) 2009-03-20
US8233177B2 (en) 2012-07-31
JP2004213671A (ja) 2004-07-29
MXPA03012018A (es) 2005-04-11
ZA200309901B (en) 2004-08-13
AU2003271331A1 (en) 2004-07-22
EP1435565A2 (en) 2004-07-07
RU2003137777A (ru) 2005-06-10
TW201101744A (en) 2011-01-01
EP1435565A3 (en) 2007-12-05
CA2454492A1 (en) 2004-07-03

Similar Documents

Publication Publication Date Title
CN1525305B (zh) 网络系统及其中可打印文档的客户方呈现方法
US7265860B2 (en) Load balancing print jobs across multiple printing devices
US8014025B2 (en) System and method for outputting a job
US6636891B1 (en) Methods and apparatus for controlling an input or output device over the internet
CN1107252C (zh) 用于将设置从源设备复制到目标设备的系统和方法
US20100103453A1 (en) Printing system and control method of the printing system
US8330980B2 (en) System, method, and apparatus for networked print management
US20050102442A1 (en) Printer pool administration policy
US20100134818A1 (en) Data processing apparatus, printer network system, data processing method, and computer-readable recording medium thereof
CN100478978C (zh) 向打印机传输文档和资源的系统
CN1453696A (zh) 在工作站上的打印机实例的远程创建
JPH096564A (ja) イベント関連情報を自動的に伝送する装置
US10423375B2 (en) Non-transitory computer-readable storage medium, client computer, and print method
CN102103475A (zh) 打印任务管理装置、系统及方法
GB2487389A (en) Transfer of print jobs between print servers
EP2037353A2 (en) Distributed limit-based accounting for print jobs
JPH11134134A (ja) 印刷システム
EP2680127B1 (en) Image forming system and method in which client apparatuses are notified via print server of event generated in image forming apparatus
Sadgat Resource and job management concepts in distributed systems
JP2017049978A (ja) 情報処理装置、情報処理方法、プログラムおよび情報処理システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
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: 20150429

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

Effective date of registration: 20150429

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100526

Termination date: 20200102