[go: up one dir, main page]

CN1224202A - Client/server printer driver system - Google Patents

Client/server printer driver system Download PDF

Info

Publication number
CN1224202A
CN1224202A CN 98126981 CN98126981A CN1224202A CN 1224202 A CN1224202 A CN 1224202A CN 98126981 CN98126981 CN 98126981 CN 98126981 A CN98126981 A CN 98126981A CN 1224202 A CN1224202 A CN 1224202A
Authority
CN
China
Prior art keywords
server
client
print job
processed
computing device
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.)
Pending
Application number
CN 98126981
Other languages
Chinese (zh)
Inventor
巴里·R·卡维尔
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.)
Lexmark International Inc
Original Assignee
Lexmark International Inc
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 Lexmark International Inc filed Critical Lexmark International Inc
Priority to CN 98126981 priority Critical patent/CN1224202A/en
Publication of CN1224202A publication Critical patent/CN1224202A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

客户/服务器打印机驱动程序包括能够将所述打印作业划分成将被客户侧和服务器侧进行处理的多个部分并将所述作业的服务器侧部分传送给能够对所述打印作业的客户侧部分进行处理的服务器子系统以便建立和接收经过处理的服务器侧部分的客户侧子系统。所述系统具有一个能够从所述客户侧子系统接收服务器侧部分并对这些部分进行处理以便建立经过处理的服务器侧部分和向所述客户侧传送服务器侧部分的服务器侧子系统。

The client/server printer driver includes the ability to divide the print job into parts to be processed by the client side and the server side and to pass the server side part of the job to the client side part of the print job. The processed server subsystem to build and receive the processed server-side part of the client-side subsystem. The system has a server-side subsystem capable of receiving server-side parts from the client-side subsystem and processing the parts to create a processed server-side part and transmitting the server-side part to the client-side.

Description

客户/服务器打印机驱动程序系统Client/Server Printer Driver System

本发明涉及一种打印机驱动程序。特别是,本发明涉及一种用于在网络计算机(“NC”)、网络设备和能够进行打印的其它非PC装置上执行打印作业的客户/服务器系统。The invention relates to a printer driver. In particular, the present invention relates to a client/server system for executing print jobs on network computers ("NCs"), network appliances, and other non-PC devices capable of printing.

网络计算机是一种连接到局域网(“LAN”)或因特(Internet)网上的小型计算机,包含显著的本地处理智能。这种NC能够运行从LAN或因特网下载的或从不可变本地存储器(例如只读CD-ROM)加载的应用程序。NC通常不具有本地永久性存储器,而是远程存储信息。因此,NC高度依赖于所述网络。另外,NC的特征在于使用非传统的操作系统,经常使用电视监视器用于显示和具有有限的本地容量。与NC相关的当前规划目标市场是:A network computer is a small computer connected to a local area network ("LAN") or Internet (Internet) network, containing significant local processing intelligence. Such an NC is capable of running applications downloaded from a LAN or the Internet or loaded from non-volatile local storage such as read-only CD-ROMs. NCs generally do not have local persistent memory, but store information remotely. Therefore, NC is highly dependent on the network. In addition, NC is characterized by the use of non-traditional operating systems, often uses television monitors for display and has limited local capacity. The currently planned target markets relevant to NC are:

家庭-新消费者易于使用Home - Ease of use for new consumers

教育-与传统具有多控制的PC相比,是更为廉价的解决办法Education - an inexpensive solution compared to traditional PCs with multiple controls

商业-在服务器/MIS级更廉价的连接和更多的控制Commercial - cheaper connections and more control at the server/MIS level

类似的,网络设备(诸如是因特电话等)是一种包含计算能力的专用装置并可以被连接到中央服务器、LAN或所述因特网。Similarly, a network device, such as an Internet phone, is a dedicated device containing computing power and can be connected to a central server, a LAN, or the Internet.

传统的个人计算机(“PC”)打印机驱动程序被设计成在驻留有产生打印请求的应用程序的PC上使用。图1示出了一个示例驱动程序系统。应用程序130将希望的打印数据转换成GDI132或其它文本命令和图解具有相关页位置的基本数据和/或形成控制。所述打印作业可以被假脱机处理150(即存储)以便允许使用者利用应用程序130恢复工作。可以利用驱动程序100将这些命令格式化成可识别的工业规定数据定义(例如PCL)或打印机驱动程序100可以使用应用程序130和/或平台中间命令(例如Microsoft WindowsTM GDI基本数据)和作用于这些命令以建立内部直接打印机命令170以控制打印机硬件120。所述打印机不一定必须实际附着到驻留有应用程序130和驱动程序100的PC110上,但可以远程地设置在诸如LAN网络(未示出)上。Conventional personal computer ("PC") printer drivers are designed for use on the PC where the application program that makes the print request resides. Figure 1 shows an example driver system. The application program 130 converts the desired print data into GDI 132 or other text commands and diagrams basic data with associated page positions and/or form controls. The print job may be spooled 150 (ie, stored) to allow the user to resume work using the application 130 . Driver 100 can be used to format these commands into recognizable industry-specified data definitions (e.g., PCL) or printer driver 100 can use application 130 and/or platform intermediate commands (e.g., Microsoft Windows GDI primitives) and act on these command to create internal direct printer commands 170 to control the printer hardware 120. The printer does not necessarily have to be physically attached to the PC 110 where the application 130 and the driver 100 reside, but may be remotely located on a network such as a LAN (not shown).

具有PC侧打印机驱动程序系统的一个好处在于所述处理移到所述PC本身(而不是停留在打印机处),借此允许更大的灵活性和控制。这种系统的另一个好处在于在使打印机硬件本身的成本最小的同时可以通过使用更加强大的主机获得更先进的功能。One benefit of having a PC-side printer driver system is that the processing is moved to the PC itself (instead of staying at the printer), thereby allowing greater flexibility and control. Another benefit of such a system is that more advanced functions can be obtained through the use of more powerful host computers while minimizing the cost of the printer hardware itself.

作为将以传统主机为基础的打印机驱动程序模块装到网络计算机模块(如图2所示)的一种尝试,存在受到所述NC限制结果的问题。在NC环境中当前解决办法所存在的问题是由所述NC装置仅具有非常有限量的随机存取存储器(“RAM”)和没有永久性存储器(允许他们实现最低成本目标)而引起的。相反,几乎所有的标准PC打印机驱动程序都使用对本地永久性存储器的本地假脱机处理。而对于NC来讲这通常是不可能的。另外,利用通常是4MB的少量局部RAM,特别是如果需要打印彩色位图或复杂图形图象,经常会出现对所述驱动程序、应用程序和打印数据不够的存储器。另外,很多如今正在开发的NC装置具有不同的操作系统和具有不同的API和/或GDI接口定义,从而使得开发打印机驱动程序非常的麻烦。因此,传统的平台支持需要新软件驱动程序的产生。As an attempt to install a conventional host-based printer driver module into a network computer module (as shown in FIG. 2), there is a problem with the consequences of the NC limitations described. The problems with current solutions in the NC environment arise from the fact that the NC devices have only a very limited amount of random access memory ("RAM") and no persistent memory (allowing them to achieve their lowest cost goals). In contrast, almost all standard PC printer drivers use local spooling to local persistent storage. For NC this is usually not possible. Also, with a small amount of local RAM, typically 4MB, there is often insufficient memory for the drivers, applications and print data, especially if color bitmaps or complex graphic images need to be printed. In addition, many NC devices being developed today have different operating systems and have different API and/or GDI interface definitions, making it very cumbersome to develop printer drivers. Therefore, legacy platform support requires the generation of new software drivers.

