(57)【特許請求の範囲】
【請求項１】
ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段と、
複数のページからなる印刷指示全体を格納する印刷指示格納手段と、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と前記印刷指示格納手段に格納されている印刷指示にアクセスするための参照情報を前記複数の描画処理手段に対してそれぞれ順次配信する配信手段と
前記処理要求を複数格納可能な処理要求格納手段とを有し、
前記複数の描画処理手段は、それぞれ、前記配信手段により配信されてきた参照情報に基づいて前記印刷指示格納手段に格納されている印刷指示にアクセスして、前記配信手段により配信されてきた処理要求により指定されたページの印刷指示を画像データに展開することにより描画処理を実行し、
前記配信手段は、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信する印刷制御装置。
【請求項２】
前記配信手段は、前記処理要求格納手段に格納された処理要求が、後から受信した処理要求に追い越された回数をカウントし、該カウント値が閾値を超えた処理要求については、昇順で配信可能な描画処理手段の有無に関係なく前記複数の描画処理手段のいずれかに対して配信する請求項１記載の印刷制御装置。
【請求項３】
前記複数の描画処理手段は、前記印刷指示の各ページ毎のデータにおいて以降のページの印刷設定に影響が出る命令のみを実行するページスキップ機能を用いて、前記配信手段により配信されてきた処理要求により指定されたページの描画処理を行う請求項１または２記載の印刷制御装置。
【請求項４】
前記複数の描画処理手段は、今回の処理要求により指定されたページが前回の処理要求により指定されたページよりも前のページである降順で処理要求が配信されてきた場合、送信されてきた印刷指示の処理を最初のページから再実行する請求項１から３のいずれか１項記載の印刷制御装置。
【請求項５】
ページ独立なページ記述言語により記述された印刷指示を、ページ独立でないページ記述言語により記述された印刷指示に変換する変換手段をさらに有し、
前記送信手段は、前記変換手段により変換された印刷指示全体を前記複数の描画処理手段に送信する請求項１から４のいずれか１項記載の印刷制御装置。
【請求項６】
ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段と、
複数のページからなる印刷指示全体を格納する印刷指示格納手段と、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と前記印刷指示格納手段に格納されている印刷指示にアクセスするための参照情報を前記複数の描画処理手段に対してそれぞれ順次配信する配信手段と、
前記処理要求を複数格納可能な処理要求格納手段と、
前記複数の描画処理手段により描画処理が行われることにより得られた画像データに基づいて画像を出力する出力手段とを有し、
前記複数の描画処理手段は、それぞれ、前記配信手段により配信されてきた参照情報に基づいて前記印刷指示格納手段に格納されている印刷指示にアクセスして、前記配信手段により配信されてきた処理要求により指定されたページの印刷指示を画像データに展開することにより描画処理を実行し、
前記配信手段は、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信する画像形成システム。
【請求項７】
複数のページからなる印刷指示全体を格納するステップと、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と格納されている印刷指示にアクセスするための参照情報を、ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段に対してそれぞれ順次配信する際に、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信するステップと、
前記複数の描画処理手段において、配信されてきた参照情報に基づいて格納されている印刷指示にアクセスして、配信されてきた処理要求により指定されたページの印刷指示をそれぞれ画像データに展開することにより描画処理を実行するステップと、
前記複数の描画処理手段により描画処理が行われることにより得られた画像データに基づいて画像を出力するステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御装置、画像形成システムおよびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ページ独立でないページ記述言語により記述されたデータをページ単位で分割し、分割された各ページのデータをそれぞれ複数のＲＩＰで処理するようにした画像形成装置が開示されている。
【０００３】
特許文献２には、ページ独立である印刷ジョブを４つの画像処理部に配信し、４つの画像処理部は、どのページの画像処理を行うべきかを指定する処理要求コマンドに基づいてそれぞれ指定されたページの印刷データを作成するようにした画像処理装置が開示されている。
【０００４】
特許文献３には、印刷データの描画処理を複数の画像処理モジュールで並列処理する場合に、各画像処理モジュールにおいて処理待ちとなっているページ量に応じて、印刷データの各ページを動的に画像処理モジュールに割り振るようにした画像処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１５６０５号公報
【特許文献２】特開２００９−１４６２５１号公報
【特許文献３】特開２０１１−０５１２３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、ページ記述言語により表現された印刷指示を複数の描画処理手段によりページ毎に並列処理する際に、効率的に処理を実行することが可能な印刷制御装置、画像形成システムおよびプログラムを提供することである。
【課題を解決するための手段】
【０００８】
［印刷制御装置］
請求項１に係る本発明は、ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段と、
複数のページからなる印刷指示全体を格納する印刷指示格納手段と、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と前記印刷指示格納手段に格納されている印刷指示にアクセスするための参照情報を前記複数の描画処理手段に対してそれぞれ順次配信する配信手段と
前記処理要求を複数格納可能な処理要求格納手段とを有し、
前記複数の描画処理手段は、それぞれ、前記配信手段により配信されてきた参照情報に基づいて前記印刷指示格納手段に格納されている印刷指示にアクセスして、前記配信手段により配信されてきた処理要求により指定されたページの印刷指示を画像データに展開することにより描画処理を実行し、
前記配信手段は、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信する印刷制御装置である。
【００１１】
請求項２に係る本発明は、前記配信手段が、前記処理要求格納手段に格納された処理要求が、後から受信した処理要求に追い越された回数をカウントし、該カウント値が閾値を超えた処理要求については、昇順で配信可能な描画処理手段の有無に関係なく前記複数の描画処理手段のいずれかに対して配信する請求項１記載の印刷制御装置である。
【００１２】
請求項３に係る本発明は、前記複数の描画処理手段が、前記印刷指示の各ページ毎のデータにおいて以降のページの印刷設定に影響が出る命令のみを実行するページスキップ機能を用いて、前記配信手段により配信されてきた処理要求により指定されたページの描画処理を行う請求項１または２記載の印刷制御装置である。
【００１３】
請求項４に係る本発明は、前記複数の描画処理手段が、今回の処理要求により指定されたページが前回の処理要求により指定されたページよりも前のページである降順で処理要求が配信されてきた場合、送信されてきた印刷指示の処理を最初のページから再実行する請求項１から３のいずれか１項記載の印刷制御装置である。
【００１４】
請求項５に係る本発明は、ページ独立なページ記述言語により記述された印刷指示を、ページ独立でないページ記述言語により記述された印刷指示に変換する変換手段をさらに有し、
前記送信手段は、前記変換手段により変換された印刷指示全体を前記複数の描画処理手段に送信する請求項１から４のいずれか１項記載の印刷制御装置である。
【００１５】
［画像形成システム］
請求項６に係る本発明は、ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段と、
複数のページからなる印刷指示全体を格納する印刷指示格納手段と、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と前記印刷指示格納手段に格納されている印刷指示にアクセスするための参照情報を前記複数の描画処理手段に対してそれぞれ順次配信する配信手段と、
前記処理要求を複数格納可能な処理要求格納手段と、
前記複数の描画処理手段により描画処理が行われることにより得られた画像データに基づいて画像を出力する出力手段とを有し、
前記複数の描画処理手段は、それぞれ、前記配信手段により配信されてきた参照情報に基づいて前記印刷指示格納手段に格納されている印刷指示にアクセスして、前記配信手段により配信されてきた処理要求により指定されたページの印刷指示を画像データに展開することにより描画処理を実行し、
前記配信手段は、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信する画像形成システムである。
【００１６】
［プログラム］
請求項７に係る本発明は、複数のページからなる印刷指示全体を格納するステップと、
印刷指示のどのページの描画処理を行うべきかを指定する処理要求と格納されている印刷指示にアクセスするための参照情報を、ページ記述言語により記述された印刷指示に対する描画処理を行う複数の描画処理手段に対してそれぞれ順次配信する際に、前回配信した処理要求により指定されるページよりも次回に配信する処理要求により指定されるページが後のページになる昇順で配信可能な描画処理手段が存在する場合、当該処理要求を昇順で配信可能な描画処理手段に対して配信し、昇順で配信可能な描画処理手段が存在しない場合、当該処理要求を一旦前記処理要求格納手段に格納し、前記処理要求格納手段に格納された複数の処理要求の中から描画処理を指定するページ数が小さい処理要求を順番に選択して、前記複数の描画処理手段に対して配信するステップと、
前記複数の描画処理手段において、配信されてきた参照情報に基づいて格納されている印刷指示にアクセスして、配信されてきた処理要求により指定されたページの印刷指示をそれぞれ画像データに展開することにより描画処理を実行するステップと、
前記複数の描画処理手段により描画処理が行われることにより得られた画像データに基づいて画像を出力するステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１８】
請求項１に係る本発明によれば、ページ記述言語により表現された印刷指示を複数の描画処理手段によりページ毎に並列処理する際に、本構成を有しない場合と比較して、処理要求を複数の描画処理手段に配信する場合に、降順で処理要求を配信する可能性を低くすることにより効率的に処理を実行することが可能な印刷制御装置を提供することができる。
【００２１】
請求項２に係る本発明によれば、請求項１に係る本発明により得られる効果に加えて、処理要求格納手段内に格納された処理要求の配信が一定回数以上遅れてしまうことを防止することが可能な印刷制御装置を提供することができる。
【００２２】
請求項３に係る本発明によれば、請求項１または２に係る本発明により得られる効果に加えて、指定されたページの描画処理を効率的に実行することが可能な印刷制御装置を提供することができる。
【００２３】
請求項４に係る本発明によれば、請求項１から３のいずれか１項に係る本発明により得られる効果に加えて、配信手段から複数の描画処理手段に対して処理要求が降順で配信された場合でも、描画処理手段において処理要求により指定されたページの描画処理を実行することが可能な印刷制御装置を提供することができる。
【００２４】
請求項５に係る本発明によれば、請求項１から４のいずれか１項に係る本発明により得られる効果に加えて、ページ独立なページ記述言語により表現された印刷指示の描画処理を行う場合でも、出力互換性を維持しつつ、複数の描画処理手段によるページ毎の並列処理を、本構成を有しない場合と比較して、効率的に処理を実行することが可能な印刷制御装置を提供することができる。
【００２５】
請求項６に係る本発明によれば、ページ記述言語により表現された印刷指示を複数の描画処理手段によりページ毎に並列処理する際に、本構成を有しない場合と比較して、処理要求を複数の描画処理手段に配信する場合に、降順で処理要求を配信する可能性を低くすることにより効率的に処理を実行することが可能な画像形成システムを提供することができる。
【００２６】
請求項７に係る本発明によれば、ページ記述言語により表現された印刷指示を複数の描画処理手段によりページ毎に並列処理する際に、本構成を有しない場合と比較して、処理要求を複数の描画処理手段に配信する場合に、降順で処理要求を配信する可能性を低くすることにより効率的に処理を実行することが可能なプログラムを提供することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施形態の印刷システムのシステム構成を示す図である。
【図２】本発明の第１の実施形態の印刷システムにおけるコントローラ１０のハードウェア構成を示すブロック図である。
【図３】本発明の第１の実施形態の印刷システムにおけるコントローラ１０の機能構成を示すブロック図である。
【図４】図３中のＲＩＰ処理部５１Ｙの構成を示すブロック図である。
【図５】ＰｏｓｔＳｃｒｉｐｔの構造を説明するための図である。
【図６】ＣＰＳＩにおけるページスキップ機能を説明するための図である。
【図７】ブック印刷を行う場合の面付け処理の具体例を説明するための図である。
【図８】ページ順が連続していない印刷ジョブを実行する場合に、処理要求コマンドを処理待ちの無い描画処理ユニットに対して機械的に配信した場合の様子を示す図である。
【図９】ＲＩＰ制御部５２Ｙの動作の処理の流れを示すフローチャートである。
【図１０】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１１】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１２】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１３】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１４】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１５】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１６】図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を示す図である。
【図１７】あるページ順の処理要求コマンドを処理要求格納部５４Ｙに格納せずに描画処理ユニット５３１Ｙ、５３２Ｙに配信した場合の様子を説明するための図である。
【図１８】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図１９】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２０】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２１】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２２】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２３】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２４】図１７に示したような順番の処理要求コマンドを、本発明の第２の実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を示す図である。
【図２５】処理要求コマンドの配信を遅らせることができる範囲の上限を説明するための図である。
【発明を実施するための形態】
【００２８】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００２９】
[第１の実施形態]
図１は本発明の第１の実施形態の印刷システム（画像形成システム）の構成の一例を示す図である。この印刷システムは、図１に示されるように、前処理装置３と、バッファ装置４と、連続紙に対して印刷を行う印刷装置（画像出力装置）１と、バッファ装置５と、後処理装置６と、コントローラ（印刷制御装置）１０と、端末装置２０とから構成されている。
【００３０】
前処理装置３は、印刷されていない印刷用紙の送り出し等の前処理を行う。後処理装置６は、印刷が終了した印刷用紙の巻き取り等の後処理を行う。バッファ装置４、５は、前処理装置３と印刷装置１との間および、印刷装置１と後処理装置６との間の印刷用紙のテンションの保持等のために設けられている。
【００３１】
端末装置２０は、印刷ジョブ等の印刷指示を生成してネットワーク経由にてコントローラ１０に対して送信する。コントローラ１０は、端末装置２０から送信されてきた印刷指示により印刷装置１の印刷動作を制御する印刷制御装置として機能する。印刷装置１は、コントローラ１０による制御に基づいて印刷指示に応じた画像を連続紙上に出力する。
【００３２】
次に、本実施形態の印刷システムにおけるコントローラ１０のハードウェア構成を、図２を参照して説明する。本実施形態のコントローラ１０は、図２に示されるように、ＣＰＵ１１、メモリ１２、ハードディスクドライブ（ＨＤＤ）等の記憶装置１３、ネットワークを介して端末装置２０との間でデータの送信及び受信を行う通信インタフェース（ＩＦ）部１４、タッチパネルや液晶ディスプレイにより構成されたユーザインタフェース（ＵＩ）装置１５、印刷装置１との間でデータの送受信を行うエンジンＩＦ部１６を有する。そして、これらの構成要素は、制御バス１７を介して互いに接続されている。
【００３３】
ＣＰＵ１１は、メモリ１２または記憶装置１３に格納された印刷制御プログラムに基づいて所定の処理を実行して、コントローラ１０の動作を制御する。
【００３４】
なお、本実施形態では、ＣＰＵ１１は、メモリ１２または記憶装置１３内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをＣＤ−ＲＯＭ等の搬送可能な記憶媒体に格納してＣＰＵ１１に提供することも可能である。
【００３５】
図３は、上記の制御プログラムが実行されることにより実現されるコントローラ１０の機能構成を示すブロック図である。
【００３６】
本実施形態のコントローラ１０は、図３に示されるように、印刷ジョブ分配処理部３１と、担当基本色毎に設けられた４つの画像処理部３２Ｙ〜３２Ｋとを有している。
【００３７】
尚、担当基本色とは、印刷基本色毎に設けられた複数の画像処理部が担当する色のことであり、例えば、印刷基本色が、イエロー、マゼンタ、シアン、ブラックの４色のときには、この色毎に設けられた画像処理部が担当する色のことである。
【００３８】
また、印刷ジョブ分配処理部３１は、端末装置２０から送られてきた印刷ジョブ（印刷指示）のコマンドを解析する機能を有し、ＰＳ解析部４１と、ページ処理要求分配部４２と、印刷ジョブ送信部４３とから構成されている。
【００３９】
ここで、端末装置２０から送信されてくる印刷ジョブを記述するのには、ＰＤＬ（Page Description Language：ページ記述言語）を用いられることが多い。
【００４０】
そして、ページ記述言語には、あるページで行われた印刷リソースの変更内容が他のページにも適用されるページ独立でないページ記述言語と、あるページの描画処理に必要な情報がページ毎にまとまって記述されているページ独立なページ記述言語が存在する。つまり、ページ独立なページ記述言語により表現された印刷ジョブは、比較的容易にページ毎に分割することが可能であるが、ページ独立でないページ記述言語により表現された印刷ジョブをページ毎に分割することは容易には行うことができない。
【００４１】
例えば、ＰＤＦ（Portable Document Format）は、ページ独立なページ記述言語であり、ＰｏｓｔＳｃｒｉｐｔ（登録商標）は、ページ独立でないページ記述言語である。
【００４２】
本実施形態では、ページ独立でない印刷ジョブの例としてＰｏｓｔＳｃｒｉｐｔにより表現された印刷ジョブを用いて説明を行なうが、ページ独立でないページ記述言語により表現された印刷ジョブであれば本発明は同様に適用可能である。
【００４３】
印刷ジョブ送信部４３は、端末装置２０から送られてきた複数ページからなる印刷ジョブ全体を、印刷処理が開始される前に４つの画像処理部３２Ｙ〜３２Ｋに送信する。
【００４４】
ＰＳ解析部４１は、ページ独立でない印刷ジョブであるＰｏｓｔＳｃｒｉｐｔデータが端末装置２０から送られてくると、コマンドの解析を行いページ数等の属性を分析する。
【００４５】
ページ処理要求分配部４２は、ＰＳ解析部４１における解析結果を参照して、印刷ジョブのどのページの画像処理を行うべきかを指定する処理要求コマンドを４つの画像処理部３２Ｙ〜３２Ｋに対してそれぞれ順次送信する。ここでは、ページ処理要求分配部４２は、印刷ジョブにより指定されたページ順で順次処理要求コマンドを画像処理部３２Ｙ〜３２Ｋに対して割り振る。
【００４６】
また、画像処理部３２Ｙ〜３２Ｋは、それぞれ、ページ処理要求送信部４２により送信されてきた処理要求コマンドにより指定されたページの画像データを各色毎の印刷データに展開するためのＲＩＰ（Raster Image Processing）処理部５１Ｙ〜５１Ｋを有する。
【００４７】
なお、画像処理部３２Ｙ〜３２Ｋは、ＲＩＰ処理部５１Ｙ〜５１Ｋにより各色毎に展開された印刷データのうち担当基本色以外の印刷データを対応する他色の画像処理部に転送する転送機能や、ＲＩＰ処理部５１Ｙ〜５１Ｋにより展開された担当基本色の印刷データおよび他色の画像処理部から転送されてきた担当基本色の印刷データを出力する出力機能を備えている。
【００４８】
なお、コントローラ１０には、画像処理部３２Ｙ〜３２Ｋにより生成された印刷データに基づいて、印刷装置１の各色毎の印刷機構部を制御して画像を印刷用紙上に出力する印刷制御部が設けられているが、この図３には明示しない。
【００４９】
図３に示した例では、画像処理部３２Ｙに対しては、１ページ目（Ｐ１）、５ページ目（Ｐ５）、９ページ目（Ｐ９）、・・・の画像データの描画処理を指定するような処理要求コマンドが送信されている。
【００５０】
同様にして、画像処理部３２Ｍに対しては、２ページ目（Ｐ２）、６ページ目（Ｐ６）、１０ページ目（Ｐ１０）、・・・の画像データの描画処理を指定するような処理要求コマンド、画像処理部３２Ｃに対しては、３ページ目（Ｐ３）、７ページ目（Ｐ７）、１１ページ目（Ｐ１１）、・・・の画像データの描画処理を指定するような処理要求コマンド、画像処理部３２Ｋに対しては、４ページ目（Ｐ４）、８ページ目（Ｐ８）、１２ページ目（Ｐ１２）、・・・の画像データに対する描画処理を指定するような処理要求コマンドが送信されている。
【００５１】
そして、画像処理部３２Ｙでは、先ず、印刷ジョブ送信部４３から送信されてきた全体のＰｏｓｔＳｃｒｉｐｔデータのうち、１ページ目の画像データを各色毎の印刷データに展開するラスタライズ処理がＲＩＰ処理部５１Ｙにより行われる。さらに画像処理部３２Ｙは、ラスタライズ処理された印刷データのうち、マゼンタの印刷データＰ１（Ｍ）については画像処理部３２Ｍに転送し、シアンの印刷データＰ１（Ｃ）については画像処理部３２Ｃに転送し、ブラックの印刷データＰ１（Ｋ）については画像処理部３２Ｋに転送する。
【００５２】
同様にして、画像処理部３２Ｍでは、先ず、印刷ジョブ配信部４３により配信された全体のＰｏｓｔＳｃｒｉｐｔデータのうち、ＲＩＰ処理部５１Ｍにより２ページ目を各色毎の印刷データに展開するラスタライズ処理が行われる。さらに画像処理部３２Ｍでは、ラスタライズ処理された印刷データのうち、イエローの印刷データＰ２（Ｙ）については画像処理部３２Ｙに転送し、シアンの印刷データＰ２（Ｃ）については画像処理部３２Ｃに転送し、ブラックの印刷データＰ２（Ｋ）については画像処理部３２Ｋに転送する。
【００５３】
このようにして、画像処理部３２Ｙ〜３２Ｋでは、各ページのラスタライズ処理が順次行われ、得られた各色毎の印刷データは担当色の画像処理部に対して転送される。そして、各色毎に設けられた印刷制御部（不図示）は、生成された各色毎の印刷データに基づいて、印刷装置１の各色の印刷機構部を制御して印刷用紙に対する出力処理を実行する。
【００５４】
次に、ＲＩＰ処理部５１Ｙ〜５１Ｋの構成について説明する。ここでは、ＲＩＰ処理部５１Ｙの構成を図４を参照して説明するが、ＲＩＰ処理部５１Ｍ〜５１Ｋの構成についても同様である。
【００５５】
ＲＩＰ処理部５１Ｙは、図４に示されるように、ＲＩＰ制御部５２Ｙと、３つの描画処理ユニット５３１Ｙ〜５３３Ｙと、処理要求格納部５４Ｙとを備えている。
【００５６】
ＲＩＰ制御部５２Ｙは、ページ処理要求分配部４２により分配された処理要求コマンドを、３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対してそれぞれ順次配信する。
【００５７】
処理要求格納部５４Ｙは、処理要求コマンドを複数格納することができるようになっている。なお、本実施形態においては、説明を簡単にするために処理要求格納部５４Ｙを、４つの処理要求コマンドを格納することが可能なものとして説明する。しかし、処理要求コマンドを格納できる数は処理要求格納部５４Ｙの記憶容量に基づいて決定され、処理要求格納部５４Ｙの記憶容量が増えれば格納可能な処理要求コマンドの数も増えるため、本発明は４つの処理要求コマンドを格納するものに限定されるものではない。
【００５８】
描画処理ユニット５３１Ｙ〜５３３Ｙは、ＣＰＳＩ（Configurable PostScript Interpreter）というソフトウェアにより実現され、ＰｏｓｔＳｃｒｉｐｔにより記述された印刷ジョブに対する描画処理を行ってラスタ形式の印刷データを生成する。この描画処理ユニット５３１Ｙ〜５３３Ｙは、それぞれ、生成した数ページ分の印刷データを格納しておくことが可能なバッファメモリを有している。また、描画処理ユニット５３１Ｙ〜５３３Ｙは、それぞれ、ＲＩＰ制御部５２Ｙから配信されてきた処理要求コマンドを配信されてきた順序でキュー（待ち行列）として格納しておくような構成となっている。
【００５９】
そして、印刷装置１のＹ色に対応した印刷機構では、複数の描画処理ユニット５３１Ｙ〜５３３Ｙにより描画処理が行われることにより得られた印刷データに基づいて画像が出力される。
【００６０】
なお、ＲＩＰ制御部５２Ｙにより処理要求コマンドが送信されてくるため、描画処理ユニット５３１Ｙ〜５３３Ｙは、それぞれ、ＲＩＰ制御部５２Ｙにより配信されてきた処理要求コマンドにより指定されたページの印刷ジョブを画像データに展開することにより描画処理を実行して印刷データを生成する。
【００６１】
なお、図４に示す例では、ＲＩＰ制御部５２Ｙが、処理要求コマンドを３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対して順番に配信する場合が示されている。しかし、本実施形態におけるＲＩＰ制御部５２Ｙは、単に定められた順序で処理要求コマンドを配信するのではなく、配信しようとする４つの処理要求を一旦処理要求格納部５４Ｙに格納し、ページが昇順となるように、処理要求格納部５４Ｙに格納されている４つの処理要求コマンドを格納された順序とは異なる順序で３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対してそれぞれ配信する。
【００６２】
ここで、ページが昇順となるように配信するとは、前回配信した処理要求コマンドにより指定されるページよりも、次回に配信する処理要求コマンドにより指定されるページが後のページになるように処理要求コマンドを配信することを意味する。つまり、３ページの描画処理を指定する処理要求コマンドの次に、４ページの描画処理を指定する処理要求コマンドを配信する場合には、処理要求コマンドを昇順で配信していることになる。
【００６３】
なぜ、ＲＩＰ制御部５２Ｙが、処理要求コマンドを３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対して昇順となるように配信するかという理由を下記において説明する。
【００６４】
上記でも説明したようにＰｏｓｔＳｃｒｉｐｔはページ独立でないページ記述言語である。そのため、あるページで設定されたフォントやフォーム等の印刷リソースの内容が他のページにおいても有効となる。
【００６５】
例えば、図５に示すようにある印刷リソース（○○○）の設定が１ページ目で“Ａ”という内容に設定され、３ページ目で“Ｂ”という内容に変更された場合を用いて説明する。
【００６６】
この図５に示したような場合、４ページ目でこの印刷リソースを用いた描画処理をする場合、３ページ目のコマンドを実行していないと、４ページ目の描画処理を正常に行うことはできない。そのため、４ページ目の印刷ジョブの描画処理を行おうとした場合、１〜３ページ目のコマンドを実行する必要がある。
【００６７】
しかし、４ページ目の印刷ジョブの描画処理が終わった後に、２ページ目の印刷ジョブの描画処理を行おうとした場合、この印刷リソース（○○○）の設定は既に“Ｂ”となってしまっている。そのため、２ページ目の印刷ジョブの描画処理をそのまま行っても正常な描画処理を実行することはできない。
【００６８】
そのため、描画処理ユニット５３１Ｙ〜５３３Ｙは、今回の処理要求コマンドにより指定されたページが前回の処理要求コマンドにより指定されたページよりも前のページである降順で処理要求コマンドが配信されてきた場合、送信されてきた印刷ジョブの処理を最初のページから再実行する。
【００６９】
具体的には、描画処理ユニット５３１Ｙ〜５３３Ｙは、処理要求コマンドにより４ページ目の描画処理が指定され後に、このページよりも前のページである２ページ目の描画処理が指定された場合、送信されてきた印刷ジョブの処理を最初のページである１ページ目から再実行する。
【００７０】
実際には、ＲＩＰ制御部５２Ｙに降順で処理要求コマンドを描画処理ユニット５３１Ｙ〜５３３Ｙに配信する場合、その描画処理ユニットを再起動して印刷ジョブを最初のページから実行し直すように制御する。
【００７１】
このような理由のため、ＲＩＰ制御部５２Ｙは、処理要求コマンドを３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対して昇順で配信する。
【００７２】
描画処理ユニット５３１Ｙ〜５３３Ｙは、上記のようにしてＲＩＰ制御部５２Ｙから配信されてきた処理要求コマンドにより指定されたページの描画処理を行うが、印刷ジョブの最初のページから指定されたページまでの全てのコマンドを実行していたのでは、３つの描画処理ユニット５３１Ｙ〜５３３Ｙにより並列処理を行うメリットが得られない。
【００７３】
そのため、描画処理ユニット５３１Ｙ〜５３３Ｙは、印刷ジョブの各ページのデータにおいて以降のページの印刷設定に影響が出る命令のみを実行するページスキップ機能を用いて、ＲＩＰ制御部５２Ｙにより配信されてきた処理要求コマンドにより指定されたページの描画処理を行う。
【００７４】
ここで、ページ記述言語は、制御コマンドと、描画コマンドとから構成される。制御コマンドとは、使用するフォントやフォームの指定等の印刷リソースを変更するようなコマンドや、ページの区切りを決めるようなコマンドである。また、描画コマンドとは、制御コマンドにより指定された印刷リソースを用いて、ラスタ形式の印刷データを作成するためのコマンドである。
【００７５】
ページ記述言語がこのような構成となっているため、ページ記述言語により表現された印刷ジョブを実行するための処理は、制御コマンドを解析するインタプリタ処理と、描画コマンドを実行してこのインタプリタ処理により得られた解析結果に基づいて描画を行うレンダリング処理とに分けられる。
【００７６】
ここで、あるページのレンダリング処理を行わなくても、以降のページにおける処理に影響は発生しない。しかし、あるインタプリタ処理を行わないと、必要な印刷リソースの設定が行われないため、以降のページにおける処理に影響が発生する可能性がある。
【００７７】
そのため、ある途中ページの処理が指定された場合、描画処理ユニット５３１Ｙ〜５３３Ｙは、指定されたページ以外のページについては、インタプリタ処理でも特に以降のページにおける処理に影響が発生する可能性のある一部の処理のみを実行し、指定されたページについてはインタプリタ処理とレンダリング処理の両方の処理を実行する。
【００７８】
このように処理を指定されたページ以外のページについてはインタプリタ処理の一部のみを実行して、処理を指定されたページまで到達する機能をページスキップ機能という。
【００７９】
例えば、３ページ（Ｐ３）目の処理を指定された場合、図６（Ａ）に示すように、１ページ〜３ページの全ての処理を実行していたのでは時間がかかってしまう。そのため、描画処理ユニット５３１Ｙ〜５３３Ｙは、図６（Ｂ）に示すように、１、２ページ（Ｐ１、Ｐ２）についてはインタプリタ処理の一部のみを実行し、３ページ（Ｐ３）についてはインタプリタ処理とレンダリング処理の両方の処理を実行する。
【００８０】
次に、本実施形態のＲＩＰ処理部５１Ｙにおける動作を図面を参照して説明する。
【００８１】
図３、図４に示したように印刷ジョブにより指定される出力ページ順が連続して増加するような順番となっている場合には、ＲＩＰ制御部５２Ｙは、送信されてきた処理要求コマンドを順次描画処理ユニット５３１Ｙ〜５３３Ｙに割り振って配信すれば、全ての描画処理ユニット５３１Ｙ〜５３３Ｙにおいて処理要求コマンドが昇順で配信されることを実現することができる。
【００８２】
例えば、ＲＩＰ制御部５２Ｙは、配信されてきた処理要求コマンドを順番に描画処理ユニット５３１Ｙ〜５３３Ｙに配信するか、または処理待ちの処理要求コマンドが無い描画処理ユニットを選択して処理要求コマンドを配信するようにすれば良い。
【００８３】
しかし、ブック印刷や印刷ページ指定印刷等のような印刷処理を行う場合、出力ページ順がかならずしも１ページから順番でない場合がある。例えば、ブック印刷では、製本後にページが並ぶようにページの割り振りが行われるため、１ページ、１００ページ、２ページ、９９ページ・・・のようにページがばらばらに指定されて印刷が実行されることになる。
【００８４】
例えば、具体例を図７に示す。図７（Ａ）は、４ページを１枚の用紙に面付けする場合の出力ページ順を示す図である。また、図７（Ｂ）は、１６ページを中とじする場合の出力ページ順を示す図である。
【００８５】
このようなページ順が連続していない印刷ジョブを実行する場合に、処理するページを指定するための処理要求コマンドを各描画処理ユニットに対して順番に機械的に配信した場合の様子を図８に示す。なお、この図８では、説明を簡単にするために、２つの描画処理ユニット５３１Ｙ、５３２Ｙにより描画処理を行うものとして説明する。
【００８６】
この図８では、Ｐ１、Ｐ５、Ｐ２９、Ｐ１３、Ｐ１７、・・・と出力ページの指定が行われているため、描画処理ユニット５３１Ｙ、５３２Ｙについても、それぞれ連続しない処理ページの指定が行われている。例えば、描画処理ユニット５３１Ｙに対しては、Ｐ１、Ｐ２９、Ｐ１７、Ｐ９、Ｐ３７・・・という順序で処理要求コマンドが送信されている。また、描画処理ユニット５３２Ｙに対しては、Ｐ５、Ｐ１３、Ｐ２１、Ｐ３３、Ｐ２５・・・という順序で処理要求コマンドが送信されている。
【００８７】
しかし、描画処理ユニット５３１Ｙでは、Ｐ２９の描画処理を実行した後にＰ１７の描画処理が行われるため、上記で説明した理由により、再起動を行って印刷ジョブの先頭から１６ページ目までのインタプリタ処理を再実行し直す必要がある。さらに、描画処理ユニット５３１Ｙでは、Ｐ１７の描画処理を実行した後にＰ９の描画処理が行われるため、再起動を行って印刷ジョブの先頭から８ページ目までのインタプリタ処理を再実行し直す必要がある。
【００８８】
また、描画処理ユニット５３３ＹについてもＰ３３の次にＰ２５というように降順で処理要求コマンドが送信されているため、同様に再起動を行って印刷ジョブの先頭から２４ページ目までのインタプリタ処理を再実行し直す必要がある。
【００８９】
このように、ページ処理要求分配部４２から分配されてくる処理要求コマンドのページ順が連続しておらず描画処理を指定するページが昇順になっていないような場合、本実施形態におけるＲＩＰ制御部５２Ｙは、配信しようとする４つの処理要求コマンドを一旦処理要求格納部５４Ｙに格納することにより、前回配信した処理要求コマンドにより指定されるページよりも、次回に配信する処理要求コマンドにより指定されるページが後のページになる昇順となるように、処理要求コマンドを並び替えて描画処理ユニット５３１Ｙ、５３２Ｙに配信する。
【００９０】
具体的には、ＲＩＰ制御部５２Ｙは、配信しようとする４つの処理要求コマンドを一旦処理要求格納部５４Ｙに格納し、処理要求格納部５４Ｙに格納された４つの処理要求コマンドの中から描画処理を指定するページ数が小さい処理要求コマンドを順番に選択して、描画処理ユニット５３１Ｙ、５３２Ｙに対して配信する。
【００９１】
このような配信方法に基づいて配信処理を行う場合のＲＩＰ制御部５２Ｙの動作の処理の流れを図９のフローチャートに示す。
【００９２】
ＲＩＰ制御部５２Ｙは、先ず、ページ処理要求分配部４２により分配された処理要求コマンドがあるか否か、つまり配信すべき処理要求コマンドがあるか否かを判定する（ステップＳ１０１）。
【００９３】
配信すべき処理要求コマンドがある場合、ＲＩＰ制御部５２Ｙは、４つの処理要求コマンドを処理要求格納部５４Ｙに格納する（ステップＳ１０２）。
【００９４】
そして、ＲＩＰ制御部５２Ｙは、処理要求格納部５４Ｙに格納されている処理要求コマンドの中から、描画処理を指定するページ数が最も小さい処理要求コマンドを選択する（ステップＳ１０３）。そして、ＲＩＰ制御部５２Ｙは、選択した処理要求コマンドを描画処理ユニット（ＣＰＳＩ）に配信する（ステップＳ１０４）。
【００９５】
そして、ＲＩＰ制御部５２Ｙは、処理要求格納部５４Ｙに格納されている処理要求コマンドが無くなるまで、ステップＳ１０３、Ｓ１０４の処理を繰り返し（ステップＳ１０５においてＮｏ）、処理要求コマンドが無くなると（ステップＳ１０５においてＹｅｓ）ステップＳ１０１の処理に戻る。
【００９６】
そして、図９に示したフローチャートに基づいて図７に示した印刷ジョブを印刷データに展開する場合に、ＲＩＰ制御部５２Ｙが処理要求コマンドを配信する際の動作を図１０〜図１６を参照して説明する。
【００９７】
先ず、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにもまだ処理要求コマンドが送信されていない場合、ＲＩＰ制御部５２Ｙは、Ｐ１の処理要求コマンドを描画処理ユニット５３１Ｙに配信し、Ｐ５の処理要求コマンドを描画処理ユニット５３２Ｙに配信する。
【００９８】
そして、ＲＩＰ制御部５２Ｙは、図１０に示すように、Ｐ２９、Ｐ１３、Ｐ１７、Ｐ２１という４つの処理要求コマンドを処理要求格納部５４Ｙに一旦格納する。
【００９９】
次に、ＲＩＰ制御部５２Ｙは、図１１に示すように、処理要求格納部５４Ｙに格納された４つの処理要求コマンドの中から最もページ数の小さいＰ１３の処理要求コマンドを選択して描画処理ユニット５３１Ｙ配信する。
【０１００】
次に、ＲＩＰ制御部５２Ｙは、図１２に示すように、処理要求格納部５４Ｙに格納された３つの処理要求コマンドの中から最もページ数の小さいＰ１７の処理要求コマンドを選択して描画処理ユニット５３２Ｙ配信する。
【０１０１】
同様にして、ＲＩＰ制御部５２Ｙは、図１３に示すように、処理要求格納部５４Ｙに格納された２つの処理要求コマンドの中から最もページ数の小さいＰ２１の処理要求コマンドを選択して描画処理ユニット５３１Ｙ配信する。
【０１０２】
最後に、ＲＩＰ制御部５２Ｙは、図１４に示すように、処理要求格納部５４Ｙに格納された残りの処理要求コマンドであるＰ２９の処理要求コマンドを選択して描画処理ユニット５３２Ｙ配信する。
【０１０３】
そして、処理要求格納部５４Ｙが空になったことにより、ＲＩＰ制御部５２Ｙは、図１５に示すように、次の４つの処理要求コマンドＰ９、Ｐ３３、Ｐ３７、Ｐ２５を処理要求格納部５４Ｙに格納する。
【０１０４】
そして、図１６に示すように、処理要求格納部５４Ｙに格納された４つの処理要求コマンドＰ９、Ｐ３３、Ｐ３７、Ｐ２５は、ページ順が小さいものから順に描画処理ユニット５３１Ｙ、５３２Ｙに順次配信されていく。
【０１０５】
なお、図１０〜図１６では、描画処理ユニット５３１Ｙ、５３２Ｙに配信された処理要求コマンドが蓄積されていくように示されている。しかし、処理要求コマンドの配信と並行して描画処理ユニット５３１Ｙ、５３２Ｙにおける描画処理が実行され処理が実行された処理要求コマンドはキューから削除されていくため、図１０〜図１６に示すように処理要求コマンドが処理待ちのキューに蓄積されていくわけではない。
【０１０６】
図８と図１６を比較すると分かるように、同じ配列の処理要求コマンドを配信する場合に、処理要求コマンドを処理要求格納部５４Ｙに一旦格納してから配信することにより、図８では降順に配信される回数が３回であったものが図１６では１回に減っていることが分かる。
【０１０７】
[第２の実施形態]
次に、本発明の第２の実施形態の印刷システムについて説明する。
【０１０８】
本実施形態の印刷システムでは、上記で説明した第１の実施形態に対して、処理要求格納部５４Ｙを用いたＲＩＰ制御部５２Ｙによる処理要求コマンドの配信方法が異なるのみである。そのため、以下の説明では、ＲＩＰ制御部５２Ｙによる処理要求コマンドの配信方法のみを説明する。
【０１０９】
本実施形態におけるＲＩＰ制御部５２Ｙは、配信しようとする処理要求コマンドを常に処理要求格納部５４Ｙに一旦格納してから配信を行うのではなく、処理要求コマンドを昇順で配信可能な描画処理ユニットが存在しない場合に、その処理要求コマンドを処理要求格納部５４Ｙに格納し、昇順で配信可能になった場合に処理要求格納部５４Ｙに格納されている処理要求コマンドを複数の描画処理ユニットのいずれかに対して配信する。
【０１１０】
また、本実施形態におけるＲＩＰ制御部５２Ｙは、処理要求格納部５４Ｙに格納された処理要求コマンドが、後から受信した処理要求コマンドに追い越された回数をカウントし、そのカウント値が閾値を超えた処理要求コマンドについては、昇順で配信可能な描画処理ユニットの有無に関係なく複数の描画処理ユニットのいずれかに対して配信する。
【０１１１】
次に、本実施形態の印刷システムの動作を図面を参照して詳細に説明する。
【０１１２】
先ず、本実施形態の印刷システムにおけるＲＩＰ制御部５２Ｙによる処理要求コマンドの配信方法を説明するために、あるページ順の処理要求コマンドを処理要求格納部５４Ｙに格納せずに描画処理ユニット５３１Ｙ、５３２Ｙに配信した場合の様子を図１７に示す。
【０１１３】
なお、本実施形態の説明においても、説明を簡単にするために２つの描画処理ユニット５３１Ｙ、５３２Ｙに対して処理要求コマンドを配信する場合を用いて説明する。
【０１１４】
この図１７では、Ｐ１７、Ｐ１３、Ｐ１、Ｐ９、Ｐ２１、・・・と出力ページの指定が行われているため、描画処理ユニット５３１Ｙ、５３２Ｙについても、それぞれ連続しない処理ページの指定が行われている。例えば、描画処理ユニット５３１Ｙに対しては、Ｐ１７、Ｐ１、Ｐ２１、Ｐ２５・・・という順序で処理要求コマンドが送信されている。また、描画処理ユニット５３２Ｙに対しては、Ｐ１３、Ｐ９、Ｐ５、Ｐ４・・・という順序で処理要求コマンドが送信されている。
【０１１５】
つまり、描画処理ユニット５３１Ｙに対しては、Ｐ１７の処理要求コマンドの次に降順でＰ１の処理要求コマンドが配信されている。
【０１１６】
また、描画処理ユニット５３２Ｙに対しては、Ｐ１３の処理要求コマンドの次に降順でＰ９の処理要求コマンドが配信され、Ｐ９の処理要求コマンドの次に降順でＰ５の処理要求コマンドが配信され、Ｐ５の処理要求コマンドの次に降順でＰ４の処理要求コマンドが配信されている。
【０１１７】
そして、この図１７に示したような順番の処理要求コマンドを本実施形態におけるＲＩＰ制御部５２Ｙにより配信する際の動作を図１８〜図２４を参照して説明する。
【０１１８】
先ず、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにもまだ処理要求コマンドが送信されていない場合、ＲＩＰ制御部５２Ｙは、Ｐ１７の処理要求コマンドを描画処理ユニット５３１Ｙに配信し、Ｐ１３の処理要求コマンドを描画処理ユニット５３２Ｙに配信する。
【０１１９】
そして、ＲＩＰ制御部５２Ｙは、図１８に示すように、Ｐ１の処理要求コマンドを配信しようとするが、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにも昇順で配信することができないため、このＰ１の処理要求コマンドを処理要求格納部５４Ｙに格納する。ここで、Ｐ１の処理要求コマンドに対して設定されている他の処理要求コマンドに追い越された回数を示すカウント値の値は“０”となっている。
【０１２０】
次に、ＲＩＰ制御部５２Ｙは、図１９に示すように、Ｐ９の処理要求コマンドを配信しようとするが、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにも昇順で配信することができないため、このＰ９の処理要求コマンドも処理要求格納部５４Ｙに格納する。ここで、Ｐ９の処理要求コマンドに対して設定されている他の処理要求コマンドに追い越された回数を示すカウント値の値は“０”となっている。
【０１２１】
次に、ＲＩＰ制御部５２Ｙは、図２０に示すように、Ｐ２１の処理要求コマンドを配信しようとする。そして、このＰ２１の処理要求コマンドは、描画処理ユニット５３１Ｙに昇順で配信可能であるため、Ｐ２１の処理要求コマンドは描画処理ユニット５３１Ｙに配信される。
【０１２２】
そして、ＲＩＰ制御部５２Ｙは、Ｐ２１の処理要求コマンドを描画処理ユニット５３１Ｙに配信する際に、処理要求格納部５４Ｙに格納されているＰ１、Ｐ９の処理要求コマンドのカウント値の値をそれぞれ“１”に変更する。
【０１２３】
次に、ＲＩＰ制御部５２Ｙは、図２１に示すように、Ｐ５の処理要求コマンドを配信しようとするが、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにも昇順で配信することができないため、このＰ５の処理要求コマンドも処理要求格納部５４Ｙに格納する。ここで、Ｐ５の処理要求コマンドに対して設定されている他の処理要求コマンドに追い越された回数を示すカウント値の値は“０”となっている。
【０１２４】
次に、ＲＩＰ制御部５２Ｙは、図２２に示すように、Ｐ２５の処理要求コマンドを配信しようとする。そして、このＰ２５の処理要求コマンドは、描画処理ユニット５３２Ｙに昇順で配信可能であるため、Ｐ２５の処理要求コマンドは描画処理ユニット５３２Ｙに配信される。
【０１２５】
そして、ＲＩＰ制御部５２Ｙは、Ｐ２５の処理要求コマンドを描画処理ユニット５３２Ｙに配信する際に、処理要求格納部５４Ｙに格納されているＰ１、Ｐ９の処理要求コマンドのカウント値の値をそれぞれ“２”に変更し、Ｐ５の処理要求コマンドのカウント値の値をそれぞれ“１”に変更する。
【０１２６】
次に、ＲＩＰ制御部５２Ｙは、図２３に示すように、Ｐ４の処理要求コマンドを配信しようとするが、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにも昇順で配信することができないため、このＰ４の処理要求コマンドも処理要求格納部５４Ｙに格納する。ここで、Ｐ４の処理要求コマンドに対して設定されている他の処理要求コマンドに追い越された回数を示すカウント値の値は“０”となっている。
【０１２７】
そして、処理要求格納部５４Ｙに格納されている処理要求コマンドのカウント値が、ある設定された閾値（例えば５、１０のような値）を超えると、ＲＩＰ制御部５２Ｙは、図２４に示すように、昇順で配信可能な描画処理ユニットが存在しない場合でも、カウント値が閾値を超えた処理要求コマンドを強制的に描画処理ユニット５３１Ｙ、５３２Ｙのいずれかに配信する。
【０１２８】
図２４に示す例では、処理要求格納部５４Ｙに格納されていた４つの処理要求コマンドはページが小さい順に配信されている。そして、この図２４に示した例においても、描画処理ユニット５３１Ｙ、５３２Ｙのいずれにおいても処理要求コマンドが降順で配信されている。
【０１２９】
しかし、図１７と図２４を比較すると分かるように、同じ配列の処理要求コマンドを配信する場合に、処理要求コマンドを処理要求格納部５４Ｙに一旦格納してから配信することにより、図１７では降順に配信される回数が４回であったものが図２４では２回に減っていることが分かる。
【０１３０】
[配信順入れ替えの上限]
なお、各ＲＩＰ処理部５１Ｙ〜５１Ｋにおいて描画処理を行うページ順を上記第１および第２の実施形態における方法により入れ替えた場合でも、描画処理後の画像データを処理要求コマンドにより指示されたページ順で印刷しなければならない。そのため、ＲＩＰ処理部５１Ｙ〜５１Ｋにおいて描画処理が行われた後の画像データをバッファメモリ等に格納しておき、当初の処理要求コマンドにより指定されたページ順で印刷装置１に出力する必要がある。そのため、予め用意されたバッファメモリの容量を超えて、描画処理を行うページ順を大幅に入れ替えてしまった場合、描画処理後の画像データの入れ替えを行うことができずに印刷処理が停止してしまう可能性がある。そのため、処理要求コマンドの配信を本来の配信順から遅くすることが可能な範囲は、描画処理後の画像データを格納するためのバッファメモリの容量に応じて設定する必要がある。
【０１３１】
また、印刷完了までの時間を短縮するため、ＲＩＰ処理部５１Ｙ〜５１ＫにおいてＲＩＰ処理を行いながら、印刷装置１では印刷処理を実行するようなことが行われている。しかし、印刷装置１における各ページ毎の印刷速度はほぼ一定なのに対して、各ページのＲＩＰ処理に必要な時間は印刷内容に応じて大幅に異なる。そのため、本実施形態のように描画処理のページ順を入れ替えた場合、あるページの描画処理が、印刷順序が後ろの他のページの描画処理よりも後回しとなって、印刷処理に必要な時までに画像データが完成せずに印刷処理が停止してしまうような可能性もある。
【０１３２】
例えば、図２５に示すように、Ｐ５の処理要求コマンドに対するＲＩＰ処理（描画処理）をできるだけ降順とならないようＰ１４よりも後ろに移動させた場合について説明する。このような場合、Ｐ８、Ｐ１２、Ｐ１４のＲＩＰ済みの画像データがバッファメモリに格納された後に、Ｐ５のＲＩＰ処理が行われる。しかし、Ｐ１２、Ｐ１４のＲＩＰ処理が長時間を要するような処理であった場合、Ｐ５のＲＩＰ処理が完了する前に印刷装置１において５ページ（Ｐ５）の印刷をしなければならないタイミングとなってしまうと５ページの印刷処理を実行することができずに印刷停止となってしまう。
【０１３３】
そのため、処理要求コマンドの配信を本来の配信順から遅くすることが可能な範囲を設定し、設定されたページ順以上配信順序を入れ替えることがないようにする必要がある。
【０１３４】
[変形例]
上記第１および第２の実施形態では、印刷ジョブ送信部４３から画像処理部３２Ｙ〜３２Ｋに対して印刷ジョブ全体を送信するようにしているが、本発明はこのような構成に限定されるものではない。本発明は、複数のページからなる印刷ジョブ全体を格納部に格納しておき、印刷ジョブ送信部４３から画像処理部３２Ｙ〜３２Ｋに対して、印刷ジョブ全体を送信する替わりに、この格納部に格納されている印刷ジョブにアクセスするためのリファレンスデータ（参照情報）を送信するような場合でも適用可能である。
【０１３５】
このような構成とした場合、ＲＩＰ処理部５１Ｙにおいては、ＲＩＰ制御部５２Ｙから描画処理ユニット５３１Ｙ〜５３３Ｙに対して、処理要求コマンドとともにリファレンスデータが配信される。そして、描画処理ユニット５３１Ｙ〜５３３Ｙは、それぞれＲＩＰ制御部５２Ｙから配信されてきたリファレンスデータに基づいて格納部に格納されている印刷ジョブにアクセスして、配信されてきた処理要求コマンドにより指定されたページの印刷ジョブを画像データに展開することにより描画処理を実行する。
【０１３６】
また、上記第１および第２の実施形態では、ページ独立でないページ記述言語であるＰｏｓｔＳｃｒｉｐｔにより記述された印刷ジョブを実行する場合を用いて説明したが、本発明はこれに限定されるものではなく、あるページで行われた印刷設定に関する変更内容が他のページには適用されないページ独立なページ記述言語であるＰＤＦにより記述された印刷ジョブを実行する場合でも同様に本発明を適用することができるものである。この場合には、印刷ジョブ分配処理部３１または画像処理部３２Ｙ〜３２ＫのいずれかにおいてＰＤＦデータをＰｏｓｔＳｃｒｉｐｔデータに変換するための変換手段を設けるようにすればよい。そして、印刷ジョブ送信部４３は、この変換手段により変換されたＰｏｓｔＳｃｒｉｐｔデータを画像処理部３２Ｙ〜３２Ｋに送信するようにすれば良い。
【０１３７】
このような構成とすることにより、ＰＤＦの描画処理をＰｏｓｔＳｃｒｉｐｔに変換することなく直接行う描画方式を用いることなく、従来から使用されているＣＰＳＩを用いてＰＤＦデータの描画処理を行う場合でも、複数の描画処理ユニットによるページ単位での並列処理が実行される。
【０１３８】
さらに、上記第１および第２の実施形態では、処理要求格納部５４Ｙを、処理要求コマンドを配信するＲＩＰ制御部５２Ｙに対して設けていたが、描画処理を行う描画処理ユニット５３１Ｙ〜５３３Ｙ内に複数の処理要求コマンドを格納する格納部を設けて、ＲＩＰ制御部５２Ｙから配信されてきた処理要求コマンドを一旦格納して、配信されてきた順序とは異なる順序で処理要求コマンドの処理を行うようにしてもよい。
【符号の説明】
【０１３９】
１    印刷装置
３    前処理装置
４、５    バッファ装置
６    後処理装置
１０、１０ｂ    コントローラ
１１    ＣＰＵ
１２    メモリ
１３    記憶装置
１４    通信インタフェース（ＩＦ）部
１５    ユーザインタフェース（ＵＩ）装置
１６    エンジンインタフェース（ＩＦ）部
１７    制御バス
２０    端末装置
３１    印刷ジョブ分配処理部
３２Ｙ〜３２Ｋ    画像処理部
４１    ＰＳ分析部
４２    ページ処理要求分配部
４３  印刷ジョブ送信部
４４  ＰＤＦジョブ格納部
５１Ｙ〜５１Ｋ    ＲＩＰ処理部
５２Ｙ    ＲＩＰ制御部
５３１Ｙ〜５３３Ｙ    描画処理ユニット（ＣＰＳＩ）
５４Ｙ    処理要求格納部
【要約】
【課題】ページ記述言語により表現された印刷指示を複数の描画処理手段によりページ毎に並列処理する際に、効率的に処理を実行する。
【解決手段】描画処理ユニット５３１Ｙ〜５３３Ｙには、ページ独立でないページ記述言語により記述された複数ページからなる印刷ジョブ全体が送信されてくる。ＲＩＰ制御部５２Ｙは、配信しようとする４つの処理要求を一旦処理要求格納部５４Ｙに格納し、ページが昇順となるように、処理要求格納部５４Ｙに格納されている４つの処理要求コマンドを格納された順序とは異なる順序で３つの描画処理ユニット５３１Ｙ〜５３３Ｙに対してそれぞれ配信する。描画処理ユニット５３１Ｙ〜５３３Ｙは、それぞれ、ＲＩＰ制御部５２Ｙにより配信されてきた処理要求コマンドにより指定されたページの印刷ジョブを画像データに展開して印刷データを生成する。
【選択図】図４【図１】
0005141995.tif 000002
【図２】
0005141995.tif 000003
【図３】
0005141995.tif 000004
【図４】
0005141995.tif 000005
【図５】
0005141995.tif 000006
【図６】
0005141995.tif 000007
【図７】
0005141995.tif 000008
【図８】
0005141995.tif 000009
【図９】
0005141995.tif 000010
【図１０】
0005141995.tif 000011
【図１１】
0005141995.tif 000012
【図１２】
0005141995.tif 000013
【図１３】
0005141995.tif 000014
【図１４】
0005141995.tif 000015
【図１５】
0005141995.tif 000016
【図１６】
0005141995.tif 000017
【図１７】
0005141995.tif 000018
【図１８】
0005141995.tif 000019
【図１９】
0005141995.tif 000020
【図２０】
0005141995.tif 000021
【図２１】
0005141995.tif 000022
【図２２】
0005141995.tif 000023
【図２３】
0005141995.tif 000024
【図２４】
0005141995.tif 000025
【図２５】
0005141995.tif 000026