(57)【要約】【課題】  長大な文書の場合、RIPエンジンは、文書を完全にプリントすることができる前に必要なラスタイメージ処理を実行するために、非常に長い時間がかかる。【解決手段】  本発明は、ラスタイメージ処理する方法であって、プリントジョブに対してページカウントを求めることと、複数の区画を前記プリントジョブについて指定することと、ラスタイメージ処理するために、前記プリントジョブの前記区画のそれぞれを、複数のラスタイメージ処理（RIP）エンジンのうちの１つに割当てることと、前記RIPエンジンからの複数のラスタイメージ処理済み区画を、再統合してラスタイメージ処理済み出力ファイルにすることを含み、前記ラスタイメージ処理済み区画のそれぞれは、該区画のうちの対応する１つをラスタイメージ処理することによって生成される。   【選択図】図１
2004199687.tif 000002
【特許請求の範囲】
【請求項１】
ラスタイメージ処理する方法であって、
プリントジョブに対してページカウントを求めることと、
複数の区画を前記プリントジョブについて指定することと、
ラスタイメージ処理するために、前記プリントジョブの前記区画のそれぞれを、複数のラスタイメージ処理（RIP）エンジンのうちの１つに割当てることと、
前記RIPエンジンからの複数のラスタイメージ処理済み区画を、再統合してラスタイメージ処理済み出力ファイルにすることを含み、前記ラスタイメージ処理済み区画のそれぞれは、該区画のうちの対応する１つをラスタイメージ処理することによって生成されるものである、前記方法。
【請求項２】
前記プリントジョブ全体を前記RIPエンジンに送出することをさらに含む請求項１に記載の方法。
【請求項３】
前記区画のそれぞれに対して区画RIPステータスを維持することをさらに含む請求項１に記載の方法。
【請求項４】
前記RIPエンジンのうちの１つによる前記ラスタイメージ処理済み区画のうちの１つの生成が完了した後に、前記RIPエンジンのうちの１つから前記ラスタイメージ処理済み区画のうちの１つをラスタイメージ処理マネージャに送出することをさらに含む請求項１に記載の方法。
【請求項５】
前記プリントジョブの前記区画の前記ラスタイメージ処理を実行するために利用可能な複数のRIPエンジンを確定することをさらに含む請求項１に記載の方法。
【請求項６】
前記RIPエンジンのそれぞれによって、前記区画のそれぞれの前記ラスタイメージ処理の時間を追跡することをさらに含む請求項１に記載の方法。
【請求項７】
プロセッサとメモリとを有するプロセッサ回路と、
前記メモリに格納され前記プロセッサによって実行可能なラスタイメージ処理（RIP）マネージャと、を含むラスタイメージ処理システムであって、該RIPマネージャは、
プリントジョブに対してページカウントを求めるロジックと、
前記プリントジョブの複数の区画を指定するロジックと、
前記プリントジョブの前記区画のそれぞれを、ラスタイメージ処理するために複数のラスタイメージ処理（RIP）エンジンのうちの１つに割当てるロジックと、
前記RIPエンジンからの複数のラスタイメージ処理済み区画を再統合してラスタイメージ処理済み出力ファイルにするロジックであって、前記ラスタイメージ処理済み区画のそれぞれを該区画のうちの対応する１つをラスタイメージ処理することによって生成するロジックと、をさらに含む、ラスタイメージ処理システム。
【請求項８】
前記RIPマネージャは、前記プリントジョブ全体を前記RIPエンジンに送出するロジックをさらに含む、請求項７に記載のシステム。
【請求項９】
前記RIPマネージャは、前記区画のそれぞれに対して区画RIPステータスを維持するロジックをさらに含む、請求項７に記載のシステム。
【請求項１０】
前記RIPマネージャは、前記RIPエンジンのうちの１つから、該RIPエンジンのうちの１つに割当てられた区画の前記ラスタイメージ処理が完了したというメッセージを受取ると、前記RIPエンジンのうちの１つからラスタイメージ処理済み区画に対する要求を送出するロジックをさらに含む、請求項７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
プリントの分野では、長大な文書をプリントする間、長大なプリントジョブに対してラスタイメージ処理を実行する。
【背景技術】
【０００２】
特に、プリント装置を駆動してページ上に種々のピクセルをプリントさせること等を行うために、ラスタビットに変換しなければならない複数のページ記述言語のうちの１つで、文書を具体化する場合がある。ラスタイメージ処理を、たとえば、ラスタイメージ処理（Raster Image Processing（RIP））エンジンによって実行することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
不都合なことには、長大な文書の場合、RIPエンジンは、文書を完全にプリントすることができる前に必要なラスタイメージ処理を実行するために、非常に長い時間がかかる可能性がある。
【課題を解決するための手段】
【０００４】
本発明のラスタイメージ処理する方法は、プリントジョブに対してページカウントを求めることと、複数の区画を前記プリントジョブについて指定することと、ラスタイメージ処理するために、前記プリントジョブの前記区画のそれぞれを、複数のラスタイメージ処理（RIP）エンジンのうちの１つに割当てることと、前記RIPエンジンからの複数のラスタイメージ処理済み区画を、再統合してラスタイメージ処理済み出力ファイルにすることを含み、前記ラスタイメージ処理済み区画のそれぞれは、該区画のうちの対応する１つをラスタイメージ処理することによって生成される。
【０００５】
本発明を、以下の図面を参照して理解することができる。図面の要素は、必ずしも一定の比率で縮小されていない。また、図面において、いくつかの図を通して同じ参照番号は対応する部分を示している。
【発明を実施するための最良の形態】
【０００６】
図１を参照して、本発明の実施形態によるプリントジョブ１０３のラスタイメージ処理（RIP）動作１００の例を示すブロック図を示す。これに関し、図１のブロック図は、本明細書で説明する後の図を参照してより詳細に説明する例示的なRIP動作１００の概観を提供する。
【０００７】
プリントジョブ１０３は、プリントされるページ記述言語で表される文書の実施形態を含む。まず、プリントジョブ１０３をRIPマネージャ１０６に与える。RIPマネージャ１０６は最初に、ページカウントを求める。ページカウントは、プリントジョブ１０３のページの総数である。ページカウントを求めることができると仮定する。この場合、RIPマネージャ１０６は、プリントジョブ１０３の複数の区画（partition）を求める。プリントジョブ１０３は、所定のパイプライン１１３に関連するRIPエンジン１０９に与えられるものである。区画を、概して連続的であっても非連続的であってもよいプリントジョブの総ページ数のサブセットとして定義する。一旦区画が既知となると、RIPマネージャ１０６は、データベースまたは他のデータ構造に、区画のそれぞれのRIPのステータスを追跡するために採用される区画仕様を生成する。これに関して、区画仕様における区画のそれぞれに対し、区画RIPステータスを維持する。最初は、区画のそれぞれに対する区画RIPステータスを、「未割当」または等価な値であるように設定する。
【０００８】
その後、RIPマネージャ１０６は、ラスタイメージ処理するために、それぞれのパイプライン１１３に関連する１つまたは複数のRIPエンジン１０９に区画を割当てる。いずれのRIPエンジン１０９も、プリントジョブをRIPするために選択されるそれぞれのパイプライン１１３に目下関連しない場合、区画・プリントジョブは、待ち行列に入れられ、少なくとも１つのRIPエンジン１０９がそれぞれのパイプライン１１３に割当てられるまで待機する。区画のそれぞれをRIPエンジン１０９に割当てる際、RIPマネージャ１０６は、区画割当１１６をそれぞれのRIPエンジン１０９に送出する。区画割当１１６は、それぞれのRIPエンジン１０９によってRIPされるプリントジョブ１０３にある複数のページを特定する。それぞれのRIPエンジン１０９に区画が割当てられると、それぞれの区画に関連する区画RIPステータスは、「割当済み」または等価の値として更新される。
【０００９】
RIPエンジン１０９は、一旦区画割当１１６を受取ると、RIPエンジン１０９によってアクセス可能なRIPエンジン１０９にローカルなメモリに、プリントジョブ１０３のコピーがあるか否かを判断する。プリントジョブ１０３がローカルメモリに格納されていない場合、RIPエンジン１０９は、RIPマネージャ１０６に対してプリントジョブ１０３のコピーを要求する。要求に応じて、RIPマネージャ１０６は、プリントジョブ１０３のコピーをRIPエンジン１０９に送出する。そして、RIPエンジン１０９は、区画割当１１６によって指定されるようにプリントジョブ１０３の区画をRIPし始め、それによりRIP済み区画１１９を生成する。このため、RIP済み区画１１９は、プリントジョブ１０３にある文書のRIP済み部分を含む。プリントジョブ１０３は、それぞれの区画割当１１６において指定されるページに対応する。一旦終了すると、RIPエンジン１０９は、RIPマネージャ１０６に対し、割当てられた区画のRIPが完了したことを通知する。
【００１０】
これに応じて、RIPマネージャ１０６はRIP済み区画１１９をアップロードし、それをRIPマネージャ１０６にローカルなメモリに格納する。RIP済み区画が、一旦RIPマネージャ１０６にローカルなメモリに成功裡にアップロードされると、RIPマネージャ１０６は、区画RIPステータスを「完了」または等価な値に更新する。ステータスは、転送中に電源異常が発生した場合などに備えて、RIP済み区画１１９が成功裡にアップロードされるまで更新しない。
【００１１】
選択されたパイプライン１１３に関連する複数のRIPエンジン１０９のいずれか１つが、一旦それぞれの区画のRIPを完了すると、未割当区画がまだ残っている場合、RIPマネージャ１０６は、それに応じてすべての区画がRIPされるまで残りの区画をRIPエンジン１０９に割当てる。プリントジョブ１０３は、RIPエンジン１０９のそれぞれに一度だけダウンロードすればよい。すなわち、プリントジョブ１０３は、最初に割当てられた区画をRIPするためにRIPエンジン１０９にダウンロードされた後、後に割当てられる区画をRIPするために、RIPエンジン１０９のローカルメモリで得ることができる。
【００１２】
一旦プリントジョブ１０３の区画のすべてがRIPされ、対応するRIP済み区画１１９がRIPマネージャ１０６にローカルなメモリに格納されると、RIPマネージャ１０６は、RIP済み区画１１９を、結合または再統合して単一のRIP済み出力ファイル１２３にする。そして、RIP済み出力ファイル１２３を、プリントするためにプリント装置１２６に与える。プリント装置１２６は、プリントジョブ１０３のサイズとそれぞれのプリント装置１２６のプリント容量とを考慮するいかなる適切なプリンタであってもよい。
【００１３】
さらにRIPマネージャ１０６は、パイプライン構成システムを含む。後述するように、パイプライン構成システムで様々なユーザインタフェースを生成することにより、ユーザがパイプライン１１３を構成することができる。
【００１４】
図２を参照して、本発明の実施形態によるRIPマネージャ１０６を実行するために採用するコンピュータシステム１４０を示す。コンピュータシステム１４０は、ともにローカルインタフェース１４９に連結された、１つまたは複数のプロセッサ１４３と１つまたは複数のメモリ１４６とを有するプロセッサ回路を備える。ローカルインタフェース１４９は、たとえば、当業者が理解することができるように、制御／アドレスバスが付随するデータバスであってもよい。さらに、コンピュータシステム１４０は、たとえば表示装置１５３、キーボード１５６およびマウス１５９等の周辺装置を含む。また、コンピュータシステム１４０は、たとえばキーパッド、タッチパッド、タッチスクリーン、マイクロフォン、スキャナ、ジョイスティックもしくは１つまたは複数の押しボタン等の他の周辺装置を含んでもよい。また、周辺装置は、表示灯、スピーカ、プリンタ等を含んでもよい。特定の表示装置１５３は、たとえば、ブラウン管（ＣＲＴ）、液晶ディスプレイスクリーン、ガスプラズマベースのフラットパネルディスプレイまたは他のタイプの表示装置であってもよい。
【００１５】
複数のソフトウェアコンポーネントがメモリ１４６に格納されており、プロセッサ１４３によって実行可能である。かかるコンポーネントには、たとえば、RIPマネージャ１０６と、オペレーティングシステム１６３と、１つまたは複数のプリントジョブ１０３と、１つまたは複数のRIP済み区画１１９と、１つまたは複数のRIP済み出力ファイル１２３と、がある。プリントジョブ１０３と、RIP済み区画１１９と、RIP済み出力ファイル１２３と、は、後述するように、RIPマネージャ１０６の動作によって指示されるようにその時々で、メモリ１４６内に現れても現れなくてもよい、ということが理解される。
【００１６】
RIPマネージャ１０６は、あらゆる動作を実行する複数の例示的なコンポーネントを含む。図２に示すように、各コンポーネントは、１つまたは複数のモジュール、オブジェクト、またはプログラミングコードで実施されるような基礎となる機能の他のグループ化またはカプセル化を含んでもよい。また、併記の特許請求の範囲によって定義されるような本発明から逸脱せずに、同じ基礎となる機能が、１つまたは複数のモジュール、オブジェクト、または図２に示すものとは異なる他のグループ化またはカプセル化に存在してもよい。また、RIPマネージャ１０６を、たとえばC++、JAVAＴＭまたは他のプログラミング言語等の複数のプログラミング言語のうちのいずれか１つで表現してもよい。
【００１７】
RIPマネージャ１０６の例示的なコンポーネントは、プリントジョブプリプロセッサ１７３と、区画マネージャ１７６と、RIPハンドラ１７９と、上述したようにプリントジョブ１０３の区画のそれぞれに対して区画RIPステータス１８９を維持する区画仕様１８６が格納されるデータベース１８３と、を含んでもよい。また、RIPマネージャ１０６は、ユーザが複数のパイプライン１１３を構成するために操作するパイプライン構成システム１９３を含んでもよい。特に、ユーザは、パイプライン構成システム１９３を操作することによって、後述するように１つまたは複数のパイプライン１１３を生成し、１つまたは複数のRIPエンジン１０９を各パイプライン１１３と関連付けてもよい。パイプライン構成システム１９３を操作する際、表示装置１５３において、パイプライン構成システム１９３により複数のユーザインタフェース１９６が生成される。パイプライン構成システム１９３を操作するために、ユーザは、キーボード１５６、マウス１５９または適切な他の入力装置を操作してもよい。
【００１８】
次に図３を参照して、本発明の実施形態によるRIPエンジンシステム２００を示す。RIPエンジンシステム２００は、ともにローカルインタフェース２０９に連結されたプロセッサ２０３とメモリ２０６とを有するプロセッサ回路を含む。ローカルインタフェース２０９は、たとえば、当業者には理解することができるように制御／アドレスバスが付随するデータバスであってもよい。これに関して、RIPエンジンシステム２００は、コンピュータシステムかまたは同様の能力を有する他の装置を含んでもよい。
【００１９】
RIPエンジンシステム２００は、メモリ２０６に格納されプロセッサ２０３によって実行可能な複数のソフトウェアコンポーネントを含む。かかるコンポーネントは、たとえば、オペレーティングシステム２１３、RIPエンジン１０９、RIP済み区画１１９およびプリントジョブ１０３を含んでもよい。RIP済み区画１１９とプリントジョブ１０３とは、必要に応じて、もしくは後述するようにRIPエンジン１０９の動作によって命令される際に時々生成される場合に、格納される。また、RIPエンジン１０９を、たとえばC++、JAVAＴＭまたは他のプログラミング言語等の複数のプログラミング言語のうちのいずれか１つで表現してもよい。
【００２０】
図２と図３との両方に関して、本明細書ではメモリ１４６および２０６のそれぞれを、揮発性および不揮発性メモリとデータ記憶素子との両方であるものとして定義する。揮発性素子は、電源喪失時にデータ値を保持しない素子である。不揮発性素子は、電源喪失時にデータを保持する素子である。このため、メモリ１４６および２０６は、それぞれ、たとえばランダムアクセスメモリ（RAM）、リードオンリメモリ（ROM）、ハードディスクドライブ、関連するフロッピーディスクドライブを介してアクセスされるフロッピーディスク、コンパクトディスクドライブを介してアクセスされるコンパクトディスク、適切なテープドライブを介してアクセスされる磁気テープおよび／または他のメモリ素子か、もしくはこれらのメモリ素子のうちの任意の２つ以上の組合せを含んでもよい。さらに、RAMは、たとえば、スタティックランダムアクセスメモリ（SRAM）、ダイナミックランダムアクセスメモリ（DRAM）または磁気ランダムアクセスメモリ（MRAM）および他のかかるデバイスを含んでもよい。ROMは、たとえば、プログラム可能リードオンリメモリ（PROM）、消去可能プログラム可能リードオンリメモリ（EPROM）、電気的消去可能プログラム可能リードオンリメモリ（EEPROM）または他の同様のメモリデバイスを含んでもよい。
【００２１】
また、プロセッサ１４３および２０３のそれぞれは、複数のプロセッサを表してもよく、メモリ１４６および２０６のそれぞれは、それぞれ並列処理回路で動作する複数のメモリを表してもよい。そうである場合、ローカルインタフェース１４９および２０９のそれぞれは、複数のプロセッサのうちの任意の２つの間、任意のプロセッサとメモリのうちのいずれかとの間もしくはメモリのうちの任意の２つの間等の通信を容易にする適切なネットワークであってもよい。プロセッサ１４３および２０３は、本質的に電気であっても光であってもよい。
【００２２】
次に図４を参照し、パイプライン構成システム１９３（図２）により生成される例示的なユーザインタフェース１９６ａを示す。ユーザインタフェース１９６ａは、本発明の実施形態により、パイプライン１１３を生成しRIPエンジン１０９をかかるパイプライン１１３に関連付けるためのものである。ユーザインタフェース１９６ａは、１つまたは複数のパイプライン１１３とそれに関連する１つまたは複数のRIPエンジン１０９とを示す。特に、ユーザインタフェース１９６ａは、それぞれのパイプライン１１３とそれに関連するRIPエンジン１０９のそれぞれとの間の結合２２３を示す。これは、たとえばツリー構造によって行うが、結合２２３を示すために他の構造を採用してもよい。また、ユーザインタフェース１９６ａは、複数のプリントジョブ１０３を列挙するジョブ待ち行列タブ２２６も含む。この場合のプリントジョブ１０３は、処理を待機しているか、アクティブに処理されているか、または処理が完了したものである。特に、本明細書で説明する処理は、ラスタイメージ処理に関連する。場合によっては、いずれのRIPエンジン１０９も特定のパイプライン１１３に関連しないことがある。そうである場合、かかるパイプラインに対して受取られるすべてのプリントジョブを、RIPエンジン１０９がパイプライン１１３に関連付けられるまで待ち行列に配置する。これは、ユーザに対し、他のそれほど重要ではないプリントジョブ１０３を犠牲にしてより重要なプリントジョブ１０３をRIPする必要に基づいて、その時々にRIPエンジン１０９をパイプライン１１３に割当てる際の著しい柔軟性を提供する。
【００２３】
図５に関して、本発明の実施形態によるRIPステータスタブ２２９を示す例示的なユーザインタフェース１９６ａの第２の図を示す。これに関して、RIPステータスタブ２２９は、RIPステータスウィンドウ２３３を含む。RIPステータスウィンドウ２３３のそれぞれは、目下強調表示されているパイプライン１１３に関連するRIPエンジン１０９のそれぞれのステータスを詳述する。これに関し、パイプライン１１３のそれぞれを、それに関連するフォルダを開くことによって強調表示してもよい。しかしながら、かかる強調表示を、当業者が理解することができるように複数の異なる方法のうちの任意のものによって指示してもよい。
【００２４】
次に図６を参照して、ユーザがパイプライン１１３（図５）を生成しRIPエンジン１０９（図５）をそれに関連付けるための操作を説明する例示的なユーザインタフェース１９６ａの第３の図を示す。これに関し、ユーザは、構成プルダウンメニュー２４６を生成するようにカーソル２４３を配置することにより、パイプラインオプション２４９とRIPエンジンオプション２５３とを列挙することができる。ユーザは、パイプラインオプション２４９を「クリックする」かまたは他の方法で操作してもよく、それによりユーザが新たなパイプラインを構成することができるように表示装置１５３上に後続するユーザインタフェースが現れる。本明細書で使用する「クリック」という用語は、グラフィカルコンポーネント上にカーソルを配置し、たとえばマウスの押しボタン等によりそのコンポーネントを操作することとして定義する。ユーザがRIPエンジンオプション２５３をクリックすると、指定されたパイプライン１１３に対するRIPエンジン１０９のユーザ構成を容易にする後続するユーザインタフェースが、表示装置１５３上に現れる。かかる後続するユーザインタフェースについては、後の図を参照して考察する。
【００２５】
次に図７を参照し、本発明の実施形態によるパイプライン構成インタフェース１９６ｂを示す。パイプライン構成インタフェース１９６ｂは、「パイプライン生成」ボタン２６３と「パイプライン削除」ボタン２６６とを含む。パイプライン生成ボタン２６３とパイプライン削除ボタン２６６とを操作して、それぞれ新たなパイプライン１１３（図４）を生成するか、または新たなパイプライン１１３を削除してもよい。また、パイプライン構成インタフェース１９６ｂは、現既存パイプライン１１３が表示されているパイプライン表示ウィンドウ２６９も含む。ユーザが、パイプライン表示ウィンドウ２６９に列挙されたパイプライン１１３に関連する設定を生成または変更することができるようにする、複数の例示的なボタンが設けられている。これらのボタンには、たとえば、「パイプライン名」ボタン２７３と、「ジョブ選択」ボタン２７６と、「ページレイアウト」ボタン２７９と、「媒体レイアウト」ボタン２８３と、「カラーマネージャ」ボタン２８６と、「面付け」ボタン２８９と、「優先順位」ボタン２９３と、がある。ボタン２７３〜２９３のうちのいずれか１つをクリックするかまたは他の方法で操作すると、１つまたは複数のユーザインタフェースが生成され、それによって、ユーザは、パイプライン表示ウィンドウ２６９に列挙されたパイプライン１１３のうちの強調された１つに関連するあらゆるパラメータを入力・編集することができる。ユーザがすべての所望の構成タスクを完了したとすると、「ＯＫ」ボタン２９６をクリックするかまたは他の方法で操作することにより、ユーザインタフェース１９６ａ（図５）に戻ってもよい。
【００２６】
次に図８を参照して、本発明の実施形態による「パイプライン名」ボタン２７３（図７）のユーザの操作に応じて生成されるユーザインタフェース１９６ｃを示す。ユーザインタフェース１９６ｃは、ユーザに対し、パイプライン１１３（図７）のうちの選択した１つに関連するあらゆるパラメータ・情報を入力することができるようにする。かかるパラメータおよび／または情報は、たとえば、パイプライン名、関連するプリント装置１２６（図１）のモデル名、関連するプリント装置１２６のモデル番号、RIPエンジン１０９（図１）のベンダ名および他の情報を含んでもよい。また、ユーザがあらゆるパイプライン設定等を指定することができるように、あらゆるユーザインタフェースコンポーネントを採用してもよい。
【００２７】
次に図９を参照して、本発明の実施形態によるユーザインタフェース１９６ｄを示す。ユーザインタフェース１９６ｄは、ユーザに対し、パイプライン許容基準２９９のセットを指定することができるようにする。パイプライン許容基準２９９は、パイプライン構成インタフェース１９６ｂ（図７）において選択されるそれぞれのパイプライン１１３（図７）がプリントジョブ１０３（図１）にアクセスすることができるか否かの判断に用いられる。パイプライン許容基準２９９を指定するために採用されるあらゆるグラフィカルコンポーネントは、かかる基準を選択するかまたは他の方法で指定することができるあらゆる方法の例を単に提供する、ということが理解される。
【００２８】
これに関して、例示的な基準は、パイプライン１１３がプリントジョブのRIPを自動的に許容するか否かを判断すること、プリントジョブ１０３を特定のタイプのプリント装置１２６に対して指定されたものに制限すること、許容可能なプリントジョブに対して最大ページカウントを指定すること、プリントジョブ１０３の許容されたファイルタイプを指定すること、許容されるプリントジョブに対して特定のページ記述言語を指定すること、許容可能優先順位範囲を指定すること、または許容可能プリントジョブに対してファイルサイズの範囲を指定すること、を含んでもよい。さらに、他の基準を採用してもよく、基準は本明細書において明示的に説明するものに限定されない、ということが理解される。
【００２９】
図１０を参照して、面付けとそれぞれのパイプライン１１３（図７）との関連を提供するユーザインタフェース１９６ｅを示す。これに関し、ユーザインタフェース１９６ｅは、それぞれのパイプライン１１３に関連して選択することができる複数の面付け３０３のリストを含む。さらに、ユーザインタフェース１９６ｅは、面付けを追加または削除する等のために操作してもよいコンポーネントを含む。ここで考えているように、面付けは、プリント媒体上のページの配置またはレイアウトを言い、当業者が理解できる通りである。
【００３０】
図１１を参照して、複数のパイプライン１１３を優先順位の順に列挙するパイプライン優先順位ウィンドウ３０６を示す。すなわち、パイプライン１１３のそれぞれに関連する優先順位は、パイプライン優先順位ウィンドウ３０６に列挙された他のパイプラン１１３間のその位置に基づいて求められる。さらに、ユーザインタフェース１９６ｆは、パイプライン優先順位ウィンドウ３０６におけるパイプライン１１３のうちの選択された１つに関して、パイプライン優先順位ウィンドウ３０６における選択されたパイプライン１１３の位置を変更するように操作することができ、それによりそこに列挙されたパイプライン１１３の相対優先順位を変更することができる、ボタン３０９を含む。
【００３１】
次に図１２を参照して、本発明の実施形態によるRIPエンジンオプション２５３（図６）の操作時に生成されるRIPエンジンマネージャインタフェース１９６ｇを示す。これに関して、RIPエンジンマネージャインタフェース１９６ｇは、それぞれのパイプライン１１３に関連して各RIPエンジン１０９を示す。また、RIPエンジンマネージャインタフェース１９６ｇは、適切にRIPエンジン１０９の構成を追加・編集することができるようにするボタンまたは他のコンポーネントも含む。かかるコンポーネントにより、RIPエンジンマネージャインタフェース１９６ｇに列挙されたRIPエンジン１０９に関連するパラメータのユーザ入力を容易にする追加のユーザインタフェースが生成される。
【００３２】
図１３Ａおよび図１３Ｂを参照して、本発明の実施形態によるパイプライン構成システム１９３の例示的なフローチャートを示す。代替的に、図１３Ａおよび図１３Ｂのフローチャートを、コンピュータシステム１４０（図２）において実施する方法のステップを示すものとして見ることができる。この方法は、１つまたは複数のパイプライン１１３（図２）を構成するように、および１つまたは複数のRIPエンジン１０９（図２）をパイプライン１１３のそれぞれと関連付けるためのものである。
【００３３】
ボックス３３３で開始し、パイプライン構成システム１９３は、表示装置１５３（図２）に、RIPエンジン１０９（図４）をそれぞれのパイプライン１１３（図４）と関連付けるユーザインタフェース１９６ａ（図４）を表示する。さらに、ユーザが選択するように、ユーザインタフェース１９６ａのあらゆるタブを表示する。その後、パイプライン構成システム１９３はボックス３３６に進み、ユーザがパイプラインオプション２４９（図６）を選択したか否かを判断する。そうである場合、パイプライン構成システム１９３はボックス３３９に進み、表示装置１５３において、たとえばパイプライン構成インタフェース１９６ｂを生成する。その後、パイプライン構成システム１９３は、図示するようにコネクタＡに進む。
【００３４】
しかしながら、ボックス３３６においてユーザがパイプラインオプション２４９を操作しなかったと判断すると、パイプライン構成システム１９３はボックス３４３に進む。ここでユーザが、RIPエンジンオプション２５３（図６）を操作することにより、RIPエンジン２５３の構成を１つまたは複数のパイプライン１１３に関連して追加、削除または編集したか否かを判断する。そうである場合、パイプライン構成システム１９３はボックス３４６に進む。そうでない場合、パイプライン構成システム１９３はボックス３３６に戻る。
【００３５】
ボックス３４６において、表示装置１５３においてRIPエンジンマネージャインタフェース１９６ｇを生成する。その後、ボックス３４９において、パイプライン構成システム１９３は、RIPエンジン１０９に対する構成を追加するか否かを判断する。そうである場合、パイプライン構成システム１９３はボックス３５３に進む。そうでない場合、パイプライン構成システム１９３はボックス３５６に移動する。ボックス３５３では、パイプライン構成システム１９３は新たなRIPエンジン１０９の構成に関するあらゆるパラメータ・情報を入力する。これを、たとえば、パラメータおよび／または情報等のユーザ入力を容易にする１つまたは複数のユーザインタフェースを生成することによって達成してもよい。１つのかかるパラメータは、たとえば、新たなRIPエンジンが関連するパイプライン１１３であってもよい。その後、ボックス３５９において、RIPエンジン１０９を、識別されたパイプライン１１３に関連付ける。これを、たとえば、RIPエンジン１０９とパイプライン１１３とを、要素間の結合を維持するテーブルまたは他のデータ構造に含めることによって行ってもよい。
【００３６】
パイプライン構成システム１９３は、ボックス３５９からボックス３５６に進み、RIPエンジン１０９の構成を削除するか否かを判断する。そうである場合、パイプライン構成システム１９３はボックス３６３に進み、選択されたRIPエンジン１０９の構成情報を削除する。ボックス３５６においていかなる削除も行わないと判断した場合、またはボックス３６３において削除が完了した場合、ボックス３６６において、パイプライン構成システム１９３は、RIPエンジン１０９に対する構成を編集するか否かを判断する。そうである場合、パイプライン構成システム１９３は、ボックス３６９に進んで選択されたRIPエンジン１０９の編集を入力する。
【００３７】
これを、たとえばパラメータ・情報等のユーザ入力を容易にする１つまたは複数のユーザインタフェースを生成することによって達成してもよい。ボックス３６６においていかなる編集も行わないと判断した場合、またはボックス３６９において編集が完了した場合、パイプライン構成システム１９３はボックス３７３に進む。ボックス３７３では、RIPエンジン１０９の構成が完了したか否かを判断する。これを、たとえば、ユーザがRIPエンジンマネージャインタフェース１９６ｇに表示される「ＯＫ」、「終了」または他の適切なボタンをクリックするかまたは他の方法で操作した場合に確定してもよい。そうである場合、パイプライン構成システム１９３はボックス３３３に戻る。そうでない場合、パイプライン構成システム１９３はボックス３４９に戻る。
【００３８】
ボックス３３９に戻り、表示装置１５３にパイプライン構成インタフェース１９６ｂが表示されるとすると、パイプライン構成システム１９３はコネクタＡを介してボックス３７６に進む。ボックス３７６では、「パイプライン生成」ボタン２６３のユーザ操作によって指示されるように、新たなパイプライン１１３を生成するか否かを判断する。そうである場合、パイプライン構成システム１９３はボックス３７９に進み、たとえばテーブル等に含めること等によりメモリ１４６（図２）にパイプラインを生成する。ボックス３７６においてパイプライン１１３を生成しないと判断した場合、もしくはボックス３７９において新たなパイプラインを生成した場合、パイプライン構成システム１９３はボックス３８３に進む。
【００３９】
ボックス３８３において、パイプライン構成システム１９３は、パイプライン１１３（図７）を削除するか否かを判断する。これを、たとえば、「パイプライン削除」ボタン２６６（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス３８６に進み、パイプライン表示ウィンドウ２６９（図７）において強調表示されるパイプライン１１３を削除する。また、パイプライン構成システム１９３は、特定のパイプライン１１３を削除したいという要求を確認するダイアログボックスを提供してもよい。ボックス３８３においていかなるパイプライン１１３も削除しないと判断した場合、もしくはボックス３８６においてパイプライン１１３を削除した場合、パイプライン構成システム１９３はボックス３８９に進む。
【００４０】
ボックス３８９において、パイプライン構成システム１９３がパイプライン表示ウィンドウ２６９のパイプライン１１３のうちの１つに関連する情報を入力するか否かを判断する。これを、たとえば、ユーザがパイプライン構成インタフェース１９６ｂ（図７）において「パイプライン名」ボタン２７３（図７）を操作したか否かを検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス３９３に進む。そうでない場合、パイプライン構成システム１９３は図示するようにボックス３９６に移動する。ボックス３９３において、パイプライン構成システム１９３は、その後ユーザインタフェース１９６ｃ（図８）を使用して入力される情報等、それぞれのパイプライン１１３に関する情報を入力し、ボックス３９９において、テーブル等の適切なデータ構造を使用して、パイプライン情報をメモリ１４６のそれぞれのパイプライン１１３に関連付ける。そして、パイプライン構成システム１９３はボックス３９６に進む。
【００４１】
ボックス３９６において、パイプライン構成システム１９３は、それぞれのパイプライン１１３に対してパイプライン許容基準を入力するか、または他の方法で構成するか否かを判断する。これを、「ジョブ選択」ボタン２７６（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス４０３に進んで、パイプライン１１３のそれぞれに対して新たなまたは編集された許容基準を入力する。一方、ボックス３９６において、いかなるパイプライン許容基準も入力または編集しないと判断した場合、パイプライン構成システムはボックス４０６に進む。一旦ボックス４０３において許容基準を入力すると、パイプライン構成システム１９３はボックス４０９に進み、許容基準をパイプライン１１３のそれぞれに関連付ける。その後、パイプライン構成システム１９３はボックス４０６に移動する。
【００４２】
ボックス４０６において、パイプライン構成システム１９３は、パイプライン１１３のそれぞれに対してページレイアウトを入力するかまたは他の方法で編集するか否かを判断する。これを、ページレイアウトボタン２７９（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス４１３に進む。そうでない場合、パイプライン構成システム１９３はボックス４１６に進む。ボックス４１３において、パイプライン構成システム１９３はページレイアウトパラメータを入力する。これに関し、パイプライン構成システム１９３は、かかるパラメータのユーザによる入力を容易にする１つまたは複数のユーザインタフェース（図示せず）を生成する。ページレイアウトパラメータは、たとえば、ページサイズ、ページ幅、ページ高さ、測定単位、コピーの数、水平センタリング、垂直センタリング、ページトリミングオプションおよびプリント媒体に対するページのレイアウトに関連する他のパラメータを含んでもよい。その後、ボックス４１９において、ページレイアウト情報を、パイプライン表示ウィンドウ２６９において強調表示されるパイプライン１１３のそれぞれに関連付ける。これに関し、かかる情報を、テーブル等のメモリ１４６に適切なデータ構造で格納する。その後、パイプライン構成システム１９３は、図示するようにボックス４１６に移動する。
【００４３】
ボックス４１６において、パイプライン構成システム１９３は、パイプライン１１３のそれぞれに対して媒体レイアウトを入力するかまたは他の方法で編集するか否かを判断する。これを、媒体レイアウトボタン２８３（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス４２３に進む。そうでない場合、パイプライン構成システム１９３はボックス４２６に移動する。ボックス４２３において、パイプライン構成システム１９３は媒体レイアウト属性を入力する。これに関し、パイプライン構成システム１９３は、ユーザによるかかる属性の入力を容易にする１つまたは複数のユーザインタフェース（図示せず）を生成する。本明細書では、媒体を、プリントジョブ１０３（図１）がプリントされるべき目標媒体として定義する。媒体レイアウト情報は、たとえば、媒体タイプ、媒体幅、媒体高さ、左および右マージンサイズ、測定単位、媒体色、媒体重量、媒体のきめ、媒体回転仕様、ミラーリング技術、ネガティブ機能および他の属性を含んでもよい。その後、ボックス４２９において、媒体レイアウト情報を、パイプライン表示ウィンドウ２６９において強調表示されるパイプライン１１３のそれぞれに関連付ける。これに関して、かかる情報を、メモリ１４６にテーブル等の適切なデータ構造で格納する。その後、パイプライン構成システム１９３は、図示するようにボックス４２６に移動する。
【００４４】
ボックス４２６において、パイプライン構成システム１９３は、パイプライン１１３のそれぞれに対して面付けを指定または他の方法で編集するか否かを判断する。これを、「面付け」ボタン２８９（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス４３３に進む。そうでない場合、パイプライン構成システム１９３はボックス４３６に移動する。ボックス４３３において、パイプライン構成システム１９３は面付け３０３（図１０）の選択を入力する。これに関して、パイプライン構成システム１９３は、例示的なユーザインタフェース１９６ｅ（図１０）等、ユーザによるかかる情報の入力を容易にする１つまたは複数のユーザインタフェースを生成する。その後、ボックス４３９において、選択された面付け３０３を、パイプライン表示ウィンドウ２６９において強調表示されるパイプライン１１３のそれぞれに関連付ける。これに関して、かかる情報を、メモリ１４６においてテーブル等の適切なデータ構造で格納する。その後、パイプライン構成システム１９３は、図示するようにボックス４３６に移動する。
【００４５】
ボックス４３６において、パイプライン構成システム１９３は、パイプライン表示ウィンドウ２６９に表示されるパイプライン１１３の優先順位を変更するか否かを判断する。これを、「優先順位」ボタン２９３（図７）の操作を検出することによって確定してもよい。そうである場合、パイプライン構成システム１９３はボックス４４３に進む。そうでない場合、パイプライン構成システム１９３はボックス４４６に移動する。ボックス４４３では、パイプライン構成システム１９３はパイプライン１１３の優先順位を入力する。これに関して、パイプライン構成システム１９３は、例示的なユーザインタフェース１９６ｆ（図１１）等、ユーザによるパイプライン１１３の優先順位の指定を容易にする１つまたは複数のユーザインタフェースを生成する。その後、ボックス４４９において、ボックス４４３において指定されたようなパイプライン１１３のそれぞれの優先順位を、それぞれパイプライン１１３に関連付ける。これに関し、優先順位情報を、メモリ１４６にテーブル等の適切なデータ構造で格納する。その後、パイプライン構成システム１９３は、図示するようにボックス４４６に移動する。
【００４６】
ボックス４４６において、パイプライン構成システム１９３は、ユーザがそれぞれのパイプライン１１３の構成を完了したか否かを判断する。これを、たとえば、ユーザが「ＯＫ」ボタン２９６（図７）を操作したか否かを検出することにより確定してもよい。そうである場合、パイプライン構成システム１９３は、図示するようにコネクタＢを介してボックス３３３に戻る。
【００４７】
さらに、パイプライン構成システム１９３は、ユーザインタフェース１９６ａ〜１９６ｇに示すような本明細書で説明する機能を超える他の機能を含んでもよい。
【００４８】
図１４を参照して、本発明の実施形態によるプリントジョブプリプロセッサ１７３の例示的なフローチャートを示す。代替的に、図１４のフローチャートを、プリントジョブ１０３（図１）に対してラスタイメージ処理を実行するために、コンピュータシステム１４０において実施される方法におけるステップを示すものとして見てもよい。
【００４９】
ボックス５０３で開始して、プリントジョブプリプロセッサ１７３は、たとえば、プリントするためにラスタイメージ処理を必要とする、ページ記述言語で具体化されるプリントジョブ１０３を受取るのを待つ。ボックス５０３においてプリントジョブプリプロセッサ１７３がプリントジョブ１０３を受取ったとすると、プリントジョブプリプロセッサ１７３はボックス５０６に進み、プリントジョブ１０３をメモリ１４６（図２）の待ち行列かまたは他の部分に格納する。その後、ボックス５０９において、プリントジョブプリプロセッサ１７３は、プリントジョブ１０３のページの総数を、プリントジョブ１０３自体から確認できるか否かを判断する。確認することができない場合、プリントジョブプリプロセッサ１７３はボックス５１３に進む。確認することができる場合、プリントジョブプリプロセッサ１７３はボックス５１６に移動する。ボックス５１３において、プリントジョブプリプロセッサ１７３は、プリントジョブ１０３のページをカウントすることができないことを示す、プリントジョブ１０３に関連するフラグを設定する。その後、プリントジョブプリプロセッサ１７３はボックス５１９に進む。
【００５０】
プリントジョブプリプロセッサ１７３がボックス５１６に進んだとすると、プリントジョブプリプロセッサ１７３は、プリントジョブ１０３の総ページカウントを求め、かつかかるページカウントをプリントジョブ１０３に関連付ける。そして、ボックス５１９において、プリントジョブプリプロセッサ１７３は、いずれのプリントジョブ１０３をいずれのパイプライン１１３（図１）に与えるかを決定する。決定は、各パイプライン１１３に関連するパイプライン許容基準２９９（図９）および既存のパイプライン１１３のそれぞれに割当てられた優先順位に基づいて行う。これに関して、プリントジョブプリプロセッサ１７３は、パイプライン１１３のそれぞれに割当てられた優先順位に従ってパイプライン１１３のそれぞれのパイプライン許容基準２９９を吟味する。これを、プリントジョブ１０３がパイプライン１１３のうちの１つのパイプライン許容基準２９９を満たすまで行う。その後、ボックス５２３において、プリントジョブ１０３を区画マネージャ１７６に与える。
【００５１】
次に図１５Ａおよび図１５Ｂを参照して、本発明の実施形態による区画マネージャ１７６の例示的なフローチャートを示す。代替的に、図１５Ａおよび図１５Ｂのフローチャートを、ラスタイメージ処理のためにプリントジョブ１０３（図１）の区画の数を求める、コンピュータシステム１４０（図２）において実施される方法のステップを示すものとして見てもよい。
【００５２】
ボックス５５３で開始して、区画マネージャ１７６は、プリントジョブ１０３がRIPされるそれぞれのパイプライン１１３に割当てられたか否かを判断する。そうである場合、区画マネージャ１７６はボックス５５６に進み、それぞれのパイプライン１１３に関連する利用可能なRIPエンジン１０９（図１）の数を求める。利用可能なRIPエンジン１０９の数を、本明細書では「RIPカウント」と呼ぶ。RIPエンジン１０９は、プリントジョブ１０３をRIPしておらずエラー状態に晒されていない場合に利用可能である。一旦RIPカウントが求められると、区画マネージャ１７６はボックス５５９に進み、それぞれのパイプライン１１３に関連するRIPエンジン１０９のいずれかが、現プリントジョブ１０３をRIPすることができるように目下利用可能であるか否かを判断する。RIPエンジン１０９のいずれも利用可能でない場合、区画マネージャ１７６はボックス５６３に進み、所定の遅延動作を実行する。その後、RIPマネージャ１７６はボックス５５６に戻る。
【００５３】
ボックス５５９において少なくとも１つのRIPエンジン１０９が利用可能であるとすると、区画マネージャ１７６はボックス５６６に進み、ボックス５１６（図１４）においてページカウントを確認することができたか否かを判断する。確認することができなかった場合、区画マネージャ１７６はブロック５６９に移動して、全プリントジョブ１０３を包含する「１」の区画を指定する。その後、区画マネージャ１７６は、図示するようにコネクタＣに進む。一方、区画マネージャ１７６は、ボックス５６６においてページカウントが存在すると判断した場合、ボックス５７３に進む。ここで、ユーザ定義区画ルーチンを採用して、プリントジョブ１０３をRIPするために個々の区画に分割するか否かを判定する。分割する場合、区画マネージャ１７６はボックス５７６に進み、ユーザ定義区画ルーチンを実行する。その後、区画マネージャ１７６は、図示するようにコネクタＤに移動する。ユーザ定義区画ルーチンを、複数のプログラミング言語のうちのいずれかを使用して生成してもよく、あるいは区画マネージャの一部等として構成してもよい。
【００５４】
しかしながら、ボックス５７３において判定されるときにいずれのユーザ定義区画ルーチンも採用されない場合、区画マネージャ１７６はボックス５７９に進む。ボックス５７９において、区画マネージャ１７６は、現プリントジョブ１０３のページカウントが現パイプライン１１３のRIPカウントより少ないか否かを判断する。少ない場合、区画マネージャ１７６はボックス５８３に進み、区画間隔をページカウントに等しいように設定する。本明細書で定義する区画間隔は、プリントジョブ１０３の等しい複数の区画にあるページの数から、後述される残りの全ページ数を除いた値である。区画マネージャ１７６は、ボックス５８３から図示するようにコネクタＤに進む。ボックス５７９において求められるように、ページカウントがRIPカウントより大きい場合、区画マネージャ１７６はボックス５８６に進み、RIPカウントが１に等しいか否かを判断する。そうである場合、区画マネージャ１７６はボックス５８９に進み、区画間隔をページカウントに等しいように設定する。区画マネージャ１７６は、ボックス５８９から図示するようにコネクタＤに進む。
【００５５】
ボックス５８６においてRIPカウントが１に等しくないと判断した場合、区画マネージャ１７６はボックス５９３に進み、ページカウントが定数Ｃ１を下回るか否かを判断する。定数Ｃ１は、たとえば５０かまたは他の適切な値に等しくてもよい。ボックス５９３においてページカウントが定数Ｃ１を下回ると判断した場合、区画マネージャ１７６はボックス５９６に進み、区画間隔をページ数／RIPカウントに等しいように設定する。その後、区画マネージャ１７６は図示するようにコネクタＤに進む。しかしながら、ボックス５９３においてページカウントが定数Ｃ１を上回る場合、区画マネージャ１７６はボックス５９９に進み、ページカウントが第２の定数Ｃ２を下回るか否かを判断する。第２の定数Ｃ２は、たとえば５００かまたは適切に何らかの他の値であってもよい。これに関して、分割を、プリントジョブ１０３の長さに基づいて実行してもよい。ボックス５９９においてページカウントが定数Ｃ２を下回ると判断した場合、区画マネージャ１７６はボックス６０３に進み、区画間隔を定数Ｃ３に等しいように設定する。定数Ｃ３は、たとえば、２５かまたは他の適切な値であってもよい。その後、区画マネージャ１７６はコネクタＤに進む。
【００５６】
しかしながら、ページカウントが第２の定数Ｃ２を上回る場合、区画マネージャ１７６はボックス６０６に進み、区画間隔をページ数／定数Ｃ４に等しいように設定する。定数Ｃ４は、たとえば２０かまたは他の適切な値であってもよい。その後、区画マネージャ１７６はコネクタＤに進む。定数Ｃ１〜Ｃ４は、事前設定されるかまたはユーザ構成可能等であってもよい。
【００５７】
このように、ボックス５７９〜６０６において、区画マネージャ１７６は、プリントジョブ１０３を分割するために使用する区画間隔を求めるために採用する分割基準のセットを提供する。上述したように、分割基準のセットは、プリントジョブの区画のラスタイメージ処理を実行するために利用可能なRIPエンジンの数に基づいてもよい。また、分割基準のセットは、ページカウントを事前定義された閾値の数と比較してもよい。適用してもよい分割基準の性質には制限はない。
【００５８】
区画マネージャ１７６は、コネクタＤからボックス６０９に進み、区画間隔が最小区画閾値を下回るか否かを判断する。区画間隔が最小区画閾値を下回る場合、区画マネージャ１７６はボックス６１３に進む。そうでない場合、区画マネージャ１７６はボックス６１６に移動する。ボックス６１３において、区画マネージャ１７６は、区画間隔を最小閾値に等しいように設定する。その後、区画マネージャ１７６は図示するようにボックス６１９に進む。区画マネージャ１７６がボックス６１６に進んだものとすると、区画マネージャ１７６は、区画間隔が最大区画閾値を上回るか否かを判断する。そうである場合、区画マネージャ１７６はボックス６２３に進み、区画間隔を最大区画閾値に等しいように設定する。その後、区画マネージャ１７６はボックス６１９に移動する。最小区画閾値および最大区画閾値はそれぞれ、設計上考慮すべき点に基づいて選択されたいかなる適切な値であってもよい。
【００５９】
ボックス６１９において、区画マネージャ１７６は、残りの区画が存在するか否かを判断する。残りの区画は、区画間隔において指定されたページの数を下回る数のページを含む区画である。このため、区画間隔がページカウントに均等に分割されない場合に、残りの区画が存在する。区画の残りの存在を、区画間隔によってページ数を除算した剰余を計算することによって求めてもよい。残りが存在しない場合、区画マネージャ１７６はボックス６２３に進む。存在する場合、区画マネージャ１７６はボックス６２６に移動する。ボックス６２３において、区画マネージャ１７６は、データベース１８３（図２）において、ページカウントを区画間隔で除算した数に等しい数の区画を指定する、プリントジョブ１０３に対する区画仕様１８６（図２）を生成する。区画マネージャ１７６がボックス６２６に進んだものとすると、残りの区画が存在する。かかる場合、区画マネージャ１７６は、データベース１８３において、区画間隔で除算したページカウントに１を足したものに等しい数の区画を指定する、区画仕様１８６を生成する。ボックス６２３かまたは６２６のいずれかから、区画マネージャ１７６はボックス６２９に進み、新たに生成された区画仕様１８６をデータベース１８３に保存する。いずれの場合も、区画仕様１８６は、区画のそれぞれに対して区画RIPステータス１８９に従う。そして、区画マネージャ１７６は、RIPするためにパイプライン１１３（図１）にプリントジョブ１０３を与える。これに関し、区画マネージャ１７６は、プリントジョブ１０３をそれぞれのパイプライン１１３に関連する待ち行列等に配置してもよい。代替的に、プリントジョブ１０３を、特定のパイプライン１１３に対してマークして、すべてのプリントジョブ１０３に対する汎用待ち行列に配置してもよく、あるいは何らかの他の手法を採用してもよい。その後、区画マネージャ１７６は、図示するようにコネクタＥを介してボックス５５３に戻る。また、再びボックス５６９に関して、一旦プリントジョブ１０３に対して単一区画が指定されると、区画マネージャ１７６は図示するようにコネクタＣを介してボックス６２９に進む。
【００６０】
次に図１６を参照して、RIPハンドラ１７９の機能を説明する例示的なフローチャートを示す。代替的に、図１６のフローチャートを、プリントジョブ１０３（図１）のRIPを組織化するためにコンピュータシステム１４０（図１）において実施する方法のステップを示すものとして見てもよい。
【００６１】
ボックス６５３で開始して、RIPハンドラ１７９は、それぞれのパイプライン１１３に対してプリントジョブ１０３が分割されるまで待機する。その後、ボックス６５６において、RIPハンドラ１７９は、それぞれのパイプライン１１３に対して利用可能なすべてのRIPエンジン１０９（図１）を識別する。次に、ボックス６５９において、パイプライン１１３に関連するRIPエンジン１０９のいずれかが現プリントジョブ１０３をRIPするために利用可能である場合、RIPハンドラ１７９はボックス６６３に進む。そうでない場合、RIPハンドラ１７９はボックス６６６に進む。ボックス６６３において、RIPハンドラ１７９は、「未割当」の区画RIPステータス１８９を有する現プリントジョブ１０３の区画があるか否かを判断する。
【００６２】
これに関して、各区画は、「未割当」であるか、「割当済み」であるか、あるいは「完了」である可能性がある。「未割当」指示は、それぞれの区画がまだRIPするためにRIPエンジン１０９に割当てられていないことを示す。「割当済み」指示は、RIPエンジン１０９がRIPエンジン１０９に割当てられており目下RIPされていることを示す。「完了」指示は、区画が成功裡にRIPされており、そこから生成されたRIP済み区画１１９（図１）がRIPマネージャ１０６（図２）にローカルなメモリ１４６に送出されたことを示す。
【００６３】
ボックス６６３において「未割当」の区画RIPステータス１８９を有する区画があるとすると、RIPハンドラ１７９はボックス６６９に進む。そうでない場合、RIPハンドラ１７９はボックス６６６に移動する。ボックス６６９において、RIPするためにそれぞれのパイプライン１１３に関連するRIPエンジン１０９がどれくらい利用可能であるかにより、および未割当区画の数により、１つまたは複数のRIPエンジン１０９に１つまたは複数の未割当区画を割当てる。RIPエンジン１０９に区画を割当てるために、RIPハンドラ１７９は、RIPエンジン１０９のうちの１つに対応する区画割当１１６を送出する。その後、ボックス６７３において、新たに割当てられたすべての区画の区画RIPステータス１８９を、「未割当」から「割当済み」に更新する。そして、ボックス６７６において、RIPハンドラ１７９は、新たに割当てられた区画のそれぞれに対しタイマを始動する。タイマにより、RIPハンドラ１７９は、RIPエンジン１０９が区画をRIPするために長くかかり過ぎたか否かを判断し、それによりエラー状態または電源異常等が発生したことを示すことができる。タイマによって追跡された実際の時間間隔を、ユーザによって構成してもよい。そして、RIPハンドラ１７９はボックス６６６に進む。
【００６４】
ボックス６６６において、RIPハンドラ１７９は、RIPエンジン１０９のうちの１つによりプリントジョブ１０３のコピーが要求されたか否かを判断する。そうである場合、RIPハンドラ１７９はボックス６７９に進み、プリントジョブ１０３のコピーを、たとえばメモリ２０６（図３）等、要求しているRIPエンジン１０９にローカルなメモリにダウンロードする。ボックス６６６においてプリントジョブ１０３のコピーが要求されていないと判断された場合、もしくはボックス６７９においてプリントジョブ１０３のコピーが成功裡にダウンロードされた場合、RIPハンドラ１７９はボックス６８３に進む。
【００６５】
ボックス６８３において、RIPハンドラ１７９は、RIPエンジン１０９のいずれかが割当済み区画のRIPを完了したか否かを判断する。完了した場合、RIPハンドラ１７９はボックス６８６に進む。そうでない場合、RIPハンドラ１７９はボックス６８９に移動する。ボックス６８６において、対応するRIP済み区画１１９を、RIPエンジン１０９から、たとえばメモリ１４６等、RIPマネージャ１０６にローカルなメモリにアップロードする。一旦RIP済み区画１１９が成功裡にアップロードされると、RIPハンドラ１７９はボックス６９３に進み、それぞれの区画に関連する区画RIPステータス１８９を「完了」に更新する。伝送中に電源異常または他のエラーが発生した場合に備えてRIP済み区画１１９が成功裡にアップロードされるまで、ステータスを「完了」に更新しない。次に、ボックス６９６において、完了区画に関連するタイマをキャンセルする。その後、RIPハンドラ１７９はボックス６８９に進む。
【００６６】
ボックス６８９において、RIPハンドラ１７９は、ボックス６７６において設定されたタイマのうちの１つのタイムアウトが発生したか否かを判断し、それによりそれぞれのRIPエンジン１０９による区画のうちの１つのRIPにより問題が存在することを示す。これに関して、RIPエンジン１０９に対し、RIPプロセスに割込んだ障害またはエラーが発生している場合がある。したがって、RIPは、割当てられた時間内に完了しない。ボックス６８９においてタイムアウトが検出されると、RIPハンドラ１７９はボックス６９９に進む。そうでない場合、RIPハンドラ１７９はボックス７０３に移動する。
【００６７】
ボックス６９９において、RIPエンジン１０９による割当済み区画のRIPをキャンセルする。これに関して、RIPハンドラ１７９は、たとえばRIPエンジン１０９に対し、RIPエンジン１０９が反応する場合、割当済み区画のRIPがキャンセルされたことを通知するメッセージを送出してもよい。その後、ボックス７０６において、RIPハンドラ１７９は、それぞれの区画RIPステータス１８９を、それぞれの区画仕様１８６において「未割当」に更新することにより、ボックス６６９においてその区画を、最終的に適当に機能しているRIPエンジンに再割当することができるようにする。そして、RIPハンドラ１７９はボックス７０３に進む。
【００６８】
ボックス７０３において、RIPハンドラ１７９は、それぞれのプリントジョブ１０３に関連するすべての区画がRIPされたか否かを判断する。これを、データベース１８３（図２）における１つまたは複数の区画仕様１８６をスキャンして、区画のそれぞれに関連する区画RIPステータス１８９が「完了」であるか否かを判断することによって確定してもよい。すべての区画がRIPされた場合、RIPハンドラ１７９はボックス７０９に進む。そうでない場合、RIPハンドラ１７９はボックス６５９に戻る。
【００６９】
ボックス７０９において、RIPハンドラ１７９は、RIPマネージャ１０６によってアクセス可能なメモリに格納されたRIP済み区画１１９のすべてを再統合して単一のRIP済み出力ファイル１２３にする。そして、ボックス７１３において、対応する区画仕様１８６に示すように、プリントジョブ１０３を再統合されたものとして指示する。その後、ボックス７１６において、RIPハンドラ１７９は、RIP済み出力ファイル１２３をプリントするためにプリント装置１２６かまたはプリント待ち行列に与える。代替的に、RIP済み出力ファイル１２３を、後にプリント等をするために格納してもよい。その後、RIPハンドラ１７９はボックス６５３に戻る。
【００７０】
図１７を参照して、本発明の実施形態によるRIPエンジン１０９の例示的なフローチャートを示す。代替的に、図１７のフローチャートを、RIPエンジンシステム２００（図３）においてプリントジョブ１０３（図１）のそれぞれの区画をRIPするために実施された方法のステップを示すものとして見てもよい。
【００７１】
ボックス７３３で開始して、起動時、RIPエンジン１０９は、初期化してその可用性をRIPマネージャ１０６（図２）に報告する。その後、ボックス７３６において、RIPエンジン１０９は、区画マネージャ１０６から区画割当１１６を受取るのを待つ。区画割当１１６が受取られたとすると、RIPエンジン１０９はボックス７３９に進み、割当済み区画が取出されるプリントジョブ１０３のコピーが、たとえばメモリ２０６（図３）等、RIPエンジン１０９にローカルなメモリに存在するか否かを判断する。存在しない場合、RIPエンジン１０９はボックス７４３に進む。存在する場合、RIPエンジン１０９はボックス７４６に移動する。
【００７２】
ボックス７４３において、RIPエンジン１０９は、RIPエンジン１０９によって使用するためにプリントジョブ１０３のコピーを送出するようRIPマネージャ１０６に要求を送る。そして、ボックス７４９において、RIPエンジン１０９は、一旦プリントジョブ１０３全体を受取ると、ボックス７４６に進む。ボックス７４６において、RIPエンジン１０９は割当済み区画のRIPを開始する。これに関して、RIPエンジン１０９は、区画割当１１６によって示すプリントジョブ１０３全体の対応する部分にアクセスしてRIPする。そして、ボックス７５３において、RIPエンジン１０９は割当済み区画のRIPを完了すると、ボックス７５６に進み、RIP済み区画１１９をたとえばメモリ２０６等のRIPエンジン１０９にローカルなメモリに格納する。その後、ボックス７５９において、RIPエンジン１０９は、RIPマネージャ１０６に対し、割当済み区画のRIPが完了したこと、およびRIPエンジン１０９が必要に応じてさらなる区画をRIPするために利用可能であること、を報告する。
【００７３】
次に、ボックス７６３において、RIPエンジン１０９は、RIP済み区画１１６をRIPマネージャ１０６にアップロードするというRIPマネージャ１０６からの要求を待つ。要求が受取られたとすると、ボックス７６６において、RIP区画１１９をRIPマネージャ１０６に送出する。その後、RIPエンジン１０９はボックス７３６に戻る。さらに、RIPエンジン１０９は、RIP動作の過程において、区画のRIPの経緯をRIPマネージャ１０６に報告してもよい。
【００７４】
RIPマネージャ１０６（図２）とそこに含まれるコンポーネントのすべてを、ソフトウェアで具体化するかまたは上述したように汎用ハードウェアによってコード実行するが、代替形態として、RIPマネージャ１０６を、専用ハードウェアかまたはソフトウェア／汎用ハードウェアおよび専用ハードウェアの組合せで具体化してもよい。専用ハードウェアで具体化される場合、RIPマネージャ１０６を、複数のテクノロジのうちのいずれか１つかまたは組合せを採用する回路または状態機械として実装することができる。これらのテクノロジは、限定されないが、１つまたは複数のデータ信号の印加時にあらゆる論理機能を実施する論理ゲートを有するディスクリート論理回路、適切な論理ゲートを有する特定用途向け集積回路、プログラマブルゲートアレイ（ＰＧＡ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のコンポーネント等を含んでもよい。かかるテクノロジは、概して当業者には周知であるため、本明細書では詳細には説明しない。
【００７５】
図１のブロック図および／または図１３Ａ、図１３Ｂ、図１４、図１５Ａ、図１５Ｂ、図１６および図１７のフローチャートは、RIPマネージャ１０６とそのあらゆるコンポーネントの実施態様のアーキテクチャ、機能および動作を示す。ソフトウェアで具体化される場合、各ブロックは、指定された論理機能（複数可）を実施するプログラム命令を含む、コードのモジュール、セグメントまたは一部を表してもよい。プログラム命令を、コンピュータシステムまたは他のシステムにおけるプロセッサ等、適当な実行システムによって認識可能な数値命令を含むプログラミング言語または機械コードで書かれた人間が読取可能なステートメントを含む、ソースコードの形態で具体化してもよい。機械コードをソースコード等から変換してもよい。ハードウェアで具体化する場合、各ブロックは、指定された論理機能（複数可）を実施する回路または複数の相互接続された回路を表してもよい。
【００７６】
図１、図１３Ａ、図１３Ｂ、図１４、図１５Ａ、図１５Ｂ、図１６および図１７のブロック図および／またはフローチャートは、実行の特定の順序を示すが、実行の順序は示すものと異なってもよい、ということが理解される。たとえば、２つ以上のブロックの実行の順序を、図示する順序に関して完全に入替えてもよい。また、図１、図１３Ａ、図１３Ｂ、図１４、図１５Ａ、図１５Ｂ、図１６および図１７に連続して示す２つ以上のブロックを、同時にまたは部分的に同時に実行してもよい。さらに、ユーティリティの拡張、アカウンティング、パフォーマンス測定または障害追跡支援の提供等の目的で、本明細書で説明した論理フローに、任意の数のカウンタ、状態変数、警告セマフォまたはメッセージを追加してもよい。さらに、図１、図１３Ａ、図１３Ｂ、図１４、図１５Ａ、図１５Ｂ、図１６および図１７のフローチャートに示すあらゆるブロックは、複数のスレッド等で実施される機能を表してもよい。かかる変形形態のすべてが本発明の範囲内にあることが理解される。
【００７７】
また、RIPマネージャ１０６とそのあらゆるコンポーネントがソフトウェアまたはコードからなる場合、それぞれを、たとえばコンピュータシステムまたは他のシステムのプロセッサ等、命令実行システムによるかまたはそれに関連して使用する任意のコンピュータ読取可能媒体で具体化してもよい。その意味では、ロジックは、たとえば、コンピュータ読取可能媒体からフェッチして命令実行システムによって実行することができる命令および宣言を含むステートメントを含んでもよい。本発明のコンテキストでは、「コンピュータ読取媒体」は、命令実行システムによるかまたはそれに関連して使用するためにRIPマネージャ１０６とそのあらゆるコンポーネントとを内蔵し、格納しまたは保持することができるいかなる媒体であってもよい。コンピュータ読取可能媒体は、たとえば電子、磁気、光、電磁気、赤外線または半導体媒体など、多くの物理媒体のうちの任意の１つからなってもよい。適当なコンピュータ読取可能媒体のより特定の例には、限定されないが、磁気テープ、磁気フロッピーディスケット、磁気ハードドライブまたはコンパクトディスクがある。また、コンピュータ読取可能媒体は、たとえばスタティックランダムアクセスメモリ（SRAM）およびダイナミックランダムアクセスメモリ（DRAM）かまたは磁気ランダムアクセスメモリ（MRAM）を含むランダムアクセスメモリ（RAM）であってもよい。さらに、コンピュータ読取可能媒体は、リードオンリメモリ（ROM）、プログラム可能リードオンリメモリ（PROM）、消去可能プログラム可能リードオンリメモリ（EPROM）、電気的消去可能プログラム可能リードオンリメモリ（EEPROM）または他のタイプのメモリデバイスであってもよい。
【００７８】
本発明をいくつかの実施形態に関して示し説明しているが、本明細書を読み理解した当業者には等価物および変更形態が思いつくであろうということは明らかである。本発明は、かかる等価物および変更形態のすべてを含み、特許請求の範囲によってのみ限定される。
【図面の簡単な説明】
【００７９】
【図１】プリントジョブの分割を使用するプリントジョブのラスタイメージ処理を示すブロック図。
【図２】図１に示す分割を達成するラスタイメージ処理（RIP）マネージャを含むコンピュータシステムの概略図。
【図３】プリントジョブの１つまたは複数の区画をRIPするために採用する図１のRIPエンジンの概略図。
【図４】１つまたは複数のパイプラインとそれらに関連するRIPエンジンとを示す図２のRIPマネージャのパイプライン構成システムによって生成される例示的なユーザインタフェースの図。
【図５】例示的なRIPエンジンステータスタブをさらに示す、図４の例示的なユーザインタフェースの図。
【図６】ユーザが図２のRIPマネージャのパイプラインまたはRIPエンジンを構成するために操作することができるドロップダウンメニューをさらに示す、図４の例示的なユーザインタフェースの図。
【図７】図２のRIPマネージャのパイプライン構成システムが、パイプラインを構成するために生成する例示的なユーザインタフェースの図。
【図８】図２のRIPマネージャのパイプライン構成システムが、パイプラインを構成する際に採用する情報を入力するために生成する例示的なユーザインタフェースの図。
【図９】図２のRIPマネージャのパイプライン構成システムが、パイププラインに関連するプリントジョブ許容基準を指定するために生成する、例示的なユーザインタフェースの図。
【図１０】図２のRIPマネージャのパイプライン構成システムが、パイプラインに関連する面付けを指定するために生成する例示的なユーザインタフェースの図。
【図１１】図２のRIPマネージャのパイプライン構成システムが、RIPマネージャの各構成されたパイプラインに関連する優先順位を指定するために生成する例示的なユーザインタフェースの図。
【図１２】図２のRIPマネージャのパイプライン構成システムが、RIPマネージャに構成された１つまたは複数のパイプラインに関連する１つまたは複数のRIPエンジンを構成するために生成する例示的なユーザインタフェースの図。
【図１３Ａ】パイプラインを構成するために図２のRIPマネージャの一部として実行されるパイプライン構成システムを示す例示的なフローチャート。
【図１３Ｂ】パイプラインを構成するために図２のRIPマネージャの一部として実行されるパイプライン構成システムを示す例示的なフローチャート。
【図１４】図２のRIPマネージャの一部として実行されるプリントジョブプリプロセッサの例示的なフローチャート。
【図１５Ａ】図２のRIPマネージャの一部として実行される区画マネージャの例示的なフローチャート。
【図１５Ｂ】図２のRIPマネージャの一部として実行される区画マネージャの例示的なフローチャート。
【図１６】図２のRIPマネージャの一部として実行されるRIPハンドラの例示的なフローチャート。
【図１７】図２のRIPエンジンによって実行されるRIPエンジンロジックの例示的なフローチャート。
【図１】
2004199687.tif 000003
【図２】
2004199687.tif 000004
【図３】
2004199687.tif 000005
【図４】
2004199687.tif 000006
【図５】
2004199687.tif 000007
【図６】
2004199687.tif 000008
【図７】
2004199687.tif 000009
【図８】
2004199687.tif 000010
【図９】
2004199687.tif 000011
【図１０】
2004199687.tif 000012
【図１１】
2004199687.tif 000013
【図１２】
2004199687.tif 000014
【図１３Ａ】
2004199687.tif 000015
【図１３Ｂ】
2004199687.tif 000016
【図１４】
2004199687.tif 000017
【図１５Ａ】
2004199687.tif 000018
【図１５Ｂ】
2004199687.tif 000019
【図１６】
2004199687.tif 000020
【図１７】
2004199687.tif 000021