在NC210(图2)上的传统打印工具采用了标准的打印模块。例如,在所述NC系统中,服务器200被用于加载应用程序130、与网络通信和存储NC210所需要的数据。NC210本身运行可以请求打印的应用程序130。其它的工具细节与在用于PC的标准打印模块中的相同(见图1)。Traditional printing tools on the NC210 (Figure 2) use standard printing modules. For example, in the NC system, the server 200 is used to load the application program 130 , communicate with the network, and store data required by the NC 210 . NC 210 itself runs an application 130 that can request printing. Other tool details are the same as in the standard printing module for PC (see Figure 1).

这种传统NC打印模块的好处在于1)它与当前的驱动程序模块类似,2)所述GUI模块已经为所述平台了解。但是,所述NC系统存在这种打印模块的下述缺陷。即在所述NC上存在严重的存储器和图象限制。而且,NC硬件差别对于其上的软件运行和与NC相连的硬件产生独特的问题。另外,传统的假脱机处理系统在所述NC在存储空间和/或存储器方式受到限制的情况下是不能接受的,因此,不能处理即使是规模适中的打印作业,特别是包含大量图形数据的打印作业。这种打印系统不能利用具有最少RAM的NC进行工作。The benefits of this legacy NC printing module are that 1) it is similar to the current driver module and 2) the GUI module is already known to the platform. However, the NC system has the following disadvantages of such printing modules. That is, there are severe memory and graphics constraints on the NC. Furthermore, NC hardware differences create unique problems for the software on which it runs and the hardware that interfaces with the NC. In addition, conventional spooling systems are unacceptable in situations where the NC is limited in storage space and/or memory means, and therefore cannot handle even moderately sized print jobs, especially those containing large amounts of graphics data. print job. Such a printing system cannot work with an NC with minimal RAM.

从这些缺陷的角度出发,本发明提出了一种用于NC特别有效的新的打印机驱动程序系统,。简单地说,本发明将打印任务分成能够进行本地处理的多个部分和能够被所述服务器进行处理的多个部分。通常,所述服务器比所述NC更能够对数据进行处理并具有数量较多的存储器空间。本发明的好处在于所述服务器被用于暂存和处理,借此以减轻所述NC的负担。对更加复杂和高质量信息的打印比使用所述NC内的传统驱动程序更加容易。From the viewpoint of these deficiencies, the present invention proposes a new printer driver system particularly effective for NC. Briefly, the present invention divides a print job into parts that can be processed locally and parts that can be processed by the server. Typically, the server is more capable of processing data and has a larger amount of memory space than the NC. The advantage of the present invention is that the server is used for temporary storage and processing, thereby reducing the burden on the NC. Printing of more complex and high quality information is easier than using traditional drivers within the NC.

本发明克服了对所述NC装置的限制,但仍然允许使用者根据当前欣赏的图形容量进行打印。使用本发明,可以克服缺少用于保存中间数据(假脱机)的能力的问题和缺少用于建立图形图象的空间的问题。建立用于打印的复杂位图的困难任务被移到具有足够处理能力和存储器的服务器。实质上,所述驱动程序在NC和服务器之间被分开,其中的每一部分执行最适于其所驻留的系统的任务。增加了一个附加的作业管理部分,用于执行在服务器上的打印图象建立任务的启动和管理在服务器和所述NC中软件之间的应答和相互作用。在打印时NC和服务器之间的网络信息流通量增加,但与本发明所提供的极大增强功能相比,这仅是一个次要问题(特别是对于其中具有有效带宽的快速链接被置于适当位置的内部网环境)。本发明还提供一个可选择的驱动功能处理的位置。The present invention overcomes the limitations of the NC device, but still allows the user to print according to the graphics capacity currently being enjoyed. Using the present invention, the problem of lack of capacity for saving intermediate data (spooling) and lack of space for building graphic images can be overcome. The difficult task of building complex bitmaps for printing is offloaded to servers with sufficient processing power and memory. Essentially, the driver is split between the NC and the server, with each part performing the tasks most appropriate for the system it resides on. An additional job management section is added for performing the initiation of print image creation tasks on the server and managing the responses and interactions between the server and the software in the NC. Increased network traffic between NC and server when printing, but this is only a minor issue compared to the greatly enhanced capabilities provided by the present invention (especially for fast links where efficient bandwidth is placed Intranet environment in place). The present invention also provides a selectable location for drive function processing.

本发明的附加优点部分如下描述,部分可从所述描述中清楚看到,或通过实践本发明可以学习到。借助于在所附权利要求中特别指出的元件和元件组合可以实现和获得本发明的优点。另外,还应当理解,前面的一般描述和下面的详细描述仅仅作为例子和解释,并不对本发明构成限制。Additional advantages of the invention are described in part hereinafter and in part will be apparent from the description, or may be learned by practice of the invention. The advantages of the invention may be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. In addition, it is to be understood that both the foregoing general description and the following detailed description are by way of example and explanation only and are not restrictive of the invention.

图1的框图示出了现有技术以PC为基础的打印机驱动程序系统;The block diagram of Fig. 1 shows prior art PC-based printer driver system;

图2的框图示出了应用到网络计算机(NC)装置的传统的驱动程序系统;The block diagram of Fig. 2 shows the conventional driver program system applied to the network computer (NC) device;

图3-6的框图和处理流程涉及到本发明的打印机驱动程序系统。The block diagrams and process flows of Figures 3-6 relate to the printer driver system of the present invention.

通过参考本发明最佳实施例的下面详细描述及其附图可以更加容易地理解本发明。The present invention can be understood more readily by reference to the following detailed description of the preferred embodiment of the invention and accompanying drawings.

在披露和描述本发明的方法和装置之前,应当理解,这里所示用的术语仅仅是为了描述特定实施例的目的并非被作为限制。必须指出,作为在说明书和权利要求中所使用的,除非上下文明确指出以外,单数形式“一”和“该”也包括复数。Before the methods and apparatus of the present invention are disclosed and described, it is to be understood that the terminology shown and used herein is for the purpose of describing particular embodiments only and is not to be regarded as limiting. It must be noted that, as used in the specification and claims, the singular forms "a", "an" and "the" include plural referents unless the context clearly dictates otherwise.

尽管本发明特别适用于在结合NC情况下使用,还应当指出,所述客户/服务器打印机驱动程序系统模块并不局限于NC并可以被应用于可能期望将打印数据建立任务从请求计算机转移的情况。While the present invention is particularly suited for use in conjunction with NCs, it should also be noted that the client/server printer driver system module is not limited to NCs and can be used where it may be desirable to offload the print data creation task from the requesting computer .

如上面所指出的,本发明提供一种新的打印机驱动程序系统,该系统可以有效地用于NC。本发明将打印数据分成多个可以被进行本地处理的部分和多个由一个服务器进行处理的部分。所述服务器通常比NC更能够进行处理和具有更大的存储空间。所述服务器被用于暂存和处理,借此以减轻所述NC的负荷。As pointed out above, the present invention provides a new printer driver system which can be effectively used for NC. The present invention divides print data into parts that can be processed locally and parts that can be processed by a server. The server is usually more capable of processing and has more storage space than the NC. The server is used for temporary storage and processing, thereby reducing the load of the NC.

根据本发明,如果所述驱动程序是由诸如JAVA编程语言的平台独立语言写成的,那么,相同的驱动程序软件可以被应用在支持Java虚拟机(JVM)定义的任意NC装置上。对于这个平台独立的唯一附加要求是与作为图形和正文基本单元的源的公用API的定义。According to the present invention, if the driver is written in a platform-independent language such as JAVA (R) programming language, the same driver software can be applied to any NC device that supports Java Virtual Machine (JVM) definition. The only additional requirement for this platform independence is the definition of a common API as a source of graphics and text primitives.

本发明提供一个系统,用于使用所述客户/服务器打印机驱动程序对一个打印作业进行处理,客户/服务器打印机驱动程序用于与至少一个服务器侧计算装置进行通信的客户侧计算装置。所述系统包括一个客户侧驱动程序子系统、一个服务器侧子系统和一个与所述客户侧驱动程序子系统进行通信的装置,用于将经过处理的打印作业输出给信号处理装置。所述客户侧驱动程序子系统本身包括一个用于将所述打印作业传送给服务器侧计算装置的服务器侧驱动程序子系统的装置。所述服务器侧驱动程序子系统包括用于接收来自所述客户侧驱动程序子系统传送装置的所述打印作业的装置。所述服务器侧驱动程序子系统还包括对所述打印作业进行处理借此以建立经过处理的服务器侧打印作业的装置。所述服务器侧子系统还包括用于将经过处理的服务器侧打印作业传送给客户侧驱动程序子系统的一个装置。最后,所述客户侧驱动程序子程序还包括一个用于接收来自所述服务器侧子系统的经过处理的服务器侧打印作业的装置。The present invention provides a system for processing a print job using said client/server printer driver for a client-side computing device in communication with at least one server-side computing device. The system includes a client-side driver subsystem, a server-side subsystem, and means for communicating with the client-side driver subsystem for outputting processed print jobs to signal processing means. The client-side driver subsystem itself includes a means for communicating the print job to the server-side driver subsystem of the server-side computing device. The server-side driver subsystem includes means for receiving the print job from the client-side driver subsystem delivery means. The server-side driver subsystem also includes means for processing the print job thereby to create a processed server-side print job. The server-side subsystem also includes a means for communicating the processed server-side print job to the client-side driver subsystem. Finally, said client-side driver subroutine also includes a means for receiving a processed server-side print job from said server-side subsystem.

本发明还提供一种处理打印作业的客户服务器方法,用于与至少一个服务器侧计算装置进行通信的客户侧计算装置。这种方法包括但不局限于从所述客户侧向服务器侧计算装置传送所述打印作业的步骤。所述方法还包括在服务器侧接收来自客户侧传送装置的打印作业和在所述服务器侧对所述打印作业进行处理以建立经过处理的打印作业的步骤。然后,这个经过处理的打印作业从服务器侧传送给客户侧,并被所述客户侧接收和输出给信号处理装置。The present invention also provides a client-server method of processing print jobs for a client-side computing device in communication with at least one server-side computing device. This method includes, but is not limited to, the step of transferring said print job from said client side to a server side computing device. The method also includes the steps of receiving at the server side the print job from the client-side transmitter and processing the print job at the server side to create a processed print job. This processed print job is then transmitted from the server side to the client side, and is received and output by the client side to the signal processing device.

例如,所述信号处理装置可以是一个能够接收和打印所述打印作业的打印机。所述方法还包括在所述打印机上接收和打印所述打印作业的步骤。另外,本发明提供一种用于使用客户/服务器打印驱动程序对打印作业进行处理的系统,客户服务器打印机驱动程序用于与至少一个服务器侧计算装置进行通信客户侧计算装置。这个系统包括一个客户侧驱动程序子系统。这个子系统包括用于将所述打印作业分成一个或多个由客户侧、服务器侧或其组合进行处理的部分。另外,所述客户侧驱动程序子系统包括用于响应所述划分装置将所述打印作业的服务器侧部分传送给服务器侧计算装置的服务器侧驱动程序子系统的一个装置。所述客户侧子系统还包括一个用于对打印作业的客户侧部分进行处理借此以建立一个或多个经过处理的客户侧打印作业部分的装置。所述客户侧子系统还包括用于接收经过处理的服务器侧打印作业部分并可能将其结果与客户侧结果相结合以建立总结果的装置。For example, said signal processing means may be a printer capable of receiving and printing said print jobs. The method also includes the step of receiving and printing the print job on the printer. Additionally, the present invention provides a system for processing print jobs using a client/server print driver for a client-side computing device in communication with at least one server-side computing device. This system includes a client-side driver subsystem. This subsystem includes components for dividing the print job into one or more parts for processing by the client side, the server side, or a combination thereof. Additionally, the client-side driver subsystem includes a means for communicating the server-side portion of the print job to the server-side driver subsystem in response to the dividing means. The client-side subsystem also includes a means for processing client-side portions of the print job thereby to create one or more processed client-side print job portions. The client-side subsystem also includes means for receiving processed server-side print job portions and possibly combining their results with client-side results to create an overall result.

另外,这个系统还包括一个服务器侧驱动程序子系统,该子系统包括一个用于接收来自所述客户侧驱动程序子系统传送装置的所述打印作业的服务器侧部分的装置。服务器侧子系统还包括一个用于对打印作业的服务器侧部分进行处理并借此以建立一个或多个经过处理的服务器侧打印作业部分的装置。最后,所述服务器侧外子系统包括一个用于将一个或多个经过处理的服务器侧打印作业部分传送给所述客户侧驱动程序子系统的装置。Additionally, the system includes a server-side driver subsystem including a means for receiving the server-side portion of said print job from said client-side driver subsystem delivery means. The server-side subsystem also includes a means for processing the server-side portion of the print job to thereby create one or more processed server-side print job portions. Finally, the server-side external subsystem includes a means for communicating one or more processed server-side print job portions to the client-side driver subsystem.

所述系统还包括一个用于与客户侧驱动程序子系统进行通信的装置,用于向信号处理装置(例如打印机)输出经过处理的客户侧和服务器侧打印作业部分。The system also includes a means for communicating with the client-side driver subsystem for outputting the processed client-side and server-side print job portions to a signal processing device, such as a printer.

打印作业的客户侧部分可以对应于正文信息和所述打印作业的服务器侧部分对应于图形信息,或在客户和服务器能力基础上的其它安排。The client-side portion of the print job may correspond to text information and the server-side portion of the print job may correspond to graphics information, or other arrangements based on client and server capabilities.

另外,所述划分装置还可以包括一个用于确定在客户和服务器侧计算装置之间通信量的装置,如果该通信量位于预定阈值范围之内,对所述打印作业进行划分,借此在使客户侧和服务器侧计算装置之间的通信量最小化、存储器容量和处理器速度等的基础上,将由客户侧和服务器侧或其相结合进行处理的一个或多个部分是优选的。另外,服务器侧计算装置是一个运行于一个网络的计算机,所述网络可以是一个局域网络或因特网。In addition, said dividing means may further include a means for determining the amount of communication between the client and server side computing means, and if the amount of communication is within a predetermined threshold range, said print job is divided, whereby when using One or more portions to be processed by the client side and server side or a combination thereof are preferred on the basis of minimization of communication between the client side and server side computing devices, memory capacity and processor speed, etc. In addition, the server-side computing device is a computer running on a network, which may be a local area network or the Internet.

本发明还提供一个对打印作业进行处理的方法,用于与至少一个服务器侧计算装置进行通信的客户侧计算装置。所述方法包括但不局限于下述步骤。首先,在客户侧将所述打印作业划分成将由所述客户侧、服务器侧或其相结合进行处理的一个或多个部分。其次,从所述客户侧向所述服务器侧计算装置传送所述打印作业的服务器侧部分。然后,在所述客户侧对所述打印作业的客户侧部分进行处理借此以建立一个或多个经过处理的客户侧打印作业部分和在服务器侧接收来自所述客户侧传送装置的所述打印作业的服务器侧部分。此后,在所述服务器侧对所述打印作业的服务器侧部分进行处理,借此以建立一个或多个经过处理的服务器侧打印作业部分和在服务器侧向所述客户侧传送一个或多个经过处理的服务器侧打印作业部分。最后,在客户侧接收经过处理的服务器侧打印作业部分并将经过处理的客户侧和服务器侧打印作业部分输出给信号处理装置(例如打印机)。The present invention also provides a method of processing print jobs for a client-side computing device in communication with at least one server-side computing device. The method includes but not limited to the following steps. First, the print job is divided on the client side into one or more parts to be processed by the client side, server side, or a combination thereof. Second, transmitting the server-side portion of the print job from the client-side to the server-side computing device. The client-side portion of the print job is then processed at the client-side thereby to create one or more processed client-side print job portions and receives at the server-side the print from the client-side delivery device The server-side portion of the job. Thereafter, the server-side portion of the print job is processed at the server-side, thereby creating one or more processed server-side print job portions and transmitting one or more processed server-side print job portions at the server-side to the client-side The server-side print job portion of the process. Finally, the processed server-side print job parts are received at the client side and the processed client-side and server-side print job parts are output to a signal processing device (eg a printer).

所述信号处理装置可以是一个能够接收客户侧和服务器侧打印作业并打印所述打印作业的一个打印机。所述打印作业的客户侧部分可以对应于正文信息和所述打印作业的服务器侧部分可以对应于图形信息,或其它的逻辑安排或任务的划分。另外,客户侧和服务器侧部分可以分别涉及“低”/“中”和“高”质量部分。如在下面的例子中示出的,可以具有多个客户侧或服务器侧部分,因此,只借助于举例,所述“低”和“中”质量部分应当被本地分开进行处理,见例如图6。The signal processing means may be a printer capable of receiving client-side and server-side print jobs and printing the print jobs. The client-side portion of the print job may correspond to text information and the server-side portion of the print job may correspond to graphics information, or other logical arrangement or division of tasks. Additionally, the client-side and server-side parts may relate to "low"/"medium" and "high" quality parts, respectively. As shown in the example below, there can be multiple client-side or server-side parts, so, by way of example only, the "low" and "medium" quality parts should be processed separately locally, see e.g. Figure 6 .

此外,所述划分步骤还包括确定在所述客户和服务器侧计算装置之间的通信量,如果所述量位于预定阈值范围之内,基于客户侧和服务器侧计算装置之间通信量最小化、处理速度、RAMH和永久缓冲存储等对所述打印作业进行划分,使一个或多个部分被客户侧、服务器侧或其相结合进行处理是优选的。In addition, said dividing step further includes determining the amount of communication between said client and server side computing devices, if said amount is within a predetermined threshold range, based on minimizing the amount of communication between the client and server side computing devices, Processing speed, RAMH and permanent buffer storage etc. Divide the print job such that one or more parts are processed by client side, server side or a combination thereof is preferred.

下面的例子试图对本专业技术领域内的技术人员提供一个完整的披露,并对如何构成、使用和评价本系统进行描述,作为本发明的纯粹示例而不是作为列本发明的发明人的发明范围的限制。试图保证关于数量(例如所述量等)的精度,但某些误差和偏差可能发生。The following example attempts to provide a complete disclosure to those skilled in the art, and describes how to construct, use and evaluate the system, as a pure example of the present invention rather than as a list of the scope of the inventor's invention of the present invention limit. Attempts are made to ensure accuracy with respect to quantities (eg, amounts stated, etc.), but some errors and deviations may occur.

例子example

例1:example 1:

在一个实施例中,客户/服务器打印模块运行如下(在NC的上下文中)(见图3)。下述功能是由服务器300处理的:1)应用程序服务,通信和数据存储;2)打印作业假脱机处理350;和3)打印数据建立360。下述功能是由NC310处理的:1)请求打印的应用程序330的运行;2)作业管理和用户接口(“JMUI”)控制380;3)打印机用户接口340;和4)打印格式化370。打印机装置320通常被连接到NC310,如图所示。但是,利用本发明系统通过简单地将格式化的打印数据370重新定向到适当的通信信道和输出装置上可以很容易地进行网络打印。In one embodiment, the client/server printing module operates as follows (in the context of the NC) (see Figure 3). The following functions are handled by the server 300: 1) application service, communication and data storage; 2) print job spooling 350; and 3) print data creation 360. The following functions are handled by NC 310: 1) execution of application programs 330 requesting printing; 2) job management and user interface ("JMUI") control 380; 3) printer user interface 340; and 4) print formatting 370. A printer device 320 is typically connected to NC 310 as shown. However, network printing is readily available using the system of the present invention by simply redirecting the formatted print data 370 to the appropriate communication channel and output device.

在NC310请求的基础上,服务器300提供可由NC310执行的应用程序330并加以运行。运行应用程序330的NC310产生打印请求。这个请求被本地地提供给NC310和作业管理和用户接口控制子系统380。这个子系统380是打印机驱动程序100的一部分。JMUI子系统380了解打印机用户接口340,它向所述系统的用户提供了一个用户接口。子系统380经过一个网络(未示出)将所述打印请求传送给服务器300。在服务器300一侧,所述打印请求被假脱机处理操作350并在远离NC310的地方建立打印数据(一般的位图象)360。最后,打印数据被从服务器300返回到NC310,并在这里执行最终的打印格式化370。对于NC310是本地(或经过网络附着)的打印装置320接收被格式化的数据并打印所述作业。The server 300 provides and runs the application program 330 executable by the NC 310 upon request from the NC 310 . NC 310 running application program 330 generates a print request. This request is provided locally to NC 310 and job management and user interface control subsystem 380 . This subsystem 380 is part of the printer driver 100 . The JMUI subsystem 380 understands the printer user interface 340 and provides a user interface to users of the system. Subsystem 380 transmits the print request to server 300 via a network (not shown). On the server 300 side, the print request is spooled 350 and the print data (typically a bit image) 360 is created away from the NC 310 . Finally, the print data is returned from the server 300 to the NC 310, where final print formatting 370 is performed. A printing device 320 that is local to (or network attached to) the NC 310 receives the formatted data and prints the job.

很明显,这个系统不再需要所述NC提供用于假脱机处理打印作业的本地存储器和存储空间。该系统还减轻了所述NC不得不分配处理和存储器资源以建立实际打印数据的负担。Obviously, this system no longer requires the NC to provide local memory and storage space for spooling print jobs. The system also relieves the NC from having to allocate processing and memory resources to create the actual print data.

例Ⅱ:Example II:

在另一个实施例(图4)中,本发明提供了一种用于NC的客户/服务器打印系统,在这个模型中,打印数据的特征在于打印驱动程序100的NC410部分和只有那些需要复杂、远程处理的所述打印作业部分被传送给服务器400。因此,简单的打印数据建立任务被进行本地处理。这个系统对没有使所述NC过载的打印作业的那些部分提供有效的本地处理。在这种情况下,依据可以获得的资源,所述作业部分可以在NC和服务器之间在“每页”、“每个频带”、“每行”、“每个作业”或其它基础上进行分割。就上述NC客户/服务器打印驱动程序模型来讲,所述打印作业的复杂部分是远程进行处理的。当根据简单和复杂打印作业来描述本系统时,这种分配不是绝对的。例如,工作标准(labor criteria)的划分能够以可得到的存储器(RAM)、永久性存储器和页面定向等为基础。In another embodiment (FIG. 4), the present invention provides a client/server printing system for NC. In this model, print data is characterized by the NC410 portion of the print driver 100 and only those that require complex, The remotely processed print job portion is transmitted to the server 400 . Therefore, simple print data creation tasks are handled locally. This system provides efficient local processing of those parts of the print job that do not overload the NC. In this case, the job part can be done between the NC and the server on a "per page", "per frequency band", "per row", "per job" or other basis depending on available resources segmentation. With the NC client/server print driver model described above, complex parts of the print job are handled remotely. This assignment is not absolute when describing the system in terms of simple and complex print jobs. For example, the division of labor criteria can be based on available memory (RAM), persistent memory, page orientation, and the like.

特别是,系统如在例I中所述运行,但具有下述变化。首先,JMUI控制子系统480试图提供一个附加的功能。具体地说,JMUI子系统480现在能够确定所述应用程序打印作业是比较简单(例如,具有较小存储器需要的文本)还是比较复杂(例如具有较大存储器需求的图形)。JMUI子系统480将复杂部分传送给服务器400以用于假脱机处理450打印数据建立460。JMUI子系统480在NC410处保持简单部分以用于本地打印数据建立465。最后,打印格式化470处于JMUI子系统480的控制之下,借此使JMUI子系统480能够监视必要的状态和页位置信息482,从而保证最后的打印机420的输出表示来自在服务器400和NC410(客户)侧上处理的数据部分的完整的页数据。由此,JMUI482在将命令传送给打印装置420本身之前负责重建所述打印数据。在这个例子中,只有复杂部分被传送给服务器400并在这里被假脱机处理450和处理460。In particular, the system was run as described in Example I, with the following changes. First, the JMUI control subsystem 480 attempts to provide an additional functionality. Specifically, the JMUI subsystem 480 is now able to determine whether the application print job is relatively simple (eg, text with small memory requirements) or complex (eg, graphics with large memory requirements). The JMUI subsystem 480 transmits the complex part to the server 400 for spooling 450 print data build 460 . JMUI subsystem 480 keeps the simple part at NC 410 for local print data build 465 . Finally, print formatting 470 is under the control of JMUI subsystem 480, thereby enabling JMUI subsystem 480 to monitor the necessary status and page position information 482 to ensure that the final printer 420 output representation comes from the server 400 and NC 410 ( Complete page data of the data part processed on the client) side. Thus, the JMUI 482 is responsible for reconstructing the print data before passing the command to the printing device 420 itself. In this example, only the complex part is transmitted to server 400 and spooled 450 and processed 460 there.

例Ⅲ:Example III:

另外,在另一个例子(图5)中,来自NC510应用程序530的所有打印作业都被直接传送给服务器500用于假脱机处理550。在这个实施例中,JMUI子系统580然后接收来自服务器500的被进行假脱机处理的作业,确定复杂程度585,并在该确定的基础上分配打印数据建立(560或565)。对于简单打印作业,本地建立所述数据565,但是,对于复杂打印作业,服务器500打印数据建立系统560反过来参考552被进行假脱机处理的打印作业550(还是在服务器500一侧)并使用它建立与包括打印行562或其它数据在内的复杂数据对应的打印数据560。系统的其余部分与上述相同。Also, in another example ( FIG. 5 ), all print jobs from NC 510 application 530 are sent directly to server 500 for spooling 550 . In this embodiment, the JMUI subsystem 580 then receives the spooled job from the server 500, determines the complexity level 585, and assigns the print data build based on that determination (560 or 565). For simple print jobs, the data is built 565 locally, however, for complex print jobs, the server 500 print data build system 560 in turn references 552 the spooled print job 550 (again on the server 500 side) and uses It creates print data 560 corresponding to complex data including print lines 562 or other data. The rest of the system is the same as above.

例Ⅳ:Example IV:

另外,在其它的例子中,本发明还提供了一个适用于与NC一起运行的客户/服务器打印驱动程序系统。这个实施例基本示于图6。Additionally, in other examples, the present invention provides a client/server print driver system adapted to operate with an NC. This embodiment is shown substantially in FIG. 6 .

对于全球因特网,由于每个打印译码都需要进出所述因特网,所以,来自NC打印请求的附加通信流量是一个障碍。作为对先前例子的加强,提供了下述例子,这些例子将某些基本的(文本和简单数据块图形)驱动程序图象功能返回到NC610。本地地执行标准打印,不需要LAN或因特通信,因此可以很快。另一方面,服务器600包含驱动程序100的一部分,这个部分被用于建立复杂图形图象。For the global Internet, the additional traffic from NC print requests is a hindrance since every print decoding needs to go in and out of the Internet. As an enhancement to the previous examples, the following examples are provided which return some basic (text and simple data block graphics) driver image functionality to the NC610. Standard printing is performed locally, does not require LAN or Internet communication, and can therefore be very fast. On the other hand, the server 600 contains a part of the driver 100 which is used to create complex graphic images.

服务器600将应用程序630装载到NC610中。希望进行打印的NC610应用程序630建立一个以具体本地连接的打印机620或远程打印机(未示出)为目标的打印对象(例如GDI命令)。驱动程序100取出所述数据并在数据类型的基础上确定如何建立打印图象以及向消费者提供用户接口640。为了在打印过程中使网络延时的影响最小,简单对象(文本、数据块图形)的存储和打印数据建立被本地进行665,但由于服务器600具有处理大量数据的足够的永久性存储器和处理能力,所以,比较复杂图形660的存储和建立是在服务器600处进行的。甚至对智能应用程序这样做也许是可行的,即将指向可以存储在假脱机处理数据650中的复杂位图和其它图形的指针或索引传送给驱动程序,而不是所有的数据。在数据复杂程度的基础上,应用数据可以被传送给假脱机程序650或局部NC,从而使复杂的大数据块决不会被下加载到NC上,直到它们被格式化以用于打印为止。下面将详细解释当前实施例的驱动程序部分。The server 600 loads the application program 630 into the NC 610 . An NC 610 application 630 wishing to print creates a print object (eg, a GDI command) targeting a particular locally attached printer 620 or a remote printer (not shown). The driver 100 fetches the data and determines how to build the print image and presents the user interface 640 to the customer based on the type of data. In order to minimize the impact of network delays during the printing process, the storage of simple objects (text, data block graphics) and the creation of print data are performed 665 locally, but since the server 600 has sufficient persistent memory and processing power to handle large amounts of data , therefore, the storage and establishment of the relatively complex graph 660 is performed at the server 600 . It may even be feasible for smart applications to pass pointers or indices to complex bitmaps and other graphics that may be stored in spooled data 650 to the driver, rather than all the data. Application data can be sent to the spooler 650 or local NC based on the complexity of the data so that complex large data blocks are never downloaded to the NC until they are formatted for printing . The driver part of the present embodiment will be explained in detail below.

一旦接收数据进行打印,数据经常被存储650(在服务器600处的假脱机操作)以允许用户较块地返回到应用程序630(如果数据量非常少,可以省略这个步骤)。驱动程序的作业管理部分680选择将被打印的数据部分,通常是由被称之为带的多个打印行识别的页部分。这个部分识别甚麽样的打印对象位于这个打印带内,然后由所述服务器600管理与这个带相关的打印图象数据的建立、选择用于简单文本的局部图象建立或启动复杂图形数据的建立。服务器600以与请求打印带相关的图形图象数据作为响应。这个图形数据668然后与任一本地显影的文本或其它数据(来自665)相结合建立打印带数据670。利用打印格式化程序670就打印机机械、电子特性(布线、间隔、时序)等对这个打印带数据进行校正。随后传送给打印机装置620。Once data is received for printing, the data is often stored 650 (spooled at server 600) to allow the user to return to the application 630 relatively quickly (this step can be omitted if the amount of data is very small). The job management portion 680 of the driver selects the portion of data to be printed, usually a portion of the page identified by a number of print lines called bands. This part identifies what kind of printing objects are located in this printing zone, and then the server 600 manages the creation of print image data related to this zone, selects partial image creation for simple text or initiates the creation of complex graphic data . Server 600 responds with graphic image data associated with the requested print tape. This graphics data 668 is then combined with any locally developed text or other data (from 665) to create print strip data 670. This print strip data is corrected with the print formatter 670 for printer mechanical, electrical characteristics (wiring, spacing, timing), etc. It is then sent to the printer device 620 .

通过分割在NC和服务器之间的驱动程序图象显影,非常简单的、比较便宜的打印机能够打印用户所希望的、利用NC装置的有限处理能力所不能打印的复杂图形。另外,简单打印不受因特网络延迟的限制或延迟。By splitting the driver image development between the NC and the server, very simple, relatively inexpensive printers can print complex graphics desired by the user that cannot be printed with the limited processing power of the NC device. Plus, simple printing is not limited or delayed by Internet latency.

