JP3757749B2 - Distributed printing control apparatus, distributed printing control method, and recording medium - Google Patents

Distributed printing control apparatus, distributed printing control method, and recording medium Download PDF

Info

Publication number
JP3757749B2
JP3757749B2 JP2000107230A JP2000107230A JP3757749B2 JP 3757749 B2 JP3757749 B2 JP 3757749B2 JP 2000107230 A JP2000107230 A JP 2000107230A JP 2000107230 A JP2000107230 A JP 2000107230A JP 3757749 B2 JP3757749 B2 JP 3757749B2
Authority
JP
Japan
Prior art keywords
printer
data
input
function
capability information
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.)
Expired - Fee Related
Application number
JP2000107230A
Other languages
Japanese (ja)
Other versions
JP2001290625A (en
Inventor
文彦 岩田
正志 浅川
昭弘 佐藤
晃 持田
宏規 富樫
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2000107230A priority Critical patent/JP3757749B2/en
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to EP01917837A priority patent/EP1191433A4/en
Priority to EP10183743A priority patent/EP2267590A3/en
Priority to PCT/JP2001/002967 priority patent/WO2001077808A1/en
Priority to EP10185194.7A priority patent/EP2270645B1/en
Priority to US09/980,111 priority patent/US7173718B2/en
Publication of JP2001290625A publication Critical patent/JP2001290625A/en
Application granted granted Critical
Publication of JP3757749B2 publication Critical patent/JP3757749B2/en
Priority to US11/643,591 priority patent/US20070103726A1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、分散先となる複数のプリンタを指定して、印刷すべき印刷データを、前記指定された複数のプリンタに分散出力することにより、分散印刷についての制御を行なう技術に関する。
【0002】
【従来の技術】
近年、コンピュータネットワークを用いることで、パーソナルコンピュータ等の一の情報処理装置に対して複数のプリンタを容易に接続することが可能となった。こうした一の情報処理装置に複数のプリンタを接続した構成では、情報処理装置で作成した印刷データを各プリンタに分散して出力することができ、全体としての印刷時間の短縮を図ることができる。
【0003】
かかる構成の印刷システムでは、分散印刷を行なうに際して、各種の情報を情報処理装置に設定しておく必要があった。これら設定情報としては、分散先のプリンタを特定するプリンタ名の情報や、用紙サイズ、用紙種類などの用紙の情報等がある。これら情報の入力は、ディスプレイにデータ入力用のウィンドウを表示して、作業者によるキーボード、マウスを用いた上記ウィンドウからのデータ入力を受けて行なわれる。
【0004】
情報処理装置では、印刷データを各プリンタに分散出力する前に、上記プリンタ名から定まる各プリンタに対して、上記用紙の情報などのプリンタの印刷能力に関わる情報を通知する。各プリンタはこうした通知に基づいて、当該用紙の情報に見合うよう印刷の準備を行なう。その後、情報処理装置は、印刷の準備が整った各プリンタに向かって印刷データを出力する。
【0005】
【発明が解決しようとする課題】
しかしながら、上記従来の技術では、用紙の情報として設定した内容が、分散先のプリンタの印刷能力を超えることがあった。例えば、分散先のプリンタが最大A4のサイズまでしか印刷能力がないようなときに、用紙サイズをA3と設定した場合がそうである。こうした場合、A4までしか印刷能力がないプリンタに対して、A3の用紙サイズでの印刷を要求することになり、この結果、プリンタからは良好な印刷結果を得ることができないといった問題があった。
【0006】
この発明は、用紙情報などの各種の情報の設定を適正なものとして、良好な印刷結果を得ることができるようにすることを目的としている。
【0007】
【課題を解決するための手段およびその作用・効果】
前述した課題の少なくとも一部を解決するための手段として、以下に示す構成をとった。
【0008】
この発明の分散印刷制御装置は、
分散先となる複数のプリンタを指定するプリンタ指定手段と、
印刷すべき印刷データを、前記プリンタ指定手段により指定された複数のプリンタに分散出力する分散出力手段と
を備えて、分散印刷についての制御を行なう分散印刷制御装置において、
前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定する条件設定手段と、
前記プリンタ指定手段により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得するプリンタ能力情報取得手段と、
前記データ入力欄から入力可能な入力データを、前記プリンタ能力情報取得手段により取得された前記複数の能力情報に応じて定まる範囲内に制限するデータ入力制限手段と
を備え、
前記データ入力制限手段は、
前記プリンタ能力情報取得手段により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記プリンタ能力情報取得手段により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替えるモード切替手段を備え、
さらに、
前記モード切替手段によるモードの切り替えのためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、前記モード切替手段に対して前記モードの切り替えを指示する指示手段
を備えることを、その要旨としている。
【0009】
上記構成の分散印刷制御装置によれば、プリンタ指定手段により、分散先となる複数のプリンタが指定され、条件設定手段により、各プリンタの印刷能力に関わる所定条件が設定される。さらに、プリンタ指定情報により指定された複数のプリンタのそれぞれが備える前記所定条件についての能力情報が、プリンタ能力情報取得手段により拾得され、データ入力欄から入力可能な入力データが、データ入力制限手段によって、その取得された各プリンタの能力情報に応じて制限される。
【0010】
このために、データ入力欄を用いて設定される所定条件は、各プリンタの能力情報に応じたものとなる。したがって、所定条件は適正なものとなることからプリンタの能力にあった分散印刷が常に行なわれることになる。この結果、良好な印刷結果を得ることができるという効果を奏する。
【0012】
また、データ入力欄から入力可能な入力データを、各プリンタの所定条件についての能力情報の総和である能力情報の集合の範囲内に制限することができる。このために、分散先の複数のプリンタのいずれかが有する能力を用いた印刷を行なうことができることから、高い能力に基づく印刷が可能となる。
【0014】
また、データ入力欄から入力可能な入力データを、各プリンタの所定条件についての能力情報に共通の能力情報の集合の範囲内に制限することができる。このために、分散先の複数のプリンタのいずれにも備えられる能力でもって印刷を行なうことができることから、上記複数のプリンタのいずれからでも印刷が可能となる。
【0018】
特に、この構成によれば、上記モードの切替を作業者は入力装置の操作により行なうことができることから、作業者にとって操作性に優れているという効果を奏する。
【0019】
上記この発明の分散印刷制御装置において、前記条件設定手段は、前記データ入力欄から入力可能な選択肢を示す選択肢表示欄を、前記データ入力欄に伴って表示して、前記選択肢の中から前記入力装置により指示された一の選択肢を前記所定条件として設定する構成であり、前記データ入力制限手段は、前記選択肢表示欄に示され得る少なくとも一部の選択肢を前記入力装置による指示を不可能とすることにより、前記入力可能な入力データの制限を行なう構成とすることができる。
【0020】
この構成によれば、作業者は、プリンタの能力情報に応じた所定条件を、選択肢表示欄から選択することができ、プリンタの能力情報に応じない所定条件の選択肢については選択することができない。このためにデータ入力欄のデータ入力の操作性に優れている。
【0021】
上記この発明の分散印刷制御装置において、グループに複数のプリンタを割り当てるグループ割当手段を備え、前記プリンタ指定手段は、前記グループ割当手段により割り当ての行なわれたグループ単位で前記指定を行なう構成とすることができる。
【0022】
この構成によれば、分散先となる複数のプリンタをグループ単位で指定することができることから、操作性に優れている。
【0023】
上記この発明の分散印刷制御装置において、前記プリンタ指定手段は、前記指定された複数のプリンタの呼び名を表示装置に表示する呼び名表示制御手段を備える構成とすることができる。
【0024】
この構成によれば、分散先として指定された複数のプリンタを、作業者は表示装置の表示から知ることができる。
【0025】
上記呼び名表示制御手段を備える構成の分散印刷制御装置において、前記プリンタ指定手段は、前記呼び名表示制御手段により表示されたプリンタの呼び名のそれぞれに対応させて、当該プリンタを前記分散先から除外するためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチの操作データを取り込む入力制御手段を備え、前記分散出力手段は、前記入力制御手段により取り込んだ操作データに基づいて前記スイッチが操作されたと判定されたプリンタについては、前記印刷データの出力先から除外する出力先除外手段を備える構成とすることができる。
【0026】
この構成によれば、分散先として指定された複数のプリンタであっても、スイッチを操作することにより、分散先から除外することができる。この結果、操作性に優れている。
【0027】
上記この発明の分散印刷制御装置において、前記プリンタ指定手段は、前記指定された複数のプリンタのそれぞれに優先順位を指定する優先順位指定手段を備え、前記分散出力手段は、前記優先順位指定手段により指定された優先順位を考慮して前記分散出力を行なう構成であるとすることができる。
【0028】
この構成によれば、分散先のプリンタでありながら、各プリンタに優先順位を指定することができることから、印刷結果の回収の際の利便性に優れている。
【0033】
上記この発明の分散印刷制御装置において、前記プリンタ能力情報取得手段は、前記複数のプリンタの機種毎に設けられたプリンタドライバから各プリンタの性能についての情報を取り込み、該情報から記所定条件についての能力情報を取得する構成とすることができる。
【0034】
この構成によれば、各プリンタの機種毎に設けられたプリンタドライバからプリンタの性能の情報を取り込むことが可能となる。
【0035】
この発明の分散印刷制御方法は、
(a)分散先となる複数のプリンタを指定するステップと、
(b)印刷すべき印刷データを、前記ステップ(a)により指定された複数のプリンタに分散出力するステップと
を備えて、分散印刷についての制御を行なう分散印刷制御方法において、
(c)前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定するステップと、
(d)前記ステップ(a)により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得するステップと、
(e)前記データ入力欄から入力可能な入力データを、前記ステップ(d)により取得された前記複数の能力情報に応じて定まる範囲内に制限するステップと
を備え、
前記ステップ(e)は、
(e−1)前記ステップ(d)により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記ステップ(d)により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替えるステップを備え、
さらに、
(f)前記ステップ(e−1)によるモードの切り替えのためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、前記ステップ(e−1)によるモードの切り替えを指示するステップ
を備えることを、その要旨としている。
【0036】
この発明の記録媒体は、
(a)分散先となる複数のプリンタを指定する機能と、
(b)印刷すべき印刷データを、前記機能(a)により指定された複数のプリンタに分散出力する機能と
を、コンピュータに実現させて分散印刷についての制御を行なうコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータプログラムは、さらに、
(c)前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定する機能と、
(d)前記機能(a)により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得する機能と、
(e)前記データ入力欄から入力可能な入力データを、前記機能(d)により取得された前記複数の能力情報に応じて定まる範囲内に制限する機能と
を、コンピュータに実現させるとともに、
前記機能(e)は、
(e−1)前記機能(d)により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記機能(d)により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替える機能を備え、
さらに、
(f)前記機能(e−1)によるモードの切替のためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、機能(e−1)による前記モードの切り替えを指示する機能
を、コンピュータに実現させるよう構成したことを、その要旨としている。
【0037】
上記構成のこの発明の分散印刷制御方法とコンピュータ読み取り可能な記録媒体は、上記発明の分散印刷制御装置と同様な作用・効果をそれぞれ有しており、データ入力欄を用いたプリンタの印刷能力に関わる所定条件の設定を適正なものとして、良好な印刷結果を得ることができるという効果を奏する。
【0038】
【発明の他の態様】
この発明は、以下のような他の態様も含んでいる。その第1の態様は、この発明の記録媒体による機能と同様の機能を持つコンピュータプログラムとしての態様である。その第2の態様は、そのコンピュータプログラムを含むことで搬送波内に具現化されたデータ信号としての態様である。第3の態様は、コンピュータプログラムを通信経路を介して供給するプログラム供給装置としての態様である。この第3の態様では、コンピュータプログラムをコンピュータネットワーク上のサーバなどに置き、通信経路を介して、必要なプログラムをコンピュータにダウンロードし、これを実行することで、上記の装置や方法を実現することができる。
【0039】
【発明の実施の形態】
以上説明したこの発明の構成・作用を一層明らかにするために、以下この発明の実施の形態を実施例に基づき説明する。
【0040】
1.ハードウェアの全体構成
図1はこの発明の一実施例を適用するコンピュータシステムのハードウェアの概略構成を示すブロック図である。図示するように、この一実施例のコンピュータシステムは、コンピュータ10を備え、このコンピュータ10には、実質的にコンピュータ機能を有する複数のプリンタ70,80,…が、ローカルエリアネットワーク(LAN)により構築されたコンピュータネットワーク90を介して接続されている。なお、コンピュータネットワーク90は、LANに替えて、インターネットや、イントラネットや、ワイドエリアネットワーク(WAN)など、各種ネットワークに替えることができる。
【0041】
コンピュータ10には、周辺機器としてのCRTディスプレイ12が接続され、さらにはローカルにてもう一台のプリンタ60が接続されている。また、コンピュータ10は、コンピュータ本体16とキーボード18とマウス20を備える。このコンピュータ本体16には、フロッピィディスク22の内容を読み取るフロッピィディスクドライブ24が搭載されている。
【0042】
コンピュータ本体16は、中央演算処理装置としてのCPU30を中心にバスにより相互に接続されたROM31、RAM32、表示画像メモリ33、マウスインタフェース34、キーボードインタフェース35、FDC36、HDC37、CRTC38、プリンタインタフェース39およびネットワーク制御回路40を備える。
【0043】
ROM31は、内蔵されている各種プログラム等を記憶する読み出し専用のメモリである。RAM32は、各種データ等を記憶する読み出し・書込み可能なメモリである。表示画像メモリ33はCRTディスプレイ12に表示する画像の画像データを記憶するメモリである。マウスインタフェース34は、マウス20とのデータ等のやり取りを司るインタフェースである。キーボードインタフェース35は、キーボード18からのキー入力を司るインタフェースである。FDC36は、フロッピィディスクドライブ(FDD)24を制御するフロッピィディスクコントローラである。HDC37は、ハードディスクドライブ(HDD)41を制御するハードディスクコントローラである。CRTC38は、表示画像メモリ33に記憶される表示画像データに基づいてCRTディスプレイ12における画像の表示を制御するCRTコントローラである。プリンタインタフェース39は、ローカルにて接続されるプリンタ14へのデータの出力を制御するインタフェースである。ネットワーク制御回路40は、ネットワークカードなどから成り、コンピュータネットワーク90に接続されている。
【0044】
このコンピュータシステムでは、オペレーティングシステムはHDD41に記憶されており、コンピュータ本体16に電源を投入すると、HDD41のブートブロックに書き込まれたローダに従ってRAM32の所定の領域にロードされる。また、プリンタ60,70,80の機種毎に用意される実プリンタドライバは、フロッピィディスク22に予め格納されており、所定のインストールプログラムを起動することで、フロッピィディスクドライブ24からコンピュータ10にインストールされる。このインストールされたプリンタドライバは、HDD41に記憶されており、コンピュータ10に電源を投入したときに、オペレーティングシステムに組み込まれ、RAM32の所定の領域にロードされる。
【0045】
また、このコンピュータシステムでは、仮想的なプリンタについての情報を定める仮想的なプリンタドライバ(仮想プリンタドライバ)110を備えている。この仮想プリンタドライバ110は、実際のプリンタドライバと同様に、フロッピィディスク22に予め格納されており、所定のインストールプログラムを起動することで、フロッピィディスクドライブ24からコンピュータ10にインストールされる。このインストールされた仮想プリンタドライバ110は、HDD41に記憶されており、コンピュータ10に電源を投入したときに、オペレーティングシステムに組み込まれ、RAM32の所定の領域にロードされる。なお、仮想プリンタドライバ110のコンピュータプログラムは、フロッピィディスク22に格納されたものに替えて、CD−ROM、光磁気ディスク、ICカード等の他の携帯型記録媒体(可搬型記録媒体)に格納された構成としてもよい。また、このコンピュータプログラムは、外部のコンピュータネットワーク(例えばインターネット)に接続される特定のサーバから、コンピュータネットワークを介して提供されるプログラムデータをダウンロードして、RAM32またはHDD41に転送することにより得るようにすることもできる。
【0046】
プリンタ60,70,80は、感光ドラムにレーザ光を当てて潜像を作り、トナーで現像して用紙に転写する所謂レーザプリンタである。なお、プリンタ60,70,80としては、インクジェットプリンタ、熱転写プリンタなど、各種プリンタを適用することができる。なお、ここでは、プリンタ60,70,80は、それぞれ異なる機種であるものとする。
【0047】
2.分散印刷処理の様子
かかる構成のコンピュータシステムによれば、大まかには、コンピュータ本体16により、印刷すべき印刷データを作成し、この印刷データをコンピュータ本体16に接続されているプリンタ60,70,80に分散して印刷させる分散印刷処理を行なう。こうした分散印刷処理の様子について以下詳しく説明する。
【0048】
図2は、分散印刷処理の全体の様子を概略的に示すブロック図である。図3は、分散印刷処理に用いられる仮想プリンタドライバ110の処理の様子を示すブロック図である。図4は、分散印刷処理の一部を実現する分散印刷ユーティリティプログラム(以下、単に「分散印刷ユーティリティ」と呼ぶ)120の処理の様子を示すブロック図である。
【0049】
図2に示すように、コンピュータ本体16の内部で動作しているアプリケーションプログラム100は、画像の処理を行って画像データを生成し、この画像データを印刷すべく印刷命令を発行する。アプリケーションプログラム100から印刷命令が発行されると、仮想プリンタドライバ110が、印刷命令を受けて、この仮想プリンタドライバ110が想定する仮想的なプリンタの性能についての性能情報をアプリケーションプログラム100に返す。詳細には、図3に示すように、仮想プリンタドライバ110は、印刷命令受信部111により、アプリケーションプログラム100から発行される印刷命令を受信して、その印刷命令を受信した旨を印刷命令受信部111から受けた性能情報返信部112により、仮想的なプリンタの性能についての性能情報をアプリケーションプログラム100に返す。
【0050】
ここで仮想的なプリンタの性能というのは、分散先となり得る全てのプリンタのうちの最も性能の高いプリンタについての性能である。一般に、性能の高いプリンタは、高級なプログラム言語により描画を行なっている。例えば、数式等を用いた高度な描画命令により図形を表わすものは高級なプログラム言語であり、ビットマップを用いた程度の低い描画命令により図形を表わすものは低級なプログラム言語である。したがって、この実施例では、仮想的なプリンタの性能を上述したように分配先となり得る全てのプリンタのうちの最も高いプリンタについての性能と定めることで、この仮想プリンタドライバ110において高級なプログラム言語に従うデータ変換処理(レンダリング処理)を可能としている。すなわち、高級なプログラム言語は前述したように、高度な描画命令を使用するものであるから、この仮想プリンタドライバ110では、もっとも高性能なプリンタに合わせて効率的なレンダリング処理を実現し得るようにしている。
【0051】
なお、分散先となり得るプリンタというのは、コンピュータ本体16にローカルもしくはネットワークで接続される全てのプリンタのうちのプロパティ設定部113により設定されるプリンタグループに属するプリンタであり、ここでは、プリンタ60,70,80が該当するものとする。
【0052】
詳細には、上記プリンタ60,70,80の機種毎に用意されるプリンタドライバ(以下、実プリンタドライバと呼ぶ)から分散印刷ユーティリティ120が取り込んだ各プリンタ60,70,80の性能情報を、性能情報入力部114により取り込んで、仮想プリンタ性能決定部115により、これら各プリンタ60,70,80の性能情報から最も高いものを選択して、これを仮想的なプリンタの性能情報とする。性能情報返信部112はこの仮想的なプリンタの性能情報をアプリケーションプログラム100に返している。
【0053】
なお、こうした仮想プリンタドライバ110で定める性能情報は、この実施例のように最も高性能のプリンタの性能とする構成に替えて、各プリンタ60,70,80の性能情報から選択した任意のものとすることもできる。また、各プリンタ60,70,80の性能情報に依存しない予め定めた性能情報とすることもできる。
【0054】
また、仮想プリンタドライバ110は、プロパティ設定部113により、ユーザインタフェース116を動作させて印刷のための各種情報を設定・記憶するが、この印刷のための各種情報のうちのいくつかの情報を上記性能情報とともに性能情報返信部112を介してアプリケーションプログラム100に返す。印刷のための各種情報としては、印刷品質、色補正、ハーフトーンの種類等の印刷の基本設定に関するもの、用紙のサイズ、印刷方向等の用紙設定に関するもの、分散先となり得るプリンタを指定するプリンタグループに関するもの、分散印刷する場合の分散形態に関するもの等があるが、ここでは、これら情報の内のプリンタグループおよび分散形態に関するものを除いた情報をアプリケーションプログラム100に送る。
【0055】
アプリケーションプログラム100は、性能情報やこれら情報を受け取り、上記生成した画像データを性能情報やこれら情報に基づいて、プリンタ(ここでは仮想的なプリンタ)に適合した印刷データに変換して、この変換後の印刷データを仮想プリンタドライバ110に送る。この印刷データの変換の処理は、前述したように効率的なレンダリング処理を実現するもので、実プリンタドライバにより実現される色変換やハーフトーン等の処理についてはここでは実施されない。
【0056】
図2に示すように、仮想プリンタドライバ110は、アプリケーションプログラム100から送られてきた印刷データを中間印刷データとして、その中間印刷データをまとめたデータセットを中間印刷ファイルMFとしてHDD41に一旦格納する。詳細には、図3に示すように、アプリケーションプログラム100から送られてきた印刷データを印刷データ受信部117により受信して、その後、その印刷データを中間印刷データとしてその中間印刷データをまとめたデータセットを、中間印刷データ出力部118によりHDD41に出力する。この中間印刷ファイルMFの中間印刷データは、その後、分散印刷ユーティリティ120により読み込まれる。なお、中間印刷ファイルMFは、HDD41に替えてRAM32に格納する構成としたり、フロッピィディスク22に格納する構成としたりすることもでき、さらには、他の外部記憶装置とすることもできる。また、仮想プリンタドライバ110は、プロパティ設定部113で設定された各種情報をプリンタプロパティデータとしてプロパティデータ出力部119を介して分散印刷ユーティリティ120に送る処理も行なう。
【0057】
図2に示すように、分散印刷ユーティリティ120は、中間印刷ファイルMFを構成する中間印刷データとプリンタプロパティデータとを受け取り、その中間印刷データを、プリンタプロパティデータに含まれるプリンタグループと分散形態に関する情報に従って分散先となり得る各プリンタ60,70,80用に分配して、各プリンタ60,70,80に対応して設けられた実プリンタドライバ130,140,150に送る。分散印刷ユーティリティ120によるこうした処理について、次に詳しく説明する。
【0058】
図4に示すように、分散印刷ユーティリティ120は、まず、中間印刷データ入力部121により、中間印刷ファイルMFを構成する中間印刷データを取り込むとともに、プロパティデータ入力部122により、仮想プリンタドライバ110から送られてくるプリンタプロパティデータを受け取る。次いで、そのプリンタプロパティデータに含まれるプリンタグループと分散形態に関する情報に基づいて、割り振り決定部123により中間印刷データの割り振りを決定する。ここでいう割り振りというのは、中間印刷データをページ単位に分け、プリンタグループに属する各プリンタ60,70,80がそれぞれ引き受けるページを定めることである。
【0059】
こうして決定された割り振りの情報は出力データ制御部124に送られる。出力データ制御部124は、中間印刷データ入力部121で取り込んだ中間印刷データを、上記割り振りの情報に基づいて、上記プリンタ60,70,80の実プリンタドライバ130,140,150に対して振り分けながらそれぞれ出力する。なお、この実プリンタドライバ130,140,150へのデータ出力の際には、具体的には次のような作業を経て行なう。
【0060】
まず、割り振り先のプリンタに対してプリンタドライバを介して設定変更を指示する処理をプリンタ設定部125により行なう。次いで、出力命令出力部126により出力命令を発行して、その出力命令の発行を受けた実プリンタドライバ130,140,150から返送されてくるプリンタ60,70,80の性能についての性能情報を、性能情報入力部127により受け取る。出力データ制御部124は、性能情報入力部127から受け取った性能情報と、プロパティデータ入力部122から受け取ったプリンタプロパティデータに含まれる印刷の基本設定に関する情報、用紙設定に関する情報等(プリンタグループと分散形態に関する情報を除く)に基づいて、中間印刷データの割り振るべきページを割り振り先のプリンタ60,70,80に適合したデータに変換する(以下、このデータ変換の処理をレンダリング処理と呼ぶ)。
【0061】
出力データ制御部124は、これら変換後の印刷データを最終印刷データとして、最終印刷データ出力部128を介して実プリンタドライバ130,140,150に送る。実プリンタドライバ130,140,150は、仮想プリンタドライバでは実施されなかった各プリンタに対応した色変換やハーフトーン等の処理を最終印刷データに施して、その最終印刷データを各プリンタ60,70,80に送信する。
【0062】
さらに、分散印刷ユーティリティ120は、実プリンタドライバ130,140,150からの信号に基づいて各プリンタ60,70,80の状態を監視するプリンタ監視部129を備えている。プリンタ監視部129は、各プリンタの混み具合やプリンタのエラー状態(故障は勿論のこと、用紙詰まり、用紙切れの状態等も含む)を監視するものである。出力データ制御部124は、このプリンタ監視部129からの信号を受け取り、上記分配された印刷データの出力に際して、混み合っていたりエラー状態にあるプリンタについては出力先を変更したり、出力先を中止したりする処理を行なう。
【0063】
なお、実プリンタドライバ130,140,150から送られてくる各プリンタ60,70,80の性能情報は、前述したように分散印刷ユーティリティ120で利用されるとともに、性能情報出力部12aを介して仮想プリンタドライバ110にも送られる。
【0064】
3.仮想プリンタドライバ
仮想プリンタドライバ110がコンピュータ10にインストールされたときに、オペレーティングシステムがどのような状態に変わるかを、次に説明する。なお、この説明に当たり、この仮想プリンタドライバ110が動作するオペレーティングシステムとして、Windows95(マイクロソフト社の商標)を例にとって説明する。
【0065】
ユーザ(作業者)は、コンピュータ10を次のように操作して、印刷のための各種情報を設定するダイアログボックスをCRTディスプレイ12の画面上に開く。すなわち、[スタート]→[設定]→[プリンタ]の操作を行なうことで、「プリンタ」ウィンドウを開く。図5は、この「プリンタ」ウィンドウを示す説明図である。仮想プリンタドライバ110がコンピュータ10にインストールされた場合、図示するように、「プリンタ」ウィンドウWN1には、プリンタ60,70,80の機種毎に用意される実プリンタドライバ130,140,150のアイコンIC1,IC2,IC3に加えて、仮想プリンタドライバ110に対応する例えば「分散印刷」と表記されたアイコンIC4が表示されることになる。即ち、仮想プリンタドライバ110も実プリンタドライバと同様に、インストールされると、その仮想プリンタドライバ110に対応したアイコンIC4が「プリンタ」ウィンドウWN1に表示されることになる。
【0066】
なお、その「プリンタ」ウィンドウ上の仮想プリンタドライバ110に対応した「分散印刷」のアイコンIC4をダブル・クリックして、その仮想プリンタドライバ110についてのウィンドウを開き、その後、そのウィンドウから[プリンタ]→[プロパティ]の操作を行なうと、その仮想のプリンタについての各種情報を設定する「分散印刷プロパティ」のダイアログボックスが表示される。作業者は、この「分散印刷プロパティ」のダイアログボックスに従ってマウス20およびキーボード18を操作することにより、各種の設定情報を入力することが可能となる。なお、この「分散印刷プロパティ」のダイアログボックスが、前述したユーザインタフェース116に相当する。
【0067】
4.ユーザインタフェース
図6は、「分散印刷プロパティ」のダイアログボックスWN2を例示する説明図である。図示するように、「分散印刷プロパティ」のダイアログボックスWN2には、「分散設定」、「プリンタ」の2種類のカードCD1,CD2が用意されている。「分散設定」のカードCD1は、分散印刷する場合の分散形態に関わる情報等を設定するためのものである。「プリンタ」のカードCD2は、分散先となり得るプリンタグループに関わる情報、用紙設定に関する情報および印刷の基本設定に関する情報等を設定するためのものである。両カードCD1,CD2のいずれかが、作業者によって、マウス20を操作することにより選択されて、ダイアログボックスWN2に表示される。図6には、「分散設定」のカードCD1が表示された状態が例示されている。なお、カードCD1,CD2の内容の組み分けは、上記例に限る訳ではなく、1枚のカードで全ての内容を含む構成としてもよく、あるいは、より細かく分けて3枚以上のカードに分ける構成としてもよい。
【0068】
図示するように、「分散設定」のカードCD1には、「ドキュメント」、「リカバリ」、「指定日時」の3つのフィールドfd1,fd2,fd3が設けられている。「ドキュメント」のフィールドfd1は、文書の印刷形態を設定するためのもので、「部数」についてのデータ入力欄id1、「部単位で印刷する」のチェックボックスid2、「部、ページ単位でまとめる」のチェックボックスid3、「ジョブのまとめ方」についてのデータ入力欄id4、「区切りページ」についてのデータ入力欄id5が設けられている。各データ入力欄(チェックボックスを含む、以下同じ)id1〜id5は次のような仕様にて設計されている。
【0069】
1)「部数」のデータ入力欄id1:
印刷する部数を入力する。アプリケーションプログラム100で設定された内容がデフォルトとして入力される。
2)「部単位で印刷する」のチェックボックスid2:
このチェックボックスid2がオン状態のとき、丁合い印刷となり、オフ状態のとき、スタック印刷となる。ここで、丁合い印刷とは、部単位で、各部はページ順にて出力を行なうものであり、スタック印刷とは、ページ単位で、各ページは部数分出力を行なうものである。すなわち、チェックボックスid2がオン状態のときには、部単位で、チェックボックスid2がオフ状態のときには、ページ単位で順に印刷がなされることになる。
【0070】
3)「部、ページ単位でまとめる」のチェックボックスid3:
このチェックボックスid3がオン状態のときには、上記部単位もしくはページ単位の一集合が複数のプリンタに亘って印刷されることを禁止し、オフ状態のときには、その一集合が複数のプリンタに亘って印刷されることを許可する。なお、このチェックボックスid3がオフ状態のとき、すなわち、「部、ページ単位でまとめない」のときには、分散先の全てのプリンタでほぼ同時に印刷が終了するように、プリンタの印刷速度についての性能(以下、印刷速度性能と呼ぶ)に応じて各プリンタへの割り当て枚数を変えるといったことがなされている。なお、この印刷速度性能情報に応じて各プリンタへの割り当て枚数を変えるといった動作の状態を、以下、「速度優先モード」と呼ぶこととして、この点については後ほど詳述する。
【0071】
4)「ジョブのまとめ方」のデータ入力欄id4:
このデータ入力欄id4における「プリンタ単位」のラジオボタンが選択されると、一のプリンタから出力する全ページを一つのまとまりとして扱う。このラジオボタンが選択されると、ネットワークに接続された共有プリンタ70,80において他の使用者の印刷結果との混在がなくなる。一方、「部、ページ番号単位」のラジオボタンが選択されると、上記部単位やページ単位の一集合ごとを一つのまとまりとして扱う。ローカルのプリンタ60に分散する場合や他の使用者の印刷結果と混在しても問題ないような場合に利用する。
【0072】
5)「区切りページ」のデータ入力欄id5:
区切りページとは、他の使用者の印刷結果と上記まとまりの単位で混在した場合に判別できるように、上記まとまりの先頭や末尾に設けるページである。「先頭」のチェックボックスがクリックされた場合には、まとまりの先頭位置に区切りページを印刷する。「末尾」のチェックボックスがクリックされた場合には、まとまりの末尾位置に区切りページを印刷する。なお、区切りページには、印刷する文書名や部数、ページ数、使用者名などが印刷される。
【0073】
なお、この「ドキュメント」のフィールドfd1には、上記データ入力欄id1〜id5の他に、上記データ入力欄id1〜id5の設定内容によって決定される分散形態を表わす分散形態表示欄ddが設けられている。この分散形態表示欄ddは、データ入力欄id1〜id5の設定内容によって決定される分散形態がどのようなものであるかをイラスト画像にて示すものである。
【0074】
次に、データ入力欄id1〜id5の設定の内容によって分散形態表示欄ddのイラスト画像がどのように決まるかを、図7ないし図10を用いて説明する。まず最初に、「部数」のデータ入力欄id1、「部単位で印刷する」のチェックボックスid2、「部、ページ単位でまとめる」のチェックボックスid3によってイラスト画像がどのように決まるかを説明する。
【0075】
図7は、データ入力欄id1と2つのチェックボックスid2,id3の設定の内容によって分散形態表示欄ddのイラスト画像がどのように変わるかを示す説明図である。図示の表において、列は、部単位で印刷するか否か、すなわち、「部単位で印刷する」のチェックボックスid2がオン状態であるかオフ状態であるかによって定まり、行は、部、ページ単位でまとめないか否か、すなわち、「部、ページ単位でまとめる」のチェックボックスid3がオフ状態であるかオン状態であるかによって定まる。この表は、「部数」データ入力欄id1から設定される部数が4部である場合の一例である。
【0076】
「部単位で印刷する」で、かつ「部、ページ単位でまとめない」の場合には、表中第1行、第1列のセルC11に示すように、1台目(この順位は後述する各プリンタに割り当てられた優先順位に従う順番である。以下、2台目、3台目も同じ)のプリンタ60には、丁合で第1部の第1ページと第2ページが次いで第2部の第1ページが印刷され、2台目のプリンタ70には、第2部の第2ページ、第3部の第1ページと第2ページが印刷され、3台目のプリンタ80には、第4部の第1ページと第2ページが印刷されることを示すイラスト画像が表示される。
【0077】
「部単位で印刷しない」で、かつ「部、ページ単位でまとめない」の場合には、表中第1行、第2列のセルC12に示すように、スタック印刷となることから、1台目のプリンタ60には、第1ページが3部印刷され、2台目のプリンタ70には、第1ページの必要部数の残り分と第2ページが2部印刷され、3台目のプリンタ80には、第2部の必要部数の残り分とが印刷されることを示すイラスト画像が表示される。
【0078】
「部単位で印刷する」で、かつ「部、ページ単位でまとめる」の場合には、表中第2行、第1列のセルC21に示すように、1台目のプリンタ60は、1単位が複数のプリンタに渡ることを禁止することから、第1部の第1ページから第2部の第2ページまで印刷され、2台目のプリンタ70には、第3部の第1ページと第2ページが印刷され、3台目のプリンタ80には、第4部の第1ページと第2ページが印刷されることを示すイラスト画像が表示される。
【0079】
「部単位で印刷しない」で、かつ「部、ページ単位でまとめる」の場合には、表中第2行、第2列のセルC22に示すように、1台目のプリンタ60には、第1ページが必要部数分印刷され、2台目のプリンタ70には、第2ページが必要部数分印刷されることを示すイラスト画像が表示される。
【0080】
なお、図7の表中の第1行のセルC11,C12に示した例は、分散先のプリンタ60,70,80がほぼ同一の印刷速度性能を持つ場合についてのものである。各プリンタ60,70,80の印刷速度性能が同一であることから、各プリンタに割り当てる枚数はほぼ均等となっている。これに対して、分散先のプリンタ60,70,80の印刷速度性能が相違する場合には、各プリンタに割り当てる枚数はプリンタの機種によって相違するようになされている。これは、「速度優先」で分散の割り振りを決定するためである。例えば、1台目のプリンタ60の印刷速度性能が20ppm(Page Per Minute)、2台目のプリンタ70の印刷速度性能が40ppm、3台目のプリンタ70の印刷速度性能が40ppmであるとすると、各プリンタ60,70,80の印刷速度の性能比率は、1:2:2となる。速度優先モードで分散の割り振りを決めるときには(すなわち、表中の第1行に該当する「部、ページ単位でまとめない」ときには)、各プリンタへの割り当て枚数はこの性能比率に一致するように決められる。こうすることで、各プリンタ60,70,80ができるだけ同時に印刷を終了するようにすることができる。
【0081】
図8は、速度優先モードで分散の割り振りを決めた場合の一例を示す説明図である。5ページから構成される文書を4部、3台のプリンタ60,70,80に分散する場合について例示する。各プリンタ60,70,80の印刷速度性能は、前述したように20ppm、40ppm、40ppmであるとする。こうした場合は、印刷する全ページ数は20頁であることから、各プリンタ60,70,80の性能比率(1:2:2)から、1台目のプリンタ60に割り当てられるページ数は4ページ、2台目、3台目のプリンタ70,80に割り当てられるページ数はそれぞれ8ページになる。したがって、「部単位で印刷する」場合には、図8に示すように、1台目のプリンタ60には、丁合で第1部の第1ページから第4ページまでが印刷され、2台目のプリンタ70には、第1部の第5ページと第2部の第1ページから第5ページまでと第3部の第1ページおよび第2ページとが印刷され、3台目のプリンタ80には、第3部の第3ページから第5ページまでと第4部の第1ページから第5ページまでとが印刷されることになる。なお、「部単位で印刷しない」場合にも、スタック印刷において、同様に、各プリンタ60,70,80の性能比率(1:2:2)に応じて、各プリンタ60,70,80に割り当てられるページ数が定められている。
【0082】
この実施例では、図7の表中の第1行の「部、ページ単位でまとめない」場合には、前述したような速度優先モードで分散の割り振りを決定するように行なわれているが、これに対して、図7の表中の第2行の「部、ページ単位でまとめる」場合には、「ハンドリング優先」で分散の割り振りが行なわれるよう(以下、これを「ハンドリング優先モード」と呼ぶ)にした。図9は、ハンドリング優先モードで分散の割り振りを決めた場合の一例を示す説明図である。ハンドリング優先モードでは、部、ページ単位でまとめる、すなわちその単位の一集合が複数のプリンタに分割されないように分散することにより、プリンタからの回収が容易となるようになされている。図9では、図8で示した例と同様に、5ページから構成される文書を4部、3台のプリンタ60,70,80に分散する場合について例示している。図示するように、1台目のプリンタ60には、丁合で第1部の第1ページないし第5ページが印刷され、2台目のプリンタ70には、丁合で第2部の第1ページないし第5ページと第3部の第1ページないし第5ページが印刷され、3台目のプリンタ80には、第4部の第1ページないし第5ページが印刷されることになる。なお、図9の例では、2台目のプリンタ70が2部を引き受ける構成としたが、これは、ハンドリング優先モードでありながら、さらに速度優先モードでもあるためである。速度優先モードにより前述した1:2:2の性能比率を達すべく、1台目のプリンタ60が1部を、2台目のプリンタ70が2部を、3台目のプリンタ80が2部となるところを残りの部数がないことから1部をそれぞれ引き受けることになる。
【0083】
一方、図7の表中の第2行の「部、ページ単位でまとめる」場合であっても、ハンドリング優先モードであるが速度優先モードでない構成とすることもできる。この場合には、部、ページ単位の一集合が複数のプリンタに渡ることを禁止したハンドリング優先モードでありながら、各プリンタの請け負う枚数は各プリンタの速度性能によらない均等なものとしている。図8,図9の例のように部数が分散先のプリンタの数で均等に割り切れない場合には、最初のプリンタ側から部数が増えるようになされており、例えば、5ページの文書を4部、3つのプリンタに分散するような場合、1台目のプリンタ60が2部を、2台目のプリンタ70が1部を、3台目のプリンタ80が1部をそれぞれ引き受けることになる。
【0084】
前述したように、図7の表中の第2行の「部、ページ単位でまとめる」場合には、ハンドリング優先モードで且つ速度優先モードである場合と、速度優先モードではないがハンドリング優先モードである場合との2つの状態を取り得る。この2つの状態の切換えは、この実施例では、「ジョブのまとめ方」のデータ入力欄id4の設定内容に従って行なっている。データ入力欄id4における「プリンタ単位」のラジオボタンが選択された場合には、一のプリンタから出力する全ページが一つのまとまりとして扱われることから、各プリンタの印刷速度性能が考慮されるように速度優先モードをとるようにし、データ入力欄id4における「部、ページ番号単位」のラジオボタンが選択された場合には、部単位やページ単位の一集合ごとを一つのまとまりとして扱うことから、速度優先モードをとらないようにした。データ入力欄id4における「部、ページ番号単位」のラジオボタンが選択された場合には、各プリンタの印刷速度性能に関係なく空いているプリンタに1部ずつ印刷紙、残りの部数をあいているあいたプリンタから順番に割り当てるようになされている。
【0085】
次に、データ入力欄id1〜id3の設定内容から決まるイラスト画像が、「ジョブのまとめ方」のデータ入力欄id4と「区切りページ」のデータ入力欄id5によってどのように変わるかを説明する。図10は、データ入力欄id4,id5によって分散形態表示欄ddのイラスト画像がどのように決まるかを示す説明図である。図10に示したイラスト画像の一例は、データ入力欄id1〜id3の内容によって図7中のセルC11に示すようにイラスト画像が決定した場合に、データ入力欄id4,id5の設定内容に応じてさらにどのように変わるかを示すものである。
【0086】
図10の表において、列は、「ジョブのまとめ方」のデータ入力欄id4において「プリンタ単位」、「部、ページ番号単位」のいずれのラジオボタンが選択されたかによって定まり、行は、「区切りページ」のデータ入力欄id5において「先頭」、「末尾」の両チェックボックスがどのように指示されているかによって定まる。
【0087】
「ジョブのまとめ方」のデータ入力欄id4において、「プリンタ単位」のラジオボタンがクリックされている場合、表中の第1行、第1列のセルCE11に示すように、図7のセルC11とそのイラスト画像は変わらず、一のプリンタから印刷される全ページはまとめられた形となる。一方、「部、ページ番号単位」のラジオボタンがクリックされている場合には、第1行、第2列のセルCE12に示すように、部、もしくはページ単位の集合がまとめられ、それらは次のまとまりとの間で一旦分けられる。なお、実際は、「プリンタ単位」のラジオボタンがクリックされている場合も「部、ページ番号単位」のラジオボタンがクリックされている場合にも、区切りページがないことから同じ印刷結果となる。
【0088】
「区切りページ」のデータ入力欄id5から区切りページがあると判別された場合には、表中の第2行目、第3行目、第4行目に示すように、第1行目にてまとめられた区分に対して、先頭、末尾、または両者に区切りページ(図中黒塗りの部分)が差し込まれた形にイラスト画像は定められる。この表によって決定されるイラスト画像が、分散形態表示欄ddに表示される。
【0089】
図6に戻り、「リカバリ」のフィールドfd2は、分散印刷されるプリンタでエラーが発生した場合に他のプリンタでリカバリさせる際のリカバリ先を指定するためのものである。この「リカバリ」のフィールドfd2には、「リカバリしない」、「出力先を指定する」、「リカバリ先を自動で選択する」の3つのラジオボタンが設けられている。「リカバリしない」のラジオボタンが選択された場合には、分散印刷されるプリンタでエラーが発生した場合にもリカバリをしないものとする。「出力先を指定する」のラジオボタンが選択された場合には、「プリンタ」のデータ入力欄から入力された出力先をリカバリ先とする。「リカバリ先を自動で選択する」のラジオボタンが選択された場合には、エラーが発生したプリンタと同機種のプリンタをリカバリ先とする。同機種のプリンタがなければ空いているプリンタをリカバリ先とする。
【0090】
「指定日時」のフィールドfd3は、印刷時間を指定するもので、「印刷日時を指定する」のチェックボックスが指定された場合には、「指定日時」の欄から入力された時間に印刷が開始される。
【0091】
「分散印刷プロパティ」のダイアログボックスWN2に表示される「プリンタ」のカードCD2について、図11を用いて次に説明する。図示するように、「プリンタ」のカードCD2には、「プリンタグループ」のフィールドfd4と、「候補選択」のフィールドfd5と、「用紙設定」のフィールドfd6と、内容表示欄fd7が設けられている。
【0092】
「プリンタグループ」のフィールドfd4は、文書を分散して印刷するプリンタの集合であるグループを指定するためのもので、「グループ名」のデータ入力欄id11、「コメント」の表示欄id12、「プリンタ」の表示欄id13、「使用台数」の表示欄id14および「グループ設定」のボタンid15等が設けられている。なお、上記プリンタの集合であるグループはプリンタグループと呼ぶが、以下単にグループと呼ぶこともある。
【0093】
「グループ名」のデータ入力欄id11は、グループの名前を設定するためのものであり、右端の逆三角形のマークが付されたボタンid11aがクリックされると、プルダウンメニュ(図21参照)が開き、このプルダウンメニュに、複数のグループ名が選択肢として予め用意される。作業者は、プルダウンメニュに表示される選択肢の一つをマウス20を用いてクリックすることで、所望のグループ名をデータ入力欄id11にセットすることができる。
【0094】
「コメント」の表示欄id12は、「グループ名」のデータ入力欄id11で現在選択されているグループに設定されているコメントを表示するためのものである。「プリンタ」の表示欄id13は、「グループ名」のデータ入力欄id11で現在選択されているグループに属するプリンタ名を表示するものである。「使用台数」の表示欄id14は、分散印刷を実行した場合に使用されるプリンタの台数を表示するものである。
【0095】
「グループ設定」のボタンid15は、新規グループの作成や既存グループの設定変更などの作業を実行開始するためのスイッチである。以下、新規グループの作成の作業について説明する。「グループ設定」のボタンid15が、作業者によるマウス20の操作によってクリックされると、「グループ一覧」のダイアログボックスがまずCRTディスプレイ12に表示される。
【0096】
図12は、「グループ一覧」のダイアログボックスWN3を示す説明図である。図示するように、「グループ一覧」のダイアログボックスWN3には、「一覧リスト」の表示欄id21と、「追加」、「編集」、「削除」等のボタンid22,id23,id24が設けられている。「一覧リスト」の表示欄id21は、既存のグループを表示するものである。「追加」のボタンid22は、新しいグループを作成したい場合に用いられるもので、このボタンid2がマウス20の操作によってクリックされると、「グループ設定」のダイアログボックスがCRTディスプレイ12に表示される。
【0097】
図13は、「グループ設定」のダイアログボックスWN4を示す説明図である。図示するように、「グループ設定」のダイアログボックスWN4には、「グループ名」のデータ入力欄id31、「コメント」のデータ入力欄id32、「所属するプリンタ」の表示欄id33、「所属しないプリンタ」の表示欄id34等が設けられている。
【0098】
「グループ名」のデータ入力欄id31は、プリンタの集まりであるグループの名前を入力するためのものである。「コメント」のデータ入力欄id32は、そのグループの説明を入力するためのものである。「所属するプリンタ」の表示欄id33は、そのグループに所属するプリンタを表示するためのものである。「所属しないプリンタ」の表示欄id34は、予め用意した多数のプリンタ名の中からこのグループに所属しないものを表示するためのものである。
【0099】
作業者は、「所属しないプリンタ」の表示欄id34に表示されたプリンタ名の中から所望のものを選択して、「追加」のボタンid35をクリックすることで、その選択したプリンタ名を「所属するプリンタ」の表示欄id33に移すことができる。図13に例示するように、「所属しないプリンタ」の表示欄id34には8台のプリンタについてのプリンタ名が表示されている。この状態から、「LP−100」、「LP−200」、「LP−300」の3台のプリンタを選択して、「追加」のボタンid35をクリックすると、図14に例示するように、「所属するプリンタ」の表示欄id33に、これら3台のプリンタのプリンタ名が移行して表示されることになる。
【0100】
なお、「所属するプリンタ」の表示欄id33に表示されるプリンタ名の各プリンタには、その表示される順番に従って優先順位が定められている。最も上部に表示されるプリンタ名が最も優先順位が高く、下部に位置するほど優先順位が低くなる。この表示されるプリンタ名の順番は、「所属するプリンタ」の表示欄id33に移行した順番と一致するものである。「所属しないプリンタ」の表示欄id34に表示されるプリンタ名を1つずつ選択して、「追加」のボタンid35をクリックすることで、一つずつ順に「所属するプリンタ」の表示欄id33に移行することができ、これにより、「所属するプリンタ」の表示欄id33に表示されるプリンタの順番、延いては、各プリンタに対して優先順位を定めることができる。上記各プリンタ毎に割り当てられた優先順位は、分散印刷の割り振りの際に利用される。
【0101】
「削除」のボタンid36は、「所属するプリンタ」の表示欄id33に表示されたプリンタ名から所望のものを削除したい場合に用いられる。
【0102】
上記のような「グループ設定」のダイアログボックスWN4を用いた作業により、グループに対して複数のプリンタが割り当てられることになる。この割り当てられた結果は、グループ登録リストデータとしてRAM32に格納される。図15は、グループ登録リストデータPDの一例を示す説明図である。図示するように、グループ登録リストデータPDには、1または複数のグループ名が記憶され、各グループ名毎に、1または複数のプリンタ名とコメントが関連づけて記憶される。
【0103】
なお、「グループ一覧」のダイアログボックスWN3の「一覧リスト」の表示欄id21に表示されるグループ名は、グループ登録リストデータPDに記憶されるグループ名のデータに基づいて定められている。図11に戻り、「プリンタグループ」のフィールドfd4に設けられた「グループ名」のデータ入力欄id11、「コメント」の表示欄id12、「プリンタ」の表示欄id13の内容は、グループ登録リストデータPDの内容、すなわち、プリンタ上記に「グループ一覧」のダイアログボックスWN3および「グループ設定」のダイアログボックスWN4で登録された内容で更新されることになる。この結果、「グループ名」のデータ入力欄id11から開くプルダウンメニュには、「グループ一覧」のダイアログボックスWN3に登録されたグループ名が示され、「コメント」の表示欄id12、「プリンタ」の表示欄id13の内容は、「グループ設定」のダイアログボックスWN4で登録された内容が表示されることになる。
【0104】
「候補選択」のフィールドfd5は、「用紙設定」のフィールドfdからのデータ入力を、「機能優先」と「速度優先」の2通りのモードで制限させようとするものである。詳細には、「機能優先」のモードに対応したラジオボタンBT1と「速度優先」のモードに対応したラジオボタンBT2が設けられており、いずれかのラジオボタンBT1,BT2がクリックされることで、「機能優先」のモードもしくは「速度優先」のモードで上記データ入力の制限がなされる。なお、各モードにより「用紙設定」のフィールドfdのデータ入力が具体的にどのように制限されるかについては後ほど詳述する。
【0105】
「用紙設定」のフィールドfd6は、用紙や印刷品質を設定するためのもので、「用紙サイズ」、「用紙方向」、「両面印刷する」、「用紙種類」、「色」、「解像度」をそれぞれ設定するデータ入力欄id41,id42,id43,id44,id45,id46が設けられている。
【0106】
「用紙サイズ」のデータ入力欄id41は、使用する用紙サイズを用紙の種類と共に設定するものであり、右端の逆三角形のマークが付されたボタンid41aがクリックされると、プルダウンメニュ(図22参照)が開き、このプルダウンメニュに、複数の用紙サイズが選択肢として予め用意される。これら選択肢は、例えば、「A4 210×297mm」、「A4横 210×297mm」、「洋封筒 120×235」、「ハガキ 100×147mm」等が該当する。
【0107】
「用紙方向」のデータ入力欄id42は、プリンタにおいて用紙のセットされる方向を示すものであり、「縦」と「横」とが選択可能である。「両面印刷する」のデータ入力欄id43は、両面印刷するかどうかを指定するチェックボックスから構成される。このチェックボックスがクリックされた場合には、両面印刷を行なうものとして、両面印刷機能のあるプリンタだけが分散印刷に利用される。
【0108】
「用紙種類」のデータ入力欄id44は、用紙の種類を設定するもので、「普通紙」、「スーパーファイン専用紙」、「専用光沢紙」が選択肢として用意されている。「色」のデータ入力欄id45は、プリンタ14に使用するインクの種類を設定するもので、「カラー」と「モノクロ」とが選択肢として用意されている。「解像度」のデータ入力欄id46は、印刷する解像度を設定するもので、「はやい」、「きれい」の2種類が選択肢として用意されている。ここで、「はやい」、「きれい」は、例えば、順に360×360(dot)、720×720(dot)の解像度を示すものである。
【0109】
内容表示欄fd7は、「プリンタグループ」のフィールドfdと「用紙設定」のフィールドfd5から設定された内容のうちの所望のデータを表示する。
【0110】
以上のように構成された「分散印刷プロパティ」のダイアログボックスWN2に従って、作業者はマウス20およびキーボード18を操作することにより、分散印刷する場合の分散形態に関わる情報、分散先となり得るプリンタグループに関わる情報、用紙設定に関する情報および印刷の基本設定に関する情報等の各種の設定情報がコンピュータ本体16に入力されることになる。
【0111】
5.コンピュータプログラム
図3に示した仮想プリンタドライバ110にて実現される各部111〜119は、実際は、コンピュータプログラムである仮想プリンタドライバ110とその仮想プリンタドライバ110に従ってCPU30により実行される各種処理とにより実現されている。また、図4に示した分散印刷ユーティリティ120にて実現される各部121〜129は、実際は、コンピュータプログラムである分散印刷ユーティリティ120とその分散印刷ユーティリティ120に従ってCPU30により実行される各種処理とにより実現されている。
【0112】
上記分散印刷ユーティリティ120は、仮想プリンタドライバ110と同様に、フロッピィディスク22に予め格納されており、所定のインストールプログラムを起動することで、フロッピィディスクドライブ24からコンピュータ10にインストールされる。このインストールされた分散印刷ユーティリティ120は、HDD41に記憶されており、コンピュータ10に電源を投入したときに、オペレーティングシステムに組み込まれ、RAM32の所定の領域にロードされる。なお、分散印刷ユーティリティ120は、仮想プリンタドライバ110と同様に、フロッピィディスク22に格納されたものに替えて、CD−ROM、光磁気ディスク、ICカード等の他の携帯型記録媒体(可搬型記録媒体)に格納された構成としてもよい。また、この分散印刷ユーティリティ120は、外部のコンピュータネットワーク(例えばインターネット)に接続される特定のサーバから、コンピュータネットワークを介して提供されるプログラムデータをダウンロードして、RAM32またはHDD41に転送することにより得るようにすることもできる。
【0113】
図16は、仮想プリンタドライバ110で記述される処理ルーチンを、アプリケーションプログラム100で記述される処理ルーチンとともに示すフローチャートである。図示するように、このコンピュータ本体16のCPU30は、まず、アプリケーションプログラム100に処理を移して、画像の処理を行って画像データを作成する処理を行なう(ステップS210)。このアプリケーションプログラム100は、文書や絵図等を作成する汎用のアプリケーションプログラムであり、それぞれのアプリケーションプログラム特有の機能を使って画像データが作成される。
【0114】
次いで、CPU30は、この作成されたアプリケーションプログラムに備えられる[印刷]のコマンドを実行することで、分散印刷を行なう旨の印刷命令を発行する処理を行なう(ステップS220)。図17は、アプリケーションプログラム100上で[印刷]のコマンドが操作されたときにCRTディスプレイ12に表示される「印刷」のダイアログボックスWN6の一例を示す説明図である。図示するように、「印刷」のダイアログボックスWN6には、「プリンタ名」のデータ入力欄id51が設けられている。この「プリンタ名」のデータ入力欄id51に、図5で説明した「分散印刷」のアイコンIC4に対応する「分散印刷」の文字列が選択入力された状態で、「OK」のボタンid52がマウス20によりクリックされると、上記分散印刷を行なう旨の印刷命令がアプリケーションプログラム100からオペレーティングシステムを介して仮想プリンタドライバ110に対して発行される。なお、「印刷」のダイアログボックスWN6において、「プロパティ」のボタンid53がマウス20によりクリックされると、仮想プリンタドライバ110に従う分散情報設定ルーチンに処理を移して、「分散印刷プロパティ」のダイアログボックスWN2をCRTディスプレイ12に表示させ、キーボード18とマウス20からの入力データを読み取ることで、分散印刷に係わる各種情報を設定する処理を行なう。
【0115】
ここで、「分散印刷プロパティ」のダイアログボックスWN2を用いて分散印刷に係わる各種情報を設定する処理について詳述する。図18は、CPU30にて実行される分散情報設定ルーチンを示すフローチャートである。図示するように、CPU30は、処理が開始されると、まず、図6に示した「分散印刷プロパティ」のダイアログボックスWN2をCRTディスプレイ12に表示する(ステップS610)。次いで、CPU30は、このダイアログボックスWN2において、「分散設定」のカードCD1と「プリンタ」のカードCD2のうちのいずれのカードがアクティブな状態にあるかを判定する(ステップS620)。ここで、「分散設定」のカードCD1がアクティブな状態にあると判定された場合には、ステップS630に処理を進める。
【0116】
ステップS630では、CPU30は、CRTディスプレイ12の表示画面を見た作業者によるキーボード18およびマウス20を用いたデータ入力の操作を受けて、各種データを入力する処理を行なう。ここで入力される各種データは、図6に示した「分散設定」のカードCD1から入力可能なデータであり、分散印刷の分散形態に関する情報が該当する。その後、CPU30は、ステップ303で入力された各種データをプリンタプロパティデータの一部のデータとしてRAM32に記憶する(ステップS640)。その後、「リターン」に抜けてこのルーチンの処理を終了する。
【0117】
一方、ステップS620で、「プリンタ」のカードCD2がアクティブな状態にあると判定された場合には、ステップS650に処理を進めて、「プリンタ」のカードCD2によるデータ入力処理ルーチンを実行する。このデータ入力処理ルーチンの詳細については後述するが、このデータ入力処理ルーチンにより、「プリンタ」のカードCD2から入力可能なプリンタグループに関する情報、用紙設定に関する情報および印刷の基本設定に関する情報等が入力されることになる。その後、CPU30は、ステップ650で入力された各種データをプリンタプロパティデータの一部のデータとしてRAM32に記憶する(ステップS660)。その後、「リターン」に抜けてこのルーチンの処理を終了する。
【0118】
次に、ステップS650で実行されるデータ入力処理ルーチンについて詳しく説明する。図19および図20は、このデータ入力処理ルーチンを示すフローチャートである。分散情報設定ルーチンのステップS650に処理が移り、このデータ入力処理ルーチンが実行開始されると、CPU30は、まず、図19に示すように、作業者によるキーボード18、マウス20の入力操作に従う入力データを読み込む(ステップS710)。次いで、この入力データから、「グループ名」のデータ入力欄id11に備えられたボタンid11aがマウス20によりクリックされたか否かを判別する(ステップS720)。ここで、クリックされていると判別された場合、以下の処理を実行する。
【0119】
CPU30は、まず、グループ名入力用のプルダウンメニュMN1をCRTディスプレイ12に表示する処理を行なう(ステップS730)。図21は、CRTディスプレイ12に表示されるグループ名入力用のプルダウンメニュMN1の一例を示す説明図である。図示するように、このプルダウンメニュMN1は、「グループ名」のデータ入力欄id11の直下に表示される。このプルダウンメニュMN1には、選択肢として複数のグループ名が示される。ステップS730では、詳細には、RAM32に格納されたグループ登録リストデータPDの内容に基づいて、プルダウンメニュMN1に示す選択肢を定めた上で、上記CRTディスプレイ12への表示を行なっている。
【0120】
次いで、CPU30は、作業者によるマウス20のクリック操作を受けて、プルダウンメニュMN1から一のグループ名を選択する処理を行なう(ステップS740)。その後、その選択されたグループ名のグループに属するプリンタ名を、RAM32に格納されるグループ登録リストデータPDから求めて、こららプリンタ名を一旦RAM32のテンポラリ領域に記憶するとともに、「プリンタ」のカードCD2の「プリンタ」の表示欄id13に表示する処理を行なう(ステップS750)。この結果、図22に例示するように、「グループ名」のデータ入力欄id11にセットされたグループ名のグループに属するプリンタが「プリンタ」の表示欄id13に表示されることになる。
【0121】
その後、CPU30はステップS750でRAM32に記憶した各プリンタ名のプリンタについての性能情報を読み込む処理を行なう(ステップS760)。ここで性能情報とは、印刷可能な用紙サイズ、印刷可能な用紙の種類、両面印刷の可否等についての情報であり、予めRAM32にロードされた、各プリンタの機種毎の実プリンタドライバから取り込むことができる。ステップS760の実行後、「リターン」に抜けて、このデータ入力処理ルーチンを一旦終了する。
【0122】
一方、ステップS720で、否定判別された場合には、CPU30は、図20のステップS770に処理を進める。ステップS770では、ステップS710で読み込んだ入力データから、「プリンタ」のカードCD2の「用紙サイズ」のデータ入力欄id41に備えられたボタンid41aがマウス20によりクリックされたか否かを判別する(ステップS770)。ここで、クリックされたと判別された場合、以下の処理を実行する。
【0123】
CPU30は、まず、ステップS760で取り込んだ各プリンタの性能情報から、各プリンタの印刷可能な用紙サイズを検出する処理を行なう(ステップS780)。次いで、CPU30は、「プリンタ」のカードCD2の「候補選択」のフィールドfd5において、「機能優先」のモードが選択されているか否かを判別する(ステップS790)。この判別は、「機能優先」のモードに対応したラジオボタンBT1と「速度優先」のモードに対応したラジオボタンBT2のいずれが選択されているかにより判別する。
【0124】
ステップS790で、「機能優先」のモードであると判別された場合には、ステップS780で検出した各プリンタの印刷可能な用紙サイズの総和を求める処理(すなわちOR処理)を行なう(ステップS800)。例えば、プリンタ60,70の印刷可能な用紙サイズが「B5」、「A4」であり、プリンタ80の印刷可能な用紙サイズが「B5」、「A4」、「A3」である場合には、「B5」、「A4」、「A3」の用紙サイズがステップS800で求められることになる。
【0125】
一方、ステップS790で、「機能優先」のモードでない、すなわち「速度優先」のモードであると判別された場合には、ステップS780で検出した各プリンタの印刷可能な用紙サイズにおいて各プリンタに共通な用紙サイズを求める処理(すなわちAND処理)を行なう(ステップS810)。例えば、プリンタ60,70の印刷可能な用紙サイズが「B5」、「A4」であり、プリンタ80の印刷可能な用紙サイズが「B5」、「A4」、「A3」である場合には、「B5」、「A4」の用紙サイズがステップS810で求められることになる。
【0126】
ステップS800またはS810の実行後、CPU30はステップS820に処理を進めて、用紙サイズ入力用のプルダウンメニュMN2をCRTディスプレイ12に表示する処理を行なう。図22は、CRTディスプレイ12に表示される用紙サイズ入力用のプルダウンメニュMN2の一例を示す説明図である。図示するように、このプルダウンメニュMN2は、「用紙サイズ」のデータ入力欄id41の直下に表示される。このプルダウンメニュMN2には、ステップS800またはS810で求められた用紙サイズが選択肢として表示される。
【0127】
こうした結果、図22に示すように、「候補選択」のフィールドfd5において「機能優先」のモードが選択されている場合には、用紙サイズ入力用のプルダウンメニュMN2には、現在選択されているグループに属する各プリンタ(即ち、「プリンタ」の表示欄id13に表示された各プリンタ)の印刷可能な用紙サイズの総和である、例えば「B5」、「A4」、「A3」の用紙サイズが選択肢として表示されることになる。
【0128】
一方、図23に示すように、「候補選択」のフィールドfd5において「速度優先」のモードが選択されている場合には、用紙サイズ入力用のプルダウンメニュMN2には、現在選択されているグループに属する各プリンタ(即ち、「プリンタ」の表示欄id13に表示された各プリンタ)の印刷可能な用紙サイズにおいて各プリンタに共通な用紙サイズである、例えば「B5」、「A4」の用紙サイズが選択肢として表示されることになる。
【0129】
図23に例示した「速度優先」のモード時の表示を、図22に例示した「機能優先」のモードの表示と比較してみると、「A3」の用紙サイズが選択肢から除外されたことになる。この実施例の別態様として、その除外する選択肢については、グレーダウンさせて表示するように構成することもできる。グレーダウンとは、表示される文字の濃度を低下させることで、文字の識別は可能ではあるが、マウス20による選択を不能とするものである。かかる構成によれば、プリンタに機能がないということで、いずれの条件が設定することができなくなったかを知ることができる。
【0130】
図20に戻り、ステップS820の実行後、CPU30は、作業者によるマウス20のクリック操作を受けて、プルダウンメニュMN2から一の用紙サイズを選択する処理を行なう(ステップS830)。この処理の結果、その選択された用紙サイズが「用紙サイズ」のデータ入力欄id41にセットされることになる。その後、そのセット用紙サイズを一旦RAM32のテンポラリ領域に記憶する(ステップS840)。
【0131】
その後、CPU30は、ステップS840で記憶した一の用紙サイズを、ステップS780で検出した各プリンタの用紙サイズと照合することにより、現在選択されているグループに属する各プリンタにおいて上記一の用紙サイズを印刷不可能な機種を選択して、その機種のプリンタについては、「プリンタ」の表示欄id13の表示をグレーダウンさせる処理を行なう(ステップS850)。
【0132】
図24に例示するように、「用紙サイズ」のデータ入力欄id41に「A3」の用紙サイズがセットされたとすると、「プリンタ」の表示欄id13に表示されたプリンタ名のプリンタにあって「A3」の用紙サイズが印刷不可能なもの、例えば、「LP−100」、「LP−200」のプリンタのプリンタ名の表示がグレーダウンされることになる。なお、このステップS840の処理は、「機能優先」のモード時に限って実行するようにすればよい。「速度優先」のモード時においては、各プリンタに共通の用紙サイズの条件しか設定されていないことから、このステップS840の処理は不要である。かかる構成によれば、作業者は、分散印刷のなされないプリンタを即座に知ることが可能となる。ステップS7850の実行後、「リターン」に抜けて、このデータ入力処理ルーチンを一旦終了する。
【0133】
一方、ステップS770で、否定判別された場合には、CPU30は、ステップS860に処理を進めて、「プリンタ」のカードCD2の他のデータ入力欄からのデータ入力を行なう(ステップS860)。このデータ入力の結果得られた入力データは一旦RAM32のテンポラリ領域に記憶される。その後、「リターン」に抜けて、このデータ入力処理ルーチンを一旦終了する。
【0134】
このデータ入力処理ルーチンは、分散情報設定ルーチンのステップS650に処理が移行すると実行開始されるが、「プリンタ」のカードCD2に設けられた各種データ入力欄からデータ入力がある度に繰り返し実行される。その後、「分散印刷プロパティ」のダイアログボックスWN2の最下部にある「OK」のボタンBTOKがクリックされるデータ入力があった時に、このデータ入力処理ルーチンを終了する。このデータ入力処理ルーチンを終了すると、CPU30は、図18のステップS660に処理を進めて、データ入力処理ルーチンでRAM32のテンポラリ領域に記憶された各種の入力データを、プリンタプロパティデータの一部のデータとしてRAM32に記憶する。この結果、「プリンタ」のカードCD2からプリンタグループに関わる情報、用紙設定に関する情報および印刷の基本設定に関する情報がコンピュータ本体16に入力されることになる。
【0135】
この実施例では、現在選択されているグループに属する各プリンタの性能に応じて、印刷条件である「用紙サイズ」のデータ入力欄id41の設定可能な選択肢が制限されるように構成されていたが、図示しないフローチャートによって、さらに、「両面印刷する」のデータ入力欄id43についても、現在選択されているグループに属する各プリンタの性能に応じて、その入力が制限されるように構成されている。即ち、現在選択されているグループに属する各プリンタの中で少なくとも1台が両面印刷機能を有するような場合には、「機能優先」のモード時には、「両面印刷する」のデータ入力欄id43からのデータ入力が可能となるよう(即ち、各プリンタの能力情報のORである、両面印刷するという条件と両面印刷しないという条件との2通りを入力可能となるよう)にし、「速度優先」のモード時には、「両面印刷する」のデータ入力欄id43からのデータ入力が不可能となるよう(即ち、各プリンタの能力情報のANDである、両面印刷しないという条件だけが入力可能となる)にする。具体的には、データ入力欄id43である「両面印刷する」のダイアログボックスを、「機能優先」のモード時には入力可能な状態とし、「速度優先」のモード時にはグレーダウンさせて入力不可能な状態とする。
【0136】
以上のように、「分散印刷プロパティ」のダイアログボックスWN2を用いて分散印刷に係わる各種情報の設定がなされると、その後、前述したように、「印刷」のダイアログボックスWN6内の「OK」のボタンid52がマウス20によりクリックされるのを受けて、図16のステップS220で印刷命令の発行を行なう。なお、「プロパティ」のボタンid53がクリックされず直ちに「OK」のボタンid52がマウス20によりクリックされた場合には、前回、分散情報設定ルーチンを実行したときにRAM32に記憶されたプリンタプロパティデータ(初めての場合には予め用意されたイニシャルのプリンタプロパティデータ)がそのまま残っている。
【0137】
ステップS220で印刷命令が発行されると、CPU30は、仮想プリンタドライバ110に処理を移して、アプリケーションプログラム100による処理から印刷命令を取り込んだか否かを判別する処理を行なう(ステップS310)。ここで、印刷命令を取り込んでいないと判別されると、ステップS310の判別処理を繰り返し実行して、アプリケーションプログラム100からの印刷命令が取り込まれるのを待つ。一方、ステップS310で印刷命令が取り込まれたと判別されたときには、以下の処理を実行する。
【0138】
CPU30は、まず、プリンタ60,70,80の機種毎に用意される実プリンタドライバ130,140,150から分散印刷ユーティリティ120が取り込んだ各プリンタ60,70,80の性能情報を、分散印刷ユーティリティ120から取り込む(ステップS320)。その後、CPU30は、これら各プリンタ60,70,80の性能情報から最も高いものを抽出して、これを仮想プリンタの性能情報と決定する(ステップS330)。その後、CPU30は、この仮想プリンタの性能情報をアプリケーションプログラム100に送る(ステップS340)。
【0139】
仮想プリンタドライバ110から仮想プリンタの性能情報が送られてくると、CPU30は、アプリケーションプログラム100に処理を移して、その仮想プリンタの性能情報を取り込む(ステップS240)。次いで、CPU30は、その性能情報と、前述した分散情報設定ルーチンでRAM32に記憶したプリンタプロパティデータに含まれる印刷の基本設定に関する情報と用紙設定に関する情報等(プリンタグループと分散形態に関する情報を除く)とに基づいて、ステップS210で作成した画像データを仮想プリンタに適合した印刷データに変換する(ステップS250)。その後、この変換後の印刷データを仮想プリンタドライバ110に送る(ステップS260)。CPU30は、ステップS260の処理を終えると、アプリケーションプログラム100の処理ルーチンを終了する。
【0140】
アプリケーションプログラム100から仮想プリンタに適合した印刷データが送られてくると、CPU30は、仮想プリンタドライバ110に処理を移して、その印刷データを取り込む(ステップS350)。続いて、CPU30は、その取り込んだ印刷データを中間印刷データとして、その中間印刷データをHDD41に出力する(ステップS360)。この結果、この中間印刷データをまとめたデータセットが中間印刷ファイルMFとしてHDD41に格納される。CPU30は、ステップS360の処理を終えると、仮想プリンタドライバ110の処理ルーチンを終了する。
【0141】
図25および図26は、分散印刷ユーティリティ120で記述される処理ルーチンを示すフローチャートである。この処理ルーチンは、仮想プリンタドライバ110の処理ルーチンを終了後、起動されるものである。処理が開始されると、図25に示すように、CPU30は、まず、HDD41から中間印刷ファイルMFの中間印刷データを取り込む(ステップS410)。次いで、CPU30は、分散情報設定ルーチンで設定された各種情報であるプリンタプロパティデータを取り込む(ステップS420)。
【0142】
続いて、CPU30は、ステップS420で取り込んだプリンタプロパティデータに含まれるプリンタグループに関する情報と分散形態に関する情報に基づいて、ステップS410で取り込んだ中間印刷データの割り振りを決定する処理を行なう(ステップS430)。この割り振りは、中間印刷データを構成する各ページを指定されたプリンタグループに属する各プリンタ(ここでは、3台のプリンタ60,70,80とする)に対してどのように割り振るかを定めるものである。即ち、「分散印刷プロパティ」のダイアログボックスWN2で設定した分散形態が実現されるように(即ち、「分散設定」のカードCD1の分散形態表示欄ddに表示された図10に例示した分散形態が実現されるように)、中間印刷データを構成する各ページをどのように各プリンタ60,70,80用に割り振るかを定めている。こうして定められた各プリンタに割り当てられたページについての情報は出力先リストデータとしてRAM32に記憶される。
【0143】
図27は、その出力先リストデータの一例を示す説明図である。図示の例は、図8のように割り振りが決定された場合のものである。図示するように、1台目(プリンタに設定した優先順位が1番)のプリンタ60に対して1,2,3,4の各ページがこの順に、2台目のプリンタ70に対して5、1,2,3,4,5,1,2の各ページがこの順に、3台目(プリンタに設定した優先順位が最後)のプリンタ80に対して3、4,5,1,2,3,4,5の各ページがこの順にそれぞれ、印刷するページ番号として定められる。
【0144】
ステップS430で各ページの出力先の割り振りが決まると、次いで、この割り振りに従って実際に印刷がなされるように、以下の処理を実行する。まず、図26に示すように、CPU30は、印刷の対象となるプリンタを示すプリンタカウンタC1を値1にセットする(ステップS440)。ここで、プリンタカウンタC1は、値1のとき1台目のプリンタ60を、値2のとき2台目のプリンタ70を、値3のとき3台目のプリンタ70というように分散先の各プリンタを示すものとする。
【0145】
次いで、CPU30は、プリンタカウンタC1の値に対応するプリンタに対して設定変更を指示する処理を行なう(ステップS450)。この処理は、印刷しようとするプリンタに対してプリンタドライバを介して印刷の用意を促すもので、上記ステップS420で取り込んだプリンタプロパティデータに含まれる印刷の基本設定に関する情報と用紙設定に関する情報のうちから必要な設定情報をプリンタドライバに対して指示を行なう。例えば、用紙の種類は「専用光沢紙」であるということをプリンタドライバに知らせることで、プリンタに対してその用紙に適した印刷が可能な状態となるように定める。
【0146】
続いて、CPU30は、印刷の対象となるページ数を示すページカウンタC2を値1にセットする(ステップS460)。その後、CPU30は、ステップS430で求めた出力先リストデータに、プリンタカウンタC1およびページカウンタC2で特定されるページが含まれるか否かを判別する(ステップS470)。ここで、出力先リストデータに含まれると判別されると、以下の処理を行なう。まず、プリンタカウンタC1の値に対応するプリンタに対して印刷を実行させるべく、そのプリンタの実プリンタドライバ130(140,150)に対して出力命令を発行する(ステップS480)。その出力命令の発行を受けた実プリンタドライバ130(140,150)からは、プリンタ60(70,80)の性能についての性能情報が返送されてくることから、次いで、CPU30は、その性能情報を取り込む(ステップS490)。
【0147】
続いて、その性能情報と、ステップS420で取り込んだプリンタプロパティデータに含まれる印刷の基本設定に関する情報、用紙設定に関する情報等(プリンタグループと分散形態に関する情報を除く)とに基づいて、プリンタカウンタC1およびページカウンタC2で特定されるページについての最終印刷データを作成する処理を行なう(ステップS500)。詳しくは、ステップS410で取り込んだ中間印刷データの中からページカウンタC2の値に対応したページのページデータを抽出し、この抽出したページデータを、上記性能情報、印刷の基本設定に関する情報および用紙設定に関する情報等に基づいて、プリンタカウンタC1の値に対応したプリンタ60(70,80)に適合したデータに変換するレンダリング処理を行なうことにより、最終印刷データを作成する。
【0148】
その後、CPU30は、その最終印刷データをプリンタカウンタC1の値に対応したプリンタ60(70,80)の実プリンタドライバ130(140,150)に出力する(ステップS510)。なお、ステップS480ないしS510で印刷を実行させる前に、実プリンタドライバ130,140,150からの信号に基づいて各プリンタ60,70,80の状態を監視する処理を行ない、この監視結果が、出力先のプリンタが混み合っていたりエラー状態にあるといったエラー状態にあるというものであるときには、その出力先へのプリンタについては出力先を変更したり、出力先を中止したりする処理を行なうよう構成することもできる。
【0149】
その後、CPU30は、ページカウンタC2の値を1だけインクリメントする(ステップS520)。なお、ステップS470で否定判別されたときには、ステップS480ないしS510を読み飛ばして直ちにステップS520に進む。その後、CPU30は、ページカウンタC2の値が最終ページを示す値LC2を超えたか否かを判別する(ステップS530)。ここで、最終ページを示す値LC2を超えていないと判別されると、処理をステップS470に戻して、上記値1を増加したページについての最終印刷データの作成および出力の処理を行なう。一方、ステップS530でページカウンタC2の値が最終ページを示す値LC2を超えたと判別されたときには、CPU30は、プリンタカウンタC1の値を1だけインクリメントして(ステップS540)、そのプリンタカウンタC1の値が最後のプリンタを示す値LC1を超えたか否かを判別する(ステップS550)。ここで、最後のプリンタを示す値LC1を超えていないと判別されると、処理をステップS450に戻して、上記値1を増加したプリンタカウンタC1で示される次のプリンタ70(80,60)についての各ページの最終印刷データの作成および出力の処理を行なう。一方、ステップS550でプリンタカウンタC1の値が最終ページを示す値LC1を超えたと判別されたときには、全てのプリンタについての印刷を要する全てのページの最終印刷データの作成・出力が終了したとして、「エンド」に抜けて、分散印刷ユーティリティの処理ルーチンを終了する。
【0150】
なお、この分散印刷ユーティリティの処理ルーチンは、前述したように、1ページから最終ページまでの最終印刷データの作成および出力の処理を第1のプリンタから最終のプリンタまで各プリンタ単位で順に行なうよう記述されているが、これはフローチャートの記載上の便宜のためにこのように記述されたものであり、実際は、1ページから最終ページまでの最終印刷データの作成および出力の処理を各プリンタ毎に時分割によりマクロ的に並行処理されるよう構成されている。なお、この実施例では、これら各プリンタ毎の処理がマクロ的に並行に処理されるように構成されているが、これに換えて、複数のマイクロプロセッサを備えるコンピュータ本体を用いることで完全に並行に処理される構成とすることもできる。
【0151】
図28は、以上のように構成されたコンピュータシステムによって分散印刷が行なわれる手順を、従来例と比較しつつ示すタイミングチャートである。図示の例は、3ページから構成される文書を3台のプリンタ60,70,80に1部ずつ印刷する場合についてが示されている。図示するように、この実施例では、最初、中間印刷データの作成がなされ(▲1▼)、次いで、その中間印刷データの1ページ目のページデータが、並行処理により、プリンタ60用、プリンタ70用、プリンタ80用と順に各プリンタに適合するようにレンダリング処理される(▲2▼、▲3▼、▲4▼)。なお、プリンタ60用に変換されたデータ(最終印刷データ)のプリンタ60への送信の処理は、次のプリンタ70用へのレンダリング処理と並列に行なわれており、同様に、プリンタ70への送信の処理もプリンタ80への送信も次のレンダリング処理と並列に行なわれる。次いで、中間印刷データの2ページ目のページデータが、並行処理により、プリンタ60用、プリンタ70用、プリンタ80用と順に各プリンタに適合するようにレンダリング処理され(▲5▼、▲6▼、▲7▼)、続いて、中間印刷データの3ページ目のページデータが、並行処理により、プリンタ60用、プリンタ70用、プリンタ80用と順に各プリンタに適合するようにレンダリング処理される(▲8▼、▲9▼、○10)。こうして全ての印刷が終了する。
【0152】
これに対して、従来の装置では、まず、1ページ目のページデータを1台目のプリンタAに適合するようにレンダリング処理が行なわれ、その後、その変換されたデータをプリンタAに送信する処理が行なわれる。次いで、2ページ目のページデータを1台目のプリンタAに適合するようにレンダリング処理が行なわれ、その後、その変換されたデータをプリンタAに送信する処理が行なわれる。続いて、3ページ目のページデータを1台目のプリンタAに適合するようにレンダリング処理が行なわれ、その後、その変換されたデータを送信する処理が行なわれる。さらにその後、2台目のプリンタBについても、1台目のプリンタAと同様に、1ページ目、2ページ目、3ページ目と順に、レンダリング処理およびプリンタへの送信が行なわれる。その後、3台目のプリンタCについても、1台目のプリンタAと同様に、1ページ目、2ページ目、3ページ目と順に、データ変換およびプリンタへの送信が行なわれる。
【0153】
したがって、この実施例では、レンダリング処理とプリンタへの送信の処理とが並列に行なわれていることから、従来例と比較して、印刷に要する全体の時間を短縮することができるという効果を奏する。
【0154】
また、この実施例によれば、アプリケーションプログラム100からは仮想プリンタドライバ110に対して一の印刷命令を行なうだけで、中間印刷データを得ることができ、この中間印刷データから各プリンタ60,70,80への分散印刷が自動的に行なわれる。このために、作業者は、アプリケーションプログラム上で[印刷]のコマンドを一度実行すればよく、作業性に優れているという効果を奏する。
【0155】
この実施例では、「プリンタ」のカードCD2の「用紙サイズ」のデータ入力欄id41から設定される用紙サイズの条件は、現在選択されているグループに属する各プリンタの性能に応じて制限されたものとなる。このために、データ入力欄id41から設定される用紙サイズの条件は、各プリンタの能力情報に応じたものとなる。したがって、用紙サイズの条件は適正なものとなることからプリンタの能力にあった分散印刷が常に行なわれることになる。この結果、良好な印刷結果を得ることができるという効果を奏する。
【0156】
特に、この実施例では、「機能優先」のモードが選択された場合には、用紙サイズ入力用のプルダウンメニュMN2に、現在選択されているグループに属する各プリンタの印刷可能な用紙サイズの総和である用紙サイズの集合が選択肢として表示され、一方、「速度優先」のモードが選択された場合には、用紙サイズ入力用のプルダウンメニュMN2に、現在選択されているグループに属する各プリンタの印刷可能な用紙サイズにおいて各プリンタに共通な用紙サイズの集合が選択肢として表示される。このために、「機能優先」のモード時には、分散先の複数のプリンタのいずれかが有する能力を用いた印刷を行なうことができることから、高い能力に基づく印刷が可能となる。一方、「速度優先」のモード時には、分散先の複数のプリンタのいずれにも備えられる能力でもって印刷を行なうことができることから、上記複数のプリンタのいずれからでも印刷が可能となる。この結果、印刷に要する全体の時間を短縮することが可能となる。
【0157】
また、この実施例では、CRTディスプレイ12に表示される「プリンタ」のカードCD2に設けたラジオボタンBT1,BT2により、上記「機能優先」のモードと「速度優先」のモードとを切り替えることができる。このために、作業者は、機能を優先するか速度を優先するかを自由に切り替えることができる。したがって、作業者にとって操作性に優れているという効果を奏する。
【0158】
なお、この実施例では、前述したようにモード切替用のラジオボタンBT1,BT2が特別に設けられているが、これに換えて、既存のデータ入力欄の入力データに従って、「機能優先」のモードと「速度優先」のモードとを切り替える構成としてもよい。例えば、「解像度」のデータ入力欄id46で、「はやい」が選択された場合には、「機能優先」のモードに切り換え、「きれい」が選択された場合には、「速度優先」のモードに切り替えるよう構成することができる。
【0159】
この実施例では、分散先となる複数のプリンタを、「グループ名」のデータ入力欄id11からグループ単位で指定することができる。このため、いちいち一台ずつ分散先のプリンタを指定していく必要がないことから、作業者の操作性に優れている。さらに、この実施例では、グループに所属するプリンタに対して優先順位が指定されることから、印刷された用紙の回収の際の利便性に優れている。
【0160】
本発明の他の実施形態について、次に説明する。
(1)上記実施例では、「プリンタ」の表示欄id13は、「グループ名」のデータ入力欄id11で現在選択されているグループに属するプリンタ名を表示するだけのものであったが、これに換えて、図29に示すように、表示した各プリンタ名の前方にチェックボックスcbxをそれぞれ設ける構成とすることもできる。「グループ名」のデータ入力欄id11にグループ名が設定されたとき、このグループに属する全てのプリンタのプリンタ名が「プリンタ」の表示欄id13に表示されるが、このとき、各プリンタ名の前方に設けられたチェックボックスcbxは全てチェックされた状態に初期化されている。作業者は、設定したグループでありながら、例えば、用紙切れや故障等の理由により印刷データの出力を止めたいプリンタに対しては、その対応するチェックボックスcbxのチェックを解除することで、印刷データの出力先から除外することができる。したがって、操作性に優れているという効果を奏する。
【0161】
なお、この構成においては、「用紙サイズ」のデータ入力欄id41からデータ入力を行なおうとすると、用紙サイズ入力用のプルダウンメニュMN2に表示される選択肢は、チェックボックスcbxのチェックがなされているプリンタに応じたものとなる。例えば、図3に示すように、「LP−300」のチェックボックスcbxが解除されて「A3」の用紙サイズを印刷可能なプリンタが印刷データの出力先から除外された場合、「機能優先」のモード時には、用紙サイズ入力用のプルダウンメニュMN2に表示される「A3」の選択肢はグレーダウンされて選択不能となる。
【0162】
(2)上記実施例では、プリンタの印刷能力に関わる所定条件として、用紙サイズについて説明してきたが、用紙サイズに限るものではなく、これに替えて、「両面印刷する」、「用紙種類」、「色」、「解像度」を設定する各データ入力欄id41,id42,id43,id44,id45,id46から入力される印刷能力についてのもの等、他の所定条件とすることもできる。
【0163】
(3)この発明の分散印刷制御装置として、印刷を行なう1台のコンピュータ10から複数のプリンタ60,70,80に対して直接印刷データを出力する構成としていたが、これに替えて、コンピュータネットワーク90上に、サーバを用意し、サーバ上でプリンタを管理して分散印刷を行なうクライアント/サーバ方式の構成とすることもできる。この構成では、各クライアントに仮想プリンタドライバを内蔵し、サーバに分散印刷ユーティリティを内蔵するようにすればよい。
【0164】
以上、本発明の一実施例を詳述してきたが、本発明は、こうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲において種々なる態様にて実施することができるのは勿論のことである。
【図面の簡単な説明】
【図1】この発明の一実施例を適用するコンピュータシステムのハードウェアの概略構成を示すブロック図である。
【図2】分散印刷処理の全体の様子を概略的に示すブロック図である。
【図3】分散印刷処理に用いられる仮想プリンタドライバ110の処理の様子を示すブロック図である。
【図4】分散印刷処理の一部を実現する分散印刷ユーティリティ120の処理の様子を示すブロック図である。
【図5】「プリンタ」ウィンドウWN1を示す説明図である。
【図6】「分散印刷プロパティ」のダイアログボックスWN2に表示される「分散設定」のカードCD1を示す説明図である。
【図7】データ入力欄id1〜id3の設定の内容によって分散形態表示欄のイラスト画像がどのように変わるかを示す説明図である。
【図8】速度優先モードで分散の割り振りを決めた場合の一例を示す説明図である。
【図9】ハンドリング優先モードで分散の割り振りを決めた場合の一例を示す説明図である。
【図10】データ入力欄id4、id5の設定の内容によって分散形態表示欄のイラスト画像がどのように変わるかを示す説明図である。
【図11】「分散印刷プロパティ」のダイアログボックスWN2に表示される「プリンタ」のカードCD2を示す説明図である。
【図12】「グループ一覧」のダイアログボックスWN3を示す説明図である。
【図13】「グループ設定」のダイアログボックスWN4を示す説明図である。
【図14】「所属するプリンタ」の表示欄id33への追加がなされた状態を示す説明図である。
【図15】グループ登録リストデータPDの一例を示す説明図である。
【図16】アプリケーションプログラム100で記述される処理ルーチンと仮想プリンタドライバ110で記述される処理ルーチンを示すフローチャートである。
【図17】アプリケーションプログラム100上で[印刷]のコマンドが操作されたときにCRTディスプレイ12に表示される「印刷」のダイアログボックスWN6の一例を示す説明図である。
【図18】CPU30にて実行される分散情報設定ルーチンを示すフローチャートである。
【図19】CPU30にて実行されるデータ入力処理ルーチンの前半部分を示すフローチャートである。
【図20】データ入力処理ルーチンの後半部分を示すフローチャートである。
【図21】グループ名入力用のプルダウンメニュMN1の一例を示す説明図である。
【図22】「機能優先」のモード時における用紙サイズ入力用のプルダウンメニュMN2の一例を示す説明図である。
【図23】「速度優先」のモード時における用紙サイズ入力用のプルダウンメニュMN2の一例を示す説明図である。
【図24】「用紙サイズ」のデータ入力欄id41と「プリンタ」の表示欄id13との関連を示す説明図である。
【図25】分散印刷ユーティリティ120で記述される処理ルーチンの前半部分を示すフローチャートである。
【図26】分散印刷ユーティリティ120で記述される処理ルーチンの後半部分を示すフローチャートである。
【図27】出力先リストデータの一例を示す説明図である。
【図28】この実施例によって分散印刷が行なわれる手順を、従来例と比較しつつ示すタイミングチャートである。
【図29】本発明の他の実施形態の「プリンタ」のカードCD2を示す説明図である。
【図30】上記他の実施形態における用紙サイズ入力用のプルダウンメニュMN2の一例を示す説明図である。
【符号の説明】
10…コンピュータ
12…CRTディスプレイ
14…プリンタ
16…コンピュータ本体
18…キーボード
20…マウス
22…フロッピィディスク
24…フロッピィディスクドライブ
30…CPU
31…ROM
32…RAM
33…表示画像メモリ
34…マウスインタフェース
35…キーボードインタフェース
36…FDC
37…HDC
38…CRTC
39…プリンタインタフェース
40…ネットワーク制御回路
41…HDD
60,70,80…プリンタ
90…コンピュータネットワーク
100…アプリケーションプログラム
110…仮想プリンタドライバ
111…印刷命令受信部
112…性能情報返信部
113…プロパティ設定部
114…性能情報入力部
115…仮想プリンタ性能決定部
116…ユーザインタフェース
117…印刷データ受信部
118…中間印刷データ出力部
119…プロパティデータ出力部
120…分散印刷ユーティリティ
121…中間印刷データ入力部
122…プロパティデータ入力部
123…決定部
124…出力データ制御部
125…プリンタ設定部
126…出力命令出力部
127…性能情報入力部
128…最終印刷データ出力部
129…プリンタ監視部
12a…性能情報出力部
130,140,150…実プリンタドライバ
MF…中間印刷ファイル
WN2…「分散印プロパティ」のウィンドウ
id11…「グループ名」のデータ入力欄id11
id13…「プリンタ」の表示欄id13
fd5…「候補選択」のフィールド
BT1…「機能優先」のモードに対応したラジオボタン
BT2…「速度優先」のモードに対応したラジオボタンBT2
id41…「用紙サイズ」のデータ入力欄
MN2…用紙サイズ入力用のプルダウンメニュ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for controlling distributed printing by designating a plurality of printers as distribution destinations and distributing and outputting print data to be printed to the designated printers.
[0002]
[Prior art]
In recent years, by using a computer network, it has become possible to easily connect a plurality of printers to one information processing apparatus such as a personal computer. In a configuration in which a plurality of printers are connected to such one information processing apparatus, print data created by the information processing apparatus can be distributed and output to each printer, and the overall printing time can be shortened.
[0003]
In the printing system having such a configuration, various types of information must be set in the information processing apparatus when performing distributed printing. Examples of the setting information include information on a printer name that identifies a destination printer, and information on paper such as a paper size and a paper type. The information is input by displaying a data input window on the display and receiving data input from the window using the keyboard and mouse by the operator.
[0004]
The information processing apparatus notifies each printer determined by the printer name of information relating to the printing capability of the printer, such as the paper information, before distributing and outputting the print data to each printer. Based on these notifications, each printer prepares for printing to match the information on the paper. Thereafter, the information processing apparatus outputs print data to each printer ready for printing.
[0005]
[Problems to be solved by the invention]
However, in the above conventional technique, the content set as the paper information sometimes exceeds the printing capability of the destination printer. For example, this is the case when the paper size is set to A3 when the distribution destination printer has a printing capability up to the maximum size of A4. In such a case, a printer having a printing capability up to A4 is requested to print with a paper size of A3. As a result, there is a problem that a good printing result cannot be obtained from the printer.
[0006]
An object of the present invention is to make it possible to obtain a good print result by setting various information such as paper information appropriately.
[0007]
[Means for solving the problems and their functions and effects]
As means for solving at least a part of the problems described above, the following configuration is adopted.
[0008]
The distributed printing control apparatus of the present invention
Printer designation means for designating a plurality of printers as distribution destinations;
Distributed output means for distributing and outputting print data to be printed to a plurality of printers designated by the printer designation means;
A distributed printing control apparatus that controls distributed printing,
A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and based on the input data Condition setting means for setting predetermined conditions for the distributed printing;
Printer capability information acquisition means for acquiring capability information about the predetermined condition included in each of the plurality of printers designated by the printer designation means;
Data input restriction means for restricting input data that can be entered from the data entry field within a range determined according to the plurality of pieces of capability information acquired by the printer capability information acquisition unit;
With
The data input restriction means includes
A set of capability information that is the sum of the plurality of capability information acquired by the printer capability information acquisition unit is obtained, and input data that can be input from the data input field is limited within the range of the obtained capability information set. A set of capability information common to the plurality of capability information acquired by the first capability mode and the printer capability information acquisition means, and input from the data input field within the range of the determined capability information set Comprising mode switching means for selectively switching between a second mode for limiting possible input data;
further,
A switch for mode switching by the mode switching means is displayed on a display device, and input data for operating the switch by the input device is fetched, and the mode is switched to the mode switching means based on the input data. Means for instructing switching
The gist is to provide.
[0009]
According to the distributed printing control apparatus configured as described above, a plurality of printers to be distributed are designated by the printer designation means, and a predetermined condition relating to the printing capability of each printer is set by the condition setting means. Further, the capability information about the predetermined condition included in each of the plurality of printers designated by the printer designation information is picked up by the printer capability information acquisition means, and the input data that can be entered from the data entry field is inputted by the data input restriction means. , And limited according to the acquired capability information of each printer.
[0010]
For this reason, the predetermined condition set using the data input field is in accordance with the capability information of each printer. Accordingly, since the predetermined conditions are appropriate, distributed printing that matches the capabilities of the printer is always performed. As a result, there is an effect that a good printing result can be obtained.
[0012]
Further, the input data that can be input from the data input field can be limited within the range of a set of capability information that is the sum of capability information for a predetermined condition of each printer. For this reason, printing can be performed using the capability of any of the plurality of distribution destination printers, and printing based on high capability becomes possible.
[0014]
Further, the input data that can be input from the data input field can be limited within the range of a set of capability information common to the capability information for the predetermined conditions of each printer. For this reason, since printing can be performed with the capability of any of the plurality of destination printers, printing can be performed from any of the plurality of printers.
[0018]
In particular, according to this configuration, since the operator can switch the mode by operating the input device, there is an effect that the operability is excellent for the operator.
[0019]
In the distributed printing control apparatus of the present invention, the condition setting means displays an option display field indicating options that can be input from the data input field along with the data input field, and the input from among the options. One option instructed by a device is set as the predetermined condition, and the data input restricting unit makes it impossible to instruct at least a part of the options that can be indicated in the option display field by the input device. Thus, the input data that can be input can be limited.
[0020]
According to this configuration, the operator can select a predetermined condition according to the capability information of the printer from the option display field, and cannot select an option with a predetermined condition not corresponding to the capability information of the printer. For this reason, the operability of data input in the data input column is excellent.
[0021]
The distributed printing control apparatus according to the present invention comprises group allocating means for allocating a plurality of printers to a group, and the printer designating means performs the designation in units of groups assigned by the group allocating means. Can do.
[0022]
According to this configuration, since a plurality of printers as distribution destinations can be specified in units of groups, the operability is excellent.
[0023]
In the distributed printing control apparatus according to the present invention, the printer designation means may include a name display control means for displaying the designation names of the plurality of designated printers on a display device.
[0024]
According to this configuration, the operator can know a plurality of printers designated as distribution destinations from the display on the display device.
[0025]
In the distributed printing control apparatus having the name display control means, the printer designation means excludes the printer from the distribution destination corresponding to each of the printer name displayed by the name display control means. The switch is displayed on the display device, and input control means for fetching operation data of the switch by the input device is provided, and the distributed output means is operated based on the operation data fetched by the input control means. The determined printer may be configured to include an output destination exclusion unit that excludes the print data from the output destination.
[0026]
According to this configuration, even a plurality of printers designated as distribution destinations can be excluded from the distribution destinations by operating the switches. As a result, the operability is excellent.
[0027]
In the distributed printing control apparatus according to the present invention, the printer specifying means includes priority order specifying means for specifying a priority order for each of the plurality of specified printers, and the distributed output means is controlled by the priority order specifying means. The distributed output may be performed in consideration of the designated priority.
[0028]
According to this configuration, although priority is given to each printer even though it is a distribution destination printer, it is excellent in convenience when collecting print results.
[0033]
In the distributed printing control apparatus according to the present invention, the printer capability information acquisition unit takes in information on the performance of each printer from a printer driver provided for each model of the plurality of printers, and uses the information about the predetermined condition. It can be set as the structure which acquires capability information.
[0034]
According to this configuration, it is possible to capture printer performance information from a printer driver provided for each printer model.
[0035]
The distributed printing control method of this invention
(A) designating a plurality of printers as distribution destinations;
(B) distributedly outputting print data to be printed to a plurality of printers designated in step (a);
A distributed printing control method for controlling distributed printing,
(C) A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and the input is performed. Setting predetermined conditions based on data for the distributed printing;
(D) obtaining capability information about the predetermined condition provided in each of the plurality of printers designated in step (a);
(E) limiting the input data that can be input from the data input field to a range determined according to the plurality of capability information acquired in the step (d);
With
The step (e)
(E-1) A set of capability information that is the sum of the plurality of capability information acquired in step (d) can be obtained and input from the data entry field within the range of the obtained capability information set. A first mode for restricting input data and a set of capability information common to the plurality of capability information acquired in step (d) is obtained, and the data input is within the range of the obtained capability information set. Selectively switching between a second mode for restricting input data that can be entered from the field,
further,
(F) A switch for switching the mode in the step (e-1) is displayed on a display device, and input data for operating the switch by the input device is fetched, and the step ( Step for instructing mode switching in e-1)
The gist is to provide.
[0036]
The recording medium of the present invention is
(A) a function for designating a plurality of printers to be distributed;
(B) a function for distributing and outputting print data to be printed to a plurality of printers designated by the function (a);
Is a computer-readable recording medium on which a computer program for controlling distributed printing is realized by a computer,
The computer program further includes:
(C) A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and the input is performed. A function for setting predetermined conditions based on data for the distributed printing;
(D) a function of acquiring capability information about the predetermined condition included in each of the plurality of printers designated by the function (a);
(E) a function of limiting input data that can be input from the data input field within a range determined according to the plurality of capability information acquired by the function (d);
Is realized on a computer,
The function (e) is
(E-1) A set of capability information that is the sum of the plurality of capability information acquired by the function (d) can be obtained and input from the data entry field within the range of the obtained capability information set. A first mode for restricting input data and a set of capability information common to the plurality of capability information acquired by the function (d) is obtained, and the data input is within the range of the obtained capability information set. A function of selectively switching between a second mode for restricting input data that can be entered from the field,
further,
(F) A switch for mode switching by the function (e-1) is displayed on a display device, and input data for operating the switch by the input device is fetched, and the function (e Function for instructing switching of the mode according to -1)
The gist is that the computer is configured to be realized.
[0037]
The distributed printing control method and computer-readable recording medium of the present invention having the above-described configuration have the same operations and effects as the distributed printing control device of the present invention. There is an effect that a favorable print result can be obtained by properly setting the predetermined conditions concerned.
[0038]
Other aspects of the invention
The present invention includes other aspects as follows. The first mode is a mode as a computer program having the same function as the function of the recording medium of the present invention. The second mode is a mode as a data signal embodied in a carrier wave by including the computer program. A 3rd aspect is an aspect as a program supply apparatus which supplies a computer program via a communication path. In the third aspect, the above-described apparatus and method are realized by placing a computer program on a server or the like on a computer network, downloading a necessary program to a computer via a communication path, and executing the program. Can do.
[0039]
DETAILED DESCRIPTION OF THE INVENTION
In order to further clarify the configuration and operation of the present invention described above, embodiments of the present invention will be described based on examples.
[0040]
1. Overall hardware configuration
FIG. 1 is a block diagram showing a schematic configuration of hardware of a computer system to which one embodiment of the present invention is applied. As shown in the figure, the computer system of this embodiment includes a computer 10, in which a plurality of printers 70, 80,... Having substantially computer functions are constructed by a local area network (LAN). Connected via a computer network 90. The computer network 90 can be replaced with various networks such as the Internet, an intranet, and a wide area network (WAN) instead of the LAN.
[0041]
A CRT display 12 as a peripheral device is connected to the computer 10, and another printer 60 is connected locally. The computer 10 also includes a computer main body 16, a keyboard 18, and a mouse 20. A floppy disk drive 24 for reading the contents of the floppy disk 22 is mounted on the computer main body 16.
[0042]
The computer main body 16 includes a ROM 31, a RAM 32, a display image memory 33, a mouse interface 34, a keyboard interface 35, an FDC 36, an HDC 37, a CRTC 38, a printer interface 39, and a network, which are mutually connected by a bus with a CPU 30 as a central processing unit. A control circuit 40 is provided.
[0043]
The ROM 31 is a read-only memory that stores various built-in programs and the like. The RAM 32 is a readable / writable memory for storing various data. The display image memory 33 is a memory for storing image data of an image to be displayed on the CRT display 12. The mouse interface 34 is an interface that manages data exchange with the mouse 20. The keyboard interface 35 is an interface that manages key input from the keyboard 18. The FDC 36 is a floppy disk controller that controls the floppy disk drive (FDD) 24. The HDC 37 is a hard disk controller that controls a hard disk drive (HDD) 41. The CRTC 38 is a CRT controller that controls display of an image on the CRT display 12 based on display image data stored in the display image memory 33. The printer interface 39 is an interface that controls output of data to the printer 14 connected locally. The network control circuit 40 includes a network card and is connected to the computer network 90.
[0044]
In this computer system, the operating system is stored in the HDD 41, and when the computer main body 16 is turned on, it is loaded into a predetermined area of the RAM 32 according to the loader written in the boot block of the HDD 41. The actual printer driver prepared for each model of the printers 60, 70, and 80 is stored in the floppy disk 22 in advance, and is installed in the computer 10 from the floppy disk drive 24 by starting a predetermined installation program. The The installed printer driver is stored in the HDD 41, and is installed in the operating system and loaded into a predetermined area of the RAM 32 when the computer 10 is turned on.
[0045]
The computer system also includes a virtual printer driver (virtual printer driver) 110 that defines information about a virtual printer. The virtual printer driver 110 is stored in the floppy disk 22 in advance like the actual printer driver, and is installed in the computer 10 from the floppy disk drive 24 by starting a predetermined installation program. The installed virtual printer driver 110 is stored in the HDD 41. When the computer 10 is turned on, the installed virtual printer driver 110 is incorporated in the operating system and loaded into a predetermined area of the RAM 32. Note that the computer program of the virtual printer driver 110 is stored in another portable recording medium (portable recording medium) such as a CD-ROM, a magneto-optical disk, or an IC card in place of the computer program stored in the floppy disk 22. It is good also as a structure. The computer program is obtained by downloading program data provided via a computer network from a specific server connected to an external computer network (for example, the Internet) and transferring the program data to the RAM 32 or the HDD 41. You can also
[0046]
The printers 60, 70, and 80 are so-called laser printers that form a latent image by irradiating a photosensitive drum with laser light, develop it with toner, and transfer it onto a sheet. As the printers 60, 70, 80, various printers such as an ink jet printer and a thermal transfer printer can be applied. Here, it is assumed that the printers 60, 70, and 80 are different models.
[0047]
2. Distributed printing process
According to the computer system having such a configuration, roughly, print data to be printed is created by the computer main body 16, and the print data is distributed to the printers 60, 70, and 80 connected to the computer main body 16 and printed. The distributed printing process is performed. The state of such distributed printing processing will be described in detail below.
[0048]
FIG. 2 is a block diagram schematically showing the overall state of the distributed printing process. FIG. 3 is a block diagram showing a state of processing of the virtual printer driver 110 used for distributed printing processing. FIG. 4 is a block diagram showing a processing state of a distributed printing utility program (hereinafter simply referred to as “distributed printing utility”) 120 that realizes a part of the distributed printing processing.
[0049]
As shown in FIG. 2, the application program 100 operating inside the computer main body 16 performs image processing to generate image data, and issues a print command to print the image data. When a print command is issued from the application program 100, the virtual printer driver 110 receives the print command and returns performance information about the virtual printer performance assumed by the virtual printer driver 110 to the application program 100. Specifically, as shown in FIG. 3, the virtual printer driver 110 receives a print command issued from the application program 100 by the print command receiving unit 111 and indicates that the print command has been received. The performance information reply unit 112 received from 111 returns performance information about the performance of the virtual printer to the application program 100.
[0050]
Here, the performance of the virtual printer is the performance of the printer with the highest performance among all the printers that can be distributed. Generally, a high-performance printer performs drawing using a high-level program language. For example, a high-level program language represents a graphic by an advanced drawing command using a mathematical expression or the like, and a low-level program language represents a graphic by a low-level drawing command using a bitmap. Therefore, in this embodiment, the performance of the virtual printer is determined as the performance of the highest printer among all the printers that can be the distribution destination as described above, so that the virtual printer driver 110 follows the high-level program language. Data conversion processing (rendering processing) is possible. That is, as described above, the high-level programming language uses a high-level drawing command, so that the virtual printer driver 110 can realize an efficient rendering process according to the most high-performance printer. ing.
[0051]
A printer that can be a distribution destination is a printer that belongs to a printer group set by the property setting unit 113 among all printers connected to the computer main body 16 locally or via a network. 70 and 80 are applicable.
[0052]
Specifically, the performance information of each printer 60, 70, 80 imported by the distributed printing utility 120 from a printer driver (hereinafter referred to as an actual printer driver) prepared for each model of the printer 60, 70, 80 is used as the performance. The information is input by the information input unit 114, and the virtual printer performance determination unit 115 selects the highest one from the performance information of each of the printers 60, 70, and 80 and uses this as the virtual printer performance information. The performance information reply unit 112 returns the performance information of the virtual printer to the application program 100.
[0053]
The performance information determined by the virtual printer driver 110 is selected from the performance information of each of the printers 60, 70, and 80, instead of the configuration having the highest performance of the printer as in this embodiment. You can also Further, it may be predetermined performance information that does not depend on the performance information of each printer 60, 70, 80.
[0054]
Also, the virtual printer driver 110 sets and stores various information for printing by operating the user interface 116 by the property setting unit 113, and some information among the various information for printing is stored in the above-described manner. It returns to the application program 100 via the performance information reply part 112 with performance information. Various types of information for printing include basic settings for printing such as print quality, color correction, and halftone type, information regarding paper settings such as paper size and printing direction, and printers that specify printers that can be distributed There are information on groups, information on distributed forms in the case of distributed printing, and the like, but here, information other than information on printer groups and distributed forms is sent to the application program 100.
[0055]
The application program 100 receives the performance information and the information, converts the generated image data into print data suitable for a printer (here, a virtual printer) based on the performance information and the information, and after this conversion Are sent to the virtual printer driver 110. This print data conversion process realizes efficient rendering processing as described above, and color conversion and halftone processing realized by the actual printer driver are not performed here.
[0056]
As shown in FIG. 2, the virtual printer driver 110 temporarily stores print data sent from the application program 100 as intermediate print data and a data set in which the intermediate print data is collected in the HDD 41 as an intermediate print file MF. Specifically, as shown in FIG. 3, the print data received from the application program 100 is received by the print data receiving unit 117, and then the print data is used as intermediate print data and the intermediate print data is collected. The set is output to the HDD 41 by the intermediate print data output unit 118. The intermediate print data in the intermediate print file MF is then read by the distributed printing utility 120. The intermediate print file MF can be configured to be stored in the RAM 32 in place of the HDD 41, or can be stored in the floppy disk 22, and can also be another external storage device. The virtual printer driver 110 also performs processing for sending various information set by the property setting unit 113 to the distributed printing utility 120 via the property data output unit 119 as printer property data.
[0057]
As shown in FIG. 2, the distributed printing utility 120 receives intermediate print data and printer property data constituting the intermediate print file MF, and receives the intermediate print data from the printer group included in the printer property data and information regarding the distribution form. Are distributed to the printers 60, 70, and 80 that can be distributed, and sent to the actual printer drivers 130, 140, and 150 provided corresponding to the printers 60, 70, and 80, respectively. Such processing by the distributed printing utility 120 will be described in detail below.
[0058]
As shown in FIG. 4, the distributed printing utility 120 first takes in the intermediate print data constituting the intermediate print file MF by the intermediate print data input unit 121 and sends it from the virtual printer driver 110 by the property data input unit 122. Received printer property data. Next, the allocation determining unit 123 determines the allocation of the intermediate print data based on the information regarding the printer group and the distribution form included in the printer property data. Here, the allocation is to divide the intermediate print data into pages, and to determine the pages each printer 60, 70, 80 belonging to the printer group takes over.
[0059]
The allocation information determined in this way is sent to the output data control unit 124. The output data control unit 124 distributes the intermediate print data fetched by the intermediate print data input unit 121 to the actual printer drivers 130, 140, 150 of the printers 60, 70, 80 based on the allocation information. Output each. The data output to the actual printer drivers 130, 140, 150 is specifically performed through the following operations.
[0060]
First, the printer setting unit 125 performs a process of instructing a setting change via the printer driver to the assigned printer. Next, an output command is issued by the output command output unit 126, and performance information about the performance of the printers 60, 70, 80 returned from the actual printer drivers 130, 140, 150 that have received the output command is obtained. Received by the performance information input unit 127. The output data control unit 124 receives the performance information received from the performance information input unit 127, information about basic print settings included in the printer property data received from the property data input unit 122, information about paper settings, and the like (printer group and distribution). The page to which the intermediate print data is to be allocated is converted into data suitable for the allocation destination printers 60, 70, and 80 (hereinafter, this data conversion process is referred to as a rendering process).
[0061]
The output data control unit 124 sends the converted print data as final print data to the actual printer drivers 130, 140, and 150 via the final print data output unit 128. The actual printer drivers 130, 140, and 150 perform processing such as color conversion and halftone corresponding to each printer, which was not performed by the virtual printer driver, on the final print data, and use the final print data for each printer 60, 70, To 80.
[0062]
Furthermore, the distributed printing utility 120 includes a printer monitoring unit 129 that monitors the status of each printer 60, 70, 80 based on signals from the actual printer drivers 130, 140, 150. The printer monitoring unit 129 monitors the degree of congestion of each printer and the error state of the printer (including not only a failure but also a paper jam, a paper out state, etc.). The output data control unit 124 receives the signal from the printer monitoring unit 129, and when outputting the distributed print data, the output destination is changed or the output destination is canceled for a printer that is busy or in an error state. Process.
[0063]
Note that the performance information of each printer 60, 70, 80 sent from the actual printer driver 130, 140, 150 is used by the distributed printing utility 120 as described above, and is virtualized via the performance information output unit 12a. Also sent to the printer driver 110.
[0064]
3. Virtual printer driver
Next, how the operating system changes when the virtual printer driver 110 is installed in the computer 10 will be described. In this description, Windows 95 (trademark of Microsoft Corporation) will be described as an example of an operating system on which the virtual printer driver 110 operates.
[0065]
The user (operator) operates the computer 10 as follows to open a dialog box for setting various information for printing on the screen of the CRT display 12. That is, a “printer” window is opened by performing an operation of [start] → [setting] → [printer]. FIG. 5 is an explanatory diagram showing this “printer” window. When the virtual printer driver 110 is installed in the computer 10, as shown in the figure, the “printer” window WN 1 displays the icon IC 1 of the actual printer driver 130, 140, 150 prepared for each model of the printer 60, 70, 80. , IC2 and IC3, an icon IC4 labeled “distributed printing” corresponding to the virtual printer driver 110 is displayed. That is, when the virtual printer driver 110 is installed in the same manner as the actual printer driver, the icon IC4 corresponding to the virtual printer driver 110 is displayed in the “printer” window WN1.
[0066]
Note that a “distributed printing” icon IC4 corresponding to the virtual printer driver 110 on the “printer” window is double-clicked to open a window for the virtual printer driver 110, and then [Printers] → When the [Property] operation is performed, a "distributed printing property" dialog box for setting various information about the virtual printer is displayed. The operator can input various setting information by operating the mouse 20 and the keyboard 18 in accordance with the “distributed printing property” dialog box. The “distributed print property” dialog box corresponds to the user interface 116 described above.
[0067]
4). User interface
FIG. 6 is an explanatory diagram illustrating a dialog box WN2 of “distributed printing properties”. As shown in the figure, in the “distributed printing property” dialog box WN2, two types of cards CD1 and CD2 of “distributed setting” and “printer” are prepared. The “distribution setting” card CD1 is used to set information related to the distribution mode in the case of distributed printing. The “printer” card CD2 is for setting information relating to a printer group that can be a distribution destination, information relating to paper settings, information relating to basic settings for printing, and the like. Either one of the cards CD1 and CD2 is selected by the operator by operating the mouse 20, and is displayed in the dialog box WN2. FIG. 6 illustrates a state in which the “distribution setting” card CD1 is displayed. The grouping of the contents of the cards CD1 and CD2 is not limited to the above example, and may be configured to include all the contents with one card, or may be divided into three or more cards more finely. It is good.
[0068]
As shown in the figure, the “distribution setting” card CD1 is provided with three fields fd1, fd2, and fd3 of “document”, “recovery”, and “designated date”. The “document” field fd1 is for setting the print form of the document. The data input field id1 for “number of copies”, the check box id2 for “print in units of copies”, and “combined in units of copies and pages”. Check box id3, a data input field id4 for "how to organize jobs", and a data input field id5 for "separator page". Each data entry field (including check boxes, the same applies hereinafter) id1 to id5 is designed with the following specifications.
[0069]
1) Data entry field id1: “Number of copies”
Enter the number of copies to print. The content set by the application program 100 is input as a default.
2) Check box id2 of “Print by copy”:
When this check box id2 is on, collate printing is performed, and when it is off, stack printing is performed. Here, collation printing is output in units of copies, and each portion is output in page order. Stack printing is output in units of pages, and each page is output by the number of copies. That is, when the check box id2 is on, printing is performed in units of copies, and when the check box id2 is off, printing is performed in order of pages.
[0070]
3) Check box id3 of “Group by page, page”:
When the check box id3 is on, the set of the unit or page is prohibited from being printed across a plurality of printers. When the check box id3 is off, the set is printed across a plurality of printers. Allow to be done. Note that when the check box id3 is off, that is, “do not collect in units of pages”, the performance (print speed of the printer) is set so that printing is completed almost simultaneously on all the destination printers. Hereinafter, the number of sheets allocated to each printer is changed according to the printing speed performance). The state of operation in which the number of sheets assigned to each printer is changed in accordance with the printing speed performance information is hereinafter referred to as “speed priority mode”, which will be described in detail later.
[0071]
4) Data input field id4 of “How to organize jobs”:
When the “printer unit” radio button in the data input field id4 is selected, all pages output from one printer are handled as one unit. When this radio button is selected, the shared printers 70 and 80 connected to the network are not mixed with the print results of other users. On the other hand, when the radio button of “unit, page number unit” is selected, a set of the above unit units or page units is treated as one unit. This is used when distributed to the local printer 60 or when there is no problem even if it is mixed with print results of other users.
[0072]
5) Data input field id5 of “separator page”:
The separator page is a page provided at the beginning or end of the group so that it can be discriminated when the print result of another user is mixed in the unit of the group. When the “top” check box is clicked, a separator page is printed at the top position of the group. When the “end” check box is clicked, a separator page is printed at the end position of the group. Note that the name of the document to be printed, the number of copies, the number of pages, the user name, and the like are printed on the separator page.
[0073]
In addition to the data input fields id1 to id5, the “document” field fd1 is provided with a distributed form display field dd representing a distributed form determined by the setting contents of the data input fields id1 to id5. Yes. This distributed form display field dd indicates what kind of distributed form is determined by the setting contents of the data input fields id1 to id5 as an illustration image.
[0074]
Next, how the illustration image of the distributed form display field dd is determined depending on the setting contents of the data input fields id1 to id5 will be described with reference to FIGS. First, how the illustration image is determined by the data input field id1 of “number of copies”, the check box id2 of “print in units of copies”, and the check box id3 of “collect in units of pages” will be described.
[0075]
FIG. 7 is an explanatory diagram showing how the illustration image in the distributed form display field dd changes depending on the setting contents of the data input field id1 and the two check boxes id2 and id3. In the illustrated table, the column is determined by whether or not printing is performed in units of copies, that is, whether the check box id2 of “printing in units of copies” is in an on state or in an off state, and a row is a section, a page It is determined by whether or not the data is not grouped, that is, whether or not the check box id3 of “group by page, page” is in an off state or an on state. This table is an example when the number of copies set from the “number of copies” data input field id1 is four.
[0076]
In the case of “print in units of copies” and “do not collect in units of pages and pages”, as shown in the cell C11 in the first row and first column in the table, the first unit (this order will be described later) The order is in accordance with the priority order assigned to each printer (hereinafter, the same applies to the second and third printers). The second page 70 is printed, the second page of the second part, the first page and the second page of the third part are printed, and the third printer 80 is printed with the first page. An illustration image indicating that four copies of the first page and the second page are to be printed is displayed.
[0077]
In the case of “Do not print in units of copies” and “Do not collect in units of pages and pages”, as shown in the cell C12 in the first row and second column in the table, stack printing is performed. The first printer 60 prints three copies of the first page, and the second printer 70 prints the remaining number of required copies of the first page and two copies of the second page. The third printer 80 Is displayed with an illustration image indicating that the required number of remaining copies of the second part is printed.
[0078]
In the case of “printing in units of copies” and “combining in units of pages and pages”, as shown in the cell C21 in the second row and first column in the table, the first printer 60 is one unit. Is prohibited from passing to a plurality of printers, the first page of the first part to the second page of the second part are printed, and the second printer 70 has the first page of the third part and the second page. Two pages are printed, and the third printer 80 displays an illustration image indicating that the first and second pages of the fourth part are printed.
[0079]
In the case of “do not print in units of copies” and “combine in units of pages and pages”, the first printer 60 has the first printer 60 as shown in the cell C22 in the second row and second column in the table. One page is printed for the required number of copies, and the second printer 70 displays an illustration image indicating that the second page is printed for the required number of copies.
[0080]
The example shown in the cells C11 and C12 in the first row in the table of FIG. 7 is for the case where the distribution destination printers 60, 70, and 80 have substantially the same printing speed performance. Since the printing speed performance of each printer 60, 70, 80 is the same, the number of sheets allocated to each printer is almost equal. On the other hand, when the printing speed performance of the distribution destination printers 60, 70, and 80 is different, the number of sheets assigned to each printer is different depending on the printer model. This is because the allocation of distribution is determined by “speed priority”. For example, if the printing speed performance of the first printer 60 is 20 ppm (Page Per Minute), the printing speed performance of the second printer 70 is 40 ppm, and the printing speed performance of the third printer 70 is 40 ppm, The performance ratio of the printing speed of each printer 60, 70, 80 is 1: 2: 2. When allocating the distribution in the speed priority mode (that is, when “does not group by page,” which corresponds to the first row in the table), the number of sheets allocated to each printer is determined to match this performance ratio. It is done. By doing so, the printers 60, 70, and 80 can finish printing as simultaneously as possible.
[0081]
FIG. 8 is an explanatory diagram showing an example of the case where the distribution allocation is determined in the speed priority mode. An example in which a document composed of 5 pages is distributed to 4 copies and 3 printers 60, 70, 80 will be described. The printing speed performance of each printer 60, 70, 80 is assumed to be 20 ppm, 40 ppm, and 40 ppm as described above. In such a case, since the total number of pages to be printed is 20, the number of pages allocated to the first printer 60 is 4 pages from the performance ratio (1: 2: 2) of each printer 60, 70, 80. The number of pages allocated to the second and third printers 70 and 80 is 8 pages. Accordingly, in the case of “printing in units of copies”, as shown in FIG. 8, the first printer 60 prints the first page from the first page to the fourth page in a collaborative manner. The fifth printer of the first part, the first page to the fifth page of the second part, and the first and second pages of the third part are printed on the third printer 80. In this case, the third page from the third page to the fifth page and the fourth part from the first page to the fifth page are printed. Even in the case of “not printing in units of copies”, in the stack printing, the printers 60, 70, and 80 are similarly assigned according to the performance ratio (1: 2: 2) of the printers 60, 70, and 80. The number of pages to be set is determined.
[0082]
In this embodiment, in the case of “not grouped in units of pages” in the first row in the table of FIG. 7, the distribution allocation is determined in the speed priority mode as described above. On the other hand, in the case of “combined in units of pages,” in the second row of the table of FIG. 7, distribution is performed with “handling priority” (hereinafter referred to as “handling priority mode”). Called). FIG. 9 is an explanatory diagram showing an example when distribution allocation is determined in the handling priority mode. In the handling priority mode, collection is made in units of copies and pages, that is, a set of units is distributed so as not to be divided into a plurality of printers, thereby facilitating collection from the printer. FIG. 9 illustrates a case where a document composed of five pages is distributed to four copies and three printers 60, 70, and 80, as in the example shown in FIG. As shown, The first printer 60 includes The first to fifth pages of the first part are printed by collation, and the second printer 70 has In collation The second page, the first page to the fifth page, and the third part, the first page to the fifth page, are printed, and the third printer 80 prints the fourth page, the first page to the fifth page. Will be. In the example of FIG. 9, the second printer 70 is configured to accept two copies, because this is the handling priority mode but also the speed priority mode. In order to achieve the above-described 1: 2: 2 performance ratio in the speed priority mode, the first printer 60 is set to 1 copy, the second printer 70 is set to 2 copies, and the third printer 80 is set to 2 copies. Since there is no remaining number of copies, one copy will be accepted.
[0083]
On the other hand, even in the case of “combined in units of pages,” in the second row in the table of FIG. 7, it is possible to adopt a configuration that is in the handling priority mode but not the speed priority mode. In this case, although the handling priority mode prohibits a set of copies and page units from being transferred to a plurality of printers, the number of sheets handled by each printer is equal regardless of the speed performance of each printer. When the number of copies is not evenly divisible by the number of destination printers as in the examples of FIGS. 8 and 9, the number of copies is increased from the first printer side. For example, four copies of a 5-page document When distributed to three printers, the first printer 60 accepts two copies, the second printer 70 accepts one copy, and the third printer 80 accepts one copy.
[0084]
As described above, in the case of “combined in units of pages” in the second row in the table of FIG. 7, the handling priority mode is the speed priority mode, and the speed priority mode is not the handling priority mode. Two states can be taken: In this embodiment, the switching between the two states is performed according to the setting contents of the data input field id4 of “How to summarize jobs”. When the “printer unit” radio button in the data input field id4 is selected, all pages output from one printer are treated as one unit, so that the printing speed performance of each printer is taken into consideration. When the speed priority mode is selected and the radio button of “unit, page number unit” is selected in the data input field id4, each set of units or page units is treated as one unit. Don't take priority mode. When the “copy, page number unit” radio button in the data input field id4 is selected, one copy of the paper is left for each available printer regardless of the printing speed performance of each printer, and the remaining number of copies is set. They are assigned in order from the printer that matches.
[0085]
Next, how the illustration image determined from the setting contents of the data input fields id1 to id3 changes depending on the data input field id4 of “How to assemble jobs” and the data input field id5 of “separator page” will be described. FIG. 10 is an explanatory diagram showing how the illustration image in the distributed form display field dd is determined by the data input fields id4 and id5. An example of the illustration image shown in FIG. 10 corresponds to the setting contents of the data input fields id4 and id5 when the illustration image is determined as shown in the cell C11 in FIG. 7 by the contents of the data input fields id1 to id3. It also shows how it changes.
[0086]
In the table of FIG. 10, the column is determined depending on which radio button “unit of printer” or “unit of page number” is selected in the data input field id4 of “how to organize jobs”. It is determined by how both the “start” and “end” check boxes are designated in the data input field id5 of “page”.
[0087]
When the “printer unit” radio button is clicked in the data input field id4 of “job grouping”, as shown in the cell CE11 in the first row and the first column in the table, the cell C11 in FIG. And the illustration image does not change, and all pages printed from one printer are combined. On the other hand, when the “unit, page number unit” radio button is clicked, as shown in the cell CE12 in the first row and the second column, a set of units or pages is grouped, It is divided once between the unity. Actually, when the “printer unit” radio button is clicked and when the “copy, page number unit” radio button is clicked, the same print result is obtained because there is no separator page.
[0088]
When it is determined that there is a separator page from the data input field id5 of "separator page", as shown in the second, third, and fourth lines in the table, the first line An illustration image is determined in such a way that a separator page (black portion in the figure) is inserted at the head, tail, or both for the grouped sections. The illustration image determined by this table is displayed in the distributed form display field dd.
[0089]
Returning to FIG. 6, the “recovery” field fd <b> 2 is for designating a recovery destination when recovery is performed by another printer when an error occurs in a printer that performs distributed printing. The “recovery” field fd2 is provided with three radio buttons “not recover”, “designate an output destination”, and “automatically select a recovery destination”. When the “Do not recover” radio button is selected, recovery is not performed even if an error occurs in a printer that performs distributed printing. When the “designate output destination” radio button is selected, the output destination input from the data input field of “printer” is set as the recovery destination. When the “automatically select recovery destination” radio button is selected, the printer of the same model as the printer in which the error has occurred is set as the recovery destination. If there is no printer of the same model, a free printer is the recovery destination.
[0090]
The “designated date / time” field fd3 is used to designate the printing time. When the “designated date / time” check box is designated, printing starts at the time entered from the “designated date / time” column. Is done.
[0091]
Next, the “printer” card CD2 displayed in the “distributed printing property” dialog box WN2 will be described with reference to FIG. As illustrated, the “printer” card CD2 is provided with a “printer group” field fd4, a “candidate selection” field fd5, a “paper setting” field fd6, and a content display field fd7. .
[0092]
The “printer group” field fd4 is for designating a group which is a set of printers for printing a document in a distributed manner. The “group name” data entry field id11, the “comment” display field id12, and the “printer” "Display column id13," number of units used "display column id14," group setting "button id15, and the like. A group that is a set of printers is called a printer group, but may be simply called a group hereinafter.
[0093]
The “group name” data entry field id11 is for setting the name of the group. When the button id11a with the inverted triangle mark on the right end is clicked, a pull-down menu (see FIG. 21) is opened. In this pull-down menu, a plurality of group names are prepared in advance as options. The operator can set a desired group name in the data input field id11 by clicking one of the options displayed in the pull-down menu using the mouse 20.
[0094]
The “comment” display field id12 is for displaying a comment set in the group currently selected in the “group name” data input field id11. The “printer” display column id13 displays the printer names belonging to the group currently selected in the “group name” data input column id11. The “used number” display column id14 displays the number of printers used when distributed printing is executed.
[0095]
The “group setting” button id15 is a switch for starting execution of operations such as creating a new group and changing the setting of an existing group. Hereinafter, the work of creating a new group will be described. When the “group setting” button id 15 is clicked by the operation of the mouse 20 by the operator, a “group list” dialog box is first displayed on the CRT display 12.
[0096]
FIG. 12 is an explanatory diagram showing a “group list” dialog box WN3. As shown in the figure, the “group list” dialog box WN3 is provided with a “list list” display field id21 and buttons id22, id23, and id24 such as “add”, “edit”, and “delete”. . The “list” display field id21 displays an existing group. The “add” button id22 is used to create a new group. This button id2 2 Is clicked by operating the mouse 20, a “group setting” dialog box is displayed on the CRT display 12.
[0097]
FIG. 13 is an explanatory diagram showing a “group setting” dialog box WN4. As shown in the figure, the “group setting” dialog box WN 4 includes a “group name” data input field id 31, a “comment” data input field id 32, a “belonging printer” display field id 33, and a “non-belonging printer”. Display column id34 and the like.
[0098]
The “group name” data input field id31 is for inputting the name of a group which is a group of printers. The “comment” data input field id32 is used to input a description of the group. The “belonging printer” display field id33 is for displaying the printers belonging to the group. The display column id 34 for “unassigned printer” is used to display a printer name that does not belong to this group among a number of printer names prepared in advance.
[0099]
The operator selects a desired printer name from the printer names displayed in the display field id 34 of “not affiliated printer”, and clicks the “add” button id 35, so that the selected printer name is “affiliated”. To the display column id33 of “Printer to be performed”. As illustrated in FIG. 13, printer names for eight printers are displayed in the display column id <b> 34 of “non-belonging printer”. When three printers “LP-100”, “LP-200”, and “LP-300” are selected from this state and the “add” button id35 is clicked, as illustrated in FIG. The printer names of these three printers are shifted and displayed in the display column id33 of “Affiliated Printer”.
[0100]
It should be noted that the priority of each printer having the printer name displayed in the “belonging printer” display field id33 is determined according to the display order. The printer name displayed at the top has the highest priority, and the lower the position, the lower the priority. The order of the displayed printer names is the same as the order of transition to the “belonging printer” display field id33. By selecting the printer names displayed one by one in the display column id34 of “not affiliated printers” and clicking the “add” button id35, the process proceeds to the display column id33 of “belonging printers” one by one. As a result, the order of the printers displayed in the display column id33 of “belonging printer”, that is, the priority order for each printer can be determined. The priority assigned to each printer is used when allocating distributed printing.
[0101]
The “delete” button id 36 is used when it is desired to delete a desired printer name from the printer name displayed in the display column id 33 of “belonging printer”.
[0102]
A plurality of printers are assigned to the group by the operation using the “group setting” dialog box WN4 as described above. The assigned result is stored in the RAM 32 as group registration list data. FIG. 15 is an explanatory diagram showing an example of the group registration list data PD. As shown in the figure, one or more group names are stored in the group registration list data PD, and one or more printer names and comments are stored in association with each group name.
[0103]
The group name displayed in the “list list” display field id21 of the “group list” dialog box WN3 is determined based on the group name data stored in the group registration list data PD. Returning to FIG. 11, the contents of the “group name” data input field id11, “comment” display field id12, and “printer” display field id13 provided in the “printer group” field fd4 are the group registration list data PD. , That is, the contents registered in the “group list” dialog box WN3 and the “group setting” dialog box WN4 above the printer. As a result, the pull-down menu opened from the “group name” data input column id11 shows the group name registered in the “group list” dialog box WN3, the “comment” display column id12, and the “printer” display. As the content of the column id13, the content registered in the “group setting” dialog box WN4 is displayed.
[0104]
A “candidate selection” field fd5 is a “paper setting” field fd. 6 Are to be restricted in two modes of “function priority” and “speed priority”. Specifically, a radio button BT1 corresponding to the “function priority” mode and a radio button BT2 corresponding to the “speed priority” mode are provided, and when one of the radio buttons BT1 and BT2 is clicked, The data input is restricted in the “function priority” mode or the “speed priority” mode. Note that the “paper setting” field fd depends on the mode. 6 How the data input is specifically restricted will be described in detail later.
[0105]
The “paper setting” field fd6 is for setting paper and print quality, and sets “paper size”, “paper orientation”, “double-sided printing”, “paper type”, “color”, and “resolution”. Data input fields id41, id42, id43, id44, id45, id46 to be set are provided.
[0106]
The “paper size” data entry field id41 is used to set the paper size to be used together with the type of paper. When the button id41a with the inverted triangle mark on the right end is clicked, a pull-down menu (see FIG. 22) is selected. ) Is opened, and a plurality of paper sizes are prepared in advance as options in this pull-down menu. These options are, for example, “A4 210 × 297 mm”, “A4 width 210 × 297 mm”, “Western envelope 120 × 235”, “postcard 100 × 147 mm”, and the like.
[0107]
The “paper direction” data input column id 42 indicates the paper setting direction in the printer, and “vertical” and “horizontal” can be selected. The data input field id43 for “double-sided printing” is composed of check boxes for designating whether or not double-sided printing is performed. When this check box is clicked, it is assumed that double-sided printing is performed, and only a printer having a double-sided printing function is used for distributed printing.
[0108]
The “paper type” data input field id 44 is used to set the paper type, and “plain paper”, “super fine paper”, and “exclusive glossy paper” are provided as options. The “color” data input field id 45 is used to set the type of ink used for the printer 14, and “color” and “monochrome” are prepared as options. The “resolution” data input field id 46 is used to set a resolution for printing, and two types of “fast” and “beautiful” are prepared as options. Here, “fast” and “clean” indicate, for example, resolutions of 360 × 360 (dot) and 720 × 720 (dot) in this order.
[0109]
The content display field fd7 is a “printer group” field fd. 4 And desired data among the contents set from the “paper setting” field fd5.
[0110]
In accordance with the “distributed printing property” dialog box WN2 configured as described above, the operator operates the mouse 20 and the keyboard 18 to obtain information related to the distributed form in the case of distributed printing and the printer group that can be the distribution destination. Various types of setting information such as related information, information on paper settings, and information on basic settings for printing are input to the computer main body 16.
[0111]
5. Computer program
Each unit 111 to 119 realized by the virtual printer driver 110 illustrated in FIG. 3 is actually realized by the virtual printer driver 110 which is a computer program and various processes executed by the CPU 30 in accordance with the virtual printer driver 110. . Also, each unit 121 to 129 realized by the distributed printing utility 120 shown in FIG. 4 is actually realized by the distributed printing utility 120 which is a computer program and various processes executed by the CPU 30 according to the distributed printing utility 120. ing.
[0112]
Similar to the virtual printer driver 110, the distributed printing utility 120 is stored in the floppy disk 22 in advance, and is installed in the computer 10 from the floppy disk drive 24 by starting a predetermined installation program. The installed distributed printing utility 120 is stored in the HDD 41. When the computer 10 is turned on, it is incorporated into the operating system and loaded into a predetermined area of the RAM 32. Note that the distributed printing utility 120 is replaced with one stored in the floppy disk 22 in the same way as the virtual printer driver 110, and other portable recording media (portable recording medium) such as a CD-ROM, a magneto-optical disk, and an IC card. It is good also as a structure stored in the medium. The distributed printing utility 120 is obtained by downloading program data provided via a computer network from a specific server connected to an external computer network (for example, the Internet) and transferring the program data to the RAM 32 or the HDD 41. It can also be done.
[0113]
FIG. 16 is a flowchart showing a processing routine described by the virtual printer driver 110 together with a processing routine described by the application program 100. As shown in the figure, the CPU 30 of the computer main body 16 first shifts the processing to the application program 100, and performs processing for image processing to create image data (step S210). The application program 100 is a general-purpose application program for creating documents, pictures, etc., and image data is created using functions specific to each application program.
[0114]
Next, the CPU 30 executes a process of issuing a print command for performing distributed printing by executing a [print] command provided in the created application program (step S220). FIG. 17 is an explanatory diagram showing an example of a “print” dialog box WN6 displayed on the CRT display 12 when the [print] command is operated on the application program 100. As shown in the drawing, the “print” dialog box WN6 is provided with a data input field id51 of “printer name”. In the state where the “distributed printing” character string corresponding to the “distributed printing” icon IC4 described in FIG. 5 is selected and input in the “printer name” data input field id51, the “OK” button id52 is a mouse. When clicked by 20, a print command for performing the distributed printing is issued from the application program 100 to the virtual printer driver 110 via the operating system. When the “property” button id 53 is clicked with the mouse 20 in the “print” dialog box WN6, the process moves to the distributed information setting routine according to the virtual printer driver 110, and the “distributed print property” dialog box WN2 is displayed. Is displayed on the CRT display 12 and the input data from the keyboard 18 and the mouse 20 is read to perform processing for setting various information related to distributed printing.
[0115]
Here, a process for setting various information related to distributed printing using the “distributed printing property” dialog box WN2 will be described in detail. FIG. 18 is a flowchart showing a shared information setting routine executed by the CPU 30. As shown in the figure, when the processing is started, the CPU 30 first displays the “distributed printing property” dialog box WN2 shown in FIG. 6 on the CRT display 12 (step S610). Next, in this dialog box WN2, the CPU 30 determines which of the “distribution setting” card CD1 and the “printer” card CD2 is active (step S620). If it is determined that the “distribution setting” card CD1 is in an active state, the process proceeds to step S630.
[0116]
In step S630, the CPU 30 performs a process of inputting various data in response to a data input operation using the keyboard 18 and the mouse 20 by an operator who has viewed the display screen of the CRT display 12. The various data input here is data that can be input from the “distribution setting” card CD1 shown in FIG. 6, and corresponds to information regarding the distribution form of distributed printing. Thereafter, the CPU 30 stores the various data input in step 303 in the RAM 32 as a part of the printer property data (step S640). Thereafter, the process returns to “RETURN” to end the processing of this routine.
[0117]
On the other hand, if it is determined in step S620 that the “printer” card CD2 is in an active state, the process advances to step S650 to execute a data input processing routine using the “printer” card CD2. Although details of this data input processing routine will be described later, information relating to a printer group that can be input from the “printer” card CD2, information relating to paper settings, information relating to basic settings for printing, and the like are input by this data input processing routine. Will be. Thereafter, the CPU 30 stores the various data input in step 650 in the RAM 32 as a part of the printer property data (step S660). Thereafter, the process returns to “RETURN” to end the processing of this routine.
[0118]
Next, the data input processing routine executed in step S650 will be described in detail. 19 and 20 are flowcharts showing the data input processing routine. When the processing moves to step S650 of the shared information setting routine and the execution of this data input processing routine is started, the CPU 30 first inputs input data in accordance with the input operation of the keyboard 18 and mouse 20 by the operator as shown in FIG. Is read (step S710). Next, from this input data, it is determined whether or not the button id 11a provided in the data input field id11 of “group name” has been clicked with the mouse 20 (step S720). If it is determined that the button is clicked, the following processing is executed.
[0119]
First, the CPU 30 performs processing for displaying a pull-down menu MN1 for inputting a group name on the CRT display 12 (step S730). FIG. 21 is an explanatory diagram showing an example of a group name input pull-down menu MN 1 displayed on the CRT display 12. As shown in the figure, this pull-down menu MN1 is displayed immediately below the data input field id11 of “Group name”. This pull-down menu MN1 shows a plurality of group names as options. In step S730, in detail, the options shown in the pull-down menu MN1 are determined based on the contents of the group registration list data PD stored in the RAM 32, and then displayed on the CRT display 12.
[0120]
Next, in response to the click operation of the mouse 20 by the operator, the CPU 30 performs a process of selecting one group name from the pull-down menu MN1 (step S740). Thereafter, the printer names belonging to the group of the selected group name are obtained from the group registration list data PD stored in the RAM 32, and these printer names are temporarily stored in the temporary area of the RAM 32, and the “printer” card is also stored. The display process is performed in the “printer” display field id13 of CD2 (step S750). As a result, as illustrated in FIG. 22, printers belonging to the group having the group name set in the “group name” data input field id 11 are displayed in the “printer” display field id 13.
[0121]
Thereafter, the CPU 30 performs a process of reading performance information about the printer of each printer name stored in the RAM 32 in step S750 (step S760). Here, the performance information is information on the printable paper size, printable paper type, double-sided printing availability, and the like, and is fetched from the actual printer driver for each printer model loaded in advance in the RAM 32. Can do. After execution of step S760, the process returns to “RETURN”, and this data input processing routine is temporarily terminated.
[0122]
On the other hand, if a negative determination is made in step S720, the CPU 30 advances the process to step S770 in FIG. In step S770, it is determined from the input data read in step S710 whether or not the button id 41a provided in the “paper size” data input field id 41 of the “printer” card CD2 has been clicked with the mouse 20 (step S770). ). If it is determined that the button has been clicked, the following processing is executed.
[0123]
First, the CPU 30 performs a process of detecting the printable paper size of each printer from the performance information of each printer captured in step S760 (step S780). Next, the CPU 30 determines whether or not the “function priority” mode is selected in the “candidate selection” field fd5 of the “printer” card CD2 (step S790). This determination is made according to which one of the radio button BT1 corresponding to the “function priority” mode and the radio button BT2 corresponding to the “speed priority” mode is selected.
[0124]
If it is determined in step S790 that the “function priority” mode is set, a process of obtaining the total printable paper size of each printer detected in step S780 (ie, OR process) is performed (step S800). For example, when the printable paper sizes of the printers 60 and 70 are “B5” and “A4” and the printable paper sizes of the printer 80 are “B5”, “A4”, and “A3”, “ The paper sizes “B5”, “A4”, and “A3” are obtained in step S800.
[0125]
On the other hand, if it is determined in step S790 that the mode is not the “function priority” mode, that is, the “speed priority” mode, the printable paper size detected in step S780 is common to each printer. Processing for obtaining the paper size (that is, AND processing) is performed (step S810). For example, when the printable paper sizes of the printers 60 and 70 are “B5” and “A4” and the printable paper sizes of the printer 80 are “B5”, “A4”, and “A3”, “ The paper sizes “B5” and “A4” are obtained in step S810.
[0126]
After execution of step S800 or S810, the CPU 30 advances the process to step S820 to display a paper size input pull-down menu MN2 on the CRT display 12. FIG. 22 is an explanatory diagram showing an example of a pull-down menu MN2 for inputting a paper size displayed on the CRT display 12. As shown in the figure, this pull-down menu MN2 is displayed immediately below the data input field id41 of “paper size”. In this pull-down menu MN2, the paper size obtained in step S800 or S810 is displayed as an option.
[0127]
As a result, as shown in FIG. 22, when the “function priority” mode is selected in the “candidate selection” field fd5, the currently selected group is displayed in the paper size input pull-down menu MN2. For example, the paper sizes of “B5”, “A4”, and “A3” that are the total printable paper sizes of the printers belonging to the printer (that is, the printers displayed in the “printer” display field id13) are available as options. Will be displayed.
[0128]
On the other hand, as shown in FIG. 23, when the “speed priority” mode is selected in the “candidate selection” field fd5, the paper size input pull-down menu MN2 includes the currently selected group. Among the printable paper sizes of each printer to which the printer belongs (that is, each printer displayed in the display column id13 of “Printer”), for example, the paper sizes of “B5” and “A4” are options that are common to each printer. Will be displayed.
[0129]
When the display in the “speed priority” mode illustrated in FIG. 23 is compared with the display in the “function priority” mode illustrated in FIG. 22, the paper size “A3” is excluded from the options. Become. As another aspect of this embodiment, the options to be excluded can be displayed in a grayed-out manner. Gray down means that the density of the displayed character is reduced, so that the character can be identified but cannot be selected by the mouse 20. According to such a configuration, it is possible to know which condition cannot be set because the printer has no function.
[0130]
Returning to FIG. 20, after step S820 is executed, the CPU 30 performs a process of selecting one paper size from the pull-down menu MN2 in response to a click operation of the mouse 20 by the operator (step S830). As a result of this processing, the selected paper size is set in the data input field id41 of “paper size”. Thereafter, the set sheet size is temporarily stored in the temporary area of the RAM 32 (step S840).
[0131]
Thereafter, the CPU 30 prints the one paper size in each printer belonging to the currently selected group by comparing the one paper size stored in step S840 with the paper size of each printer detected in step S780. An impossible model is selected, and for the printer of that model, the display of the “printer” display field id13 is grayed out (step S850).
[0132]
As illustrated in FIG. 24, if the paper size “A3” is set in the data input field id 41 of “paper size”, the printer name “A3” is displayed in the printer name displayed in the “printer” display field id 13. The display of the printer names of printers with a paper size of “LP-100” and “LP-200” that cannot be printed is grayed out. Note that the process of step S840 may be executed only in the “function priority” mode. In the “speed priority” mode, only the paper size condition common to the printers is set, so the processing in step S840 is not necessary. According to such a configuration, the operator can immediately know a printer that is not subjected to distributed printing. After execution of step S7850, the process returns to “RETURN”, and the data input processing routine is temporarily terminated.
[0133]
On the other hand, if a negative determination is made in step S770, the CPU 30 advances the process to step S860 to input data from the other data input column of the “printer” card CD2 (step S860). Input data obtained as a result of this data input is temporarily stored in the temporary area of the RAM 32. Thereafter, the process returns to “RETURN”, and the data input processing routine is temporarily terminated.
[0134]
This data input processing routine is started when the process proceeds to step S650 of the shared information setting routine, but is repeatedly executed every time there is data input from various data input fields provided on the “printer” card CD2. . Thereafter, when there is data input for clicking the “OK” button BTOK at the bottom of the “distributed printing property” dialog box WN2, this data input processing routine is ended. When this data input processing routine is completed, the CPU 30 advances the processing to step S660 in FIG. 18, and the various input data stored in the temporary area of the RAM 32 in the data input processing routine are part of the printer property data. Is stored in the RAM 32. As a result, information relating to the printer group, information relating to paper settings, and information relating to basic printing settings are input to the computer main body 16 from the “printer” card CD2.
[0135]
In this embodiment, the options that can be set in the data input column id 41 of “paper size” that is the printing condition are limited according to the performance of each printer that belongs to the currently selected group. Further, according to the flowchart (not shown), the input to the data input field id 43 for “double-sided printing” is also limited in accordance with the performance of each printer belonging to the currently selected group. That is, in the case where at least one of the printers belonging to the currently selected group has the duplex printing function, in the “function priority” mode, the data input field id 43 of “double-sided printing” is used. “Speed priority” mode is set so that data can be input (that is, the OR of each printer's capability information, that is, two-sided printing conditions and two-sided printing conditions can be input). In some cases, the data input from the data input field id 43 for “double-sided printing” is made impossible (that is, only the condition of double-sided printing that is AND of the capability information of each printer can be input). Specifically, the “print on both sides” dialog box, which is the data entry field id 43, is in a state where input is possible in the “function priority” mode, and grayed out in the “speed priority” mode and cannot be input. And
[0136]
As described above, when various information related to distributed printing is set using the “distributed printing property” dialog box WN2, as described above, “OK” in the “printing” dialog box WN6 is set. In response to the button id 52 being clicked by the mouse 20, a print command is issued in step S220 of FIG. If the “OK” button id 52 is clicked immediately by the mouse 20 without clicking the “property” button id 53, the printer property data (stored in the RAM 32 when the distributed information setting routine was executed last time ( In the first case, the initial printer property data (prepared in advance) remains as it is.
[0137]
When the print command is issued in step S220, the CPU 30 moves the process to the virtual printer driver 110 and performs a process of determining whether or not the print command is taken from the process by the application program 100 (step S310). If it is determined that the print command has not been fetched, the discrimination process in step S310 is repeatedly executed to wait for the print command from the application program 100 to be fetched. On the other hand, when it is determined in step S310 that the print command has been fetched, the following processing is executed.
[0138]
First, the CPU 30 uses the distributed printing utility 120 to obtain the performance information of each printer 60, 70, 80 fetched by the distributed printing utility 120 from the actual printer drivers 130, 140, 150 prepared for each model of the printer 60, 70, 80. (Step S320). Thereafter, the CPU 30 extracts the highest one from the performance information of each of the printers 60, 70, 80, and determines this as the performance information of the virtual printer (step S330). Thereafter, the CPU 30 sends the performance information of the virtual printer to the application program 100 (step S340).
[0139]
When the performance information of the virtual printer is sent from the virtual printer driver 110, the CPU 30 moves the process to the application program 100 and takes in the performance information of the virtual printer (step S240). Next, the CPU 30 performs the performance information, information on basic printing settings and information on paper settings included in the printer property data stored in the RAM 32 in the above-described distributed information setting routine (excluding information on printer groups and distribution forms). Based on the above, the image data created in step S210 is converted into print data suitable for the virtual printer (step S250). Thereafter, the converted print data is sent to the virtual printer driver 110 (step S260). CPU30 complete | finishes the process routine of the application program 100, after complete | finishing the process of step S260.
[0140]
When print data suitable for the virtual printer is sent from the application program 100, the CPU 30 shifts the processing to the virtual printer driver 110 and takes in the print data (step S350). Subsequently, the CPU 30 outputs the captured print data as intermediate print data to the HDD 41 (step S360). As a result, a data set in which the intermediate print data is collected is stored in the HDD 41 as the intermediate print file MF. When finishing the process of step S360, the CPU 30 ends the processing routine of the virtual printer driver 110.
[0141]
25 and 26 are flowcharts showing processing routines described by the distributed printing utility 120. FIG. This processing routine is started after the processing routine of the virtual printer driver 110 is completed. When the process is started, as shown in FIG. 25, the CPU 30 first takes in the intermediate print data of the intermediate print file MF from the HDD 41 (step S410). Next, the CPU 30 takes in printer property data, which is various information set in the distributed information setting routine (step S420).
[0142]
Subsequently, the CPU 30 performs a process of determining the allocation of the intermediate print data acquired in step S410 based on the information regarding the printer group and the information regarding the distribution form included in the printer property data acquired in step S420 (step S430). . This allocation determines how each page constituting the intermediate print data is allocated to each printer (here, three printers 60, 70, 80) belonging to the designated printer group. is there. That is, the distributed form illustrated in FIG. 10 displayed in the distributed form display field dd of the “distributed setting” card CD1 is realized so that the distributed form set in the “distributed print property” dialog box WN2 is realized. It defines how each page making up the intermediate print data is allocated to each printer 60, 70, 80, as implemented. Information about pages assigned to each printer determined in this way is stored in the RAM 32 as output destination list data.
[0143]
FIG. 27 is an explanatory diagram of an example of the output destination list data. The illustrated example is a case where the allocation is determined as shown in FIG. As shown in the drawing, the pages 1, 2, 3, and 4 for the first printer 60 (priority set for the printer is first) are 5, for the second printer 70 in this order. The pages 1, 2, 3, 4, 5, 1 and 2 correspond to the third printer 80 in this order (3, 4, 5, 1, 2, 3). , 4 and 5 are determined as page numbers to be printed in this order.
[0144]
When the allocation of the output destination of each page is determined in step S430, the following processing is then executed so that printing is actually performed according to this allocation. First, as shown in FIG. 26, the CPU 30 sets a printer counter C1 indicating a printer to be printed to a value 1 (step S440). Here, the printer counter C1 indicates that each printer at the distribution destination is a first printer 60 when the value is 1, a second printer 70 when the value is 2, and a third printer 70 when the value is 3. It shall be shown.
[0145]
Next, the CPU 30 performs processing for instructing the printer corresponding to the value of the printer counter C1 to change the setting (step S450). This process prompts the printer to be printed to prepare for printing via the printer driver. Among the information on the basic print settings and the paper settings included in the printer property data fetched in step S420, To instruct the printer driver of necessary setting information. For example, by notifying the printer driver that the paper type is “exclusive glossy paper”, the printer is determined to be in a state where printing suitable for the paper is possible.
[0146]
Subsequently, the CPU 30 sets a page counter C2 indicating the number of pages to be printed to a value 1 (step S460). Thereafter, the CPU 30 determines whether or not the page specified by the printer counter C1 and the page counter C2 is included in the output destination list data obtained in step S430 (step S470). If it is determined that the data is included in the output destination list data, the following processing is performed. First, in order to cause the printer corresponding to the value of the printer counter C1 to execute printing, an output command is issued to the actual printer driver 130 (140, 150) of the printer (step S480). The performance information about the performance of the printer 60 (70, 80) is returned from the actual printer driver 130 (140, 150) that has received the output command, so the CPU 30 then stores the performance information. Capture (step S490).
[0147]
Subsequently, based on the performance information, information on basic settings of printing, information on paper settings, etc. (excluding information on printer groups and distribution forms) included in the printer property data captured in step S420, the printer counter C1 The final print data for the page specified by the page counter C2 is created (step S500). Specifically, the page data of the page corresponding to the value of the page counter C2 is extracted from the intermediate print data fetched in step S410, and the extracted page data is used as the performance information, information on basic printing settings, and paper settings. The final print data is created by performing rendering processing for converting the data into data suitable for the printer 60 (70, 80) corresponding to the value of the printer counter C1 based on the information related to the printer counter C1.
[0148]
Thereafter, the CPU 30 outputs the final print data to the actual printer driver 130 (140, 150) of the printer 60 (70, 80) corresponding to the value of the printer counter C1 (step S510). Before executing printing in steps S480 to S510, processing for monitoring the status of each printer 60, 70, 80 is performed based on signals from the actual printer drivers 130, 140, 150, and the monitoring result is output. When the destination printer is busy or in an error state, it is configured to perform processing to change the output destination or cancel the output destination for the printer to that output destination. You can also
[0149]
Thereafter, the CPU 30 increments the value of the page counter C2 by 1 (step S520). If a negative determination is made in step S470, steps S480 to S510 are skipped, and the process immediately proceeds to step S520. Thereafter, the CPU 30 determines whether or not the value of the page counter C2 exceeds a value LC2 indicating the last page (step S530). If it is determined that the value LC2 indicating the last page has not been exceeded, the process returns to step S470 to create and output final print data for the page having the value 1 increased. On the other hand, when it is determined in step S530 that the value of the page counter C2 has exceeded the value LC2 indicating the last page, the CPU 30 increments the value of the printer counter C1 by 1 (step S540), and the value of the printer counter C1. It is determined whether or not exceeds a value LC1 indicating the last printer (step S550). If it is determined that the value LC1 indicating the last printer is not exceeded, the process returns to step S450, and the next printer 70 (80, 60) indicated by the printer counter C1 incremented by the value 1 is processed. The final print data for each page is created and output. On the other hand, if it is determined in step S550 that the value of the printer counter C1 has exceeded the value LC1 indicating the last page, it is assumed that the creation and output of the final print data for all pages that require printing for all the printers is completed. Exit to “END” and end the processing routine of the distributed printing utility.
[0150]
As described above, the processing routine of this distributed printing utility is described so that the process of creating and outputting the final print data from the first page to the last page is sequentially performed for each printer from the first printer to the final printer. However, this is described for the convenience of description of the flowchart, and in actuality, the final print data generation and output processing from one page to the last page is performed for each printer. It is configured to perform parallel processing in a macro manner by division. In this embodiment, the processing for each of these printers is configured to be processed in parallel in a macro manner. However, instead of this, it is possible to use a computer main body including a plurality of microprocessors to perform completely parallel processing. It can also be configured to be processed.
[0151]
FIG. 28 is a timing chart showing a procedure for performing distributed printing by the computer system configured as described above, as compared with a conventional example. The illustrated example shows a case where a document composed of three pages is printed one by one on three printers 60, 70, 80. As shown in the figure, in this embodiment, intermediate print data is first created ((1)), and then page data of the first page of the intermediate print data is processed for the printer 60 and the printer 70 by parallel processing. And rendering for the printer 80 in order to match each printer ((2), (3), (4)). The process of transmitting the data converted for the printer 60 (final print data) to the printer 60 is performed in parallel with the rendering process for the next printer 70. Similarly, the transmission to the printer 70 is performed. This process and the transmission to the printer 80 are performed in parallel with the next rendering process. Next, the page data of the second page of the intermediate print data is rendered in parallel processing so as to be adapted to each printer in order of the printer 60, the printer 70, and the printer 80 ((5), (6), (7)) Subsequently, the page data of the third page of the intermediate print data is rendered by the parallel processing so as to be adapted to each printer in order of the printer 60, the printer 70, and the printer 80 (▲ 8 ▼, {9}, ○ 10). Thus, all printing is completed.
[0152]
On the other hand, in the conventional apparatus, first, rendering processing is performed so that the page data of the first page is adapted to the first printer A, and then the converted data is transmitted to the printer A. Is done. Next, rendering processing is performed so that the page data of the second page is adapted to the first printer A, and then processing for transmitting the converted data to the printer A is performed. Subsequently, rendering processing is performed so that the page data of the third page is adapted to the first printer A, and then processing for transmitting the converted data is performed. Further, the rendering process and transmission to the printer are performed for the second printer B in the order of the first page, the second page, and the third page in the same manner as the first printer A. Thereafter, the third printer C performs data conversion and transmission to the printer in the order of the first page, the second page, and the third page in the same manner as the first printer A.
[0153]
Therefore, in this embodiment, since the rendering process and the transmission process to the printer are performed in parallel, the overall time required for printing can be reduced as compared with the conventional example. .
[0154]
Further, according to this embodiment, the intermediate print data can be obtained from the application program 100 only by issuing a single print command to the virtual printer driver 110, and each printer 60, 70,. Distributed printing to 80 is automatically performed. For this reason, the worker only has to execute the [Print] command once on the application program, and the workability is excellent.
[0155]
In this embodiment, the paper size condition set from the “paper size” data input field id41 of the “printer” card CD2 is limited according to the performance of each printer belonging to the currently selected group. It becomes. For this reason, the paper size condition set from the data input field id41 corresponds to the capability information of each printer. Accordingly, since the paper size condition is appropriate, distributed printing that matches the capabilities of the printer is always performed. As a result, there is an effect that a good printing result can be obtained.
[0156]
In particular, in this embodiment, when the “function priority” mode is selected, the paper size input pull-down menu MN2 displays the total printable paper size of each printer belonging to the currently selected group. A set of paper sizes is displayed as an option. On the other hand, when the “speed priority” mode is selected, each printer belonging to the currently selected group can print in the paper size input pull-down menu MN2. A set of paper sizes common to each printer is displayed as an option for various paper sizes. For this reason, in the “function priority” mode, printing using the capability of any of the plurality of distribution destination printers can be performed, so printing based on high capability is possible. On the other hand, in the “speed priority” mode, printing can be performed with the capability of any of the plurality of distribution destination printers, so printing can be performed from any of the plurality of printers. As a result, the overall time required for printing can be shortened.
[0157]
In this embodiment, the “function priority” mode and the “speed priority” mode can be switched by radio buttons BT1 and BT2 provided on the “printer” card CD2 displayed on the CRT display 12. . For this reason, the worker can freely switch between giving priority to the function or giving priority to the speed. Therefore, there exists an effect that it is excellent in operativity for an operator.
[0158]
In this embodiment, as described above, the radio buttons BT1 and BT2 for mode switching are specially provided. Instead, the “function priority” mode is selected according to the input data in the existing data input field. And “speed priority” mode may be switched. For example, when “fast” is selected in the data input field id 46 for “resolution”, the mode is switched to the “function priority” mode, and when “pretty” is selected, the mode is set to the “speed priority” mode. Can be configured to switch.
[0159]
In this embodiment, a plurality of printers as distribution destinations can be specified in units of groups from the “group name” data input field id11. For this reason, it is not necessary to designate a printer as a distribution destination one by one, which is excellent in operator operability. Furthermore, in this embodiment, the priority order is specified for the printers belonging to the group, so that the convenience in collecting printed sheets is excellent.
[0160]
Another embodiment of the present invention will be described next.
(1) In the above embodiment, the “printer” display column id13 only displays the printer names belonging to the group currently selected in the “group name” data input column id11. Alternatively, as shown in FIG. 29, a check box cbx may be provided in front of each displayed printer name. When the group name is set in the “group name” data input field id11, the printer names of all printers belonging to this group are displayed in the “printer” display field id13. The check boxes cbx provided in are all initialized to a checked state. For a printer that is in the set group but for which the output of print data is to be stopped due to, for example, out of paper or a failure, the print data can be cleared by unchecking the corresponding check box cbx. Can be excluded from the output destination. Therefore, there exists an effect that it is excellent in operativity.
[0161]
In this configuration, when data is input from the “paper size” data input field id41, the option displayed in the paper size input pull-down menu MN2 is a printer in which the check box cbx is checked. Depending on. For example, FIG. 0 As shown in FIG. 4, when the “LP-300” check box cbx is cleared and a printer capable of printing the paper size “A3” is excluded from the print data output destination, The option “A3” displayed in the pull-down menu MN2 for size input is grayed out and cannot be selected.
[0162]
(2) In the above embodiment, the paper size has been described as the predetermined condition related to the printing capability of the printer. However, it is not limited to the paper size, and instead of this, “double-sided printing”, “paper type”, Other predetermined conditions such as those concerning the printing ability input from the data input fields id41, id42, id43, id44, id45, id46 for setting “color” and “resolution” may be used.
[0163]
(3) The distributed printing control apparatus according to the present invention is configured such that printing data is directly output from a single computer 10 for printing to a plurality of printers 60, 70, 80. Instead, a computer network A client / server system configuration is also possible in which a server is prepared on the server 90 and a printer is managed on the server to perform distributed printing. In this configuration, a virtual printer driver may be built in each client, and a distributed printing utility may be built in the server.
[0164]
As mentioned above, although one Example of this invention was explained in full detail, this invention is not limited at all to such an Example, In the range which does not deviate from the summary of this invention, it can implement in various aspects. Of course.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of hardware of a computer system to which an embodiment of the present invention is applied.
FIG. 2 is a block diagram schematically showing an overall state of distributed printing processing.
FIG. 3 is a block diagram showing a state of processing of a virtual printer driver 110 used for distributed printing processing.
FIG. 4 is a block diagram illustrating a processing state of a distributed printing utility 120 that implements part of the distributed printing processing.
FIG. 5 is an explanatory diagram showing a “printer” window WN1.
FIG. 6 is an explanatory diagram showing a “distribution setting” card CD1 displayed in a “distribution print property” dialog box WN2.
FIG. 7 is an explanatory diagram showing how the illustration image in the distributed form display field changes depending on the setting contents of the data input fields id1 to id3.
FIG. 8 is an explanatory diagram showing an example when allocation of distribution is determined in the speed priority mode.
FIG. 9 is an explanatory diagram illustrating an example when allocation of distribution is determined in the handling priority mode.
FIG. 10 is an explanatory diagram showing how the illustration image in the distributed form display field changes depending on the setting contents of the data input fields id4 and id5.
FIG. 11 is an explanatory diagram showing a “printer” card CD2 displayed in a “distributed printing property” dialog box WN2.
FIG. 12 is an explanatory diagram showing a “group list” dialog box WN3.
FIG. 13 is an explanatory diagram showing a “group setting” dialog box WN4.
FIG. 14 is an explanatory diagram showing a state where the “belonging printer” is added to the display field id33.
FIG. 15 is an explanatory diagram showing an example of group registration list data PD;
16 is a flowchart showing a processing routine described by the application program 100 and a processing routine described by the virtual printer driver 110. FIG.
17 is an explanatory diagram showing an example of a “print” dialog box WN6 displayed on the CRT display 12 when a [print] command is operated on the application program 100. FIG.
FIG. 18 is a flowchart showing a shared information setting routine executed by the CPU 30;
FIG. 19 is a flowchart showing the first half of a data input processing routine executed by CPU 30;
FIG. 20 is a flowchart showing the latter half of the data input processing routine.
FIG. 21 is an explanatory diagram showing an example of a pull-down menu MN1 for inputting a group name.
FIG. 22 is an explanatory diagram showing an example of a pull-down menu MN2 for paper size input in the “function priority” mode.
FIG. 23 is an explanatory diagram showing an example of a pull-down menu MN2 for paper size input in the “speed priority” mode.
FIG. 24 is an explanatory diagram showing a relationship between a “paper size” data input field id41 and a “printer” display field id13.
25 is a flowchart showing the first half of a processing routine described by the distributed printing utility 120. FIG.
FIG. 26 is a flowchart showing the latter half of the processing routine described by the distributed printing utility 120;
FIG. 27 is an explanatory diagram of an example of output destination list data.
FIG. 28 is a timing chart showing a procedure for performing distributed printing according to this embodiment, as compared with a conventional example.
FIG. 29 is an explanatory diagram showing a “printer” card CD2 according to another embodiment of the present invention;
30 is an explanatory diagram showing an example of a pull-down menu MN2 for paper size input in the other embodiment. FIG.
[Explanation of symbols]
10 ... Computer
12 ... CRT display
14 ... Printer
16 ... computer body
18 ... Keyboard
20 ... Mouse
22 ... Floppy disc
24 ... Floppy disk drive
30 ... CPU
31 ... ROM
32 ... RAM
33 ... Display image memory
34 ... Mouse interface
35 ... Keyboard interface
36 ... FDC
37 ... HDC
38 ... CRTC
39 ... Printer interface
40. Network control circuit
41 ... HDD
60, 70, 80 ... printer
90 ... computer network
100 ... Application program
110: Virtual printer driver
111: Print command receiving unit
112 ... Performance information reply section
113 ... Property setting section
114 ... Performance information input unit
115... Virtual printer performance determination unit
116: User interface
117: Print data receiving unit
118: Intermediate print data output section
119 ... Property data output section
120: Distributed printing utility
121: Intermediate print data input section
122 ... Property data input section
123 ... determination part
124: Output data control unit
125: Printer setting section
126 ... Output command output section
127 ... Performance information input part
128: Final print data output section
129 ... Printer monitoring unit
12a ... Performance information output unit
130, 140, 150 ... actual printer driver
MF ... Intermediate print file
WN2 ... “Distributed seal properties” window
id11 ... "Group name" data entry field id11
id13 ... "Printer" display field id13
fd5 ... “Candidate selection” field
BT1… Radio button corresponding to “Function priority” mode
BT2: Radio button BT2 corresponding to the "speed priority" mode
id41 ... "paper size" data entry field
MN2 ... Pull-down menu for paper size input

Claims (15)

分散先となる複数のプリンタを指定するプリンタ指定手段と、
印刷すべき印刷データを、前記プリンタ指定手段により指定された複数のプリンタに分散出力する分散出力手段と
を備えて、分散印刷についての制御を行なう分散印刷制御装置において、
前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定する条件設定手段と、
前記プリンタ指定手段により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得するプリンタ能力情報取得手段と、
前記データ入力欄から入力可能な入力データを、前記プリンタ能力情報取得手段により取得された前記複数の能力情報に応じて定まる範囲内に制限するデータ入力制限手段と
を備え、
前記データ入力制限手段は、
前記プリンタ能力情報取得手段により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記プリンタ能力情報取得手段により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替えるモード切替手段を備え、
さらに、
前記モード切替手段によるモードの切り替えのためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、前記モード切替手段に対して前記モードの切り替えを指示する指示手段
を備える分散印刷制御装置。
Printer designation means for designating a plurality of printers as distribution destinations;
In a distributed printing control apparatus for controlling distributed printing, comprising: distributed output means for distributing and outputting print data to be printed to a plurality of printers designated by the printer designation means;
A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and based on the input data Condition setting means for setting predetermined conditions for the distributed printing;
Printer capability information acquisition means for acquiring capability information about the predetermined condition included in each of the plurality of printers designated by the printer designation means;
Data input restriction means for restricting input data that can be entered from the data entry field within a range determined according to the plurality of pieces of capability information acquired by the printer capability information acquisition unit,
The data input restriction means includes
A set of capability information that is the sum of the plurality of capability information acquired by the printer capability information acquisition unit is obtained, and input data that can be input from the data input field is limited within the range of the obtained capability information set. A set of capability information common to the plurality of capability information acquired by the first capability mode and the printer capability information acquisition means, and input from the data input field within the range of the determined capability information set Comprising mode switching means for selectively switching between a second mode for limiting possible input data;
further,
A switch for mode switching by the mode switching means is displayed on a display device, and input data for operating the switch by the input device is fetched, and the mode is switched to the mode switching means based on the input data. A distributed printing control apparatus comprising instruction means for instructing switching.
請求項1に記載の分散印刷制御装置であって、
前記条件設定手段は、
前記データ入力欄から入力可能な選択肢を示す選択肢表示欄を、前記データ入力欄に伴って表示して、前記選択肢の中から前記入力装置により指示された一の選択肢を前記所定条件として設定する構成であり、
前記データ入力制限手段は、
前記選択肢表示欄に示され得る少なくとも一部の選択肢を前記入力装置による指示を不可能とすることにより、前記入力可能な入力データの制限を行なう構成である分散印刷制御装置。
The distributed printing control apparatus according to claim 1,
The condition setting means includes:
An option display field indicating options that can be input from the data input field is displayed along with the data input field, and one option instructed by the input device is set as the predetermined condition from the options. And
The data input restriction means includes
A distributed printing control apparatus configured to restrict input data that can be input by disabling at least a part of options that can be displayed in the option display field by the input apparatus.
請求項1または請求項2に記載の分散印刷制御装置であって、
グループに複数のプリンタを割り当てるグループ割当手段を備え、
前記プリンタ指定手段は、
前記グループ割当手段により割り当ての行なわれたグループ単位で前記指定を行なう構成である分散印刷制御装置。
The distributed printing control apparatus according to claim 1 or 2,
A group assigning means for assigning a plurality of printers to a group;
The printer designation means includes
A distributed printing control apparatus configured to perform the designation in units of groups assigned by the group assigning means.
請求項1ないし請求項3のいずれかに記載の分散印刷制御装置であって、
前記プリンタ指定手段は、
前記指定された複数のプリンタの呼び名を表示装置に表示する呼び名表示制御手段を備える分散印刷制御装置。
A distributed printing control apparatus according to any one of claims 1 to 3,
The printer designation means includes
A distributed printing control device comprising: a name display control means for displaying on the display device names of the plurality of designated printers.
請求項4に記載の分散印刷制御装置であって、
前記プリンタ指定手段は、
前記呼び名表示制御手段により表示されたプリンタの呼び名のそれぞれに対応させて、当該プリンタを前記分散先から除外するためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチの操作データを取り込む入力制御手段を備え、
前記分散出力手段は、
前記入力制御手段により取り込んだ操作データに基づいて前記スイッチが操作されたと判定されたプリンタについては、前記印刷データの出力先から除外する出力先除外手段を備える分散印刷制御装置。
The distributed printing control apparatus according to claim 4,
The printer designation means includes
In correspondence with each printer name displayed by the name display control means, a switch for excluding the printer from the distribution destination is displayed on the display device, and the operation data of the switch is input by the input device. With control means,
The distributed output means includes
A distributed printing control apparatus comprising output destination exclusion means for excluding printers determined to have been operated based on operation data fetched by the input control means from output destinations of the print data.
請求項1ないし請求項5のいずれかに記載の分散印刷制御装置であって、
前記プリンタ指定手段は、
前記指定された複数のプリンタのそれぞれに優先順位を指定する優先順位指定手段を備え、
前記分散出力手段は、
前記優先順位指定手段により指定された優先順位を考慮して前記分散出力を行なう構成である分散印刷制御装置。
A distributed printing control apparatus according to any one of claims 1 to 5,
The printer designation means includes
Priority order specifying means for specifying a priority order for each of the plurality of designated printers;
The distributed output means includes
A distributed printing control apparatus configured to perform the distributed output in consideration of the priority specified by the priority specifying means.
請求項1ないし請求項6のいずれかに記載の分散印刷制御装置であって、
前記プリンタ能力情報取得手段は、
前記複数のプリンタの機種毎に設けられたプリンタドライバから各プリンタの性能についての情報を取り込み、該情報から記所定条件についての能力情報を取得する構成である分散印刷制御装置。
The distributed printing control apparatus according to any one of claims 1 to 6,
The printer capability information acquisition means includes
A distributed printing control apparatus configured to take in information on the performance of each printer from a printer driver provided for each model of the plurality of printers and acquire capability information on a predetermined condition from the information.
(a)分散先となる複数のプリンタを指定するステップと、
(b)印刷すべき印刷データを、前記ステップ(a)により指定された複数のプリンタに分散出力するステップと
を備えて、分散印刷についての制御を行なう分散印刷制御方法において、
(c)前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定するステップと、
(d)前記ステップ(a)により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得するステップと、
(e)前記データ入力欄から入力可能な入力データを、前記ステップ(d)により取得された前記複数の能力情報に応じて定まる範囲内に制限するステップと
を備え、
前記ステップ(e)は、
(e−1)前記ステップ(d)により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記ステップ(d)により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替えるステップを備え、
さらに、
(f)前記ステップ(e−1)によるモードの切り替えのためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、前記ステップ(e−1)によるモードの切り替えを指示するステップ
を備える分散印刷制御方法。
(A) designating a plurality of printers as distribution destinations;
(B) a distributed printing control method for controlling distributed printing, comprising the step of distributing and outputting print data to be printed to a plurality of printers designated in step (a),
(C) A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and the input is performed. Setting predetermined conditions based on data for the distributed printing;
(D) obtaining capability information about the predetermined condition provided in each of the plurality of printers designated in step (a);
(E) limiting input data that can be input from the data input field to a range determined according to the plurality of pieces of capability information acquired in step (d), and
The step (e)
(E-1) A set of capability information that is the sum of the plurality of capability information acquired in step (d) can be obtained and input from the data entry field within the range of the obtained capability information set. A first mode for restricting input data and a set of capability information common to the plurality of capability information acquired in step (d) is obtained, and the data input is within the range of the obtained capability information set. Selectively switching between a second mode for restricting input data that can be entered from the field,
further,
(F) A switch for switching the mode in the step (e-1) is displayed on a display device, and input data for operating the switch by the input device is fetched, and the step ( A distributed printing control method comprising a step of instructing mode switching according to e-1).
(a)分散先となる複数のプリンタを指定する機能と、
(b)印刷すべき印刷データを、前記機能(a)により指定された複数のプリンタに分散出力する機能と
を、コンピュータに実現させて分散印刷についての制御を行なうコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータプログラムは、さらに、
(c)前記各プリンタの印刷能力に関わる一の所定条件を入力するための所定のデータ入力欄を表示装置に表示するとともに、入力装置による前記データ入力欄からの入力データを取り込んで、該入力データに基づく所定条件を前記分散印刷のために設定する機能と、
(d)前記機能(a)により指定された前記複数のプリンタのそれぞれが備える前記所定条件についての能力情報を取得する機能と、
(e)前記データ入力欄から入力可能な入力データを、前記機能(d)により取得された前記複数の能力情報に応じて定まる範囲内に制限する機能と
を、コンピュータに実現させるとともに、
前記機能(e)は、
(e−1)前記機能(d)により取得された前記複数の能力情報の総和である能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第1のモードと、前記機能(d)により取得された前記複数の能力情報に共通の能力情報の集合を求めて、該求めた能力情報の集合の範囲内に前記データ入力欄から入力可能な入力データを制限する第2のモードとを選択的に切り替える機能を備え、
さらに、
(f)前記機能(e−1)によるモードの切替のためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチを操作する入力データを取り込んで、該入力データに基づいて、機能(e−1)による前記モードの切り替えを指示する機能
を、コンピュータに実現させるコンピュータ読み取り可能な記録媒体。
(A) a function for designating a plurality of printers to be distributed;
(B) A computer-readable recording of a computer program for controlling a distributed printing by causing a computer to realize a function of distributing print data to be printed to a plurality of printers designated by the function (a). Recording medium,
The computer program further includes:
(C) A predetermined data input field for inputting one predetermined condition relating to the printing capability of each printer is displayed on the display device, and input data from the data input field by the input device is fetched and the input is performed. A function for setting predetermined conditions based on data for the distributed printing;
(D) a function of acquiring capability information about the predetermined condition included in each of the plurality of printers designated by the function (a);
(E) causing a computer to realize a function of limiting input data that can be input from the data input field to a range determined according to the plurality of pieces of capability information acquired by the function (d);
The function (e) is
(E-1) A set of capability information that is the sum of the plurality of capability information acquired by the function (d) can be obtained and input from the data entry field within the range of the obtained capability information set. A first mode for restricting input data and a set of capability information common to the plurality of capability information acquired by the function (d) is obtained, and the data input is within the range of the obtained capability information set. A function of selectively switching between a second mode for restricting input data that can be entered from the field,
further,
(F) A switch for mode switching by the function (e-1) is displayed on a display device, and input data for operating the switch by the input device is fetched, and the function (e A computer-readable recording medium for causing a computer to realize the function of instructing switching of the mode according to -1).
請求項9に記載のコンピュータ読み取り可能な記録媒体であって、
前記機能(c)は、
前記データ入力欄から入力可能な選択肢を示す選択肢表示欄を、前記データ入力欄に伴って表示して、前記選択肢の中から前記入力装置により指示された一の選択肢を前記所定条件として設定する構成であり、
前記機能(e)は、
前記選択肢表示欄に示され得る少なくとも一部の選択肢を前記入力装置による指示を不可能とすることにより、前記入力可能な入力データの制限を行なう構成であるコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to claim 9,
The function (c) is:
An option display field indicating options that can be input from the data input field is displayed along with the data input field, and one option instructed by the input device is set as the predetermined condition from the options. And
The function (e) is
A computer-readable recording medium configured to limit the input data that can be input by disabling at least a part of the options that can be displayed in the option display field by the input device.
請求項9または請求項10のいずれかに記載のコンピュータ読み取り可能な記録媒体であって、
前記コンピュータプログラムは、さらに、
(g)グループに1または複数のプリンタを割り当てる機能を、コンピュータに実現させるとともに、
前記機能(a)は、
前記機能(g)により割り当ての行なわれたグループ単位で前記指定を行なう構成である
コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to claim 9 or 10,
The computer program further includes:
(G) allowing a computer to implement the function of assigning one or more printers to a group;
The function (a) is:
A computer-readable recording medium recording a computer program, wherein the designation is made in units of groups assigned by the function (g).
請求項9ないし請求項11のいずれかに記載のコンピュータ読み取り可能な記録媒体であって、
前記機能(a)は、
(a−1)前記指定された複数のプリンタの呼び名を表示装置に表示する機能を備えるものである
コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to any one of claims 9 to 11,
The function (a) is:
(A-1) A computer-readable recording medium on which a computer program is recorded, which has a function of displaying on the display device names of a plurality of designated printers.
請求項12に記載のコンピュータ読み取り可能な記録媒体であって、
前記機能(a)は、
(a−2)前記機能(a−1)により表示されたプリンタの呼び名のそれぞれに対応させて、当該プリンタを前記分散先から除外するためのスイッチを表示装置に表示するとともに、入力装置による前記スイッチの操作データを取り込む機能を備え、
前記機能(b)は、
前記入力制御機能により取り込んだ操作データに基づいて前記スイッチが操作されたと判定されたプリンタについては、前記印刷データの出力先から除外する機能を備えるものである
コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to claim 12,
The function (a) is:
(A-2) A switch for excluding the printer from the distribution destination is displayed on the display device in correspondence with each of the printer names displayed by the function (a-1), and the input device A function to capture switch operation data is provided.
The function (b) is
A computer-readable recording having a computer program recorded therein, which has a function of excluding a printer determined to have been operated based on operation data captured by the input control function from an output destination of the print data Medium.
請求項9ないし請求項13のいずれかに記載のコンピュータ読み取り可能な記録媒体であって、
前記機能(a)は、
(a−3)前記指定された複数のプリンタのそれぞれに優先順位を指定する機能を備え、
前記機能(b)は、
前記機能(a−3)により指定された優先順位を考慮して前記分散出力を行なう構成である
コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to any one of claims 9 to 13,
The function (a) is:
(A-3) a function of designating a priority order for each of the designated plurality of printers;
The function (b) is
A computer-readable recording medium recording a computer program, wherein the distributed output is performed in consideration of the priority specified by the function (a-3).
請求項9ないし請求項14のいずれかに記載のコンピュータ読み取り可能な記録媒体であって、
前記機能(d)は、
前記複数のプリンタの機種毎に設けられたプリンタドライバから各プリンタの性能についての情報を取り込み、該情報から記所定条件についての能力情報を取得する構成である
コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
A computer-readable recording medium according to any one of claims 9 to 14,
The function (d) is
A computer-readable recording in which a computer program is recorded, which is configured to take in information on the performance of each printer from a printer driver provided for each of the plurality of printer models, and acquire capability information about the predetermined condition from the information. Medium.
JP2000107230A 2000-04-07 2000-04-07 Distributed printing control apparatus, distributed printing control method, and recording medium Expired - Fee Related JP3757749B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2000107230A JP3757749B2 (en) 2000-04-07 2000-04-07 Distributed printing control apparatus, distributed printing control method, and recording medium
EP10183743A EP2267590A3 (en) 2000-04-07 2001-04-05 Control of distributed printing with multiple printers
PCT/JP2001/002967 WO2001077808A1 (en) 2000-04-07 2001-04-05 Control of decentralized printing by printers
EP10185194.7A EP2270645B1 (en) 2000-04-07 2001-04-05 Control of distributed printing with multiple printers
EP01917837A EP1191433A4 (en) 2000-04-07 2001-04-05 Control of decentralized printing by printers
US09/980,111 US7173718B2 (en) 2000-04-07 2001-04-05 Control of distributed printing using data output control module
US11/643,591 US20070103726A1 (en) 2000-04-07 2006-12-20 Control of distributed printing with multiple printers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000107230A JP3757749B2 (en) 2000-04-07 2000-04-07 Distributed printing control apparatus, distributed printing control method, and recording medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003070346A Division JP2003248568A (en) 2003-03-14 2003-03-14 Apparatus and method for distributed printing control, and recording medium

Publications (2)

Publication Number Publication Date
JP2001290625A JP2001290625A (en) 2001-10-19
JP3757749B2 true JP3757749B2 (en) 2006-03-22

Family

ID=18620249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000107230A Expired - Fee Related JP3757749B2 (en) 2000-04-07 2000-04-07 Distributed printing control apparatus, distributed printing control method, and recording medium

Country Status (1)

Country Link
JP (1) JP3757749B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1293886B1 (en) 2001-09-14 2014-04-16 Canon Kabushiki Kaisha Controlling printing by use of a virtual printer
US7804607B2 (en) 2001-09-14 2010-09-28 Canon Kabushiki Kaisha Group printer for multiple member printers
JP3740438B2 (en) 2002-05-31 2006-02-01 キヤノン株式会社 Print control method, print control apparatus, program, and computer-readable storage medium
JP2004213111A (en) 2002-12-26 2004-07-29 Canon Inc Computer program
JP2006264102A (en) * 2005-03-24 2006-10-05 Seiko Epson Corp Distributed printing control unit and print job distributing method
US20080180725A1 (en) * 2007-01-26 2008-07-31 Levin Burton L User-defined cluster printing
JP4392673B2 (en) 2007-11-22 2010-01-06 コニカミノルタビジネステクノロジーズ株式会社 Control program and control method
JP2011096100A (en) * 2009-10-30 2011-05-12 Fuji Xerox Co Ltd Setting change device and program
JP2018025961A (en) * 2016-08-10 2018-02-15 京セラドキュメントソリューションズ株式会社 Image forming system, image forming method, and information processing apparatus

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4440998B2 (en) * 1996-07-31 2010-03-24 キヤノン株式会社 Information processing apparatus and setting method in printer driver
JP3907228B2 (en) * 1996-01-11 2007-04-18 キヤノン株式会社 Information processing apparatus and data processing method
JPH09218764A (en) * 1996-02-13 1997-08-19 Fuji Xerox Co Ltd Printing indicating device
JP3495845B2 (en) * 1996-05-31 2004-02-09 キヤノン株式会社 Information processing apparatus and method, printer system
JPH11203082A (en) * 1998-01-14 1999-07-30 Fuji Xerox Co Ltd Distributed printing system

Also Published As

Publication number Publication date
JP2001290625A (en) 2001-10-19

Similar Documents

Publication Publication Date Title
EP2270645B1 (en) Control of distributed printing with multiple printers
EP1191434A1 (en) Control of distributed printers
JP4834256B2 (en) Information processing apparatus, print data generation method, print control program, and storage medium
KR101004906B1 (en) A printing system, a control method of printing system, and a storage medium
JP4717709B2 (en) Information processing apparatus, control method therefor, and program
US7593983B2 (en) Data processing apparatus, data processing method, and storage medium storing computer-readable program
JP4717563B2 (en) Job processing method, printing system, printing apparatus, storage medium, program
JP4968920B2 (en) Job management apparatus, job management method, and program
JP3757749B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP2002149637A (en) Device and method for information processing
JP2001014255A (en) Device and method for data processing, and storage medium
JP2001290630A (en) Device and method for controlling distributed printing and recording medium
JP2009129015A (en) Image processor, information processor, image processing method, information processing method, image processing image, and information processing system
JP3804395B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP4847278B2 (en) Image processing method and apparatus
JP3788184B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP4771528B2 (en) Distributed processing system and distributed processing method
JP3726634B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP2003296086A (en) Decentralized print control unit, decentralized print control method, and recording medium
JP3788206B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP4072288B2 (en) Data processing apparatus, data processing method, and storage medium storing computer-readable program
JP4227614B2 (en) Automatic authentication method and system in printing process
JP4098457B2 (en) Distributed printing control apparatus, distributed printing control method, and recording medium
JP4218969B2 (en) Printing apparatus and method, printing program, and storage medium
JP2003248568A (en) Apparatus and method for distributed printing control, and recording medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051104

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20051109

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: 20051206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051219

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3757749

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100113

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130113

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130113

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140113

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees