JP2006053946A - Information processor, control method of information processor, and computer-readable storage medium storing control program of information processor - Google Patents

Information processor, control method of information processor, and computer-readable storage medium storing control program of information processor Download PDF

Info

Publication number
JP2006053946A
JP2006053946A JP2005289685A JP2005289685A JP2006053946A JP 2006053946 A JP2006053946 A JP 2006053946A JP 2005289685 A JP2005289685 A JP 2005289685A JP 2005289685 A JP2005289685 A JP 2005289685A JP 2006053946 A JP2006053946 A JP 2006053946A
Authority
JP
Japan
Prior art keywords
printer
job
printing
data size
spool
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
JP2005289685A
Other languages
Japanese (ja)
Other versions
JP4154415B2 (en
Inventor
Yoshinobu Kuroi
慶信 黒井
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2005289685A priority Critical patent/JP4154415B2/en
Publication of JP2006053946A publication Critical patent/JP2006053946A/en
Application granted granted Critical
Publication of JP4154415B2 publication Critical patent/JP4154415B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To reduce the load in data communication between a printer and a host computer and to surely utilize a job spool function of the printer in multiple print output. <P>SOLUTION: In the host computer, a maximum data size of printing data capable of being temporarily stored in a spool storage means in the printer is acquired (S505), the total data size of printing data stored in a temporary file created by a printer driver is compared with the acquired maximum storage data size (S506), the maximum storage data size of the printer is reset (S509) in a case when the total data size of the printing data stored in the temporary file is larger than the acquired maximum storage data size, and then the printing data stored in the temporary storage means is output to the printer to be printed for the designated number of times by utilizing the job spool function (S510). <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、受信データをスプール記憶手段へ一時的に記憶し、指定された回数分連続的に処理するジョブスプール機能を有するプリンタと通信可能な情報処理装置、情報処理装置の制御方法、および情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体に関するものである。   The present invention relates to an information processing apparatus capable of communicating with a printer having a job spool function for temporarily storing received data in a spool storage means and continuously processing the data for a specified number of times, a method for controlling the information processing apparatus, and information The present invention relates to a computer-readable storage medium storing a control program for a processing device.

従来より、印刷装置において、複数ページから成る印刷物を複数部数印刷させるための構成が種々知られている。   2. Description of the Related Art Conventionally, various configurations for printing a plurality of copies of a plurality of pages in a printing apparatus are known.

たとえば、ホストコンピュータから複数ページを構成する印刷データを複数回繰り返してプリンタへ送信すれば、プリンタ排紙部へ出力用紙を送信回数分に丁合いしながら積載していく事(以下「丁合い出力」という)が可能となり、ユーザはページを揃え直(丁合い)す必要なく、1部ぶんのページを綴じる(ステープラなどの排紙機構があればこれも必要なくなる)だけで、複数ページから成る複数部の印刷物を得られる。   For example, if print data composing multiple pages is repeatedly sent to the printer from the host computer, the output paper is stacked on the printer paper discharge unit while collating the number of transmissions (hereinafter referred to as “collation output”). The user does not need to realign (collate) the pages, and only binds one page (no need for a paper discharge mechanism such as a stapler). Multiple copies can be obtained.

しかし、上記のように複数ページを構成する印刷データを複数回繰り返してプリンタへ送信する処理によると、ホストコンピュータとプリンタ間でのデータ通信負荷が送信回数に比例して大きくなってしまう問題がある。   However, according to the processing for repeatedly transmitting print data constituting a plurality of pages to the printer as described above, there is a problem that the data communication load between the host computer and the printer increases in proportion to the number of transmissions. .

この点に鑑み、近年のプリンタには、受信データを特定の記憶手段へ一時的に記憶しておき、指定された回数分データを繰り返し受信したかのように実行できる蓄積印刷機能(以下「ジョブスプール機能」という)を持つものがある。このジョブスプール機能によると、おおよそ1回(1部)ぶんの印刷データをプリンタへ送信するだけの通信負荷で前記のような丁合い出力を実現することができる。   In view of this point, recent printers temporarily store received data in a specific storage unit, and can execute an accumulation printing function (hereinafter referred to as “job”) that can be executed as if the data has been repeatedly received a specified number of times. Some have a "spool function". According to this job spool function, it is possible to realize the collation output as described above with a communication load of transmitting print data about once (one copy) to the printer.

このようなプリンタのジョブスプール機能を用いて丁合い出力を行う場合には、ホストコンピュータ上で動作する従来のプリンタドライバは、通常生成するプリンタ制御コマンド群に加えて、プリンタが一時的に記憶した受信データを何回繰り返して処理するかを指定するプリンタ制御コマンドを付加し、プリンタに送信する。
特開平09−277618号公報
When collation output is performed using the job spool function of such a printer, the conventional printer driver operating on the host computer temporarily stores the printer control commands in addition to the normally generated printer control commands. A printer control command specifying how many times the received data is repeatedly processed is added and transmitted to the printer.
JP 09-277618 A

しかしながら、上記のようにプリンタのジョブスプール機能を利用して、プリンタに1部ぶんのデータをあらかじめ送信し、指定回数(部数)だけ印刷させる方式では、次のような問題がある。   However, the above-described method of using the job spool function of the printer to send one copy of data to the printer in advance and printing it for the designated number of times (number of copies) has the following problems.

すなわち、プリンタドライバが生成するプリンタ制御コマンドの総データサイズはコマンド生成処理の終了時まで分からないため、前記プリンタで一次的に記憶可能である最大データサイズをプリンタ制御コマンドの総データサイズが超えてしまう可能性があった。従って、従来構成によると、プリンタのジョブスプール機能を用いた丁合い出力は、常に成功する、という保証がなかった。   That is, since the total data size of the printer control command generated by the printer driver is not known until the end of the command generation process, the total data size of the printer control command exceeds the maximum data size that can be temporarily stored in the printer. There was a possibility. Therefore, according to the conventional configuration, there is no guarantee that collation output using the job spool function of the printer will always succeed.

また、上記の問題を解決するために、単にホストコンピュータ上で動作するプリンタドライバが指定された回数だけプリンタ制御コマンドを常に繰り返して出力する旧来の方法を用いれば、プリンタ制御コマンドの総データサイズや指定回数に比例してホストコンピュータとプリンタ間の通信負荷が大きく増加してしまう問題が生じるのは前述の通りである。   In addition, in order to solve the above problem, if an old method is used in which the printer driver operating on the host computer always outputs the printer control command repeatedly for the designated number of times, the total data size of the printer control command and As described above, the communication load between the host computer and the printer greatly increases in proportion to the specified number of times.

このようなプリンタ〜ホストコンピュータの間のデータ通信負荷の増大により、システム環境や条件によっては、システム全体のパフォーマンス劣化を生じる恐れもある。特に、複数のホストコンピュータ、プリンタがネットワーク接続され、相互にネットワーク共有している資源が多ければ多いほどこのような問題は生じやすくなる。   Due to such an increase in data communication load between the printer and the host computer, the performance of the entire system may be deteriorated depending on the system environment and conditions. In particular, such a problem is more likely to occur as a plurality of host computers and printers are connected to the network and there are more resources sharing the network.

本発明の課題は上記の問題を解決し、プリンタ〜ホストコンピュータのような情報処理装置の間のデータ通信負荷を低減し、しかも、丁合い出力のような複数部数の印刷出力においてプリンタのジョブスプール機能を確実に利用できるように保証できるようにすることにある。   An object of the present invention is to solve the above-mentioned problems, reduce the data communication load between an information processing apparatus such as a printer and a host computer, and, in addition, print job spooling of a printer in a plurality of copies such as collation output The goal is to ensure that the functionality is available.

上記課題を解決するため、本発明においては、受信した印刷制御コマンドをスプール記憶手段へ一時的に記憶し前記受信した印刷制御コマンドを該印刷制御コマンドで指定された回数分連続的に印刷処理することにより印刷出力を行なうジョブスプール機能を有するプリンタと通信可能な情報処理装置、情報処理装置の制御方法、および情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体において、
印刷要求に丁合い印刷が指定されているか否かを判定する丁合い指定判定手段(またはステップ)と、
前記丁合い指定判定手段(またはステップ)により丁合い印刷が指定されていると判定された場合、全ての印刷制御コマンドの総データサイズと前記スプール記憶手段に記憶可能なデータサイズを用いて、前記全ての印刷制御コマンドを前記スプール記憶手段に格納して、前記ジョブスプール機能を用いた印刷を実行することが可能であるか否かを判定する第1判定手段(またはステップ)と、
前記第1判定手段(またはステップ)により、前記ジョブスプール機能を用いた印刷処理を実行できると判定された場合、前記ジョブスプール機能を実行すべき特定の情報を付加して前記全ての印刷制御コマンドを出力し、前記第1判定手段(またはステップ)により前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記全ての印刷制御コマンドを指定された回数だけ繰り返して出力することにより生成される印刷ジョブを送信する第1送信制御手段(またはステップ)と、
前記丁合い指定判定手段(またはステップ)により丁合い印刷が指定されていないと判定された場合、前記第1判定手段(またはステップ)による処理を実行することなく前記プリンタに対して印刷制御コマンドを出力することにより生成される印刷ジョブを送信する第2送信制御手段(またはステップ)を
含む構成を採用した。
In order to solve the above problem, in the present invention, the received print control command is temporarily stored in the spool storage means, and the received print control command is continuously printed for the number of times designated by the print control command. An information processing apparatus capable of communicating with a printer having a job spool function for performing print output, a control method for the information processing apparatus, and a computer-readable storage medium storing a control program for the information processing apparatus,
Collation designation determination means (or step) for determining whether or not collation printing is designated in the print request;
If it is determined by the collation designation determination means (or step) that collation printing is designated, the total data size of all print control commands and the data size that can be stored in the spool storage means are used. First determination means (or step) for storing all print control commands in the spool storage means and determining whether or not printing using the job spool function can be executed;
If it is determined by the first determination means (or step) that printing processing using the job spool function can be executed, specific information for executing the job spool function is added and all the print control commands are added. And when the first determination means (or step) determines that printing using the job spool function cannot be executed, it is generated by repeatedly outputting all the print control commands a specified number of times. First transmission control means (or step) for transmitting a print job to be performed;
If it is determined by the collation designation determination means (or step) that collation printing is not designated, a print control command is sent to the printer without executing the processing by the first determination means (or step). A configuration including a second transmission control means (or step) for transmitting a print job generated by output is employed.

以上の構成により、本発明では、丁合い印刷が指定されている場合、順次生成したプリンタ制御コマンドを直ちにプリンタへは出力せず、情報処理装置上で一時的に記憶しておき、その総データサイズがジョブスプール機能を用いた際にプリンタが一時記憶可能である最大データサイズを超えていないかどうかを判定し、超えている場合には記憶されている印刷制御コマンドを指定された回数分繰り返してプリンタに出力する。また、印刷制御コマンドの総データサイズがジョブスプール機能を用いた際にプリンタが一時記憶可能である最大データサイズを越えていない場合にはジョブスプール機能を用いた処理を行なう。さらに、丁合い印刷が指定されていない場合には、プリンタ制御コマンドの総データサイズがプリンタが一時記憶可能である最大データサイズを超えていないかどうかを判定することなくプリンタに出力する。この構成により、効率的かつ確実な印刷処理を実行することが可能となる。   With the above configuration, in the present invention, when collate printing is designated, the sequentially generated printer control commands are not immediately output to the printer, but temporarily stored on the information processing apparatus, and the total data Judges whether the size exceeds the maximum data size that the printer can temporarily store when the job spool function is used, and if so, repeats the stored print control command for the specified number of times. Output to the printer. If the total data size of the print control command does not exceed the maximum data size that the printer can temporarily store when the job spool function is used, processing using the job spool function is performed. Further, when collation printing is not designated, the total data size of the printer control command is output to the printer without determining whether or not it exceeds the maximum data size that can be temporarily stored in the printer. With this configuration, it is possible to execute an efficient and reliable printing process.

以下、図面を参照して本発明を実施する最良の形態を説明するための実施例を示す。   Embodiments for describing the best mode for carrying out the present invention will be described below with reference to the drawings.

図1は本発明を採用した印刷システムの全体構成を示している。ここでは、便宜上ホストコンピュータ3000とプリンタ1500から成るシステムを示しているが、この2つが一体化された単体の機器から成る印刷システムであってもよい。また、複数の機器からなる印刷システムであっても、その数には制限はなく、また、LAN、WAN等のネットワークを介して複数のホストコンピュータやプリンタなどの機器の相互接続が行われる印刷システムであっても本発明を適用できるのはいうまでもない。   FIG. 1 shows the overall configuration of a printing system employing the present invention. Here, for convenience, a system including the host computer 3000 and the printer 1500 is shown, but a printing system including a single device in which the two are integrated may be used. Even if the printing system is composed of a plurality of devices, the number is not limited, and a printing system in which a plurality of devices such as a host computer and a printer are interconnected via a network such as a LAN or a WAN. However, it goes without saying that the present invention can be applied.

図1において、3000はホストコンピュータで、ROM3のプログラム用ROMに記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行するCPU1を備え、システムバス4に接続される各デバイスをCPU1が総括的に制御することにより上記の処理を行なう。   In FIG. 1, reference numeral 3000 denotes a host computer, which is a CPU 1 that executes document processing in which graphics, images, characters, tables (including spreadsheets, etc.) are mixed based on a document processing program stored in a program ROM of the ROM 3. , And the CPU 1 performs overall control of each device connected to the system bus 4 to perform the above processing.

また、図1のROM3のプログラム用ROMあるいは外部メモリ11(ハードディスクなどの外部記憶装置)は、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)等を記憶する。ROM3のフォント用ROMあるいは外部メモリ11には上記文書処理の際に使用するフォントデータ等を記憶し、ROM3のデータ用ROMあるいは外部メモリ11は上記の文書処理等を行う際に使用する各種データ(例えば、ディレクトリ情報、プリンタドライバテーブル等)を記憶する。   Further, the program ROM of the ROM 3 in FIG. 1 or the external memory 11 (external storage device such as a hard disk) stores an operating system program (hereinafter referred to as OS) which is a control program of the CPU 1. The font ROM or the external memory 11 of the ROM 3 stores font data used for the document processing, and the ROM 3 data ROM or the external memory 11 stores various data (for example, the document processing etc.). For example, directory information, a printer driver table, etc.) are stored.

ホストコンピュータ3000の制御の主体は、ハードウェア上はCPUである。一方、ソフトウェア上は制御の主体はプリンタ制御コマンド生成プログラム(以下プリンタドライバ)というアプリケーションソフトウェアである。本実施例では、OSは例えば、ウィンドウズ95(商標名:マイクロソフト社製)を想定しているが、これに限るものではない。   The main control of the host computer 3000 is a CPU in hardware. On the other hand, in software, the main control is application software called a printer control command generation program (hereinafter referred to as a printer driver). In this embodiment, the OS is assumed to be, for example, Windows 95 (trade name: manufactured by Microsoft Corporation), but is not limited thereto.

図1において符号2はRAMで、CPU1の主メモリ、およびワークエリア等として機能する。後述のように、本実施例のプリンタ制御においても、このRAM2がワークエリアとして用いられる。   In FIG. 1, reference numeral 2 denotes a RAM which functions as a main memory and a work area of the CPU 1. As will be described later, this RAM 2 is also used as a work area in the printer control of this embodiment.

符号5はキーボードコントローラ(KBC)で、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。6はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)10の表示を制御する。7はディスクコントローラ(DKC)で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶するハードディスク(HD)、フロッピーディスク(商標名)(FD)等の外部メモリ11とのアクセスを制御する。   Reference numeral 5 denotes a keyboard controller (KBC) which controls key input from a keyboard 9 or a pointing device (not shown). Reference numeral 6 denotes a CRT controller (CRTC) which controls display on a CRT display (CRT) 10. A disk controller (DKC) 7 is an external memory 11 such as a hard disk (HD) or floppy disk (trade name) (FD) for storing a boot program, various applications, font data, user files, editing files, printer drivers, and the like. And control access.

符号8はプリンタコントローラ(PRTC)で、所定の双方向性インターフェース21を介してプリンタ1500に接続されて、プリンタ1500との通信制御処理を実行する。双方向性インターフェース21としては、IEEE1284などが考えられるが、他のインターフェース、たとえばSCSI、USB、IEEE1394などのバスやイーサネット(登録商標)などのネットワークインターフェースによりホストコンピュータ3000とプリンタ1500が接続されていてもよい。   Reference numeral 8 denotes a printer controller (PRTC) which is connected to the printer 1500 via a predetermined bidirectional interface 21 and executes communication control processing with the printer 1500. The bidirectional interface 21 may be IEEE1284 or the like, but the host computer 3000 and the printer 1500 are connected by other interfaces, for example, a bus such as SCSI, USB, IEEE1394, or a network interface such as Ethernet (registered trademark). Also good.

なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上においてGUIを用いたWYSIWYG(What You See Is What You Get)な処理を可能としている。また、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウィンドウを開き、種々のデータ処理を実行する。   The CPU 1 executes, for example, outline font development (rasterization) processing on the display information RAM set on the RAM 2 and can perform WYSIWYG (What You See Is What You Get) processing using a GUI on the CRT 10. It is said. Further, the CPU 1 opens various windows registered based on commands instructed by a mouse cursor (not shown) on the CRT 10 and executes various data processing.

プリンタ1500において、12はプリンタCPUで、ROM13のプログラム用ROMに記憶された制御プログラム等あるいは外部メモリ14に記憶された制御プログラム等に基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。   In the printer 1500, reference numeral 12 denotes a printer CPU, which is a printing unit (printer engine) 17 connected to the system bus 15 based on a control program stored in the program ROM of the ROM 13 or a control program stored in the external memory 14. An image signal is output as output information.

また、このROM13のプログラムROMには、CPU12の制御プログラム等を記憶する。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ROM13のデータ用ROMにはハードディスク等の外部メモリ14がないプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。   Further, the control program of the CPU 12 and the like are stored in the program ROM of the ROM 13. The font ROM of the ROM 13 stores font data used when generating the output information, and the ROM 13 data ROM is used on the host computer in the case of a printer without the external memory 14 such as a hard disk. Information to be stored is stored.

CPU12は入力部18を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知できるように構成されている。   The CPU 12 can communicate with the host computer via the input unit 18 and is configured to notify the host computer 3000 of information in the printer.

符号19はCPU12の主メモリ、ワークエリア等として機能するRAMで、このRAM19は、ビットマップ情報の展開処理に用いられる領域、環境データ格納領域、バッテリバックアップされたNVRAM領域などとして割り当てられている。RAM19は不図示の増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。   Reference numeral 19 denotes a RAM that functions as a main memory, a work area, and the like for the CPU 12. The RAM 19 is allocated as an area used for developing bitmap information, an environment data storage area, a battery-backed NVRAM area, and the like. The RAM 19 is configured so that the memory capacity can be expanded by an optional RAM connected to an expansion port (not shown).

外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、1501は操作パネルで、この操作パネル1501上にはスイッチ、LED、LCDなどの表示器、その他の部品が配置されている。   The external memory 14 is connected as an option and stores font data, an emulation program, form data, and the like. Reference numeral 1501 denotes an operation panel. On the operation panel 1501, a display such as a switch, LED, LCD, and other components are arranged.

前述の外部メモリ14は1個に限らず、少なくとも1個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しないNVRAMを有し、操作パネル1501からのプリンタモード設定情報を記憶するようにしてもよい。   The above-mentioned external memory 14 is not limited to one, and at least one external memory 14 is provided. In addition to the built-in font, an optional font card and a plurality of external memories storing programs for interpreting printer control languages of different language systems can be connected. May be. Furthermore, an NVRAM (not shown) may be provided to store printer mode setting information from the operation panel 1501.

前述のハードディスク、ICカード等の外部メモリ14は、ディスクコントローラ(DKC)20によりアクセスを制御される。   Access to the external memory 14 such as the hard disk and the IC card is controlled by a disk controller (DKC) 20.

本実施例においては、上記のRAM19は、特定のプリンタ制御コマンドを受け付けた場合、それ以降に受信したデータを直ちに処理せずに一時的に記憶し、同データを指定された回数だけ連続的に受信したかのように処理できる機能(以下ジョブスプール機能という)のジョブスプール記憶領域として用いられる。このジョブスプール記憶領域として割り当て(確保)可能な最大サイズは後述のプリンタ制御コマンドを用いて、設定することができる。このジョブスプール記憶領域の確保は、前記のオプションRAM増設によるメモリ容量拡張とは別に後述のようにソフトウェア的に行なわれるものである。   In the present embodiment, when the RAM 19 receives a specific printer control command, the RAM 19 temporarily stores data received thereafter without immediately processing it, and continuously stores the data for a specified number of times. It is used as a job spool storage area for functions that can be processed as if received (hereinafter referred to as job spool functions). The maximum size that can be allocated (reserved) as the job spool storage area can be set using a printer control command described later. The securement of the job spool storage area is performed by software as will be described later, in addition to the expansion of the memory capacity by adding the optional RAM.

さて、本実施例のプリンタ1500は、特定のプリンタ制御コマンドを受け付けた場合、それ以降に受信したデータを直ちに処理せず、RAM19へ一時的に記憶し、同データを指定された回数だけ連続的に受信したかのように処理できる機能(ジョブスプール機能)を有する。前記機能を指定するプリンタ制御コマンドのフォーマットを以下に示す。   When the printer 1500 of this embodiment receives a specific printer control command, it does not immediately process the data received thereafter, but temporarily stores it in the RAM 19 and continuously stores the data for the designated number of times. Have a function (job spool function) that can be processed as if they were received. The format of a printer control command that designates the function is shown below.

@PJL JOBSPOOL COPIES=num ENDSTRING="word"<CR><LF> …(1)
num 一時記憶したデータを何度連続処理するかを示す数値
word 印刷データの終了を指示するための文字列
<CR> キャリッジリターンキャラクタ
<LF> ラインフィードキャラクタ
ここで、「@PJL」は、プリンタ制御コマンドの開始を、また、「JOBSPOOL」はコマンドの種別を示すニーモニックであり、プリンタ1500が上記の「@PJL」で始まるコマンドを受信すると、同コマンド直後のデータから「word」で指定された文字列の直前までのデータをRAM19へ保存する。そして保存終了後に、プリンタ1500はRAM19に保存されたデータを上記コマンドの「num」で指定された回数だけあたかも受信したように連続処理する。
@PJL JOBSPOOL COPIES = num ENDSTRING = "word"<CR><LF>… (1)
num Numeric value indicating how many times the temporarily stored data is processed
word Character string to indicate the end of print data
<CR> Carriage return character
<LF> Line feed character Here, “@PJL” is the start of the printer control command, “JOBSPOOL” is a mnemonic indicating the type of command, and the printer 1500 has a command starting with “@PJL” above. When received, the data immediately after the command to immediately before the character string designated by “word” is stored in the RAM 19. After the storage is completed, the printer 1500 continuously processes the data stored in the RAM 19 as if it were received as many times as specified by the “num” of the command.

このようなジョブスプール機能を用いる事により、プリンタ排紙部へ出力用紙を「word」で指定された回数分に丁合いしながら積載していく(以下丁合い出力)ことが可能となる。   By using such a job spool function, it is possible to stack the output paper on the printer paper discharge unit while collating the number of times designated by “word” (hereinafter, collation output).

ここで、上記のジョブスプール機能において、プリンタ1500に一時記憶可能な受信データサイズはRAM19のハードウェア容量や他の処理との兼ねあいにより、予めプリンタに設定されている最大容量以下に制限される。この最大確保容量を変更する場合は、操作パネル1501を用いて所定の方法で設定変更を行うか、同様の効果を持つ以下に示すプリンタ制御コマンドをプリンタ1500へ送信し、プリンタ再起動を行うかハードウェア設定を更新するためのプリンタ制御コマンド(以下ハードウェアリセット命令)をプリンタ1500へ送信するものとする。   Here, in the above-described job spool function, the received data size that can be temporarily stored in the printer 1500 is limited to a maximum capacity that is set in advance in the printer due to the hardware capacity of the RAM 19 and other processing. . When changing this maximum reserved capacity, whether to change the setting by a predetermined method using the operation panel 1501, or to send the following printer control command having the same effect to the printer 1500 and restart the printer Assume that a printer control command (hereinafter referred to as a hardware reset command) for updating hardware settings is transmitted to the printer 1500.

@PJL SET SPOOL-SIZE=x <CR><LF> …(2)
x 一時記憶可能なデータサイズを示す数値(Mega-Byte単位)
<CR> キャリッジリターンキャラクタ
<LF> ラインフィードキャラクタ
ここで、「@PJL」は、プリンタ制御コマンドの開始を、また、「SET」はコマンドの種別を示すニーモニックであり、その後の「SPOOL-SIZE=x」の部分とともにジョブスプール機能においてプリンタ1500に保存可能な受信データサイズを設定するためのものである。
@PJL SET SPOOL-SIZE = x <CR><LF> (2)
x Numeric value indicating the data size that can be temporarily stored (in Mega-Byte units)
<CR> Carriage return character
<LF> Line feed character Here, "@PJL" is the start of the printer control command, and "SET" is a mnemonic indicating the type of command, and the job with the following "SPOOL-SIZE = x" This is for setting the received data size that can be stored in the printer 1500 in the spool function.

なお、上記のプリンタ制御コマンドにより確保されるジョブスプール記憶領域の確保容量の最大値は、RAM19のハードウェア的な最大容量、他の用途のための記憶領域との兼ねあいによりおのずと制限がある。ホストコンピュータ3000から要求されたジョブスプール記憶領域の容量を確保できれば、プリンタ1500は所定の肯定レスポンスを、また確保できなければ、確保不可能である旨のレスポンスをホストコンピュータ3000に返すものとする。   Note that the maximum value of the reserved capacity of the job spool storage area secured by the printer control command is naturally limited due to the combination of the hardware maximum capacity of the RAM 19 and the storage area for other purposes. If the capacity of the job spool storage area requested by the host computer 3000 can be secured, the printer 1500 returns a predetermined positive response to the host computer 3000, and if not secured, the printer 1500 returns a response indicating that the job spool storage area cannot be secured.

また、プリンタ1500に設定されている前記容量サイズは、ホストコンピュータ3000から特定のプリンタ制御コマンドによる情報取得請求があった場合に、ホストコンピュータ3000へ通知できるものとする。   The capacity size set in the printer 1500 can be notified to the host computer 3000 when the host computer 3000 requests information acquisition by a specific printer control command.

なお、本実施例で示すプリンタ1500は、上記プリンタ制御コマンド(1)を受け付けた場合に、受信データをRAM19へ記憶すると限定しているが、プリンタ1500に内蔵されている外部メモリ14などの任意の記憶手段へ記憶しても良いし、これらを組み合わせて記憶手段として活用しても良い。たとえば、RAM19上で要求されたジョブスプール記憶領域の容量を確保できなければ、自動的に外部メモリ14の空きを調べ、そのうちの妥当な量をジョブスプール記憶領域として確保し、ホストコンピュータ3000の要求を満足させる構成も考えられる。   Note that the printer 1500 shown in this embodiment is limited to storing the received data in the RAM 19 when the printer control command (1) is received. However, the printer 1500 is not limited to an external memory 14 built in the printer 1500 or the like. These may be stored in the storage means, or a combination of these may be utilized as the storage means. For example, if the capacity of the requested job spool storage area on the RAM 19 cannot be secured, the free space in the external memory 14 is automatically checked, and an appropriate amount of that is secured as the job spool storage area. A configuration that satisfies the above can also be considered.

ホストコンピュータ3000において、BIOS、OS、アプリケーション、及び本発明による情報処理方法が適用されたプリンタドライバが、CPU1により動作する。BIOSはプログラムROM3に書き込まれており、OSは外部メモリ11であるハードディスクに書き込まれている。そして、ホストコンピュータ3000の電源がONされた時に、BIOSプログラム中のIPL(Initial Program Loading)機能により、OSの実行コードイメージがハードディスクからRAM2へ読み込まれ、該OSの動作が開始する。   In the host computer 3000, the CPU 1 operates a printer driver to which the BIOS, OS, application, and information processing method according to the present invention are applied. The BIOS is written in the program ROM 3, and the OS is written in the hard disk as the external memory 11. When the host computer 3000 is turned on, the OS execution code image is read from the hard disk into the RAM 2 by the IPL (Initial Program Loading) function in the BIOS program, and the operation of the OS starts.

そして、実際にプリンタドライバが動作可能となるのは、ユーザ等の指示により、前記ホストコンピュータ3000上でOS管理のもとに動作するアプリケーションが印刷処理を開始した場合で、プリンタドライバを記憶している外部メモリ11等の媒体から、OS及びBIOSの制御のもとに、プリンタドライバが読み出され、RAM2へロードされた時である。   The printer driver can actually be operated when an application operating under OS management on the host computer 3000 starts print processing in response to an instruction from the user or the like. This is when the printer driver is read out from the medium such as the external memory 11 under the control of the OS and BIOS and loaded into the RAM 2.

ここで、本実施例のプリンタドライバは、狭義のドライバ、つまりプリンタポートを駆動するためだけのドライバソフトウェアではなく、後述のプリンタのジョブスプール機能の設定、上記のプリンタ制御コマンドの生成などを含む本発明の処理を行なうものであり、RAM2へロードされるまでは、その任意の部分はホストコンピュータ上の任意の記憶媒体の任意の記憶位置に記憶されるものであってよい。   Here, the printer driver of the present embodiment is not a driver in a narrow sense, that is, driver software for driving a printer port, but a book including setting of a job spool function of a printer, which will be described later, generation of the printer control command described above, and the like. The processing of the invention is performed, and any portion thereof may be stored in any storage location on any storage medium on the host computer until loaded into the RAM 2.

以下では、プリンタドライバに本発明の処理が実装される場合の例を示すが、本発明の特徴的な処理の全部、あるいは任意の一部はプリンタドライバのみならず、アプリケーションソフトウェアなどの上に実装されていてもかまわない。   In the following, an example in which the processing of the present invention is implemented in the printer driver is shown, but all or some of the characteristic processing of the present invention is implemented not only on the printer driver but also on application software. It may be done.

図2は、本発明を採用したプリンタドライバがホストコンピュータ3000上のRAM2へロードされ、実行可能となった状態のメモリマップ21を示している。符号22は印刷を行なうアプリケーションの記憶領域、23は使用されていない空きメモリ、24はプリンタドライバの制御に必要な各種のパラメータを記憶するデータ領域、25はプリンタドライバ本体の記憶領域、26はOSの記憶領域、27はBIOSの記憶領域(この一部はROM上に割り合てられる場合もある)である。図2のメモリ配置はあくまでも一例であり、OSの仕様や慣習に応じてこれとは異なる配置になっていてもかまわない。   FIG. 2 shows a memory map 21 in a state where a printer driver employing the present invention is loaded into the RAM 2 on the host computer 3000 and becomes executable. Reference numeral 22 is a storage area for an application for printing, 23 is an unused memory area, 24 is a data area for storing various parameters necessary for controlling the printer driver, 25 is a storage area for the printer driver body, and 26 is an OS. 27 is a BIOS storage area (a part of which may be allocated on the ROM). The memory arrangement in FIG. 2 is merely an example, and it may be different from that according to the specifications and customs of the OS.

以下、本発明を適用したプリンタドライバの処理について詳しく説明する。   Hereinafter, processing of the printer driver to which the present invention is applied will be described in detail.

本発明を適用したプリンタドライバがOSを介したアプリケーションの印刷要求を受け付けてプリンタ制御コマンドを順次生成する際の処理の概略を図3のフローチャートに示す。また、図4は図3のステップ303、図5は図3のステップ307の処理内容を示したものである。   A flowchart of FIG. 3 shows an outline of processing when a printer driver to which the present invention is applied receives a print request from an application via the OS and sequentially generates printer control commands. 4 shows the processing contents of step 303 in FIG. 3, and FIG. 5 shows the processing contents of step 307 in FIG.

図3に示した通り、アプリケーションが印刷処理を開始してから終了するまでの間、プリンタドライバはOSを介したアプリケーションからの印刷要求を受け付け続ける(ステップS301)。受け付けた印刷要求は、まず、印刷開始を意味するものかどうかを判定され(ステップS302)、もしそうであれば、ステップS303(図4)を処理した後、再びアプリケーションからの印刷要求を受け付け始める。   As shown in FIG. 3, the printer driver continues to accept print requests from the application via the OS from when the application starts the printing process to when it ends (step S <b> 301). The received print request is first determined whether or not it signifies the start of printing (step S302). If so, step S303 (FIG. 4) is processed, and then the print request from the application is started again. .

ステップS302で印刷要求が印刷開始を意味するものではないと判定された後、それが印刷終了を意味するものであると判定された(ステップS304)場合には、ステップS307(図5)へ進み、その後、プリンタ制御コマンド生成処理を終了する。   If it is determined in step S302 that the print request does not mean the start of printing, and if it is determined that it means the end of printing (step S304), the process proceeds to step S307 (FIG. 5). Thereafter, the printer control command generation process is terminated.

ステップS302とステップS304で、それぞれ、印刷要求が印刷開始または印刷終了を意味するものではないと判定された場合には、印刷要求の内容に応じたプリンタ制御コマンドを生成(ステップS305)し、OSが管理するシステムスプーラを介して、同プリンタ制御コマンドを出力する(ステップS306)処理を行ない、ステップS301にループする。   If it is determined in steps S302 and S304 that the print request does not mean print start or print end, a printer control command corresponding to the content of the print request is generated (step S305), and the OS The printer control command is output via the system spooler managed by (step S306), and the process loops to step S301.

なお、ステップS305で生成されたプリンタ制御コマンドは、下記のステップS405で出力先情報によりプリンタを指定した印刷ジョブをオープンするか、またはステップS404でテンポラリファイルを出力先とした印刷ジョブをオープンした後、プリンタ1500へ直接、あるいは一旦テンポラリファイルを経由してステップS306において出力される。すなわち、後述のようにステップS405では、アプリケーションまたはOSより入力された出力ポート名などを含む出力先情報に基づきプリンタデバイスを出力先とした印刷ジョブがオープンされ、一方、ステップS404では、テンポラリファイルを出力先とした印刷ジョブがオープンされる。これらのいずれのタイプの印刷ジョブが生成されるかは、以下の図4に示すように丁合い出力指定の有無(ステップS401)により決定される。   Note that the printer control command generated in step S305 opens the print job in which the printer is specified by the output destination information in the following step S405, or after the print job having the temporary file as the output destination is opened in step S404. In step S306, the data is output directly to the printer 1500 or once via a temporary file. That is, as described later, in step S405, a print job having the printer device as the output destination is opened based on the output destination information including the output port name input from the application or the OS. On the other hand, in step S404, the temporary file is saved. The print job that is the output destination is opened. Which type of print job is generated is determined by the presence / absence of collation output designation (step S401) as shown in FIG.

次に、アプリケーションからの印刷要求が印刷開始を意味するものであった場合のプリンタドライバ処理(ステップS303)を図4を用いて詳細に説明する。   Next, the printer driver process (step S303) when the print request from the application signifies the start of printing will be described in detail with reference to FIG.

まず、プリンタドライバは印刷開始要求を受け付けた際に得た追加情報を参照して丁合い出力が指定されていないかどうかを判定(ステップS401)し、指定されていないと判定した場合には、アプリケーションまたはOSより入力された出力ポート名などを含む出力先情報をもとに印刷ジョブをオープンする(ステップS405)。   First, the printer driver refers to the additional information obtained when the print start request is received, and determines whether collation output is not specified (step S401). A print job is opened based on output destination information including an output port name input from an application or OS (step S405).

一方、ステップS401において丁合い出力が指定されていると判定した場合には、アプリケーション、またはOSより入力された出力先情報をホストコンピュータ3000のRAM2上へ保存(ステップS402)した後、OSが提供するファンクションコールを利用してテンポラリファイルのフルパス名を生成する(ステップS403)。また、これと同時に前記のテンポラリファイルのフルパス名もRAM2上へ保存する(ステップS403)。   On the other hand, if it is determined in step S401 that collate output is designated, the output destination information input from the application or the OS is stored in the RAM 2 of the host computer 3000 (step S402), and then provided by the OS. The full path name of the temporary file is generated using the function call (step S403). At the same time, the full path name of the temporary file is also stored on the RAM 2 (step S403).

次にプリンタドライバは、ステップS403で生成したテンポラリファイルのフルパス名でアプリケーションまたはOSより入力された出力先情報を置き換えて印刷ジョブをオープンする(ステップS404)。   Next, the printer driver replaces the output destination information input from the application or the OS with the full path name of the temporary file generated in step S403, and opens the print job (step S404).

ちなみに、OSが提供するシステムスプーラを用い、テンポラリファイルのフルパス名を出力先として指定した印刷ジョブをオープンして、印刷終了時に印刷ジョブをクローズすれば、結果、指定したフルパス名が示すファイルに全てのプリンタ制御コマンドを記憶することが可能となる。これは、印刷ジョブをオープンした際に取得した識別子(ハンドル)を用いてシステムスプーラへデータを書き込めば、印刷ジョブのオープン時に指定した出力先へのデータ出力が、システムスプーラによって透過的に行われるからである。   By the way, if you use a system spooler provided by the OS, open a print job that specifies the full path name of the temporary file as the output destination, and close the print job when printing ends, the result is that all the files indicated by the specified full path name The printer control command can be stored. If data is written to the system spooler using the identifier (handle) acquired when the print job is opened, the data output to the output destination specified when the print job is opened is transparently performed by the system spooler. Because.

次に、アプリケーションからの印刷要求が印刷終了を意味するものであった場合のプリンタドライバ処理(ステップS307)を図5を用いて詳細に説明する。   Next, printer driver processing (step S307) in the case where the print request from the application means the end of printing will be described in detail with reference to FIG.

まず、最初に、プリンタドライバはオープン中の印刷ジョブをクローズした(ステップS501)後、印刷終了要求を受け付けた際に得た追加情報を参照して丁合い出力が指定されていないかどうかを判定(ステップS502)する。ステップS502において丁合い出力が指定されていないと判定された場合には、そのまま処理を終了するが、丁合い出力が指定されていると判定された場合には、前記ステップS402で保存しておいた出力先情報をRAM2上から読み込み、その情報をもとにして、今度はプリンタを出力先とした印刷ジョブを新たにオープンする(ステップS503)。   First, after the printer driver closes the open print job (step S501), the printer driver determines whether collation output is designated with reference to additional information obtained when a print end request is received. (Step S502). If it is determined in step S502 that collation output is not designated, the process is terminated, but if it is determined that collation output is designated, it is stored in step S402. The read output destination information is read from the RAM 2, and based on the information, a print job for which the printer is the output destination is newly opened (step S503).

続いて、プリンタドライバは、テンポラリファイルへ一時記憶しておいたプリンタ制御コマンドの総データサイズをOSのファンクションコールを用いて求め、RAM2上へ記憶する(ステップS504)。次にプリンタドライバはジョブスプール機能を用いた場合にプリンタ1500が一時記憶可能な最大データサイズを取得し、RAM2上へ記憶する(ステップS505)。なお、本実施例においては、プリンタ1500が一時記憶可能な最大データサイズは、専用アプリケーション(たとえばプリンタドライバのインストーラなど)が所定のタイミングでプリンタ1500と通信して取得した上、外部メモリ11上の予め決められた場所へ、予め決められたフォーマットで保存されているものとし、プリンタドライバはこの情報をOSのファンクションコールを用いてRAM2上へ読み込む事により、前記ステップS505の処理を行なうものとする。ただし、ステップS505の処理は、プリンタ1500がジョブスプール記憶領域に一時記憶可能な最大データサイズの情報が必要になる毎にプリンタ1500と通信して該情報を取得するものであってもよい。   Subsequently, the printer driver obtains the total data size of the printer control commands temporarily stored in the temporary file using the OS function call, and stores it on the RAM 2 (step S504). Next, when using the job spool function, the printer driver acquires the maximum data size that can be temporarily stored in the printer 1500 and stores it in the RAM 2 (step S505). In the present embodiment, the maximum data size that can be temporarily stored in the printer 1500 is acquired by a dedicated application (for example, a printer driver installer) communicating with the printer 1500 at a predetermined timing, and then stored in the external memory 11. It is assumed that the printer driver is stored in a predetermined format in a predetermined location, and the printer driver reads the information into the RAM 2 using an OS function call, thereby performing the process of step S505. . However, the process of step S505 may be performed by communicating with the printer 1500 and acquiring the information every time the printer 1500 needs information on the maximum data size that can be temporarily stored in the job spool storage area.

そしてプリンタドライバは、ステップS504で取得したプリンタ制御コマンドの総データサイズとステップS505で取得したプリンタ1500のジョブスプール機能における最大記憶データサイズを比較(ステップS506)し、前者の方が小さい、もしくは等しいと判定した場合には直ちにステップS510へ進み、テンポラリファイルへ一時記憶しておいたプリンタ制御コマンドの先頭に上述の(1)として示したプリンタ制御コマンドを、また後尾に印刷データの終了を指示するための文字列を付加して、システムスプーラへ出力する。   The printer driver then compares the total data size of the printer control command acquired in step S504 with the maximum stored data size in the job spool function of the printer 1500 acquired in step S505 (step S506), and the former is smaller or equal. If YES, the process immediately proceeds to step S510, in which the printer control command shown as (1) above is instructed at the beginning of the printer control command temporarily stored in the temporary file, and the end of the print data is instructed at the end. Is added to the system spooler.