参看图6,服务器600被用于存储文件数据、NC应用程序、NC打印机驱动程序软件、打印假脱机操作存储程序和标准的图象/字型(“I/F”)技术。服务器600计算机能够产生适当的打印数据,并能够将所述打印图象传送给远程打印机或NC610本地的打印机。NC610负责以运行要求文件数据的应用程序,请求适当打印驱动程序的加载、JMUI控制682(包括打印机用户接口640)、确定打印质量、将所述打印作业数据传送给适当的局部NC I/F技术(通常来自应用程序本身或来自增强的本地接口)或传送给用于它的I/F技术的所述服务器,并在需要时执行局部打印数据的建立,并重组用于最后同化的客户侧和服务器侧打印数据部分,并输出给附着到所述NC610上的打印机装置620(或将所建立的打印数据加载到服务器600、网络或其它用于远程打印或处理的装置上)。Referring to FIG. 6, a server 600 is used to store document data, NC application programs, NC printer driver software, print spoolers, and standard image/font ("I/F") technology. The server 600 computer can generate the appropriate print data and can transmit the print image to a remote printer or a printer local to the NC610. NC 610 is responsible for running applications requiring file data, requesting loading of appropriate print drivers, JMUI control 682 (including printer user interface 640), determining print quality, passing said print job data to the appropriate local NC I/F technology (usually from the application itself or from an enhanced local interface) or to said server for its I/F technology and, if required, performs the build-up of partial print data and reorganizes the client-side and The server side prints part of the data and outputs to the printer device 620 attached to the NC 610 (or uploads the created print data to the server 600, network or other devices for remote printing or processing).

客户/服务器打印驱动程序系统运行如下。文档数据605被从服务器600加载到NC610或由用户通过使用客户侧操作应用程序630产生。作为NC系统的标准特性,这个应用程序软件630本身可以被从服务器600下载607。然后,NC610运行所述应用程序630,对文档数据605进行访问。当应用程序630的用户请求打印文档数据605时,应用程序630将文档数据605传送到NC侧打印机驱动程序加载模块632。这个模块632确定加载哪种类型的驱动程序634,然后请求服务器600将适当的驱动程序软件634传送给客户610。这个驱动程序软件634被用于管理所述打印处理的剩余部分。The client/server print driver system operates as follows. The document data 605 is loaded from the server 600 to the NC 610 or generated by the user by using the client side operation application 630 . This application software 630 itself can be downloaded 607 from the server 600 as a standard feature of NC systems. Then, the NC 610 runs the application program 630 to access the document data 605 . When the user of the application program 630 requests to print the document data 605 , the application program 630 transfers the document data 605 to the NC-side printer driver loading module 632 . This module 632 determines which type of driver is loaded 634 and then requests the server 600 to transmit the appropriate driver software 634 to the client 610. This driver software 634 is used to manage the remainder of the print process.

在一个实施例中,所述眼务器600以及客户610打印驱动程序100子系统可以得到在所述应用程序中的文档数据605。因此,在所述应用程序630发出打印请求的基础上,在一个实施例中文档数据605被自动地传送给服务器600上的假脱机操作存储器650。另外,只有在所述打印装置的服务器部分被激活的情况下,这个传输才能够发生。In one embodiment, the server 600 and client 610 print driver 100 subsystem can obtain document data 605 in the application. Accordingly, document data 605 is automatically transferred to spooler 650 on server 600 in one embodiment upon the application 630 issuing a print request. Additionally, this transmission can only take place if the server portion of the printing device is activated.

一旦所述驱动程序软件634被装载,打印机驱动程序软件的JMUI子系统680被激活。JMUI子系统680与打印机用户接口640被集成在一起并执行一系列功能。首先,JMUI子系统680确定文件数据605是需要“高”、“中”或“低”质量(复杂程度)处理685。现有技术中的一个技术人员应当能够认识到“高”、“中”或“低”质量的确定是任意的,还应当认识到在不违反本发明的基本和新颖特征的基础上能够进行进一步和不同的区别。也可以使用其它的标准在客户和服务器之间分离所述打印作业,包括大小、复杂程度、数据类型等。JMUI子系统680能够监视服务器侧处理任务以及NC本地打印任务672。最后,JMUI子系统680能够指示所述服务器600是到NC局部打印机装置664或远程打印机装置662进行打印。Once the driver software 634 is loaded, the JMUI subsystem 680 of the printer driver software is activated. The JMUI subsystem 680 is integrated with the printer user interface 640 and performs a series of functions. First, the JMUI subsystem 680 determines whether the file data 605 requires "high", "medium" or "low" quality (complexity) processing 685 . One skilled in the art should recognize that the determination of "high", "medium" or "low" quality is arbitrary and that further and different differences. Other criteria may also be used to separate the print jobs between client and server, including size, complexity, data type, and the like. The JMUI subsystem 680 is capable of monitoring server-side processing tasks as well as NC local printing tasks 672 . Finally, the JMUI subsystem 680 can indicate to the server 600 whether to print to the NC local printer device 664 or the remote printer device 662 .

在所述驱动程序确定打印质量685之后,JMUI子系统680将所述文件数据传送给适当的图象/字型(I/F)子系统(652、654、656或658)。I/F子系统将文本和图形数据译码成在所述页上的位置以作为位图象光栅。在一个实施例中,可能的I/F子系统包括但不局限于:1)应用程序I/F技术658,2)增强的NC本地I/F技术656,3)增强的服务器侧I/F技术,4)标准的服务器侧I/F技术。例如,“低”质量作业是由应用程序I/F技术658处理的,而“中”质量作业是由增强的NC本地I/F技术656处理的。最后,“高”质量作业可以参考标准的服务器侧I/F技术652。另外,JMUI子系统680可以进一步确定任一作业的某些或全部在服务器600上由增强的服务器侧I/F技术654进行处理。在任一事件中,适当的I/F子系统负责在其输入端上打印数据的建立。另外,可以根据驱动程序的类型确定“低”、“中”和“高”质量。After the driver determines the print quality 685, the JMUI subsystem 680 passes the document data to the appropriate image/font (I/F) subsystem (652, 654, 656 or 658). The I/F subsystem decodes text and graphics data into locations on the page as a bit image raster. In one embodiment, possible I/F subsystems include, but are not limited to: 1) application I/F technology 658, 2) enhanced NC native I/F technology 656, 3) enhanced server-side I/F technology, 4) standard server side I/F technology. For example, “low” quality jobs are handled by application I/F technology 658 , while “medium” quality jobs are handled by enhanced NC native I/F technology 656 . Finally, "high" quality jobs can refer to standard server-side I/F technology 652 . In addition, JMUI subsystem 680 may further determine that some or all of any job is processed on server 600 by enhanced server-side I/F technology 654 . In either event, the appropriate I/F subsystem is responsible for the setup of the print data on its input. Additionally, Low, Medium, and High quality can be determined depending on the type of driver.

在服务器600侧,从假脱机操作存储器650中提取文档数据。在NC610或客户侧,利用直接来自应用程序630的I/F子系统(650或658)装载所述文档数据。各种I/F子系统负责打印数据的建立。NC610负责重组客户侧和服务器侧来自I/F子系统的打印数据670并将其格式化用于向打印装置620输出。但是,当JMUI子系统680指出所希望的是远程打印662时,服务器建立的打印数据660被传送给服务器600,在这里,最后的打印数据被传送给适当的远程打印机(未示出)。On the server 600 side, document data is extracted from the spooler 650 . On the NC 610 or client side, the document data is loaded using the I/F subsystem ( 650 or 658 ) directly from the application 630 . Various I/F subsystems are responsible for the establishment of print data. NC 610 is responsible for reassembling client-side and server-side print data 670 from the I/F subsystem and formatting it for output to printing device 620 . However, when the JMUI subsystem 680 indicates that remote printing 662 is desired, the server-created print data 660 is transmitted to the server 600 where the final print data is transmitted to the appropriate remote printer (not shown).

这个实施例提供了用于打印假脱机操作的服务器电源并允许在比整个本地NC系统更高质量地进行处理。另外,通过允许对文本和简单图象进行本地处理,(从NC到服务器的)LAN流量被大大减少。但是,如果需要或希望以增力LAN流量为代价,那么,这些实施例也能够进行高质量(复杂)打印。This embodiment provides server power for print spooling and allows processing at higher quality than the entire local NC system. Additionally, LAN traffic (from the NC to the server) is greatly reduced by allowing local processing of text and simple images. However, these embodiments are also capable of high quality (complex) printing if needed or desired at the expense of increased LAN traffic.

对本专业技术领域内的技术人员来讲很明显,在不脱离本发明精神和范围的情况下可以做出各种修改和变化。根据本发明这里所披露的说明和实践,本发明的其它实施例对于上述技术人员来讲是很明显的。因此,上述的说明和例子仅仅是用于举例性质的,下述权利要求指出了本发明真正的范围和精神。It will be apparent to those skilled in the art that various modifications and changes can be made without departing from the spirit and scope of the invention. Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. Therefore, the foregoing description and examples are given by way of illustration only, with the true scope and spirit of the invention indicated by the following claims.

Claims (30)

1.一种用于利用供与至少一个服务器侧计算装置通信的客户侧计算装置用的客户/服务器打印机驱动程序对打印作业进行处理的系统,所述系统包括:1. A system for processing print jobs utilizing a client/server printer driver for a client-side computing device in communication with at least one server-side computing device, the system comprising: (a)客户侧驱动程序子系统,包括用于将所述打印作业传送给服务器侧计算装置的服务器侧驱动程序子系统的装置;(a) a client-side driver subsystem including means for communicating said print job to a server-side driver subsystem of a server-side computing device; (b)服务器侧驱动程序子系统,包括:(b) Server-side driver subsystem, including: (ⅰ)用于从客户侧驱动程序子系统传送装置接收所述打印作业的装置;(i) means for receiving said print job from the client-side driver subsystem delivery means; (ⅱ)用于对所述打印作业进行处理借此以建立经过处理的服务器侧打印作业的装置;(ii) means for processing said print job to thereby create a processed server-side print job; (ⅲ)用于将所述经过处理的服务器侧打印作业传送给所述客户侧驱动程序子系统的装置;(iii) means for communicating said processed server-side print job to said client-side driver subsystem; 其中,所述客户侧驱动程序子系统还包括一个用于从所述服务器侧子系统接收经过处理的服务器侧打印作业的装置,Wherein, the client-side driver subsystem further includes a means for receiving a processed server-side print job from the server-side subsystem, (c)与所述客户侧驱动程序子系统通信的装置,用于向信号处理装置输出经过处理的打印作业。(c) means in communication with the client-side driver subsystem for outputting the processed print job to the signal processing means. 2根据权利要求1所述的系统,其中所述信号处理装置包括一个能够接收和打印所述打印作业的打印机。2. The system of claim 1, wherein said signal processing means includes a printer capable of receiving and printing said print job. 3.根据权利要求1所述的系统,其中所述客户侧计算装置是一个网络计算机。3. The system of claim 1, wherein said client computing device is a network computer. 4.根据权利要求1所述的系统,其中所述服务器侧计算装置是一个在网络上运行的计算机。4. The system of claim 1, wherein said server-side computing device is a computer operating on a network. 5.根据权利要求4所述的系统,其中所述网络是一个局域网。5. The system of claim 4, wherein said network is a local area network. 6.根据权利要求4所述的系统,其中所述网络是因特网。6. The system of claim 4, wherein the network is the Internet. 7.一种用于使用客户/服务器打印机驱动程序处理打印作业的系统,客户/服务器打印机驱动程序用于与至少一个服务器侧计算装置通信的客户侧计算装置,所述系统包括:7. A system for processing print jobs using a client/server printer driver for a client-side computing device in communication with at least one server-side computing device, the system comprising: (a)客户侧驱动程序子系统包括:(a) The client-side driver subsystem includes: (ⅰ)一个用于将所述打印作业分成由客户侧、服务器侧或其相结合进行处理的一个或多个部分的装置;(i) a means for dividing said print job into one or more portions for processing by the client side, the server side, or a combination thereof; (ⅱ)用于响应所述划分装置向所述服务器侧计算装置传送所述打印作业的服务器侧部分的装置;(ii) means for communicating, in response to said dividing means, said server-side portion of said print job to said server-side computing means; (ⅲ)用于对所述打印作业的客户侧部分进行处理借此以建立一个或多个经过处理的客户侧打印作业部分的装置;(iii) means for processing client-side portions of said print job to thereby create one or more processed client-side print job portions; (ⅳ)用于接收经过处理的服务器侧部分的装置;(iv) means for receiving the processed server-side portion; (b)所述服务器侧驱动程序子系统包括:(b) The server-side driver subsystem includes: (ⅰ)用于从所述客户侧驱动程序子系统传送装置中接收所述打印作业服务器侧部分的装置;(i) means for receiving said server-side portion of said print job from said client-side driver subsystem delivery means; (ⅱ)用于对所述打印作业的服务器侧部分进行处理借此以建立一个或多个经过处理的服务器侧打印作业部分的装置;和(ii) means for processing server-side portions of said print job thereby to create one or more processed server-side print job portions; and (ⅲ)用于将所述一个或多个经过处理的打印作业部分传送给所述客户侧驱动程序子系统的装置;和(iii) means for communicating said one or more processed print job portions to said client-side driver subsystem; and (c)与所述客户侧驱动程序子系统通信的装置,用于向一个信号处理装置输出经过处理的客户侧和服务器侧打印作业部分。(c) means in communication with said client-side driver subsystem for outputting the processed client-side and server-side print job portions to a signal processing device. 8.根据权利要求7所述的系统,其中所述信号处理装置包括能够接收所述客户侧和服务器侧打印作业并能够打印所述打印作业的一个打印机。8. The system according to claim 7, wherein said signal processing means comprises a printer capable of receiving said client-side and server-side print jobs and capable of printing said print jobs. 9.根据权利要求7所述的系统,其中所述客户侧计算装置是一个网络计算机。9. The system of claim 7, wherein said client computing device is a network computer. 10.根据权利要求7所述的系统,其中所述打印作业的客户侧部分对应于正文信息。10. The system of claim 7, wherein the client-side portion of the print job corresponds to text information. 11.根据权利要求7所述的系统,其中所述打印作业的服务器侧部分对应于所述图形信息。11. The system of claim 7, wherein the server-side portion of the print job corresponds to the graphics information. 12.根据权利要求7所述的系统,其中所述服务器侧计算装置是一个在网络上运行的计算机。12. The system of claim 7, wherein said server-side computing device is a computer operating on a network. 13.根据权利要求7所述的系统,其中所述划分装置还包括一个用于确定在客户侧和服务器侧计算装置之间通信量的装置,如果所述量位于预定阈值范围之内,划分所述打印作业,借此在客户侧和服务器侧计算装置之间通信量最小化的基础上使将被客户侧、服务器侧和其相结合所处理的一个或多个部分成为优选的。13. The system according to claim 7, wherein said dividing means further comprises a means for determining the amount of communication between the client-side and server-side computing means, and if said amount is within a predetermined threshold range, dividing said printing A job whereby one or more portions to be processed by the client side, the server side, or combinations thereof are prioritized based on minimizing the amount of communication between the client side and server side computing devices. 14.根据权利要求13所述的系统,其中所述网络是一个局域网。14. The system of claim 13, wherein said network is a local area network. 15.根据权利要求13所述的系统,其中所述网络是因特网。15. The system of claim 13, wherein the network is the Internet. 16.一种用于对一个打印作业进行处理的方法,用于与至少一个服务器侧计算装置进行通信的客户侧计算装置,所述方法包括如下步骤:16. A method for processing a print job for a client-side computing device in communication with at least one server-side computing device, the method comprising the steps of: (a)从所述客户侧向所述服务器侧计算装置传送所述打印作业;(a) transferring said print job from said client side to said server side computing device; (b)在服务器侧接收来自所述客户侧传送装置的所述打印作业;(b) receiving said print job from said client-side delivery device at a server side; (c)在服务器侧对所述打印作业进行处理以便建立经过处理的打印作业;(c) processing said print job at the server side to create a processed print job; (d)在服务器侧向所述客户侧传送所述经过处理的打印作业;(d) transmitting said processed print job at the server side to said client side; (e)在客户侧接收所述经过处理的打印作业;和(e) receiving said processed print job at the client side; and (f)向一个信号处理装置输出所述经过处理的打印作业。(f) outputting said processed print job to a signal processing device. 17.根据权利要求16所述的方法,其中所述信号处理装置包括一个能够接收和打印所述打印作业的打印机,所述方法还包括在所述打印机上接收所述打印作业和打印所述打印作业的步骤。17. The method according to claim 16, wherein said signal processing means comprises a printer capable of receiving and printing said print job, said method further comprising receiving said print job and printing said print job on said printer step. 18.根据权利要求16所述的方法,其中所述客户侧计算装置是一个网络计算机。18. The method of claim 16, wherein said client computing device is a network computer. 19.根据权利要求16所述的方法,其中所述服务器侧计算装置是一个在网络上运行的计算机。19. The method of claim 16, wherein said server-side computing device is a computer operating on a network. 20.根据权利要求19所述的方法,其中所述网络是一个局域网。20. The method of claim 19, wherein said network is a local area network. 21.根据权利要求19所述的方法,其中所述网络是因特网。twenty one. The method of claim 19, wherein the network is the Internet. 22.一种用于对打印作业进行处理的客户/服务器方法,用于与至少一个服务器侧计算装置通信的客户侧计算装置,所述方法包括如下步骤:twenty two. A client/server method for processing print jobs for a client-side computing device in communication with at least one server-side computing device, the method comprising the steps of: (a)在客户侧将所述打印作业分成将被客户侧、服务器侧或其相结合进行处理的一个或多个部分;(a) dividing the print job at the client side into one or more portions to be processed at the client side, at the server side, or a combination thereof; (b)从所述客户侧向所述服务器侧计算装置传送所述打印作业的服务器侧部分;(b) transferring the server-side portion of the print job from the client-side to the server-side computing device; (c)在客户侧对所述打印作业的客户侧部分进行处理借此以建立一个或多个经过处理的客户侧打印作业部分;(c) processing client-side portions of the print job at the client-side thereby to create one or more processed client-side print job portions; (d)在服务器侧接收来自所述客户侧传送装置的所述打印作业的服务器侧部分;(d) receiving at the server side a server-side portion of said print job from said client-side delivery device; (e)在服务器侧对所述打印作业的服务器侧部分进行处理借此以建立一个或多个经过处理的服务器侧打印作业部分;(e) processing server-side portions of the print job at the server-side thereby to create one or more processed server-side print job portions; (f)在服务器侧向客户侧传送一个或多个经过处理的服务器侧打印作业部分;(f) transmitting one or more processed server-side print job portions at the server side to the client side; (g)在客户侧接收所述经过处理的服务器侧打印作业部分;和(g) receiving said processed server-side print job portion at the client side; and (h)将经过处理的客户侧和服务器侧打印作业部分输出给一个信号处理装置。(h) Outputting the processed client-side and server-side print job portions to a signal processing device. 23.根据权利要求22所述的方法,其中所述信号处理装置包括能够接收客户侧和服务器侧打印作业部分和打印所述打印作业的一个打印机。twenty three. The method according to claim 22, wherein said signal processing means comprises a printer capable of receiving client-side and server-side print job parts and printing said print job. 24.根据权利要求22所述的方法,其中所述客户侧计算装置是一个网络计算。twenty four. The method of claim 22, wherein said client-side computing device is a network computing device. 25.根据权利要求22所述的方法,其中所述打印作业的客户侧部分对应于所述正文部分。25. The method of claim 22, wherein the client-side portion of the print job corresponds to the text portion. 26.根据权利要求22所述的方法,其中所述打印作业的服务器侧部分对应于所述图形部分。26. The method of claim 22, wherein the server-side portion of the print job corresponds to the graphics portion. 27.根据权利要求22所述的方法,其中所述服务器侧计算装置是一个在网络上运行的计算机。27. The method of claim 22, wherein said server-side computing device is a computer operating on a network. 28.根据权利要求22所述的方法,其中所述划分步骤还包括确定在客户侧和服务器侧计算装置之间通信量的步骤,如果所述量位于预定阈值范围之内,划分所述打印作业,借此在客户侧和服务器侧计算装置之间通信量最小化的基础上使被客户侧、服务器侧或其相结合进行处理的一个或多个部分是优选的。28. The method according to claim 22, wherein said dividing step further comprises the step of determining the amount of communication between the client-side and server-side computing devices, and dividing said print job if said amount is within a predetermined threshold range, by This is preferred on the basis of minimizing the amount of communication between the client-side and server-side computing devices so that one or more portions are processed by the client-side, server-side, or a combination thereof. 29.根据权利要求27所述的方法,其中所述网络是一个局域网。29. The method of claim 27, wherein said network is a local area network. 30.根据权利要求27所述的方法,其中所述网络是所述因特网。30. The method of claim 27, wherein said network is said Internet.
CN 98126981 1997-12-16 1998-12-16 Client/server printer driver system Pending CN1224202A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 98126981 CN1224202A (en) 1997-12-16 1998-12-16 Client/server printer driver system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US991380 1997-12-16
CN 98126981 CN1224202A (en) 1997-12-16 1998-12-16 Client/server printer driver system

Publications (1)

Publication Number Publication Date
CN1224202A true CN1224202A (en) 1999-07-28

Family

ID=5229832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 98126981 Pending CN1224202A (en) 1997-12-16 1998-12-16 Client/server printer driver system

Country Status (1)

Country Link
CN (1) CN1224202A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348886A (en) * 2013-08-08 2015-02-11 联想(北京)有限公司 Information processing method and electronic equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348886A (en) * 2013-08-08 2015-02-11 联想(北京)有限公司 Information processing method and electronic equipment

Similar Documents

Publication Publication Date Title
US6003069A (en) Client/server printer driver system
JP3290410B2 (en) Print rendering server and program product for print rendering server
EP0864964B1 (en) Printer driver switching in windows operating systems
US6456388B1 (en) Printer enclosing network computer and computer network system employing the same
US6369907B1 (en) Network system, printer, and information memory medium
US20020018234A1 (en) Printer driver system for remote printing
US5982997A (en) Data stream protocol for immediate job switching
US20100146127A1 (en) User-mode based remote desktop protocol (rdp) encoding architecture
CN1622028A (en) Distributed peripheral device control system and method
JP2007514236A (en) A system that sends documents and resources to a printer
EP1122634A1 (en) Network system and network interface card
US6407823B1 (en) Network system, information processing device and information memory medium
US20030011819A1 (en) Information processing device, information processing method, printing system, computer program and memory medium
US6392758B2 (en) Wait-band alleviation via host-PC buffering
US7643160B2 (en) Spool file modifying device
CN1093960C (en) Method and apparatus for adaptive adjustment of cache altocation for storage of font data by super-high-speed buffer registor
CN1224202A (en) Client/server printer driver system
EP1205876B1 (en) Page rendering in a digital signal processor
US20040075859A1 (en) Printer instruction processing
JPH11143656A (en) Printing system, data processing method of printing system, and storage medium storing computer readable program
US20040263892A1 (en) Information processisng apparatus, information processing method, and control program
JP2003022172A (en) Print server device and control method thereof
JP4006068B2 (en) Information processing apparatus, information processing method, and storage medium storing computer-readable program
JP2004127310A (en) Network system, printer and information storage medium
JP4174547B2 (en) Information processing apparatus, information processing method, and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication