(57)【要約】【課題】  印刷ジョブの処理の遅延を防止して処理待ちによりユーザに与えるストレスを軽減するとともに、分散処理による稼働率の向上を確保することができる画像処理装置、画像処理方法、および画像処理プログラムを提供する。【解決手段】  複数台のプリンタを用いてラスタライズなどの画像処理を分散処理する画像処理システムにおいて、画像処理装置としての各プリンタは、分散処理のため他のプリンタから転送された印刷ジョブの処理中に、クライアントＰＣから印刷ジョブを受信した場合（Ｓ４０３：ＹＥＳ，Ｓ４０４：ＹＥＳ，Ｓ４０９：ＮＯ）、他のプリンタから転送された印刷ジョブの処理を中止し（Ｓ４０５，Ｓ４０６）、クライアントＰＣから受信した印刷ジョブの処理を行う（Ｓ４１０）。【選択図】            図４
2005208824.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置において、
外部の装置から印刷ジョブを受信する受信手段と、
受信した印刷ジョブを他の画像処理装置に転送する転送手段と、
受信した印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第１の判断手段と、
処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断手段と、
受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
外部の装置から受信した印刷ジョブの分割を行う分割手段をさらに有し、
前記転送手段は、分割した印刷ジョブを複数の他の画像処理装置に転送することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
印刷ジョブを転送可能な他の画像処理装置を検索する検索手段をさらに有することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
他の画像処理装置から転送された印刷ジョブを受信した場合、当該他の画像処理装置から受信した印刷ジョブに対する所定の処理を行った後、転送元の当該他の画像処理装置へ所定の処理後の印刷ジョブを返送することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記所定の処理はラスタライズであることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
中止された印刷ジョブを転送元の他の画像処理装置へ返送することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
他の画像処理装置に転送後、当該他の画像処理装置から返送された印刷ジョブに基づいて画像出力する出力手段をさらに有することを特徴とする請求項１に記載の画像処理装置。
【請求項８】
他の画像処理装置に転送後、当該他の画像処理装置から返送された印刷ジョブが当該他の画像処理装置において所定の処理が行われているか否かを判断する第３の判断手段をさらに有することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
他の画像処理装置に転送後、当該他の画像処理装置から返送された複数の印刷ジョブを結合する結合手段をさらに有することを特徴とする請求項２に記載の画像処理装置。
【請求項１０】
前記分割手段は、複数の他の画像処理装置の各々に対して当該画像処理装置の処理速度に応じたデータサイズを割り当てるための印刷ジョブの分割を行うことを特徴とする請求項２に記載の画像処理装置。
【請求項１１】
画像処理装置において使用される画像処理方法であって、
外部の装置から印刷ジョブを受信する受信ステップと、
受信した印刷ジョブが他の画像処理装置から転送されるものであるか否かを判断する第１の判断ステップと、
処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断ステップと、
受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御ステップと、
を有することを特徴とする画像処理方法。
【請求項１２】
画像処理装置を制御するための画像処理プログラムであって、
外部の装置から印刷ジョブを受信する受信手順と、
受信した印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第１の判断手順と、
処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断手順と、
受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御手順と、
を画像処理装置に実行させるための画像処理プログラム。
【請求項１３】
請求項１２に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、および画像処理プログラムに関し、特に、外部の装置から受ける印刷ジョブのうち、特定の印刷ジョブを優先して画像処理を行なうための画像処理装置、画像処理方法、および画像処理プログラムに関する。
【背景技術】
【０００２】
複数部の印刷を行う際に、複数台の画像処理装置を用いてラスタライズなどの画像処理を分散処理することにより印刷にかかる時間を削減する画像処理システムが提供されている（特許文献１参照）。上記の画像処理システムにおいて、クライアント装置は、画像処理が可能であると検出された各画像処理装置へ、各装置の担当分ごとに印刷ジョブを分割して送信し、各装置において画像処理されたデータを回収することで印刷の稼働率を上げることができる。
【０００３】
しかし、上記した画像処理システムでは、クライアント装置が印刷ジョブの指示をした際に、各画像処理装置において分散処理中の印刷ジョブが存在する場合には、いずれかの画像処理装置が印刷ジョブの処理を完了するまで、クライアント装置が指示した印刷ジョブは処理待ちとなる。このため、特に分散処理中の印刷ジョブが膨大なデータ量である場合に、ユーザに印刷ジョブの処理待ちによるストレスを与えるばかりか、優先度の高い印刷ジョブの処理が遅延する恐れがある。
【特許文献１】特開平１０−４００４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は上記従来技術の有する問題点に鑑みなされたものであり、その目的とするところは、印刷ジョブの処理の遅延を防止して処理待ちによるユーザストレスを軽減するとともに、分散処理による稼働率の向上を確保することができる画像処理装置、画像処理方法、および画像処理プログラムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明の上記目的は、下記の手段によって達成される。
【０００６】
（１）  画像処理装置において、外部の装置から印刷ジョブを受信する受信手段と、受信した印刷ジョブを他の画像処理装置に転送する転送手段と、受信した印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第１の判断手段と、処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断手段と、受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御手段とを有することを特徴とする画像処理装置。
【０００７】
（２）  外部の装置から受信した印刷ジョブの分割を行う分割手段をさらに有し、前記転送手段は、分割した印刷ジョブを複数の他の画像処理装置に転送することを特徴とする（１）に記載の画像処理装置。
【０００８】
（３）  印刷ジョブを転送可能な他の画像処理装置を検索する検索手段をさらに有することを特徴とする（１）に記載の画像処理装置。
【０００９】
（４）  他の画像処理装置から転送された印刷ジョブを受信した場合、当該他の画像処理装置から受信した印刷ジョブに対する所定の処理を行った後、転送元の当該他の画像処理装置へ所定の処理後の印刷ジョブを返送することを特徴とする（１）に記載の画像処理装置。
【００１０】
（５）  前記所定の処理はラスタライズであることを特徴とする（４）に記載の画像処理装置。
【００１１】
（６）  中止された印刷ジョブを転送元の他の画像処理装置へ返送することを特徴とする請（１）に記載の画像処理装置。
【００１２】
（７）  他の画像処理装置に転送後、当該他の画像処理装置から返送された印刷ジョブに基づいて画像出力する出力手段をさらに有することを特徴とする（１）に記載の画像処理装置。
【００１３】
（８）  他の画像処理装置に転送後、当該他の画像処理装置から返送された印刷ジョブが当該他の画像処理装置において所定の処理が行われているか否かを判断する第３の判断手段をさらに有することを特徴とする（７）に記載の画像処理装置。
【００１４】
（９）  他の画像処理装置に転送後、当該他の画像処理装置から返送された複数の印刷ジョブを結合する結合手段をさらに有することを特徴とする（２）に記載の画像処理装置。
【００１５】
（１０）  前記分割手段は、複数の他の画像処理装置の各々に対して当該画像処理装置の処理速度に応じたデータサイズを割り当てるための印刷ジョブの分割を行うことを特徴とする（２）に記載の画像処理装置。
【００１６】
（１１）  画像処理装置において使用される画像処理方法であって、外部の装置から印刷ジョブを受信する受信ステップと、受信した印刷ジョブが他の画像処理装置から転送されるものであるか否かを判断する第１の判断ステップと、処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断ステップと、受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御ステップとを有することを特徴とする画像処理方法。
【００１７】
（１２）  画像処理装置を制御するための画像処理プログラムであって、外部の装置から印刷ジョブを受信する受信手順と、受信した印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第１の判断手順と、処理中の印刷ジョブが他の画像処理装置から転送されたものであるか否かを判断する第２の判断手順と、受信した印刷ジョブが他の画像処理装置から転送されたものではなく、処理中の印刷ジョブが他の画像処理装置から転送されたものである場合、処理中の印刷ジョブの処理を中止し受信した印刷ジョブを処理する制御手順とを画像処理装置に実行させるための画像処理プログラム。
【００１８】
（１３）  （１２）に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の効果】
【００１９】
本発明によれば、複数台の画像処理装置を用いて所定の処理を分散処理する画像処理システムにおいて、各画像処理装置は、分散処理のため他の画像処理装置から転送された印刷ジョブの処理中に、他の画像処理装置ではない外部の装置から印刷ジョブを受信した場合、他の画像処理装置から転送された印刷ジョブの処理を中止し、前記外部の装置から受信した印刷ジョブの処理を行うことができる。これにより、他の画像処理装置ではない外部の装置から受信した印刷ジョブは、分散処理のため他の画像処理装置から転送された印刷ジョブによって処理待ちとされることがなく実行される。したがって、印刷ジョブの処理の遅延を防止して処理待ちによるユーザストレスを軽減できるとともに、分散処理による画像処理装置の稼働率の向上を確保して、高い生産性を実現することが出来る。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００２１】
図１は、本発明の実施形態にかかるプリンタが適用された画像処理システムの全体構成を示すブロック図である。図１に示すように、本実施形態にかかる画像処理システム（以下、単に「システム」ともいう）は、クライアントＰＣ（クライアントパーソナルコンピュータ）１０と複数の画像処理装置としてのプリンタ２１〜２４とを備え、これらはネットワーク３０を介して相互に通信可能に接続されている。ネットワーク３０は、イーサネット（登録商標）、トークンリング、ＦＤＤＩ等の規格によりコンピュータやネットワーク機器同士を接続したＬＡＮ、あるいはＬＡＮ同士を専用線で接続したＷＡＮ等からなる。
【００２２】
クライアントＰＣ１０にインストールされたプリンタドライバにより、各種アプリケーションソフトウェアで作成されたドキュメントデータ、定型業務システムからの帳票データ、あるいは画像処理ソフトウェアなどにより作成された画像データなどの各種データに基づいて、印刷ジョブが作成される。クライアントＰＣ１０で作成された印刷ジョブは、ネットワーク３０を介して、例えばプリンタ２１〜２４のうちのいずれか１つのプリンタへ送信される。
【００２３】
ここで、本実施形態の画像処理システムにおける分散処理とは、クライアントＰＣが作成した印刷ジョブを、プリンタ２１〜２４が分担してラスタライズなどの所定の処理を行うことである。そのために、クライアントＰＣ１０は、プリンタ２１〜２４のいずれか一つのプリンタを指定して印刷ジョブを送信し、印刷ジョブを受信したプリンタは、ラスタライズなどの所定の処理を他のプリンタに分担して処理させるために、受信した印刷ジョブの一部を他のプリンタへ転送する。よって、各プリンタが受信する印刷ジョブは、クライアントＰＣ１０から送信されるものと、他のプリンタから転送されるものの２通りが存在する。以下、クライアントＰＣ１０から印刷ジョブを受信し、他のプリンタへ印刷ジョブを転送するプリンタをマスタプリンタと、マスタプリンタから印刷ジョブを受信するプリンタをスレーブプリンタと呼ぶ。また、マスタプリンタが、クライアントＰＣ１０から受信した印刷ジョブについて行う、スレーブプリンタへの転送などの処理をマスタ処理と呼び、スレーブプリンタが、マスタプリンタから受信した印刷ジョブについて行う、ラスタライズなどの処理をスレーブ処理と呼ぶ。また、印刷ジョブを受信するとは、当該印刷ジョブにかかる印刷データを受信することであり、印刷データには、印刷ジョブの送信元のネットワークアドレスなどの情報が含まれた印刷指示データと、ラスタライズなどの画像処理が施されることによって画像の印刷出力を可能とする印刷画像データとが含まれる。さらに、前記印刷指示データを受信することは、印刷ジョブがクライアントＰＣ１０あるいはマスタプリンタからプリンタへ指示されたことを意味する。
【００２４】
つぎに、上記各機器の構成について説明するが、上記各機器は、後述する構成要素以外の構成要素を含んでいてもよく、あるいは、後述する構成要素のうちの一部が含まれていなくてもよい。
【００２５】
図２は、本実施形態におけるプリンタ２１の構成の一例を示すブロック図である。プリンタ２２〜２４は、プリンタ２１と同様の構成であるので説明は省略する。図に示すように、プリンタ２１は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、ハードディスク２０４、操作パネル部２０５、印刷部２０６、ネットワークインタフェイス２０７、および通信部２０８を含み、これらは信号をやりとりするためのバス２０９を介して相互に接続されている。操作パネル部２０５は、タッチパネル、タッチパネル外の固定キー、表示ランプ等で構成されており、各種の入力と表示を行うために使用される。印刷部２０６は、印刷ジョブに基づいて印刷を行う。
【００２６】
図３は、印刷部２０６の構成の一例を示す図である。図３に示すように、印刷部２０６は、ポリゴンミラーの回転制御を行うスキャナ制御部２１１と、感光体ドラムへの帯電、現像バイアスおよび転写ローラへの転写バイアスの電圧印加などの高電圧制御を行う高圧制御部２１２と、レーザビームの変調制御を行うレーザ制御部２１３と、用紙などの記録材の搬送制御を行う搬送制御部２１４とを有している。
【００２７】
次に、図４〜１４を参照して、プリンタ２１で行われる処理について説明する。なお、図４〜１１のフローチャートにより示されるアルゴリズムは、プリンタ２１のＲＯＭ２０２あるいはハードディスク２０４に制御プログラムとして記憶されており、ＣＰＵ２０１によって実行される。また、プリンタ２２〜２４にも、プリンタ２１と同様に、前記プログラムが記憶され、実行可能である。
【００２８】
図４は、プリンタ２１で行われる処理について説明するためのフローチャートである。まず、クライアントＰＣ１０あるいはマスタプリンタであるプリンタ２２〜２４のいずれかから印刷指示データを受信する（Ｓ４０１）。印刷指示データの受信後、該印刷指示に対して重み付け処理を行う（Ｓ４０２）。重み付け処理とは、印刷指示データに含まれるネットワークアドレスなどの情報に基づいて、印刷ジョブの指示元がマスタプリンタであるか否かを識別するための印刷指示値を作成し、作成した印刷指示値を、受信した印刷指示データに対応付けて記憶する処理である。
【００２９】
この重み付け処理について、図５を参照して説明する。まず、受信した印刷指示データに基づいて、印刷ジョブは、マスタプリンタである他のプリンタから指示されたものであるか否かを判断する（Ｓ５０１）。本実施形態において、印刷ジョブが他のプリンタから指示されたものでない場合は、印刷ジョブはクライアントＰＣ１０から指示されたものである。そして、受信した印刷ジョブが、クライアントＰＣ１０から指示されたものである場合には重み係数１が付与され（Ｓ５０２）、マスタプリンタから指示されたものである場合には重み係数０が付与され（Ｓ５０３）、そして、重み係数を印刷指示値として、受信した印刷指示データに対応するように、ＲＡＭ２０３などの記憶装置上に記憶する（Ｓ５０４）。ラスタライズなどの画像処理中においても、この印刷指示値を読み出すことによって、処理中の印刷画像データの送信元が、クライアントＰＣ１０かマスタプリンタかを判断することが可能となる。
【００３０】
重み付け処理に続いて、先に受信した印刷ジョブの印刷画像データがラスタライズなどの処理中であるか否かを判断する（Ｓ４０３）。プリンタ２１に処理中の印刷画像データが無い場合（Ｓ４０３：ＮＯ）、ステップＳ４０７に進む。
【００３１】
ここで、従来技術において、クライアントＰＣ１０が印刷ジョブの指示をした際に、各プリンタにおいて分散処理中の印刷ジョブが存在する場合には、いずれかのプリンタが印刷ジョブの処理を完了するまで、クライアントＰＣ１０が指示した印刷ジョブは処理待ちとなる。これを解消するため、本実施形態におけるプリンタは、マスタプリンタからスレーブ処理のため指示された印刷ジョブよりも、クライアントＰＣ１０からマスタ処理のため指示された印刷ジョブを優先して処理することとした。すなわち、マスタプリンタから受信した印刷ジョブをスレーブ処理中である際に、新たにクライアントＰＣ１０からマスタ処理すべく印刷ジョブの指示を受けた場合には、プリンタには、マスタプリンタからのスレーブ処理を中止し、代わってクライアントＰＣ１０から指示された印刷ジョブの処理を開始するものである。
【００３２】
ステップＳ４０３において、プリンタ２１において先に受信した印刷画像データが存在し、該データの処理が行われている場合、ＲＡＭ２０３上に記憶されている処理中の印刷画像データに対応する印刷指示値と、新たに受信した印刷ジョブの印刷指示データに対応する印刷指示値とを比較する（Ｓ４０４）。新たに受信した印刷指示データに対応する印刷指示値の方が、処理中の印刷画像データに対応する印刷指示値よりも大きい場合（Ｓ４０４：ＹＥＳ）、すなわち、処理中の印刷画像データが、マスタプリンタから指示されスレーブ処理しているものであり（印刷指示値＝０）、新たに受信した印刷指示データがクライアントＰＣ１０から受信したものである（印刷指示値＝１）場合には、印刷画像データのスレーブ処理を中止して、処理を中止した印刷画像データを、ラスタライズ処理済データとラスタライズ未処理データとに分割する（Ｓ４０５）。
【００３３】
ステップＳ４０５における印刷画像データの分割処理について、図６、７、および８を参照して説明する。図６に示すように、まず、処理途中のページまでのラスタライズを終了する（Ｓ６０１）。ここで、図７に示すように、プリンタ２１が受信した印刷画像データの前後には、＜２００＞＜／２００＞とタグが付与されている。図の例では、マスタプリンタはプリンタ２２である。このタグは、プリンタ２２が、各スレーブプリンタにスレーブ処理させるため、印刷画像データを自プリンタおよび各スレーブプリンタが担当するデータに分割する際に、各分割データの前後に付与したタグである。つまり、＜２００＞＜／２００＞のタグが前後に付けられた分割データが、プリンタ２１の担当分のデータとしてプリンタ２２からプリンタ２１に送信されたものである。
【００３４】
ステップＳ６０１においてラスタライズを終了した後、ラスタライズ済データの前後及びラスタライズ未処理のデータの前後に、処理済および未処理を意味するタグを付与する（Ｓ６０２、Ｓ６０３）。図８に、処理済および未処理を意味するタグがそれぞれ付与されたプリンタ２１の担当分の印刷画像データを示す。図に示すように、処理済データの前後に＜２１０＞＜／２１０＞、未処理データの前後に＜２０１＞＜／２０１＞というタグが、新たに付与されている。続いて、前述のように処理済タグ付きデータと未処理タグ付きデータとに分割された印刷画像データを、ＲＡＭ２０３上またはハードディスク２０４上に記憶して（Ｓ６０４）、タグが付与された印刷画像データを返送する通知をマスタプリンタへ送信する（Ｓ６０５）。
【００３５】
返送通知を送信した後、図４のフローチャートに戻って、処理を中止した印刷画像データをマスタプリンタへ返送する（Ｓ４０６）。なお、後述するが、マスタプリンタは、スレーブプリンタ（プリンタ２１）から返送される印刷画像データを随時回収し、スレーブプリンタにより付与されたタグにより未処理データを判別し、未処理データについてラスタライズする。
【００３６】
続いて、新たな印刷ジョブの印刷画像データが受信可能であることを、クライアントＰＣ１０へ通知し（Ｓ４０７）、クライアントＰＣ１０から印刷画像データを受信する（Ｓ４０８）。受信した印刷画像データは、印刷指示値が付与された印刷指示データに対応付けられて記憶される。
【００３７】
そして、受信した印刷画像データが、マスタ処理すべくクライアントＰＣ１０から受信したものであるか、スレーブ処理すべくマスタプリンタから受信したものであるかを、ステップＳ４０２においてＲＡＭ２０３上またはハードディスク２０４上に記憶された印刷画像データに対応する印刷指示値を読み出して判断する（Ｓ４０９）。すなわち、印刷指示値が１以上であれば、印刷画像データはクライアントＰＣ１０から受信したものと、１未満であればマスタプリンタから受信したものと判断する。この判断を必要とするのは、ステップＳ４０４〜Ｓ４０６を経た後に、ステップＳ４０８において受信した印刷画像データは、クライアントＰＣ１０から受信したものであるが、ステップＳ４０３において、プリンタ２１にラスタライズ中の印刷画像データが無い場合（Ｓ４０３：ＮＯ）には、ステップＳ４０３の後、直ちに印刷画像データを受信する処理に入るためである（Ｓ４０３→Ｓ４０７→Ｓ４０８）。つまり、該印刷画像データの送信元には、クライアントＰＣ１０とマスタプリンタとの両者がある。
【００３８】
ステップＳ４０９において受信した印刷画像データに対応する印刷指示値が１以上である場合（Ｓ４０９：ＮＯ）、すなわち、クライアントＰＣ１０から印刷画像データを受信した場合には、ステップＳ４１０へ移行し、プリンタ２１は印刷出力処理を行う。この印刷出力処理について、図９を参照して説明する。まず、プリンタ２１は、他のプリンタにスレーブ処理をさせる必要があるかどうかを判断するために、印刷画像データが、所定のページ数以上のデータであるか判定する（Ｓ９０１）。この判定条件については、例えば「受信した印刷画像データが２ページ以上であるか」、または「プリンタ２１の印刷スピード（ｐｐｍ）の１０倍以上のページ数であるか」等のページ数を問う条件であればよい。スレーブ処理をさせる必要が無いと判断した場合（Ｓ９０１：ＮＯ）、すなわち、受信した印刷画像データのページ数が所定のページ数以下であると判定した場合には、そのままプリンタ２１においてラスタライズを行い、印刷部２０６で印刷出力用データに変換し（Ｓ９０５）、印刷出力用データを、用紙等の記録材に印刷する（Ｓ９０６）。
【００３９】
受信した印刷画像データが所定のページ数以上のデータであると判定し、スレーブ処理が必要であると判断した場合（Ｓ９０１：ＹＥＳ）、プリンタ２１がマスタプリンタとなって、スレーブ処理の可能なプリンタを検出し、検出された各プリンタの印刷スピードの比率に基づいて印刷画像データをページ毎に分割し、検出された各プリンタへ分割したデータを送信する（Ｓ９０２）。
【００４０】
ステップＳ９０２の分割データ送信処理について、図１０、１１、および１２を参照して具体的に説明する。図１０において、まず、スレーブ処理の可能なプリンタの台数を把握するために、システム内の他プリンタに対して、マスタプリンタであるプリンタ２１から印刷指示データを送信する（Ｓ１００１）。印刷指示データの送信後、印刷画像データを受信可能であることを返答してきたプリンタをスレーブプリンタとして検出する（Ｓ１００２）。ここで、スレーブプリンタにおいて印刷指示データの受信から返答に至るまでの処理は、プリンタ２１からの印刷指示データの受信時に処理中のデータがなく（Ｓ４０３参照）、印刷画像データの受信が可能である通知（Ｓ４０７参照）をマスタプリンタ（プリンタ２１）へ送信しているものである。また、別の印刷ジョブを処理中であるために、新たな印刷画像データの受信が不可能であるプリンタも、プリンタ２１へ不可能である旨の通知を送信することとしている（後述するＳ４１４参照）。
【００４１】
たとえば、プリンタ２２〜２４がスレーブプリンタとして検出された場合、プリンタ２１は、各プリンタへ印刷画像データを分割して送信するためのテーブルを作成する（Ｓ１００３）。ここで毎分当たりの印刷枚数である印刷スピード（単位：ｐｐｍ）比によりページが分割される。図１１は、作成したプリンタテーブルの一例である。図に示すように、例えば、プリンタ２１がクライアントＰＣ１０から２０００ページからなる印刷画像データを受信し、プリンタ２１の印刷スピードが２０ｐｐｍ、プリンタ２２及び２３の印刷スピードが４０ｐｐｍ、プリンタ２４の印刷スピードが１００ｐｐｍである場合、印刷スピード比によるページ分割の結果、プリンタ２１が２００ページ分、プリンタ２２及び２３が４００ページ分、プリンタ２４が１０００ページ分を処理することになる。このプリンタテーブルに基づいて、印刷画像データを、各スレーブプリンタの担当分ごとに分割する（Ｓ１００４）。続いて、図７に示したものと同様に（図とは異なり、ここではマスタプリンタはプリンタ２１である。）、分割データの前後にタグを付与し（Ｓ１００５）、タグが付与されたそれぞれの分割データを、担当するスレーブプリンタへ送信する（Ｓ１００６）。
【００４２】
図９に戻り、プリンタ２１は、分割データを各スレーブプリンタへ送信した後、マスタプリンタ担当分の分割データをラスタライズする（Ｓ９０３）。また、スレーブプリンタによりラスタライズが施された前記分割データを、スレーブプリンタから回収して、印刷出力用データへの復元処理を行い（Ｓ９０４）、印刷出力用データを、用紙等の記録材に印刷する（Ｓ９０６）。なお、ステップＳ９０４において、スレーブプリンタから分割データを回収する時点は、スレーブプリンタが担当する分割データの処理を終了してマスタプリンタに返送してくる時点であり、ステップＳ９０３におけるマスタプリンタのラスタライズ完了と時間的な前後関係は無い。
【００４３】
ステップＳ９０４における印刷出力用データ復元処理について、図１２のフローチャートを参照して説明する。マスタプリンタであるプリンタ２１が、スレーブプリンタから、分割データ返送通知を受信し（Ｓ１２０１）、スレーブプリンタから返送された各分割データを回収する（Ｓ１２０２）と、プリンタ２１は回収データがスレーブプリンタにおいて全て処理済であるか否かを判断する（Ｓ１２０３）。スレーブプリンタから未処理データが返送されてくるのは、プリンタ２１と同様に、スレーブプリンタにおいても、クライアントＰＣ１０からの印刷ジョブを、マスタプリンタからの印刷ジョブよりも優先させて行う機能が付与されているためである。つまり、マスタプリンタであるプリンタ２１からのスレーブ処理中に、クライアントＰＣ１０からマスタ処理すべく新たな印刷指示データを受信した場合に、スレーブプリンタであるプリンタ２２〜２４は、プリンタ２１からのスレーブ処理を中止し、プリンタ２１へ処理途中のデータを返送してくる。このようにラスタライズが施されていない未処理データが含まれている回収データは、図８に示したように、スレーブプリンタによって付与された処理済タグと未処理タグが付与されている。このタグに基づいて、プリンタ２１において、回収データを処理済データと未処理データとに分割し（Ｓ１２０４）、未処理データについてラスタライズする（Ｓ１２０５）。このステップＳ１２０５でラスタライズが施された処理済データと、スレーブプリンタからの処理済データとを併せて、分割処理済データを作成する（Ｓ１２０６）。なお、前述したステップＳ１２０３〜Ｓ１２０６までの処理は、各スレーブプリンタからデータが回収されるたびに行われる。続いて、再びステップＳ１２０３において、スレーブプリンタから回収した分割データが全て処理済であることを確認した後（Ｓ１２０３：ＹＥＳ）、各スレーブプリンタから回収した分割データとマスタプリンタ担当分の分割データとを１つの印刷出力用データに復元する（Ｓ１２０７）。
【００４４】
次に、ステップＳ４０３において、新たな印刷指示データを受信した際に、プリンタ２１がラスタライズなどの処理中ではない場合について述べる。ステップＳ４０９において、ステップＳ４０２において記憶された印刷指示値が１未満である場合（Ｓ４０９：ＹＥＳ）、すなわち、受信した印刷画像データの送信元がマスタプリンタであるプリンタ２２〜２４のいずれかからのものである場合には、ステップＳ４１１へ移行し、処理済データ送信処理を行う。
【００４５】
ステップＳ４１１の処理済データ送信処理について図１３を参照して説明する。プリンタ２１は、受信した印刷画像データをラスタライズし（Ｓ１３０１）、ラスタライズ終了時に、送信元のマスタプリンタに処理を終了した印刷画像データを返送する（Ｓ１３０２）。このラスタライズは、プリンタ２１がマスタプリンタから受けたスレーブ処理であるため、返送する印刷画像データには、プリンタ２１の担当データであることを示すタグが前後に付され、また、クライアントＰＣ１０から印刷ジョブが指示されたことによって、ラスタライズを終了した場合には、処理済データおよび未処理データの分割を示すタグが別途付されている。
【００４６】
次に、ステップＳ４０４において、処理中の印刷画像データに対応する印刷指示値の方が、新たに受信した印刷指示データに対応する印刷指示値以上である場合（Ｓ４０４：ＮＯ）、ステップＳ４１２に進む。すなわち、処理中の印刷画像データがクライアントＰＣ１０からマスタ処理すべく受信したものであり、新たに受信した印刷指示データがマスタプリンタであるプリンタ２２〜２４のいずれかからスレーブ処理すべく受信した場合、または、処理中の印刷画像データがクライアントＰＣ１０からマスタ処理すべく受信したものであり、新たに送信された印刷指示データもクライアントＰＣ１０からマスタ処理すべく受信したものである場合、または、処理中の印刷画像データがマスタプリンタであるプリンタ２２〜２４のいずれかからからスレーブ処理すべく受信したものであり、新たに送信された印刷指示データもマスタプリンタであるプリンタ２２〜２４のいずれかからからスレーブ処理すべく受信したものである場合には、ステップＳ４１２へ移行する。ステップＳ４１２において、新たに受信した印刷指示データに対応する印刷指示値が１であるか否かが判断される。すなわち、新たに受信した印刷指示データが、クライアントＰＣ１０から受信したものなのか、プリンタ２２〜２４のいずれかから受信したものなのかが判断される。印刷指示値が１である場合（Ｓ４１２：ＹＥＳ）、すなわち、新たに受信した印刷指示データがクライアントＰＣ１０から受信したものである場合、ステップＳ４１３へ移行し、マスタ処理可能プリンタ通知処理を行う。
【００４７】
ステップＳ４１３のマスタ処理可能プリンタ通知処理について、図１４を参照して説明する。プリンタ２１はシステム内のマスタ処理中以外のプリンタを検索し（Ｓ１４０１）、クライアントＰＣ１０へ、プリンタ２１がマスタ処理中であることを通知し（Ｓ１４０２）、ステップＳ１４０１において検出したマスタ処理中以外のプリンタを通知する（Ｓ１４０３）。この通知により、クライアントＰＣ１０は、プリンタ２１により検索されたマスタ処理中以外のプリンタへ、印刷ジョブをマスタ処理させるために送信することが可能となる。
【００４８】
また、ステップＳ４１２において、印刷指示値が１でない（印刷指示値が０である）場合（Ｓ４１２：ＮＯ）、すなわち新たに受信した印刷指示データがマスタプリンタであるプリンタ２２〜２４のいずれかから受信したものである場合、プリンタ２１において、既に処理中であることを、印刷指示データの送信元であるマスタプリンタへ通知する（Ｓ４１４）。この場合、当該処理中のデータには、クライアントＰＣ１０およびマスタプリンタからそれぞれ受信した２種のデータがある。
【００４９】
以上のことから、複数のプリンタを用いてラスタライズなどの画像処理を分散処理する画像処理システムにおいて、本実施形態のプリンタは、スレーブ処理のため他のプリンタから転送された印刷ジョブの処理中に、クライアントＰＣから印刷ジョブを受信した場合、他のプリンタから転送された印刷ジョブの処理を中止し、クライアントＰＣから受信した印刷ジョブの処理を行う。これにより、クライアントＰＣから受信した印刷ジョブは、スレーブ処理中の印刷ジョブによって処理待ちとされることがなく実行される。したがって、印刷ジョブの処理の遅延を防止して処理待ちによるユーザストレスを軽減できるとともに、分散処理によるプリンタの稼働率の向上を確保して高い生産性を実現することができる。
【００５０】
また、クライアントＰＣからの印刷ジョブを処理する際に、スレーブ処理可能な他のプリンタを検索し、検索された各プリンタの処理速度に応じて、印刷画像データを分割して送信することにより、分散処理における処理時間の最適化が図られる。
【００５１】
加えて、スレーブ処理が中止された印刷ジョブの印刷画像データには、処理済データと未処理データとを区別するタグが付与されるので、印刷画像データが返送されたマスタプリンタは、未処理データを判別し、継続して処理を行うことが可能である。
【００５２】
さらに、マスタ処理中のプリンタは、新たにクライアントＰＣからマスタ処理すべく新たな印刷ジョブを受信した際には、マスタ処理可能な他のプリンタを検索して、クライアントＰＣへ検索されたプリンタを通知するので、クライアントＰＣは、マスタ処理可能なプリンタへ印刷ジョブを送信することが可能となる。したがって、マスタ処理可能なプリンタが存在する限りにおいて、クライアントＰＣからの印刷ジョブは処理待ちとされることがない。
【００５３】
本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【００５４】
本実施形態においては、ネットワークにプリンタを４台接続しているが、４台に限らず何台接続しても良い。また、プリンタの代わりに、ファクシミリ装置、コピー機、及びそれらを複合した機能を有する多機能周辺機器（ＭＦＰ：Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、さらには、プリンタを制御可能なサーバ等のコンピュータなどが使用されてもよい。
【００５５】
また、スレーブプリンタにおける所定の処理は、ラスタライズに限定されるものではない。たとえば、スレーブプリンタは、マスタプリンタから受信した印刷画像データのうち、ラスタライズを完了した処理済データを、マスタプリンタへ返送せず、スレーブプリンタにおいて印刷出力することとしてもよい。この際には、スレーブプリンタは、処理済データと未処理データを分割して、印刷出力処理を行わせるため、未処理データのみをマスタプリンタへ返送する。また、ユーザが、いずれのプリンタから印刷物が出力されるか把握出来るように、スレーブプリンタおよびマスタプリンタは、各プリンタにおいて印刷出力を行うことを、印刷するページ数などの情報と合わせてクライアントＰＣへ通知するとよい。
【００５６】
本発明において、画像処理装置としてのプリンタにおける各種処理を行う手段は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プログラムは、例えばフレキシブルディスクやＣＤ−ＲＯＭなどのコンピュータ読み取り記憶可能な記憶媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶装置に転送されて記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、画像処理装置の一機能としてその装置のソフトウェアに組み込まれてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態にかかるプリンタが適用された画像処理システムの全体構成を示すブロック図である。
【図２】プリンタの概略構成を示すブロック図である。
【図３】印刷部の概略構成を示す図である。
【図４】プリンタで行われる処理について説明するためのフローチャートである。
【図５】印刷指示への重み付け処理について説明するためのフローチャートである。
【図６】処理済データと未処理データとに分割する処理を説明するためのフローチャートである。
【図７】マスタプリンタが、各スレーブプリンタの担当分ごとに印刷画像データを分割し、分割したデータの前後にタグを付与する状況の一例を示す図である。
【図８】スレーブプリンタが、担当分の印刷画像データを、ラスタライズ処理済および未処理データに分割し、分割したデータの前後にタグを付与する状況の一例を示す図である。
【図９】印刷出力処理について説明するためのフローチャートである。
【図１０】分割データ送信処理について説明するためのフローチャートである。
【図１１】スレーブプリンタへ印刷画像データを分割して送信するためのプリンタテーブルの一例を示す図である。
【図１２】印刷出力用データ復元処理について説明するためのフローチャートである。
【図１３】処理済データ送信処理について説明するためのフローチャートである。
【図１４】マスタ処理可能プリンタ通知処理について説明するためのフローチャートである。
【符号の説明】
【００５８】
１０    クライアントＰＣ、
２１〜２４    プリンタ、
２０１    ＣＰＵ、
２０２    ＲＯＭ、
２０３    ＲＡＭ、
２０４    ハードディスク、
２０５    操作パネル部、
２０６    印刷部、
２０７    ネットワークインターフェイス、
２０８    通信部、
２０９    バス。
【図１】
2005208824.tif 000003
【図２】
2005208824.tif 000004
【図３】
2005208824.tif 000005
【図４】
2005208824.tif 000006
【図５】
2005208824.tif 000007
【図６】
2005208824.tif 000008
【図７】
2005208824.tif 000009
【図８】
2005208824.tif 000010
【図９】
2005208824.tif 000011
【図１０】
2005208824.tif 000012
【図１１】
2005208824.tif 000013
【図１２】
2005208824.tif 000014
【図１３】
2005208824.tif 000015
【図１４】
2005208824.tif 000016