一方、ステップS506において、前者(プリンタ制御コマンドの総データサイズ)の方が大きいと判定した場合には、プリンタ1500のジョブスプール記憶領域の最大記憶データサイズを更新可能かどうかをプリンタ構成情報から判定すると共に、更新したらプリンタ制御コマンドの総データサイズが収まるのに十分な領域を確保できるのかどうかを判定する(ステップS507)。   On the other hand, if it is determined in step S506 that the former (total data size of the printer control command) is larger, it is determined from the printer configuration information whether the maximum storage data size of the job spool storage area of the printer 1500 can be updated. At the same time, it is determined whether or not a sufficient area can be secured to accommodate the total data size of the printer control command after the update (step S507).

ステップS507において、プリンタ1500のジョブスプール記憶領域の最大記憶データサイズを更新しても依然プリンタ制御コマンドの総データサイズの方が大きいと判定された場合には、テンポラリファイルへ一時記憶しておいたプリンタ制御コマンドを所定の回数だけ繰り返してシステムスプーラへ出力する(ステップS508)。   If it is determined in step S507 that the total data size of the printer control command is still larger even after updating the maximum storage data size of the job spool storage area of the printer 1500, the temporary data is temporarily stored in the temporary file. The printer control command is repeated a predetermined number of times and output to the system spooler (step S508).

一方、ステップS507において、プリンタ1500のジョブスプール記憶領域の最大記憶データサイズを更新すればプリンタ制御コマンドの総データサイズ分をプリンタ1500に一時記憶可能と判定した場合には、プリンタ1500のジョブスプール記憶領域の最大記憶データサイズを更新する印刷ジョブをシステムスプーラへ出力し(ステップS509)、ステップS510に移行する。   On the other hand, if it is determined in step S507 that the maximum data size of the job spool storage area of the printer 1500 is updated, the total data size of the printer control command can be temporarily stored in the printer 1500. A print job for updating the maximum storage data size of the area is output to the system spooler (step S509), and the process proceeds to step S510.

なお、ステップS509においては、上述の(2)として示したプリンタ制御コマンドとハードウェアリセット命令で構成される印刷ジョブをシステムスプーラを介して(OSなどの構成によってはシステムスプーラを介さずに送信してもよい)プリンタ1500へ出力することにより、プリンタ1500のジョブスプール記憶領域の最大記憶データサイズを更新する処理を行なうものとする。   In step S509, a print job composed of the printer control command and the hardware reset command shown as (2) above is transmitted via the system spooler (in some configurations such as the OS, not via the system spooler). It is also possible to perform processing for updating the maximum storage data size in the job spool storage area of the printer 1500 by outputting to the printer 1500.

そして、ステップS508または510に続いて、プリンタドライバはステップS503において新たにオープンした印刷ジョブをクローズし(ステップS511)、丁合い出力が指定された場合の処理(ステップS503〜511)を終了する。   Then, following step S508 or 510, the printer driver closes the print job newly opened in step S503 (step S511), and ends the process when collation output is designated (steps S503 to 511).

以上に示したように、本実施例によれば、丁合い出力が指定されている場合に、順次生成したプリンタ制御コマンドを直ちにプリンタ1500へは出力せず、ホストコンピュータ3000上の外部メモリ11へ一時的に記憶しておき、その総データサイズがジョブスプール機能を用いた際にプリンタ1500が一時記憶可能である最大データサイズを超えていないかどうかを判定し、超えている場合にはプリンタ1500が一時記憶可能な最大データサイズを更新する印刷ジョブをプリンタ1500へ発行してから、ジョブスプール機能を適用した印刷ジョブを出力するので、従来のようにオーバーフローを生じることなく、丁合い出力のような複数部数の印刷出力において、プリンタのジョブスプール機能を利用して、所定の回数分の印刷出力を確実に保証でき、プリンタ〜ホストコンピュータ間の通信負荷増大を回避することができる、という優れた効果がある。   As described above, according to the present embodiment, when collate output is designated, the sequentially generated printer control commands are not immediately output to the printer 1500, but to the external memory 11 on the host computer 3000. It is temporarily stored, and it is determined whether or not the total data size exceeds the maximum data size that the printer 1500 can temporarily store when the job spool function is used. Issues a print job that updates the maximum data size that can be temporarily stored to the printer 1500, and then outputs a print job to which the job spool function is applied. When printing multiple copies, use the job spool function of the printer to print a predetermined number of times. Force can be reliably guarantee, it is possible to avoid a communication load increases between the printer-host computer, there is excellent effect that.

また、プリンタの最大記憶データサイズを再設定してもプリンタから取得した最大記憶データサイズを超えてしまう場合、ジョブスプール機能を利用せず、テンポラリファイルに記憶しておいた印刷データを指定回数だけプリンタへ出力させるようにしているので、印刷出力が不可能になってしまう事がなく、確実に印刷出力を得ることができる、という優れた効果がある。   If the maximum storage data size obtained from the printer is exceeded even after resetting the maximum storage data size of the printer, the print data stored in the temporary file is used for the specified number of times without using the job spool function. Since the output is made to the printer, there is an excellent effect that the print output does not become impossible and the print output can be surely obtained.

第1実施例では、プリンタ1500のジョブスプールのための最大記憶データサイズを更新不可能であればテンポラリファイルに一時記憶しておいたプリンタ制御コマンドを所定の回数だけ繰り返してプリンタ1500へ出力するようにしている。しかし、前述の図5のステップS506〜510を改良し、テンポラリファイルへ一時記憶しておいたプリンタ制御コマンドを所定の回数だけ繰り返してプリンタ1500へ出力する手法と、プリンタ1500のジョブスプールのための最大記憶データサイズを更新する印刷ジョブをプリンタ1500へ出力してからジョブスプール機能を適用した印刷ジョブを出力する手法のどちらが高速に印刷処理を行えるか判定してから、いずれかの手法を選択実行する構成も考えられる。以下では、このような印刷処理の最適化を含む構成を例示する。   In the first embodiment, if the maximum storage data size for the job spool of the printer 1500 cannot be updated, the printer control command temporarily stored in the temporary file is repeatedly output a predetermined number of times to the printer 1500. I have to. However, the above-described steps S506 to S510 in FIG. 5 are improved, a method for repeatedly outputting the printer control command temporarily stored in the temporary file to the printer 1500 a predetermined number of times, and a job spool for the printer 1500 After determining which of the methods to output a print job to which the maximum spooled data size is updated to the printer 1500 and then outputting the print job to which the job spool function is applied can be performed at high speed, select one of the methods It is also possible to use a configuration that does this. Hereinafter, a configuration including optimization of such print processing will be exemplified.

本実施例が示すプリンタドライバでは、図6に示した処理を実行する。図6のステップS506〜510は、第1実施例の図5のステップS506〜510を置換するのである。図6の各処理フローを示す符号のうち、図5と同じ番号を付した処理フローは、前記実施例と全く同一の処理内容を示しているものとする。   The printer driver shown in the present embodiment executes the processing shown in FIG. Steps S506 to 510 in FIG. 6 replace steps S506 to 510 in FIG. 5 of the first embodiment. Of the reference numerals indicating the respective processing flows in FIG. 6, the processing flows denoted by the same numbers as those in FIG. 5 indicate the same processing contents as those in the embodiment.

図6のステップS506において、ホストコンピュータ3000の外部メモリ11へテンポラリファイルとして記憶しておいたプリンタ制御コマンドの総データサイズがプリンタ1500で一時記憶可能な最大データサイズよりも小さいか等しいと、判定された場合には、前記実施例と同様にステップS510へ進み、ジョブスプール機能を適用した印刷ジョブを生成し、出力する。   In step S506 of FIG. 6, it is determined that the total data size of the printer control command stored as a temporary file in the external memory 11 of the host computer 3000 is smaller than or equal to the maximum data size that can be temporarily stored in the printer 1500. In the case where the job spool function has been received, the process proceeds to step S510, and a print job to which the job spool function is applied is generated and output.

一方、ステップS506において、テンポラリファイルとして記憶しておいたプリンタ制御コマンドの総データサイズがプリンタ1500で一時記憶可能な最大データサイズよりも大きいと判定された場合には、プリンタ1500の最大記憶データサイズを更新可能かどうかをプリンタ1500の構成情報から判定すると共に、更新したらプリンタ制御コマンドの総データサイズが収まるのに十分な領域をプリンタ1500へ確保できるのかどうかを判定する(ステップS507)。   On the other hand, if it is determined in step S506 that the total data size of the printer control command stored as a temporary file is larger than the maximum data size that can be temporarily stored in the printer 1500, the maximum storage data size of the printer 1500 is determined. Is updated from the configuration information of the printer 1500, and if updated, it is determined whether or not a sufficient area for the total data size of the printer control command can be secured in the printer 1500 (step S507).

ここで、プリンタ1500の最大記憶データサイズを更新しても依然としてプリンタ制御コマンドの総データサイズをプリンタ1500の一時記憶領域へ収めることが不可能だと判定された場合には、テンポラリファイルへ一時記憶しておいたプリンタ制御コマンドを所定の回数だけ繰り返してプリンタ1500へ出力する(ステップS508)。   If it is determined that the total data size of the printer control command still cannot be stored in the temporary storage area of the printer 1500 even when the maximum storage data size of the printer 1500 is updated, the temporary storage is temporarily stored in the temporary file. The printer control command that has been set is repeated a predetermined number of times and output to the printer 1500 (step S508).

一方、プリンタ1500の最大記憶データサイズを更新すればプリンタ制御コマンドの総データサイズをプリンタ1500へ一時記憶可能であるとステップS507において判定した場合には、ステップS508が示す処理手法とステップS509及び510が示す処理手法に要するそれぞれの処理時間を計算する(ステップS601)。   On the other hand, if it is determined in step S507 that the total data size of the printer control command can be temporarily stored in the printer 1500 by updating the maximum storage data size of the printer 1500, the processing method shown in step S508 and steps S509 and 510 are performed. Each processing time required for the processing method indicated by is calculated (step S601).

本実施例で示したプリンタ1500が保持するジョブスプール機能とは受信データを単純に指定された回数だけ繰り返して受信したかのように処理する機能である。従って、前記に示した2つの処理手法に要する処理時間を比較する場合には、次に示した処理内容に必要となる処理時間がそれぞれ分かれば良いこととなる。   The job spool function held by the printer 1500 shown in this embodiment is a function for processing received data as if it were simply received a specified number of times. Therefore, when comparing the processing time required for the two processing methods described above, it is only necessary to know the processing time required for the following processing contents.

1.ホストコンピュータ3000上における印刷データ生成処理の処理時間 2.ホストコンピュータ3000上におけるプリンタ1500の最大記憶データサイズを更新するための印刷データ生成処理の処理時間 3.上記2.の印刷データに関するホストコンピュータ3000からプリンタ1500へのデータ通信処理の処理時間 4.プリンタ1500で最大記憶データサイズを更新するための処理時間 5.上記1.の印刷データに関するホストコンピュータ3000からプリンタ1500へのデータ通信処理の処理時間
本実施例では、上記1.及び上記5.に要する処理時間は単純に扱うデータサイズに比例して増加するものとし、上記4に要する処理時間は概ね一定になることとする。なお、前記実施例で示した通り、プリンタ1500の最大記憶データサイズを更新するための印刷ジョブは、上記(2)で示したプリンタ制御コマンドとハードウェアリセット命令で構成されるので、この印刷ジョブ自体のデータサイズは相対的に非常に小さいものとなる。従って、本実施例では上記2及び上記3のプリンタ1500のジョブスプールにおける最大記憶データサイズ更新処理の要する処理時間は無視して、2つの印刷手法に必要となる処理時間をそれぞれ計算し、比較することにする(もちろん、正確を期す場合にはジョブスプールにおける最大記憶データサイズ更新処理の処理時間を加味した計算を行なうようにしてもよい)。
1. 1. Processing time of print data generation processing on the host computer 3000 2. Processing time of print data generation processing for updating the maximum storage data size of the printer 1500 on the host computer 3000 2. Processing time of data communication processing from the host computer 3000 to the printer 1500 for the print data of 4. Processing time for updating the maximum storage data size in the printer 1500 Above 1. Processing time of data communication processing from the host computer 3000 to the printer 1500 regarding the print data of And 5. It is assumed that the processing time required for the processing increases in proportion to the data size that is simply handled, and the processing time required for the above 4 is substantially constant. As shown in the above embodiment, the print job for updating the maximum storage data size of the printer 1500 is composed of the printer control command and the hardware reset command shown in (2). The data size itself is relatively very small. Therefore, in this embodiment, the processing time required for the maximum storage data size update processing in the job spool of the printer 1500 of the above 2 and 3 is ignored, and the processing times required for the two printing methods are calculated and compared respectively. (Of course, for accuracy, calculation may be performed in consideration of the processing time of the maximum storage data size update processing in the job spool).

ここで、上記の処理時間1、5、4に要する総処理時間を、それぞれP,Q,R(単位:msec)で表現するものとすれば、1バイトの印刷データの処理速度p(単位:msec/byte,テンポラリファイルを読み出し、送信準備する処理に要する速度)、および1バイトの印刷データの通信速度q(単位:msec/byte)に対して扱うデータサイズを乗算するとP、Qがそれぞれ求められる。さらに、ホストコンピュータ3000上の外部メモリ11上にテンポラリファイルとして記憶しておいたプリンタ制御コマンド群の総データサイズをS(単位:byte)とし、丁合いする回数(丁合い出力する部数)をTとする。そして、ステップS508(テンポラリファイルのプリンタコマンドを複数回送信する場合)の処理時間をγ(単位:msec)、また、ステップS509およびステップS510(プリンタのジョブスプール機能を利用する場合)の処理を行ったとした場合の合計処理時間をθ(単位:msec)で表現すれば、これらγ、θはそれぞれ次のような計算式で表すことが可能となる。
γ(msec)=P(msec)+Q(msec)
=(p(msec/byte)×S(byte))×T+(q(msec/byte)×S(byte)×T)
=(p+q)×S×T
θ(msec)=P(msec)+Q(msec)+R(msec)
≒(p(msec/byte)×S(byte))+(q(msec/byte)×S(byte))+R
≒(p+q)×S+R
したがって、ステップS602において、本実施例で示すプリンタドライバは上記の計算式で算出したγとθを比較する。ここで、γがθよりも小さいか等しいと判定された場合には、ステップS508へ進むが、γの方が大きいと判定された場合にはステップS509へ進み、プリンタ1500の最大記憶データサイズを更新する印刷ジョブをシステムスプーラを介してプリンタ1500へ出力した後、ジョブスプール機能を適用した印刷ジョブを出力する(ステップS510)。すなわち、テンポラリファイルのプリンタコマンドを複数回送信したほうが速いと判定すればステップS508に進み、一方、プリンタのジョブスプール機能を利用したほうが速いと判定すればステップS509に進む。
Here, if the total processing time required for the processing times 1, 5, and 4 is expressed by P, Q, and R (unit: msec), respectively, the processing speed p (unit: 1 byte) of print data. Multiplying the data size handled by msec / byte, the speed required to read the temporary file and prepare for transmission), and the communication speed q (unit: msec / byte) of 1-byte print data, P and Q are obtained respectively. It is done. Further, the total data size of the printer control command group stored as a temporary file on the external memory 11 on the host computer 3000 is S (unit: byte), and the number of collations (the number of collated outputs) is T. And Then, the processing time of step S508 (when the printer command of the temporary file is transmitted a plurality of times) is γ (unit: msec), and the processing of steps S509 and S510 (when the job spool function of the printer is used) is performed. If the total processing time is expressed by θ (unit: msec), γ and θ can be expressed by the following calculation formulas.
γ (msec) = P (msec) + Q (msec)
= (p (msec / byte) × S (byte)) × T + (q (msec / byte) × S (byte) × T)
= (p + q) × S × T
θ (msec) = P (msec) + Q (msec) + R (msec)
≒ (p (msec / byte) x S (byte)) + (q (msec / byte) x S (byte)) + R
≒ (p + q) x S + R
Therefore, in step S602, the printer driver shown in the present embodiment compares γ and θ calculated by the above formula. If it is determined that γ is smaller than or equal to θ, the process proceeds to step S508. If it is determined that γ is larger, the process proceeds to step S509, and the maximum storage data size of the printer 1500 is set. After the print job to be updated is output to the printer 1500 via the system spooler, the print job to which the job spool function is applied is output (step S510). In other words, if it is determined that it is faster to send the printer command of the temporary file a plurality of times, the process proceeds to step S508. If it is determined that it is faster to use the job spool function of the printer, the process proceeds to step S509.

本実施例の処理(図6)によれば、ホストコンピュータ3000上に一時記憶しておいたプリンタ制御コマンド群の総データサイズがプリンタ1500の最大記憶データサイズを超えてしまうが、プリンタ1500の最大記憶データサイズを更新することによりジョブスプール機能を利用できる場合であっても、予めジョブスプール機能を利用しない方法との処理速度を比較し、これらのうちいずれか高速な処理手法を選択実行することができ、比較的に高速な印刷処理を行いながら、所定の回数分の丁合いされた用紙出力結果を保証できるという優れた効果がある。   According to the processing of this embodiment (FIG. 6), the total data size of the printer control command group temporarily stored on the host computer 3000 exceeds the maximum storage data size of the printer 1500. Even if the job spool function can be used by updating the storage data size, the processing speed is compared with a method that does not use the job spool function in advance, and one of these high-speed processing methods is selected and executed. Thus, there is an excellent effect that a collated sheet output result for a predetermined number of times can be guaranteed while performing a relatively high-speed printing process.

本発明の処理を実現するためのプログラム、および制御データは、印刷システムを構成するホストコンピュータ、プリンタなど任意の装置の任意の記憶媒体に格納されていてよい。特に、プリンタのジョブスプール機能において受信データを一時的に記憶可能な最大データサイズについては、種々の構成が考えられる。   A program and control data for realizing the processing of the present invention may be stored in an arbitrary storage medium of an arbitrary apparatus such as a host computer or a printer constituting the printing system. In particular, various configurations can be considered for the maximum data size that can temporarily store received data in the job spool function of the printer.

たとえば、プリンタのジョブスプール記憶領域の受信データを一時的に記憶可能な最大データサイズをホストコンピュータの記憶手段に記憶する構成が考えられ、その場合、ホストコンピュータ内のNVRAMなどの不揮発性のメモリ、着脱可能な記憶手段など、任意の記憶手段に記憶させておくことができる。また、一旦プリンタから取得した最大データサイズに関する情報は、リソースファイルなどの形式でOSがシャットダウンされる際などにハードディスクなどの外部記憶装置に退避されるような構成であってもよい。特に、上記のように不揮発的に最大データサイズを保持しておく構成によれば、面倒な再設定操作を行なわなくても、継続的にジョブスプールに関しては同一の条件でシステムを動作させることができる。   For example, a configuration in which the maximum data size that can temporarily store the received data in the job spool storage area of the printer is stored in the storage means of the host computer, in which case, a nonvolatile memory such as NVRAM in the host computer, It can be stored in any storage means such as a removable storage means. Further, the information on the maximum data size once acquired from the printer may be configured to be saved in an external storage device such as a hard disk when the OS is shut down in the form of a resource file or the like. In particular, according to the configuration in which the maximum data size is held in a nonvolatile manner as described above, the system can be continuously operated under the same conditions regarding the job spool without performing a troublesome resetting operation. it can.

また、プリンタのジョブスプール記憶領域の受信データを一時的に記憶可能な最大データサイズは、ユーザがホストコンピュータ上で動作する任意のプログラムのユーザインターフェイス(たとえばプリンタドライバの動作をカスタマイズするユーザインターフェース、プリンタを用いるあらゆる情報処理を行なうアプリケーションプログラムのユーザインターフェースなど)を介して好みの値を設定できるようにすることが考えられる。このような構成により、たとえば、ユーザはプリンタの用途に応じ、好みのプリンタ内蔵フォントの展開や外部からプリンタへのフォントダウンロードのために必要なメモリ容量をプリンタ上に確保しておくことが可能となる。   The maximum data size that can temporarily store the received data in the job spool storage area of the printer is the user interface of any program that the user operates on the host computer (for example, a user interface that customizes the operation of the printer driver, printer It is conceivable that a desired value can be set via a user interface of an application program that performs any information processing using the. With such a configuration, for example, the user can secure a memory capacity necessary for developing a favorite printer built-in font or downloading a font from the outside to the printer according to the use of the printer. Become.

また、前述のように、プリンタのジョブスプール記憶領域の受信データを一時的に記憶可能な最大データサイズをプリンタのメモリ(内蔵メモリ、あるいは着脱可能な拡張メモリなど)に格納しておき、ホストコンピュータ側からプリンタ制御コマンドのインターフェースを用い、双方向インターフェイスやネットワークを介して取得し、また再設定できるようにしておくことができる。   Also, as described above, the maximum data size that can temporarily store the received data in the job spool storage area of the printer is stored in the printer memory (built-in memory or removable expansion memory), and the host computer The printer control command interface can be used from the side, and can be acquired via a bidirectional interface or a network, and can be reset.

特に、上記のようにホストコンピュータ側に最大データサイズを記憶できる機構も設けられている場合には、プリンタのメモリに記憶されているジョブスプール記憶領域の最大データサイズの情報と、ホストコンピュータのメモリに記憶されている最大データサイズの情報をなんらかの手法で同期させる必要があるが、このためには当業者において必要に応じて任意の手法を採用すればよい。たとえば、前記のように丁合い印刷が必要となった時に、プリンタ側から取得し、これにホストコンピュータ側のメモリの内容を同期させ、再設定の必要が生じた場合は両者を同時に更新するような方法が考えられる。   In particular, when a mechanism capable of storing the maximum data size is provided on the host computer side as described above, information on the maximum data size of the job spool storage area stored in the memory of the printer and the memory of the host computer It is necessary to synchronize the information of the maximum data size stored in the memory by some method. For this purpose, any method may be adopted as necessary by those skilled in the art. For example, when collation printing is required as described above, it is obtained from the printer side, and the contents of the memory on the host computer side are synchronized with this, and if it is necessary to reset, both are updated simultaneously. Can be considered.

また、以上の各実施例では、プリンタのジョブスプール機能の最大データサイズを再設定するところまでを示したが、その後の処理については、種々の構成が考えられる。たとえば、ジョブスプール機能の最大データサイズの設定をプリンタ側の設定メモリに残しても良いし、また、再設定の必要となった(丁合い)出力ジョブの処理が終了したらジョブスプール機能の最大データサイズの設定を当該ジョブが開始される前の状態に復帰させるようにしてもよい。   In each of the above embodiments, up to the point where the maximum data size of the job spool function of the printer is reset is shown, but various configurations can be considered for the subsequent processing. For example, the maximum data size setting of the job spool function may be left in the setting memory on the printer side, or the maximum data of the job spool function may be output after processing of the output job that needs to be reset (collation) is completed. The size setting may be returned to the state before the job is started.

以上では、本発明の機能がプリンタドライバに実装される構成を例示したが、外部からホストコンピュータにインストールされるプログラムに本発明の機能が実装されていてもかまわない。その場合、本発明を適用した処理プログラムは任意のコンピュータ読取可能な記憶媒体から読み込まれるものであってよい。すなわち、本発明を適用した処理プログラムはCD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいは、電子メールやパソコン通信等のネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置やホストコンピュータを含むシステム内にロードすることにより、ホストコンピュータあるいは出力装置に供給することが可能である。   In the above, the configuration in which the function of the present invention is implemented in the printer driver is exemplified, but the function of the present invention may be implemented in a program installed in the host computer from the outside. In that case, the processing program to which the present invention is applied may be read from an arbitrary computer-readable storage medium. That is, the processing program to which the present invention is applied outputs an information group including the program from a storage medium such as a CD-ROM, flash memory, or FD, or from an external storage medium via a network such as e-mail or personal computer communication. It can be supplied to a host computer or an output device by being loaded into a system including the device and the host computer.

本発明を採用した印刷システムの構成を示したブロック図である。1 is a block diagram illustrating a configuration of a printing system that employs the present invention. 本発明を採用したプリンタドライバがホストコンピュータのRAM上にロードされて実行可能となった状態におけるメモリマップ図である。FIG. 6 is a memory map diagram in a state where a printer driver employing the present invention is loaded onto a RAM of a host computer and becomes executable. 本発明を採用したプリンタドライバの処理の概略を示したフローチャート図である。FIG. 5 is a flowchart illustrating an outline of processing of a printer driver that employs the present invention. 図3のステップS303の処理を示したフローチャート図である。It is the flowchart figure which showed the process of step S303 of FIG. 図3のステップS307の処理を示したフローチャート図である。It is the flowchart figure which showed the process of step S307 of FIG. 異なる実施例における図5の変更部分を示したフローチャート図である。It is the flowchart figure which showed the change part of FIG. 5 in a different Example.

符号の説明Explanation of symbols

1、12 CPU
2、19 RAM
3、13 ROM
4、15 システムバス
5 KBC
6 CRTC
7、20 DKC
8 PRTC
11、14 外部メモリ
18 入力部
1500 プリンタ
1501 操作パネル
3000 ホストコンピュータ
1, 12 CPU
2, 19 RAM
3, 13 ROM
4, 15 System bus 5 KBC
6 CRTC
7, 20 DKC
8 PRTC
11, 14 External memory 18 Input unit 1500 Printer 1501 Operation panel 3000 Host computer

Claims (9)

受信した印刷制御コマンドをスプール記憶手段へ一時的に記憶し前記受信した印刷制御コマンドを該印刷制御コマンドで指定された回数分連続的に印刷処理することにより印刷出力を行なうジョブスプール機能を有するプリンタと通信可能な情報処理装置であって、
印刷要求に丁合い印刷が指定されているか否かを判定する丁合い指定判定手段と、
前記丁合い指定判定手段により丁合い印刷が指定されていると判定された場合、全ての印刷制御コマンドの総データサイズと前記スプール記憶手段に記憶可能なデータサイズを用いて、前記全ての印刷制御コマンドを前記スプール記憶手段に格納して、前記ジョブスプール機能を用いた印刷を実行することが可能であるか否かを判定する第1判定手段と、
前記第1判定手段により、前記ジョブスプール機能を用いた印刷処理を実行できると判定された場合、前記ジョブスプール機能を実行すべき特定の情報を付加して前記全ての印刷制御コマンドを出力し、前記第1判定手段により前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記全ての印刷制御コマンドを指定された回数だけ繰り返して出力することにより生成される印刷ジョブを送信する第1送信制御手段と、
前記丁合い指定判定手段により丁合い印刷が指定されていないと判定された場合、前記第1判定手段による処理を実行することなく前記プリンタに対して印刷制御コマンドを出力することにより生成される印刷ジョブを送信する第2送信制御手段を有することを特徴とする情報処理装置。
A printer having a job spool function that temporarily stores the received print control command in the spool storage means and prints the received print control command continuously for the number of times specified by the print control command. An information processing apparatus capable of communicating with
Collation designation determination means for determining whether collation printing is designated in the print request;
When it is determined that collation printing is designated by the collation designation judging means, all print control is performed using the total data size of all print control commands and the data size that can be stored in the spool storage means. First determination means for storing a command in the spool storage means and determining whether or not printing using the job spool function can be executed;
When it is determined by the first determination means that printing processing using the job spool function can be executed, specific information for executing the job spool function is added, and all the print control commands are output, When it is determined by the first determination means that printing using the job spool function cannot be executed, a print job generated by repeatedly outputting all the print control commands a specified number of times is transmitted. 1 transmission control means;
Print generated by outputting a print control command to the printer without executing processing by the first determination unit when it is determined by the collation designation determination unit that collation printing is not specified An information processing apparatus comprising second transmission control means for transmitting a job.
前記第1判定手段により前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷が可能であるか否かを判定する第2判定手段と、
前記第2判定手段により前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷を実行できると判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更するための変更指示を前記プリンタに対して送信する変更指示送信手段を有することを特徴とする請求項1に記載の情報処理装置。
If it is determined by the first determination means that printing using the job spool function cannot be executed, printing using the job spool function is possible by changing the data size that can be stored in the spool storage means. Second determination means for determining whether or not,
When it is determined by the second determination means that the print using the job spool function can be executed by changing the data size that can be stored in the spool storage means, the data size that can be stored in the spool storage means is changed. The information processing apparatus according to claim 1, further comprising: a change instruction transmission unit that transmits a change instruction to the printer to the printer.
前記第2判定手段により、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷をすることができると判定された場合、前記スプール記憶手段のデータサイズの変更処理およびジョブスプール機能を利用した出力処理と、前記印刷制御コマンドを前記指定された回数だけプリンタへ出力する出力処理のうち、いずれの処理が高速に処理できるかを判定し、その判定結果に応じて実行すべき処理を決定する決定手段を有することを特徴とする請求項2に記載の情報処理装置。   When the second determination unit determines that printing using the job spool function can be performed by changing the data size that can be stored in the spool storage unit, the data size of the spool storage unit is changed. It is determined which processing can be performed at high speed among the output processing using the processing and the job spool function and the output processing for outputting the print control command to the printer for the designated number of times, and according to the determination result The information processing apparatus according to claim 2, further comprising a determination unit that determines a process to be executed. 受信した印刷制御コマンドをスプール記憶手段へ一時的に記憶し前記受信した印刷制御コマンドを該印刷制御コマンドで指定された回数分連続的に印刷処理することにより印刷出力を行なうジョブスプール機能を有するプリンタと通信可能な情報処理装置の制御方法であって、
印刷要求に丁合い印刷が指定されているか否かを判定する丁合い指定判定ステップと、
前記丁合い指定判定ステップにより丁合い印刷が指定されていると判定された場合、全ての印刷制御コマンドの総データサイズと前記スプール記憶手段に記憶可能なデータサイズを用いて、前記全ての印刷制御コマンドを前記スプール記憶手段に格納して、前記ジョブスプール機能を用いた印刷を実行することが可能であるか否かを判定する第1判定ステップと、
前記第1判定ステップにより、前記ジョブスプール機能を用いた印刷処理を実行できると判定された場合、前記ジョブスプール機能を実行すべき特定の情報を付加して前記全ての印刷制御コマンドを出力し、前記第1判定ステップにより前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記全ての印刷制御コマンドを指定された回数だけ繰り返して出力することにより生成される印刷ジョブを送信する第1送信制御ステップと、
前記丁合い指定判定ステップにより丁合い印刷が指定されていないと判定された場合、前記第1判定ステップによる処理を実行することなく前記プリンタに対して印刷制御コマンドを出力することにより生成される印刷ジョブを送信する第2送信制御ステップを有することを特徴とする情報処理装置の制御方法。
A printer having a job spool function that temporarily stores the received print control command in the spool storage means and prints the received print control command continuously for the number of times specified by the print control command. A method of controlling an information processing apparatus capable of communicating with
A collation designation determination step for determining whether collation printing is designated in the print request;
If it is determined in the collation designation determination step that collation printing is designated, all print control is performed using the total data size of all print control commands and the data size that can be stored in the spool storage means. A first determination step of determining whether it is possible to store a command in the spool storage means and execute printing using the job spool function;
If it is determined by the first determination step that the print processing using the job spool function can be executed, specific information to be executed for the job spool function is added and all the print control commands are output. If it is determined in the first determination step that printing using the job spool function cannot be executed, a print job generated by repeatedly outputting all the print control commands a specified number of times is transmitted. One transmission control step;
When it is determined in the collation designation determination step that collation printing is not designated, printing generated by outputting a print control command to the printer without executing the processing in the first determination step A method for controlling an information processing apparatus, comprising: a second transmission control step for transmitting a job.
前記第1判定ステップにより前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷が可能であるか否かを判定する第2判定ステップと、
前記第2判定ステップにより前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷を実行できると判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更するための変更指示を前記プリンタに対して送信する変更指示送信ステップを有することを特徴とする請求項4に記載の情報処理装置の制御方法。
When it is determined in the first determination step that printing using the job spool function cannot be executed, printing using the job spool function is possible by changing the data size that can be stored in the spool storage unit. A second determination step for determining whether or not
If it is determined in the second determination step that printing using the job spool function can be executed by changing the data size that can be stored in the spool storage unit, the data size that can be stored in the spool storage unit is changed. 5. The control method for an information processing apparatus according to claim 4, further comprising a change instruction transmission step of transmitting a change instruction for performing the change to the printer.
前記第2判定ステップにより、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷をすることができると判定された場合、前記スプール記憶手段のデータサイズの変更処理およびジョブスプール機能を利用した出力処理と、前記印刷制御コマンドを前記指定された回数だけプリンタへ出力する出力処理のうち、いずれの処理が高速に処理できるかを判定し、その判定結果に応じて実行すべき処理を決定する決定ステップを有することを特徴とする請求項4に記載の情報処理装置の制御方法。   When the second determination step determines that printing using the job spool function can be performed by changing the data size that can be stored in the spool storage unit, the data size of the spool storage unit is changed. It is determined which processing can be performed at high speed among the output processing using the processing and the job spool function and the output processing for outputting the print control command to the printer for the designated number of times, and according to the determination result 5. The information processing apparatus control method according to claim 4, further comprising a determination step of determining a process to be executed. 受信した印刷制御コマンドをスプール記憶手段へ一時的に記憶し前記受信した印刷制御コマンドを該印刷制御コマンドで指定された回数分連続的に印刷処理することにより印刷出力を行なうジョブスプール機能を有するプリンタと通信可能な情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体であって、
印刷要求に丁合い印刷が指定されているか否かを判定する丁合い指定判定ステップと、
前記丁合い指定判定ステップにより丁合い印刷が指定されていると判定された場合、全ての印刷制御コマンドの総データサイズと前記スプール記憶手段に記憶可能なデータサイズを用いて、前記全ての印刷制御コマンドを前記スプール記憶手段に格納して、前記ジョブスプール機能を用いた印刷を実行することが可能であるか否かを判定する第1判定ステップと、
前記第1判定ステップにより、前記ジョブスプール機能を用いた印刷処理を実行できると判定された場合、前記ジョブスプール機能を実行すべき特定の情報を付加して前記全ての印刷制御コマンドを出力し、前記第1判定ステップにより前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記全ての印刷制御コマンドを指定された回数だけ繰り返して出力することにより生成される印刷ジョブを送信する第1送信制御ステップと、
前記丁合い指定判定ステップにより丁合い印刷が指定されていないと判定された場合、前記第1判定ステップによる処理を実行することなく前記プリンタに対して印刷制御コマンドを出力することにより生成される印刷ジョブを送信する第2送信制御ステップを含む制御プログラムを格納したことを特徴とする情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体。
A printer having a job spool function that temporarily stores the received print control command in the spool storage means and prints the received print control command continuously for the number of times specified by the print control command. A computer-readable storage medium storing a control program for an information processing apparatus capable of communicating with
A collation designation determination step for determining whether collation printing is designated in the print request;
If it is determined in the collation designation determination step that collation printing is designated, all print control is performed using the total data size of all print control commands and the data size that can be stored in the spool storage means. A first determination step of determining whether it is possible to store a command in the spool storage means and execute printing using the job spool function;
If it is determined by the first determination step that the print processing using the job spool function can be executed, specific information to be executed for the job spool function is added and all the print control commands are output. If it is determined in the first determination step that printing using the job spool function cannot be executed, a print job generated by repeatedly outputting all the print control commands a specified number of times is transmitted. One transmission control step;
When it is determined in the collation designation determination step that collation printing is not designated, printing generated by outputting a print control command to the printer without executing the processing in the first determination step A computer-readable storage medium storing a control program for an information processing apparatus, wherein a control program including a second transmission control step for transmitting a job is stored.
前記第1判定ステップにより前記ジョブスプール機能を用いた印刷を実行できないと判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷が可能であるか否かを判定する第2判定ステップと、
前記第2判定ステップにより前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷を実行できると判定された場合、前記スプール記憶手段に記憶可能なデータサイズを変更するための変更指示を前記プリンタに対して送信する変更指示送信ステップを含む制御プログラムを格納したことを特徴とする請求項7に記載の情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体。
When it is determined in the first determination step that printing using the job spool function cannot be executed, printing using the job spool function is possible by changing the data size that can be stored in the spool storage unit. A second determination step for determining whether or not
If it is determined in the second determination step that printing using the job spool function can be executed by changing the data size that can be stored in the spool storage unit, the data size that can be stored in the spool storage unit is changed. 8. A computer-readable storage medium storing a control program for an information processing apparatus according to claim 7, further comprising a control program including a change instruction transmission step for transmitting a change instruction to the printer to the printer. .
前記第2判定ステップにより、前記スプール記憶手段に記憶可能なデータサイズを変更することにより前記ジョブスプール機能を用いた印刷をすることができると判定された場合、前記スプール記憶手段のデータサイズの変更処理およびジョブスプール機能を利用した出力処理と、前記印刷制御コマンドを前記指定された回数だけプリンタへ出力する出力処理のうち、いずれの処理が高速に処理できるかを判定し、その判定結果に応じて実行すべき処理を決定する決定ステップを含む制御プログラムを格納したことを特徴とする請求項7に記載の情報処理装置の制御プログラムを格納したコンピュータ読取可能な記憶媒体。   When the second determination step determines that printing using the job spool function can be performed by changing the data size that can be stored in the spool storage unit, the data size of the spool storage unit is changed. It is determined which processing can be performed at high speed among the output processing using the processing and the job spool function and the output processing for outputting the print control command to the printer for the designated number of times, and according to the determination result 8. A computer-readable storage medium storing a control program for an information processing apparatus according to claim 7, further comprising a control program including a determination step for determining a process to be executed.
JP2005289685A 2005-10-03 2005-10-03 Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program Expired - Fee Related JP4154415B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005289685A JP4154415B2 (en) 2005-10-03 2005-10-03 Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005289685A JP4154415B2 (en) 2005-10-03 2005-10-03 Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP34367798A Division JP3780109B2 (en) 1998-12-03 1998-12-03 Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program

Publications (2)

Publication Number Publication Date
JP2006053946A true JP2006053946A (en) 2006-02-23
JP4154415B2 JP4154415B2 (en) 2008-09-24

Family

ID=36031333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005289685A Expired - Fee Related JP4154415B2 (en) 2005-10-03 2005-10-03 Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program

Country Status (1)

Country Link
JP (1) JP4154415B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010231726A (en) * 2009-03-30 2010-10-14 Oki Data Corp Information processing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010231726A (en) * 2009-03-30 2010-10-14 Oki Data Corp Information processing device
US8427682B2 (en) 2009-03-30 2013-04-23 Oki Data Corporation Information processing device that performs data access control through connecting to multiple devices and method thereof

Also Published As

Publication number Publication date
JP4154415B2 (en) 2008-09-24

Similar Documents

Publication Publication Date Title
US11042336B2 (en) Information processing apparatus and method
JP4669895B2 (en) Print control apparatus, print control method, and program
US8493584B2 (en) Information processing apparatus for performing printing and determining whether a conflict resolution of the setting values in a complex print setting is required
US8451463B2 (en) Information processing apparatus and information processing method
US20110242565A1 (en) Printer control system, printing method, and storage medium
JPH11327856A (en) Printing controller, data processing method for the same and storage medium storing program which computer can read
JP4481800B2 (en) Information processing apparatus, information processing method, and program
JP5704834B2 (en) Information processing apparatus, control method, and program
JP5527992B2 (en) Print control method, print control apparatus, and computer program
JP2005208894A (en) Method, program and apparatus for controlling peripheral device
US20110242564A1 (en) Printer control system, printing method, and storage medium
US20130258377A1 (en) Printer control system, printing method, and storage medium
JP3667043B2 (en) Information processing system, information processing apparatus, and print control method
JP3780109B2 (en) Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program
JP2009205694A (en) Information processing apparatus, method, and device driver
JP4154415B2 (en) Information processing apparatus, information processing apparatus control method, and computer-readable storage medium storing information processing apparatus control program
JP2002014797A (en) Information processor, print controller and its control method, and storage medium and its control program
JP6827738B2 (en) Control methods, programs and information processing equipment
JP4817563B2 (en) Information processing apparatus, data processing method of the apparatus, data processing program, and storage medium storing the program
US20110242582A1 (en) Printer control system, printing method, and storage medium
JP4054544B2 (en) Information processing apparatus, information processing method, print control program, print processing apparatus, print processing method, and print processing program
JP7350525B2 (en) Information processing device, control method for information processing device, and program
US9001339B2 (en) Printing apparatus, printing system, printing control method, and storage medium for reducing print time and memory by sending control data via network
JP2023034953A (en) Information processing apparatus, method of controlling information processing apparatus, and program
JP5247830B2 (en) Print control apparatus, print control method, and program

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080527

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080605

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080701

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080707

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120711

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120711

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130711

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees