(57)【要約】【課題】リソースを効率的に活用可能な情報処理装置を提供すること。【解決手段】描画データ作成手段にそれぞれ対応づけられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段５９と、１つの印刷ジョブを複数の記憶手段にそれぞれ記憶させ、１つの印刷ジョブを印刷ジョブ一覧情報に登録する印刷ジョブ登録手段５８と、複数の記憶手段に記憶された１つの印刷ジョブのうち最も早く描画処理の対象となった１つの印刷ジョブを記憶する記憶手段に対応する描画データ作成手段を、印刷ジョブ一覧情報の１つの印刷ジョブに対応づけて登録する描画データ作成手段決定手段６５と、を有し、印刷ジョブ登録手段は、描画データ作成手段決定手段により印刷ジョブ一覧情報に登録されなかった描画データ作成手段に対応する記憶手段に記憶されている１つの印刷ジョブを削除する、ことを特徴とする。【選択図】図１８
2015195012.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブを用いて複数の描画データ作成手段の１つに描画データを作成させる情報処理装置であって、
前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段と、
１つの印刷ジョブを複数の前記記憶手段にそれぞれ記憶させ、前記１つの印刷ジョブを印刷ジョブ一覧情報に登録する印刷ジョブ登録手段と、
複数の前記記憶手段に記憶された前記１つの印刷ジョブのうち、他よりも早く描画処理の対象となった前記１つの印刷ジョブを記憶する前記記憶手段に対応する前記描画データ作成手段を、前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録する描画データ作成手段決定手段と、を有し、
前記印刷ジョブ登録手段は、前記描画データ作成手段決定手段により前記印刷ジョブ一覧情報に登録されなかった前記描画データ作成手段に対応する前記記憶手段に記憶されている前記１つの印刷ジョブを削除する、ことを特徴とする情報処理装置。
【請求項２】
印刷ジョブは、印刷の設定情報と印刷データを含んでおり、
前記１つの印刷ジョブの前記設定情報を、複数の前記描画データ作成手段用のそれぞれの装置用設定情報に変換する変換手段と、
複数の前記装置用設定情報と前記印刷データから、前記描画データ作成手段を制御するための制御データを、前記描画データ作成手段の数だけ作成する制御データ作成手段と、
複数の前記制御データの差異を検出して、前記差異となった記述を前記描画データ作成手段に対応づけて抽出した差異情報を作成する差異情報作成手段と、を有し、
前記印刷ジョブ登録手段は、前記１つの印刷ジョブとして１つの前記制御データと前記差異情報を取得し、
前記描画データ作成手段決定手段は、前記印刷ジョブ一覧情報の前記１つの印刷ジョブに前記描画データ作成手段を対応づけて登録した場合、登録された前記描画データ作成手段に対応づけられている前記差異情報の前記記述を前記制御データに設定して、登録された前記描画データ作成手段用の前記制御データを作成する、ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記差異情報作成手段は、複数の前記描画データ作成手段の前記制御データの記述形式を保持しており、第１の描画データ作成手段において他の第２の描画データ作成手段との前記差異となった前記記述を、前記他の第２の描画データ作成手段の前記制御データの前記記述形式では記述できないと判断した場合、前記差異情報の前記他の第２の描画データ作成手段に対応づけて差異の抽出を行わない旨の情報を登録し、
前記描画データ作成手段決定手段は、複数の前記記憶手段に記憶された前記１つの印刷ジョブが描画処理の対象となった場合でも、描画処理の対象となった前記１つの印刷ジョブを記憶する前記記憶手段に対応する前記描画データ作成手段が、前記他の第２の描画データ作成手段として前記差異情報に登録されている場合、該他の第２の描画データ作成手段を前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録することなく、前記記憶手段に描画処理が許可されない旨を通知する、
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記印刷ジョブ一覧情報にすでに前記描画データ作成手段が登録されている前記１つの印刷ジョブが、前記印刷ジョブ一覧情報に登録されていない他の前記描画データ作成手段に対応する前記記憶手段において描画処理の対象となった場合、
前記描画データ作成手段決定手段は、前記他の前記描画データ作成手段に対応する前記記憶手段に描画処理が許可されない旨を通知する、
ことを特徴とする請求項２記載の情報処理装置。
【請求項５】
前記描画処理が許可されない旨が前記記憶手段に通知された場合、前記印刷ジョブ登録手段は、前記描画処理の対象となった前記１つの印刷ジョブを、前記描画処理が許可されない旨が通知された前記記憶手段から削除する、
ことを特徴とする請求項３又は４記載の情報処理装置。
【請求項６】
前記印刷ジョブ登録手段は、前記１つの印刷ジョブの全ページの描画処理が終了した場合、全ページの描画処理が終了した前記１つの印刷ジョブを記憶していた前記記憶手段から該１つの印刷ジョブを削除する、
ことを特徴とする請求項３又は４記載の情報処理装置。
【請求項７】
外部から印刷ジョブの描画データの作成要求を取得した場合に、前記１つの印刷ジョブを用いて前記印刷ジョブ登録手段に対し描画データの作成要求を出力する、印刷ジョブに専用の描画データ作成要求手段を生成する作成要求手段生成手段を有する、
ことを特徴とする請求項１〜６いずれか１項記載の情報処理装置。
【請求項８】
前記作成要求手段生成手段により生成されたそれぞれの前記描画データ作成要求手段は、他の前記描画データ作成要求手段とは独立に、前記印刷ジョブ登録手段に対し描画データの作成要求を出力する、ことを特徴とする請求項７記載の情報処理装置。
【請求項９】
印刷ジョブを用いて複数の描画データ作成手段の１つに描画データを作成させる情報処理方法であって、
印刷ジョブ登録手段が、１つの印刷ジョブを前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段にそれぞれ記憶させ、前記１つの印刷ジョブを印刷ジョブ一覧情報に登録するステップと、
複数の前記記憶手段に記憶された前記１つの印刷ジョブのうち、他よりも早く描画処理の対象となった前記１つの印刷ジョブを記憶する前記記憶手段に対応する前記描画データ作成手段を、描画データ作成手段決定手段が、前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録するステップと、
前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録された前記描画データ作成手段が、前記１つの印刷ジョブを用いて描画データを作成するステップと、
前記印刷ジョブ登録手段が、前記描画データ作成手段決定手段により前記印刷ジョブ一覧情報に登録されなかった前記描画データ作成手段に対応する前記記憶手段に記憶されている前記１つの印刷ジョブを削除するステップと、
を有することを特徴とする情報処理方法。
【請求項１０】
印刷ジョブを用いて複数の描画データ作成手段の１つに描画データを作成させる情報処理装置に、
１つの印刷ジョブを前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段にそれぞれ記憶させ、前記１つの印刷ジョブを印刷ジョブ一覧情報に登録する印刷ジョブ登録ステップと、
複数の前記記憶手段に記憶された前記１つの印刷ジョブのうち、他よりも早く描画処理の対象となった前記１つの印刷ジョブを記憶する前記記憶手段に対応する前記描画データ作成手段を、前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録する描画データ作成手段決定ステップと、
前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録された前記描画データ作成手段に、前記１つの印刷ジョブを用いて描画データを作成させるステップと、
前記描画データ作成手段決定ステップにより前記印刷ジョブ一覧情報に登録されなかった前記描画データ作成手段に対応する前記記憶手段に記憶されている前記１つの印刷ジョブを削除するステップと、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
印刷ジョブを用いて描画データを作成する情報処理装置に関する。
【背景技術】
【０００２】
業務用の大量の文書を印刷したり製本したりするいわゆるプロダクションプリンティングが知られている（例えば、特許文献１参照。）。特許文献１には、印刷システム全体を考慮して、後処理が利用可能か否かをユーザに通知できる印刷システムが開示されている。
【０００３】
プロダクションプリンティングでは印刷工程がワークフローとして扱われることが多いが、印刷ワークフローでは、印刷ワークフローのオープン化が進められている。オープン化により、各社のソフトウェア（次述するワークフローアプリケーション）や印刷機器が、印刷の主要な工程における印刷ジョブの設定などを共通の記述方式で記述することが可能となる。印刷ワークフローの工程全体を記述するフォーマットとしてＪＤＦ（Job Definition Format）と呼ばれる標準フォーマットが知られている。
【０００４】
印刷ワークフローの工程には、文書やコンテンツの作成、印刷方法の指定、印刷、後処理などの各種の工程がある。これらの各工程は様々なワークフローアプリケーションや印刷機器により行われるものであるが、ＪＤＦによりワークフローアプリケーションや印刷機器のメーカの違いに関わりなく、印刷機器間の連携や印刷工程管理等が可能になる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、各ワークフローアプリケーションや印刷機器がＪＤＦを拡張する場合があり、各社のワークフローアプリケーションが作成するＪＤＦがワークフローアプリケーション独自の記述を含む場合がある。この場合、下位工程のワークフローアプリケーションや印刷機器が、ＪＤＦを解析して処理できないという状況が生じることが知られている。
【０００６】
図１はＪＤＦが拡張されていた場合の不都合を説明する図の一例である。図１は比較例であり従来例ではない点に注意されたい。ＪＤＦを解析して処理できないという状況に対し、図１（ａ）に示すように、下位工程のワークフローアプリケーションや印刷機器のＪＤＦ解析部５６がＪＤＦを解析して、ＪＤＦを作成したワークフローアプリケーション１２のメーカを判断することが検討される。例えばＪＤＦ解析部５６は、Ａ社（Ｂ社）のワークフローアプリケーション１２が作成したＡ社（Ｂ社）形式のＪＤＦを解析して、Ａ社（Ｂ社）の印刷ジョブであると判断する。Ａ社（Ｂ社）形式のＪＤＦであると判断できれば拡張形式がわかるので、印刷処理装置はＡ社（Ｂ社）のＪＤＦをＣ社に対応した設定情報に変換して、Ａ社（Ｂ社）の印刷ジョブをレンダリングすることができる。
【０００７】
しかしながら、各社のワークフローアプリケーションや印刷機器のレンダリングエンジンの差異により出力結果が変わってしまう場合があった。
【０００８】
そこで、図１（ｂ）に示すように、Ｃ社の印刷処理装置が各社のワークフローアプリケーションに対応したレンダリングエンジン（以下、ＲＩＰエンジン５９という）を有することが検討される。これにより、各社のワークフローアプリケーションや印刷機器がＰＤＬを拡張していても、Ｃ社の印刷処理装置はユーザが意図する仕上がりで印刷ジョブをレンダリングすることができる。
【０００９】
しかしながら、図１（ｂ）のように複数のＲＩＰエンジン５９ａ〜５９ｃが搭載された場合に、印刷処理装置が、各ＲＩＰエンジンを含め印刷処理装置のリソースを効率的に活用できていないという問題があった。
【００１０】
本発明は、上記課題に鑑み、リソースを効率的に活用可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、印刷ジョブを用いて複数の描画データ作成手段の１つに描画データを作成させる情報処理装置であって、前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段と、１つの印刷ジョブを複数の前記記憶手段にそれぞれ記憶させ、前記１つの印刷ジョブを印刷ジョブ一覧情報に登録する印刷ジョブ登録手段と、複数の前記記憶手段に記憶された前記１つの印刷ジョブのうち、他よりも早く描画処理の対象となった前記１つの印刷ジョブを記憶する前記記憶手段に対応する前記描画データ作成手段を、前記印刷ジョブ一覧情報の前記１つの印刷ジョブに対応づけて登録する描画データ作成手段決定手段と、を有し、前記印刷ジョブ登録手段は、前記描画データ作成手段決定手段により前記印刷ジョブ一覧情報に登録されなかった前記描画データ作成手段に対応する前記記憶手段に記憶されている前記１つの印刷ジョブを削除する、ことを特徴とする。
【発明の効果】
【００１２】
リソースを効率的に活用可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】ＪＤＦが拡張されていた場合の不都合を説明する図の一例である。
【図２】ＲＩＰエンジンが効率的に利用されない状況を説明する図の一例である。
【図３】印刷システムの全体構成図の一例である。
【図４】ＤＦＥのハードウェア構成図の一例である。
【図５】ＤＦＥの機能ブロック図の一例である。
【図６】ジョブ制御部とＲＩＰ部の詳細な機能ブロック図の一例である。
【図７】ジョブ管理リストを模式的に説明する図の一例である。
【図８】ＲＩＰ実行エンジン管理リストの一例を示す図である。
【図９】ディスプレイに表示された実行順番設定画面の一例を示す図である。
【図１０】ＪＤＦの記載の一部を説明する図の一例である。
【図１１】変換テーブルの一例を示す図である。
【図１２】ＤＦＥ内ジョブ属性の作成を説明する図の一例である。
【図１３】ＤＦＥ内ジョブ属性の一例を示す図である。
【図１４】「RIP Parameter List」の一例を示す図である。
【図１５】「RIP Parameter List」差分情報の作成と「RIP Parameter List」の再生について説明する図の一例である。
【図１６】「RIP Parameter List」差分情報の作成と「RIP Parameter List」の再生について説明する図の一例である。
【図１７】「RIP Parameter List」差分情報の作成と「RIP Parameter List」の再生について説明する図の一例である。
【図１８】ＲＩＰ実行管理部の動作について説明する図の一例である。
【図１９】ＲＩＰ実行管理部の動作について説明する図の一例である。
【図２０】ＲＩＰ実行管理部の動作について説明する図の一例である。
【図２１】プリンター制御部に対して印刷実行要求が行われる順番を説明する図の一例である。
【図２２】印刷システムの動作手順を示すシーケンス図の一例である。
【図２３】図２２のステップＳ１２の処理を説明するフローチャート図の一例である。
【発明を実施するための形態】
【００１４】
まず、図２を用いて、効率的に利用されないＲＩＰエンジン５９について説明する。図２はＲＩＰエンジン５９が効率的に利用されない状況を説明する図の一例である。ＲＩＰ部５７は各社のＲＩＰエンジン５９ａ〜５９ｃに対応したＲＩＰ待機キュー６９ａ〜６９ｃを有している。
【００１５】
ＲＩＰ部５７は、Ａ社ＲＩＰエンジン５９ａ、Ｂ社ＲＩＰエンジン５９ｂ、及び、Ｃ社ＲＩＰエンジン５９ｃを有する。Ａ社ＲＩＰエンジン５９ａは、Ａ社のワークフローアプリケーション（以下、単にアプリケーション１２という）が作成する印刷ジョブをレンダリングすることで期待されるレンダリング結果を出力し、Ｂ社ＲＩＰエンジン５９ｂはＢ社のアプリケーション１２が作成する印刷ジョブをレンダリングすることで期待されるレンダリング結果を出力し、Ｃ社ＲＩＰエンジン５９ｃはＣ社のアプリケーション１２が作成する印刷ジョブをレンダリングすることで期待されるレンダリング結果を出力する。
【００１６】
このＲＩＰエンジン５９に対し、Ａ社のアプリケーション１２が作成した印刷ジョブ（Job1〜Job3）と、Ｂ社のアプリケーション１２が作成した印刷ジョブ（Job4）のレンダリングが要求された場合を例に説明する。
【００１７】
Job1〜Job3はＡ社ＲＩＰエンジン５９ａでレンダリングされると判断され、Ａ社ＲＩＰ待機キュー６９ａに登録される。Job4はＢ社ＲＩＰエンジン５９ｂでレンダリングされると判断され、Ｂ社ＲＩＰ待機キュー６９ｂに登録される。
【００１８】
このように、印刷ジョブとＲＩＰエンジン５９の対応が固定的であると、印刷ジョブが入稿されないＲＩＰエンジン５９やＲＩＰ待機キュー６９が稼働せず（図２ではＲＩＰエンジン５９ｃとＲＩＰ待機キュー６９ｃが稼働しない）、これらの利用効率が低下してしまう。
【００１９】
そこで、本実施形態のＲＩＰ部５７は以下のように動作する。
(i)１つの印刷ジョブを各ＲＩＰ待機キュー６９ａ〜６９ｃに格納し、最も早期にレンダリングを開始したＲＩＰエンジン５９のみがレンダリングを行う。このＲＩＰエンジン５９に対応するＲＩＰ待機キュー以外のＲＩＰ待機キュー６９からは印刷ジョブを取り出す。
(ii)どのＲＩＰエンジン５９でも印刷ジョブをレンダリングできるように、ＲＩＰ制御部５８は後述する「RIP Parameter List」の差分情報を作成し、例えばＡ社のアプリケーション１２が作成した印刷ジョブをＣ社ＲＩＰエンジン５９ｃがレンダリングすることを可能にする。
【００２０】
〔構成例〕
図３は、本実施形態に係る印刷システム２００の全体構成図の一例を示す。本実施例に係る印刷システム２００は、ＬＡＮやインターネットなどのネットワーク３を介して接続された、一台以上のエンドユーザ環境１と、ＰＯＤ（Print On Demand）印刷システム環境２とを有する。
【００２１】
エンドユーザ環境１には、クライアントＰＣ１１が配置されている。クライアントＰＣ１１はＰＯＤ印刷業務向けのアプリケーション１２が搭載されており、ユーザの操作を受け付けて印刷ジョブの生成を行うことができる。
【００２２】
アプリケーション１２は用紙面に複数の論理的なページイメージを複数貼り付けるための集約印刷機能（Ｎｕｍｂｅｒ Ｕｐ面付け機能）、ヘッダー、フッター、ページ番号などを付加するためのイメージ編集機能を実行することができる。また、アプリケーション１２は印刷製本のための穴あけ（パンチ）指示やステープル留め（ステープル）などの指示を指定することができる。これらの指示や設定はＪＤＦに記述される。ＪＤＦはジョブチケット又は作業指示書、印刷指示書などと呼ばれる場合がある。
【００２３】
ＰＯＤ印刷システム環境２は、ネットワーク３で接続された、工程管理部２０と、デジタル印刷部３０と、ポストプレス部４０とを有している。工程管理部２０はＰＯＤ印刷システム環境２においてデジタル印刷部３０及びポストプレス部４０の各工程に対して作業を指示し、ＰＯＤ印刷システム環境２のワークフローを一元管理する。
【００２４】
工程管理部２０は、エンドユーザ環境１から印刷ジョブ（ＪＤＦとＰＤＬ）を受信し、印刷ジョブを保存する。ＪＤＦは特許請求の範囲の設定情報の一例である。ＰＤＬは特許請求の範囲の印刷データの一例である。ＰＤＬは、ページイメージ（ラスタライズされた画像）の描画内容を指示するための言語であるが、ここではＰＤＬで記述されたデータを意味している。ＰＤＬには、ＰＤＦ（Portable Document Format）、PostScript、ＰＣＬ、ＲＰＤＬなどがある。
【００２５】
また、工程管理部２０はエンドユーザ環境１からの印刷ジョブに基づいて各工程における作業をワークフローとして組み立てたり、デジタル印刷部３０やポストプレス部４０、各作業者の作業を効率よくスケジューリングしたり、自動運転時におけるエラー発生時、必要に応じてオペレータに通知をしたりすることもできる。一般的に工程管理部２０は１台以上のＰＣサーバ２１を含むように構成される。
【００２６】
工程管理部２０は、印刷ジョブをデジタル印刷部３０に送信し印刷を行わせる。また、印刷物はポストプレス部４０に搬送され、工程管理部２０からの指示によりポストプレス部４０は製本などを行う。なお、デジタル印刷部３０から直接、印刷ジョブがポストプレス部４０に送信されてもよい。
【００２７】
デジタル印刷部３０は、種々のプリンター（プロダクション向けプリンター、高速カラーインクジェットプリンター、カラー／モノクロＭＦＰなどのプリンター装置）３１を含むように構成される。デジタル印刷部３０には、ＤＦＥ（Digital Front End）３２が配置される。ＤＦＥ３２は印刷処理装置とも呼ばれ、プリンター３１（印刷装置）による印刷を制御する。ＤＦＥ３２は、図示するようにプリンター３１と別体でもよいし、プリンター３１と一体でもよい。ＤＦＥ３２は、工程管理部２０から印刷ジョブを取得すると、ＪＤＦとＰＤＬを用いてプリンター３１がトナー像又はインクによる画像を形成するためのラスターデータ（特許請求の範囲の描画データの一例である）を生成して、プリンター３１に送信する。
【００２８】
デジタル印刷部３０は種々のプリンター３１を有している。なお、デジタル印刷部３０には印刷した記録紙に対して、紙折り、中綴じ製本、くるみ製本、パンチ等の後加工（後処理）を行うためのフィニッシャ（後処理装置）と直接接続したプリンター３１が含まれていてもよい。
【００２９】
ポストプレス部４０は、工程管理部２０から受信した印刷物（ポストプレスジョブ）の作業指示に従って、紙折り機、中綴じ製本機、くるみ製本機、断裁機、封入機、帳合い機等の後処理デバイスを含むように構成される。また、ポストプレス部４０はデジタル印刷部３０より出力された印刷物に対して、紙折り、中綴じ製本、くるみ製本、断裁、封入、帳合い等の仕上げ処理を実行する。ポストプレス部４０には、ステープラ４０１、パンチ穴あけ機４０２など、デジタル印刷後の後加工（後処理）を行うための後処理装置が含まれている。
【００３０】
エンドユーザ環境１のエンドユーザは、クライアントＰＣ１１から、ＰＯＤ印刷業務向けのアプリケーション１２を使用して、画像の編集、面付け、テキスト挿入、後処理の指示などを行い、ＰＯＤ印刷システム環境２の工程管理部２０に対して、印刷ジョブを送信する。
【００３１】
工程管理部２０のＰＣサーバ２１はＪＤＦに従い、デジタル印刷部３０に対して印刷の指示を行い、ポストプレス部４０に対して後処理の指示を行う。
【００３２】
〔ハードウェア構成〕
本実施例では、エンドユーザ環境１が作成した印刷ジョブを工程管理部２０が受け取り、工程管理部２０がＤＦＥ３２に印刷ジョブを送信する。
【００３３】
図４は、ＤＦＥ３２のハードウェア構成図の一例を示す。ＤＦＥ３２は、例えば図４に示すようなハードウェア構成により実現される。すなわち、ＤＦＥ３２は情報処理装置（コンピュータ）としての機能を有している。ＤＦＥ３２は、バス３２９で相互に接続されているＣＰＵ３２１、ＲＡＭ３２２、補助記憶装置３２３、通信装置３２４、入力装置３２５、表示制御部３２６、及び、記録媒体Ｉ／Ｆ３２７を有している。
【００３４】
ＣＰＵ３２１は、ＲＡＭ３２２をワークメモリにしてプログラムを実行することで、ＤＦＥ３２の全体を制御する。補助記憶装置３２３は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの不揮発メモリである。補助記憶装置３２３は印刷ジョブを変換する機能を有するプログラム３２８を記憶している。
【００３５】
通信装置３２４は、モデム，ＬＡＮカード等であり、ネットワーク３に接続してエンドユーザ環境１、工程管理部２０又はポストプレス部４０と通信する。また、プリンター３１と通信する。入力装置３２５はキーボードやマウス等である。入力装置３２５はユーザの操作を受け付ける装置であり、キーボードやマウスなどである。表示制御部３２６はディスプレイ３３０と接続されており、ＣＰＵ３２１からの指示によりディスプレイ３３０に画面を表示する。なお、ディスプレイ３３０はタッチパネルでもよい。
【００３６】
記録媒体Ｉ／Ｆ３２７は、可搬型の記録媒体を脱着可能であり、ＣＰＵ３２１からの指示により記録媒体３３１にデータを書き込んだり、記録媒体３３１からデータを読み出したりする。記録媒体３３１は、例えばＣＤ−ＲＯＭ、光ディスク、ＵＳＢメモリ、ＳＤカード（登録商標）等、光学的，電気的、又は、磁気的に記録する媒体、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプのものを用いることができる。
【００３７】
なお、プログラム３２８は記録媒体３３１に記憶された状態で配布されるか、又は、不図示のサーバからネットワーク３を介してダウンロードされることで配布される。
【００３８】
また、エンドユーザ環境１のクライアントＰＣ１１、及び、工程管理部２０のＰＣサーバ２１のハードウェア構成図も図４と同様の構成で実現できる。
【００３９】
〔ＤＦＥの機能について〕
図５は、ＤＦＥの機能ブロック図の一例を示す図である。ＤＦＥ３２は、印刷ワークフローにおいてジョブ制御、ＲＩＰ（Raster Image Processor）制御、及び、プリンター制御を行う。このように、ＤＦＥ３２はエンドユーザ環境１や工程管理部２０に対し印刷の主要な機能を提供するサーバとして動作する。なお、ジョブ制御とは、印刷ジョブの受け付け、ＪＤＦの解析、ラスターデータの作成、及び、プリンター３１による印刷等、印刷ジョブの手順の一連の制御をいう。ＲＩＰ制御とは、次述する「ＤＦＥ内ジョブ属性」の作成後、RIP Parameter List７２を作成してＲＩＰエンジン５９にラスターデータを作成させる制御をいう。「ＲＩＰ」とは「Raster Image Processor」の略であり、ラスターデータを作成する専用のＩＣやラスターデータを作成すること（レンダリングすること）をいう。プリンター制御とは、プリンター３１にラスターデータと「ＤＦＥ内ジョブ属性」の一部（後述する「Finishing情報」）を送信して印刷を行わせる制御をいう。
【００４０】
ＤＦＥ３２は、ジョブ受信部５１、システム制御部５２、ＵＩ制御部５４、ジョブ制御部５５、ＪＤＦ解析部５６、ＲＩＰ部５７、ＲＩＰ制御部５８、ＲＩＰエンジン５９、及び、プリンター制御部６１を有している。これらは、ＣＰＵ３２１がプログラム３２８を実行し、図４を含む各種のハードウェアと協働することで実現される。また、ＤＦＥ３２は、補助記憶装置３２３、ＲＡＭ３２２、及び、記録媒体３３１などに構築されたジョブデータ格納部５３及び画像格納部６０を有している。
【００４１】
ジョブ受信部５１は、ネットワーク３を介してアプリケーション１２などから印刷ジョブ８０ａ〜８０ｃ（これらを区別しない場合、印刷ジョブ８０と記載する）を受け付ける。１つの印刷ジョブ８０ａ〜８０ｃには、ＪＤＦ８１ａ〜８１ｃ（これらを区別しない場合、ＪＤＦ８１と記載する）とＰＤＬ８２ａ〜８２ｃ（これらを区別しない場合、ＰＤＬ８２と記載する）が含まれている。ジョブ受信部５１は、ログとして、例えば、一意のジョブ番号、受付日時、終了日時、ステータスなどを印刷ジョブ８０に関連付けて記録する。印刷ジョブ８０は、アプリケーション１２から入力される以外に、ＵＳＢメモリなどから入力されてもよい。本実施形態では印刷ジョブ８０にＪＤＦ８１ａ〜８１ｃが含まれているものとするが、ＪＤＦ８１が含まれていない場合、ジョブ受信部５１はダミーのＪＤＦを作成して、レンダリングを可能にする。
【００４２】
システム制御部５２は、受信した印刷ジョブ８０をジョブデータ格納部５３に格納するか、又は、ジョブ制御部５５に出力する。例えば、ＤＦＥ３２に予め印刷ジョブ８０をジョブデータ格納部５３に格納すると設定されている場合、システム制御部５２は印刷ジョブ８０をジョブデータ格納部５３に格納する。また、例えばＪＤＦ８１に、ジョブデータ格納部５３に格納するか否かが記述されている場合は、記述に従う。
【００４３】
また、システム制御部５２は、ジョブデータ格納部５３に格納した印刷ジョブ８０の内容を例えばユーザがディスプレイ３３０に表示する操作を行った場合、ＪＤＦ８１をジョブデータ格納部５３からＵＩ制御部５４に出力する。ユーザがＪＤＦ８１を変更した場合、ＵＩ制御部５４は変更内容を受け付け、システム制御部５２は再度、変更されたＪＤＦ８１をジョブデータ格納部５３に格納する。
【００４４】
また、システム制御部５２は、ユーザ、エンドユーザ環境１、又は、工程管理部２０から（特許請求の範囲の外部の一例である）、印刷ジョブ８０の実行の指示を受け付けると、ジョブデータ格納部５３に格納された印刷ジョブ８０をジョブ制御部５５に出力する。また、例えば、ＪＤＦ８１に印刷時刻が設定されている場合、該時刻になるとジョブデータ格納部５３に格納された印刷ジョブ８０をジョブ制御部５５に出力する。
【００４５】
ジョブデータ格納部５３は、このように印刷ジョブ８０を格納するための記憶領域であり、ＤＦＥ３２の補助記憶装置３２３や記録媒体３３１に設けられる。また、ネットワーク上の記憶装置（不図示）に設けられてもよい。
【００４６】
ＵＩ制御部５４は、ＪＤＦ８１を解釈してディスプレイ３３０に印刷ジョブ８０の内容を表示する。また、ＲＩＰエンジン５９が作成したラスターデータをディスプレイ３３０に表示することができる。
【００４７】
ＵＩ制御部５４は実行順番設定部６７（特許請求の範囲の印刷順設定受け付け手段の一例である）を有している。実行順番設定部６７は、プリンター制御部６１が印刷ジョブ８０を実行する順番を受け付ける。従来は印刷ジョブ８０の受信順にレンダリングが完了したが、本実施形態では各社のＲＩＰエンジン５９が並列にレンダリングすることが可能なため、印刷ジョブ８０の受信順とレンダリングが完了する順番とが一致しない場合がある。
【００４８】
ユーザは、印刷ジョブ８０の実行順を、印刷ジョブ８０の受信順とレンダリングの完了順の２つから選ぶことができ、実行順番設定部６７はユーザの選択を受け付ける。例えば、レンダリングの完了順にプリンター制御部６１が印刷ジョブ８０を実行することで、プリンター３１の待機時間が減り印刷ジョブ８０を実行するまでの時間（印刷されるまでの時間）を短縮できる。また、受信順にプリンター制御部６１が印刷ジョブ８０を実行すれば、ユーザが送信した順番通りに印刷されるのでユーザとしては印刷順を把握しやすい。
【００４９】
ジョブ制御部５５は、ＲＩＰ制御部５８に対しラスターデータを作成させ、また、プリンター制御部６１に印刷を行わせる。具体的には、まず、印刷ジョブ８０のＪＤＦ８１をＪＤＦ解析部５６に送信すると共に、ＪＤＦ解析部５６にＪＤＦ変換要求を出力する。
【００５０】
ＪＤＦ解析部５６は、ジョブ制御部５５からＪＤＦ８１とＪＤＦ変換要求を取得する。ＪＤＦ解析部５６はＪＤＦ８１の記述を解析して、ＪＤＦ８１を作成したアプリケーション１２のメーカを判断する。ＪＤＦ８１を作成したアプリケーション１２のメーカを判断することは、印刷ジョブ８０がレンダリングされることが想定されているＲＩＰエンジン５９を判断することとほぼ同じ意味である。
【００５１】
ＪＤＦ解析部５６は、ＪＤＦ８１をアプリケーション１２のメーカ用（又はＲＩＰエンジン５９用）に用意されている変換テーブル６６を用いた方法で、ＪＤＦ８１をＤＦＥ３２が扱うことが可能なＤＦＥ内ジョブ属性７１ に変換する。本実施形態では、どのＲＩＰエンジン５９ａ〜５９ｃでも印刷ジョブ８０ａ〜８０ｃをレンダリングできるように、ＪＤＦ解析部５６は１つの印刷ジョブ８０ａ〜８０ｃのＪＤＦ８１ａ〜８１ｃを全ての変換テーブル６６ａ〜６６ｃで変換する。従って、１つの印刷ジョブ８０ａ〜８０ｃそれぞれについてについて３つのＤＦＥ内ジョブ属性７１ａ〜７１ｃ（区別しない場合、ＤＦＥ内ジョブ属性７１という）が作成される。ＤＦＥ内ジョブ属性７１は、特許請求の範囲の装置用設定情報の一例である。
【００５２】
例えば、Ａ社のアプリケーション１２が作成した印刷ジョブ８０ａが入稿された場合、ＪＤＦ８１ａを、Ａ社ＲＩＰエンジン用の変換テーブル６６ａでＤＦＥ内ジョブ属性７１ａに変換する。また、ＪＤＦ８１ａは、Ｂ社ＲＩＰエンジン用の変換テーブル６６ｂでＤＦＥ内ジョブ属性７１ｂに変換され、Ｃ社ＲＩＰエンジン用の変換テーブル６６ｃでＤＦＥ内ジョブ属性７１ｃに変換される（描画データ作成手段用のそれぞれの装置用設定情報に変換される。）。
【００５３】
なお、ＪＤＦ解析部５６は、ＤＦＥ内ジョブ属性７１を作成する際、ＤＦＥ内ジョブ属性７１に「ＲＩＰ制御モード」を設定する。「ＲＩＰ制御モード」については次述するが、「ＲＩＰ制御モード」には「Page Mode」と「Sheet Mode」がある。各社の印刷ジョブ８０が「Page Mode」か「Sheet Mode」のどちらで作成されているのかは予め調査されている。よって、ＪＤＦ８１を作成したアプリケーション１２のメーカが判断されれば「ＲＩＰ制御モード」も決定できる。本実施例では、ＤＦＥ３２は印刷ジョブ８０の集約印刷の設定を「Page Mode」で扱っているものとする（Page Modeがデフォルト）。
【００５４】
なお、Ａ社のアプリケーション１２が作成した印刷ジョブ８０ａをＡ社ＲＩＰエンジン５９ａにレンダリングさせ、Ｂ社のアプリケーション１２が作成した印刷ジョブ８０ｂをＢ社ＲＩＰエンジン５９ｂにレンダリングさせ、Ｃ社のアプリケーション１２が作成した印刷ジョブ８０ｃをＣ社ＲＩＰエンジン５９ｃにレンダリングさせることも可能である。この場合、ＪＤＦ解析部５６は後述するようにアプリケーション１２のメーカを決定することでＲＩＰエンジン５９を特定し、「ＤＦＥ内ジョブ属性」に「ＲＩＰエンジン識別情報」を付与する。
【００５５】
以上によりＤＦＥ内ジョブ属性７１を取得したジョブ制御部５５は、ＤＦＥ内ジョブ属性７１とＰＤＬ８２をRIP Parameter List７２に変換し（３つのRIP Parameter List７２が作成される）、ＲＩＰ制御部５８に対して、RIP Parameter List７２という形で印刷ジョブ８０を出力する。本実施形態では、ジョブ制御部５５が印刷ジョブ毎にＲＩＰ制御部５８に対して印刷ジョブ８０を出力する。
【００５６】
ジョブ制御部５５はRIP Parameter List差分情報生成部６２を有している。RIP Parameter List差分情報生成部６２は、RIP Parameter List差分情報７３を作成する。本実施形態では３つの、RIP Parameter List７２が作成されるため、RIP Parameter List差分情報７３は、３つのRIP Parameter List７２の差異である。RIP Parameter List差分情報７３について詳細は後述する。
【００５７】
例えば、Ａ社のアプリケーション１２が印刷ジョブ８０を入稿した場合、ジョブ制御部５５はＡ社ＲＩＰエンジン用の変換テーブル６６ａで作成されたＤＦＥ内ジョブ属性７１ａとＰＤＬ８２からRIP Parameter List７２を作成する。また、ジョブ制御部５５はＢ社ＲＩＰエンジン用の変換テーブル６６ｂで作成されたＤＦＥ内ジョブ属性７１ｂとＰＤＬ８２からRIP Parameter List（便宜的にRIP Parameter List７２ｂとする）を作成する。また、ジョブ制御部５５はＣ社ＲＩＰエンジン用の変換テーブル６６ｃで作成されたＤＦＥ内ジョブ属性７１ｃとＰＤＬ８２からRIP Parameter List（便宜的にRIP Parameter List７２ｃとする）を作成する。そして、RIP Parameter List差分情報生成部６２は、Ａ社用のRIP Parameter List７２、Ｂ社用のRIP Parameter List７２ｂ、及び、Ｃ社用のRIP Parameter List７２ｃを比較して、相違点を特定する。この３つのRIP Parameter List７２の相違点を１つにまとめたものがRIP Parameter List差分情報７３である。
【００５８】
ＲＩＰ制御部５８に出力されるRIP Parameter List７２は１つである。出力されるRIP Parameter List７２は、ＪＤＦ解析部５６がＪＤＦ８１の記述に基づき使用した変換テーブル６６により変換されたＤＦＥ内ジョブ属性７１から作成されたRIP Parameter List７２である。従って、Ａ社のアプリケーション１２が作成した印刷ジョブ８０の場合、Ａ社ＲＩＰエンジン用の変換テーブル６６ａで作成されたＤＦＥ内ジョブ属性７１ａとＰＤＬ８２から作成されたRIP Parameter List７２がＲＩＰ制御部５８に出力される。
【００５９】
なお、RIP Parameter List７２はＲＩＰエンジン５９にてＲＩＰ処理を行うために必要な情報の集合である。ジョブ制御部５５は「RIP Parameter List」の情報からＲＩＰエンジン５９へのＲＩＰ処理の命令を決定する。この命令をＲＩＰコマンドという。RIP Parameter List７２には「ＲＩＰ制御モード」が含まれている。ＲＩＰ制御部５８は「ＲＩＰ制御モード」に応じてＲＩＰエンジン５９を制御する。よって、「ＲＩＰ制御モード」によりシーケンスが決定される。
「Page Mode」…ページ毎にＲＩＰ処理を指示して１枚に集約されたラスターデータを作成する
「Sheet Mode」…すでに複数のページが集約された１ページの各部分（集約前の各ページ部分に相当する）毎にＲＩＰ処理を指示してラスターデータを作成する
また、ジョブ制御部５５はインスタンス作成部６３を有し、インスタンス作成部６３は印刷ジョブ毎にジョブ制御部５５のインスタンスを作成する。詳細は図６にて説明する。
【００６０】
プログラミング用語と対比すると、ジョブ制御部５５が「クラス」に相当し、ジョブ制御部ＩＮＳ６３０が「インスタンス」に相当する。「クラス」は一般に「型」「設計図」「定義」「テンプレート（雛形）」と呼ばれ、「インスタンス」は「クラス」が「実態」化されたものである。なお、本実施形態で使用されるプログラム言語は限定されず、特定のプログラム言語のクラスとインスタンスを意図していない。
【００６１】
ジョブ制御部ＩＮＳ６３０はジョブ制御部５５の機能の全てがインスタンス化されたものである必要はなく、少なくともＲＩＰ制御部５８にＲＩＰ実行要求（特許請求の範囲の作成要求の一例である）を行う機能を有していればよい。従って、ジョブ制御部ＩＮＳ６３０をジョブ制御部５５のインスタンスとするのでなく、ジョブ制御部５５をクラスとして別のクラスを承継して作成し、該クラスのインスタンスをジョブ制御部ＩＮＳ６３０としてもよい。
【００６２】
なお、インスタンス作成部６３がジョブ制御部ＩＮＳ６３０を動的に作成するのでなく、ジョブ制御部ＩＮＳ６３０が予め、複数個、ＤＦＥ３２に搭載されていてもよい。しかし、インスタンスを作成する場合は、印刷ジョブ８０の数だけインスタンスを作成すればよいのでＤＦＥ３２にかかる負荷を抑制しやすい。
【００６３】
ＲＩＰ部５７は、ＲＩＰ制御部５８とＲＩＰエンジン５９ａ〜５９ｃを有し、これらによりラスターデータを作成する。ＲＩＰ制御部５８は、ＲＩＰエンジン毎に、Ａ社ＲＩＰ待機キュー６９ａ、Ｂ社ＲＩＰ待機キュー６９ｂ、及び、Ｃ社ＲＩＰ待機キュー６９ｃ（区別しない場合、ＲＩＰ待機キュー６９という）を有している。本実施形態のＲＩＰ制御部５８は、１つの印刷ジョブ８０を全てのＲＩＰ待機キュー６９ａ〜６９ｃに記憶させる。
【００６４】
ＲＩＰ待機キュー６９には、ジョブ制御部５５からＲＩＰ実行要求があった順番に印刷ジョブ８０が格納される。ＲＩＰ制御部５８は、ＲＩＰ待機キュー６９に格納されている順番にＲＩＰエンジン５９に対しＲＩＰ実行要求を出力する。
【００６５】
また、ＲＩＰ制御部５８は、RIP Parameter List７２を参照して、「ＲＩＰ制御モード」が「Sheet Mode」の場合、「Sheet Mode」に従ってＲＩＰコマンドをＲＩＰエンジン５９に出力する。これにより、印刷ジョブ８０（主にＰＤＬ８２）の違いを吸収できる。
【００６６】
ＲＩＰ制御部５８は、ＲＩＰ実行管理部６５を有している。ＲＩＰ実行管理部６５は、各ＲＩＰ待機キューからジョブＩＤと共にＲＩＰ実行許可要請を取得すると、ＲＩＰ実行許可判定結果を作成し、各ＲＩＰ待機キューへ返す。また、各印刷ジョブ８０のRIP Parameter List７２及びRIP Parameter List差分情報７３を管理し、印刷ジョブ８０のレンダリングを行うＲＩＰエンジン５９が決まると、該ＲＩＰエンジン用にRIP Parameter List７２及びRIP Parameter List差分情報７３からRIP Parameter List７２を再生する。
【００６７】
ＲＩＰエンジン５９はレンダリングエンジンであり、ＲＩＰコマンドに従ってラスタライズを行うことでラスターデータを作成する。ＲＩＰエンジン５９は特許請求の範囲の「描画データ作成手段」の一例である。ＲＩＰエンジン５９は、ソフトウェア又はＬＳＩなどのハードウェアのどちらで実装されていてもよい。ソフトウェアで実装されている場合、各ＲＩＰエンジン５９はマルチタスクにより並列にレンダリングを行い、ハードウェアにより実装されている場合、各ＲＩＰエンジン５９は独立にレンダリングできるので並列にレンダリングできる。なお、ＲＩＰエンジン５９においてソフトウェアとハードウェアの実装が混在していてもよい。
【００６８】
画像格納部６０は、作成されたラスターデータが格納される記憶手段である。画像格納部６０は、例えば、補助記憶装置３２３に搭載される。または、ネットワーク上の記憶装置に搭載されてもよい。
【００６９】
プリンター制御部６１は、プリンター３１と接続されており、画像格納部６０に格納されているラスターデータを読み出し、プリンター３１に送信することで印刷を行う。また、ジョブ制御部５５から取得した「Finishing情報」に基づき仕上げ処理を行う。
【００７０】
プリンター制御部６１は、各種の通信規格を利用してプリンター３１と通信し、プリンター３１の情報を取得することができる。例えば印刷ワークフローの規格を定めるＣＩＰ４では、ＪＤＦ８１の規格としてデバイス仕様情報をプリンター３１と送受信するDevCapsという規格を定めている。また、ＳＮＭＰ（Simple Network Management Protocol）という通信プロトコルとＭＩＢ（Management Information Base）というデータベースとを利用したプリンター３１の情報の収集方法も知られている。プリンター制御部６１はこれらを利用してプリンター３１に格納されている各種の情報を取得する。
【００７１】
図６は、ジョブ制御部５５とＲＩＰ部５７の詳細な機能ブロック図の一例である。インスタンス作成部６３が作成するインスタンスをジョブ制御部ＩＮＳ６３０という。ジョブ制御部ＩＮＳ６３０は印刷ジョブ毎に作成されるため、区別する際には「ジョブ制御部ＩＮＳ＋ジョブ番号」で記載する。また、ジョブ制御部５５は、ＲＩＰ実行要求のためジョブ管理リスト６４を有している。
【００７２】
インスタンス作成部６３はJob1を取得することでジョブ制御部ＩＮＳ１を作成し、Job2を取得することでジョブ制御部ＩＮＳ２を作成し、Job3を取得することでジョブ制御部ＩＮＳ３を作成し、Job4を取得することでジョブ制御部ＩＮＳ４を作成する。
【００７３】
また、図７に示すように、ジョブ管理リスト６４には、印刷ジョブ毎に以下の情報が登録される。
【００７４】
- ジョブ受信順
- ジョブＩＤ
- ページ数
ジョブ制御部５５はジョブ管理リスト６４に印刷ジョブ８０の「受信順」、「ジョブＩＤ」、及び、「ページ数」を登録する。
【００７５】
図７は、ジョブ管理リスト６４を模式的に説明する図の一例である。受信順を管理することで、プリンター制御部６１が印刷ジョブ８０を実行する順番（印刷する順番）を受信順に制御できる。ジョブＩＤはジョブ管理リスト６４の印刷ジョブ８０を一意に管理する番号、文字、記号、アルファベット又はこれらの組み合わせである。ページ数は印刷ジョブ８０のページ数である。
【００７６】
図６に戻り、ジョブ制御部ＩＮＳ１は、RIP Parameter List７２とRIP Parameter List差分情報７３という形で、ＲＩＰ制御部５８にJob1のＲＩＰ実行要求を出力する。ジョブ制御部ＩＮＳ２は、RIP Parameter List７２とRIP Parameter List差分情報７３という形で、ＲＩＰ制御部５８にJob2のＲＩＰ実行要求を出力する。ジョブ制御部ＩＮＳ３は、RIP Parameter List７２とRIP Parameter List差分情報７３という形で、ＲＩＰ制御部５８にJob3のＲＩＰ実行要求を出力する。ジョブ制御部ＩＮＳ４は、RIP Parameter List７２とRIP Parameter List差分情報７３という形で、ＲＩＰ制御部５８にJob4のＲＩＰ実行要求を出力する。各ジョブ制御部ＩＮＳ１〜４は、並列にＲＩＰ実行要求を出力する。RIP Parameter List差分情報７３は、特許請求の範囲の「差異情報」の一例である。
【００７７】
ＲＩＰ制御部５８は、１つの印刷ジョブ８０を全てのＲＩＰ待機キュー６９ａ〜６９ｃに記憶させる。ここでは、印刷ジョブ８０そのものをＲＩＰ待機キュー６９に記憶させるのではなく、印刷ジョブ８０のアドレス（例えば先頭アドレスとサイズ）を記憶させる。これにより、全てのＲＩＰ待機キュー６９に１つの同じ印刷ジョブ８０が記憶されても、ＲＩＰ待機キュー６９の容量が増大することを抑制できる。なお、ジョブ制御部ＩＮＳ６３０がインスタンス化されていることを考慮してジョブもインスタンス化してもよい。
【００７８】
ＲＩＰ待機キュー６９に記憶された印刷ジョブ８０はＲＩＰ実行管理部６５で管理される。ＲＩＰ実行管理部６５は、アドレスに基づき、RIP Parameter List７２とRIP Parameter List差分情報７３を参照可能であり、各印刷ジョブ８０をレンダリングするＲＩＰエンジン５９を決定する。
【００７９】
各ＲＩＰ待機キュー６９ａ〜６９ｃは、先頭の印刷ジョブ８０について、ＲＩＰ実行管理部６５に対し、ＲＩＰ実行許可要請を行う。ＲＩＰ実行許可要請は、ジョブＩＤを指定して印刷ジョブ８０の実行の要請する情報である。ＲＩＰ実行管理部６５は、ＲＩＰ実行許可要請を受けてＲＩＰ実行許可判定結果をＲＩＰ待機キュー６９へ返す。ＲＩＰ実行許可判定結果は、実行の許否（ＲＩＰ実行許可、ＲＩＰ実行不許可）を通知する情報である。
【００８０】
ＲＩＰ実行管理部６５は、図８に示すＲＩＰ実行エンジン管理リスト６８を有している。ＲＩＰ実行エンジン管理リスト６８は特許請求の範囲の「印刷ジョブ一覧情報」の一例である。図８はＲＩＰ実行エンジン管理リスト６８の一例を示す図である。ＲＩＰ実行エンジン管理リスト６８には、「ジョブＩＤ」に対応づけて「ＲＩＰ実行エンジン」が登録される。ＲＩＰ実行管理部６５は、まず、ジョブ制御部５５からＲＩＰ実行要求を取得するとＲＩＰ実行エンジン管理リスト６８にジョブＩＤを登録する。
【００８１】
その後、ＲＩＰ実行管理部６５は、原則的に、最も早期にＲＩＰ実行許可要請を出力したＲＩＰ待機キュー６９に対応するＲＩＰエンジン５９が印刷ジョブ８０を実行すると決定する。すなわち、このＲＩＰ待機キュー６９にＲＩＰ実行許可を出力する。ただし、例外として、ＲＩＰエンジン５９がRIP Parameter List７２に対応していないと判断される場合、ＲＩＰ実行管理部６５は最も早期にＲＩＰ実行許可要請を出力したＲＩＰ待機キュー６９に対して、ＲＩＰ実行不許可を出力する。なお、ＲＩＰ実行許可要請を出力することは、ＲＩＰ待機キュー６９において印刷ジョブ８０が描画処理の対象となったことを意味する。
【００８２】
ＲＩＰ実行許可を出力した場合、ＲＩＰ実行管理部６５はＲＩＰ実行エンジン管理リスト６８の「ジョブＩＤ」に対応づけて「ＲＩＰ実行エンジン」のフィールドにＲＩＰエンジン５９の識別情報を登録する。このＲＩＰエンジン５９がジョブＩＤで指定される印刷ジョブ８０をレンダリングする。
【００８３】
ＲＩＰ実行管理部６５は、ＲＩＰエンジン５９が決まった印刷ジョブ８０について、RIP Parameter List７２とRIP Parameter List差分情報７３とを基に、ＲＩＰエンジン５９がレンダリングすることが可能なRIP Parameter Listに変更する。詳細は図１５〜１７にて説明する。
【００８４】
ＲＩＰ制御部５８は、ＲＩＰ実行管理部６５の判断に基づき、ＲＩＰ実行エンジン管理リスト６８でＲＩＰエンジン５９が決まった印刷ジョブ８０のＲＩＰ実行要求をＲＩＰエンジン５９に対し行う。これにより、ＲＩＰ待機キュー６９の先頭の印刷ジョブ８０はレンダリングが開始される。ＲＩＰ実行管理部６５の詳細は図１８，１９にて説明する。
【００８５】
なお、各ＲＩＰエンジン５９はページ単位にＲＩＰ終了通知（特許請求の範囲の作成終了通知の一例である）をＲＩＰ制御部５８に返すので、ＲＩＰ制御部５８はページ単位にＲＩＰ終了通知をジョブ制御部ＩＮＳ６３０に出力する。ＲＩＰ終了通知にはジョブＩＤが含まれており、ジョブ制御部ＩＮＳ６３０は印刷ジョブ８０の何ページまでレンダリングが終了したかを判断できる。
【００８６】
１つの印刷ジョブ８０の最後のページまでレンダリングが終了したとジョブ制御部５５が判断すると、例えばインスタンス作成部６３はレンダリングが終了した印刷ジョブ８０のジョブ制御部ＩＮＳ６３０を削除する。これにより、不要になったジョブ制御部ＩＮＳ６３０によりリソースが使用されることを抑制できる。
【００８７】
また、同様に、ＲＩＰ制御部５８は各印刷ジョブ８０の全ページのレンダリングが終了すると、ＲＩＰ待機キュー６９から印刷ジョブ８０を取り出す。なお「取り出す」とは削除や消去することをいう。
【００８８】
〔印刷ジョブの実行順の設定〕
図９は、ディスプレイ３３０に表示された実行順番設定画面の一例を示す図である。実行順番設定画面にはラジオボタン５０１，５０２と共に「印刷ジョブの受信順」「レンダリングの終了順」というメッセージが表示されている。ユーザはいずれかのラジオボタン５０１，５０２を選択する。ＵＩ制御部５４は選択された実行順番の設定を受け付け、ジョブ制御部５５に出力する。これにより、ジョブ制御部５５は設定された順番で印刷実行要求をプリンター制御部６１に出力できる。
【００８９】
〔ＪＤＦ及びＪＤＦを作成したアプリケーションのメーカの決定について〕
ＪＤＦ８１はＸＭＬ（Extensible Markup Language）で記述される。ＸＭＬはタグに意味をもたせて文書を構造化する構造化テキストの規格である。
【００９０】
図１０は、ＪＤＦ８１の記載の一部を説明する図の一例である。図１０（ａ）のＪＤＦ８１はＣ社のアプリケーション１２が作成したものであるとする。ＪＤＦ８１には、印刷ジョブ８０に対する指示内容が記述されている。
「JDF xmlns="http://www.CIP4.org/JDFSchema_1_1"」は、CIP4準拠のJDFチケットであることを示す。
「xmlns:C="www.ccc.com/schema/ccc"」は、CIP4準拠外の各印刷業者／ベンダーが独自に拡張したJDFタグ定義を示す。本例の場合、ＪＤＦ内の「C:」から始まるタグは、全て拡張タグになる。
「ResourcePool」は、印刷を実現するための属性の集合を定義する。
「LayoutPreparationParams」は、「ResourcePool」に定義される属性のひとつであり、面付け関連の属性を定義する。
「ResourceLinkPool」は、ページ間などジョブ内の特定の範囲で属性が異なる場合などに、その範囲に対する「ResourcePool」内の共通利用する属性への参照の集合を定義する。
「ComponentLink」は、「ResourceLinkPool」内の参照の定義のひとつであり、出力物に関わる属性の参照とその情報を指定する。
「Amount」は、部数を指定する。
「Rotate」は、画像の回転角度を指定する。
【００９１】
図１０（ｂ）はＡ社の拡張の一例を、図１０（ｃ）はＢ社の拡張の一例を示す。図１０（ｂ）の「xmlns:A="www.aaa.com/schema/aaa"」は、ＪＤＦ内の「A:」から始まるタグは、全てＡ社の拡張タグになることを意味する。図１０（ｃ）の「xmlns:B="www.bbb.com/schema/bbb"」は、ＪＤＦ内の「B:」から始まるタグは、全てＢ社の拡張タグになることを意味する。
【００９２】
従って、ＪＤＦ解析部５６は、ＪＤＦ８１のこれらの記述を参照することで、ＪＤＦ８１を作成したアプリケーション１２のメーカを判別できる。アプリケーション１２のメーカに応じて後述する変換テーブル６６を用いて、ＪＤＦ８１をＣ社のＤＦＥ３２が扱うことができるＤＦＥ内ジョブ属性７１に変換できる。
【００９３】
〔ＤＦＥ内ジョブ属性の作成〕
図１１、１２を用いてＤＦＥ内ジョブ属性７１の作成について説明する。図１１は変換テーブル６６の一例を、図１２はＤＦＥ内ジョブ属性７１の作成を説明する図の一例である。ＪＤＦ解析部５６は、すべての変換テーブル６６ａ〜６６ｃを用いてＪＤＦ８１をＤＦＥ内ジョブ属性７１ａ〜７１ｃに変換する。
【００９４】
図１１（ａ）はＣ社の変換テーブル６６の一例を示す。Ｃ社の変換テーブル６６ｃは、「Amount」という属性名の属性値を「部数」という項目名の項目値に対応させ、「Rotate」という属性名の属性値を「回転」という項目名の項目値に対応させる。
【００９５】
変換方法は、図１２に示すように、ＪＤＦ８１のタグ内の属性とＤＦＥ内ジョブ属性７１の項目を対応づける変換テーブル６６を参照し、ＪＤＦ８１の属性値をＤＦＥ内ジョブ属性７１の項目値として配置するというものである。
【００９６】
ＪＤＦ解析部５６は、Ｃ社の変換テーブル６６ｃだけでなく、Ａ社の変換テーブル６６ａとＢ社の変換テーブル６６ｂを予め保持している。図１１（ｂ）はＡ社の変換テーブル６６ａを、図１１（ｃ）はＢ社の変換テーブル６６ｂをそれぞれ示す。ＪＤＦ解析部５６は上記のようにＪＤＦ８１から拡張タグを指定する記述を検出して、アプリケーション１２のメーカを判断し、各メーカに対応した変換テーブル６６を使用する。
【００９７】
Ａ社、Ｂ社のＪＤＦ８１の場合も同様に変換できる。Ａ社の変換テーブル６６ａは、「A:Amount」という属性名の属性値を「部数」という項目名の項目値に対応させ、「A:Rotate」という属性名の属性値を「回転」という項目名の項目値に対応させる。Ｂ社の変換テーブル６６ｂは、「B:DeliveryAmount」という属性名の属性値を「部数」という項目名の項目値に対応させ、「B:Rotate」という属性名の属性値を「回転」という項目名の項目値に対応させる。なお、Ｂ社の変換テーブル６６ｂでは、「B:AlternateRotation」という属性名の属性値が「false」の場合のみ回転が有効になる。従って、Ａ社又はＢ社のＪＤＦ８１であると判定されれば、Ｃ社のＪＤＦ８１と同様にＤＦＥ内ジョブ属性７１を作成できる。
【００９８】
なお、ＪＤＦ解析部５６は、集約印刷における印刷ジョブ８０の形式が自社（Ｃ社）と異なる会社のアプリケーション１２により作成されていると判断すると、ＤＦＥ内ジョブ属性７１の「ＲＩＰ制御モード」という項目に「Sheet Mode」を設定する。アプリケーション１２が自社製であったり、集約印刷における印刷ジョブ８０の形式が自社（Ｃ社）と同じ会社のアプリケーション１２である場合は、「ＲＩＰ制御モード」という項目に「Page Mode」を設定する。これにより、ＲＩＰ制御部５８は「ＲＩＰ制御モード」に応じてＲＩＰエンジン５９に出力するＲＩＰコマンドを制御できる。
【００９９】
図１３は、ＤＦＥ内ジョブ属性の一例を示す図である。ＤＦＥ内ジョブ属性７１は大きく、ジョブの実行に関する「Ｊｏｂ情報」、ラスターデータに関する「Edit情報」、及び、仕上げ処理に関する「Finishing情報」に区分されている。
・Ｊｏｂ情報は、部数を指定する「部数」という項目を有している。
・Edit情報の「向き情報」という項目は、印刷の向きを指定する。
・Edit情報の「印刷面情報」という項目は、印刷面を指定する。
・Edit情報の「回転」という項目はページの回転角度を指定する。
・Edit情報の「拡大/縮小」という項目は拡大/縮小と変倍率を指定する。
・Edit情報の「イメージ位置：オフセット」という項目はイメージのオフセットを指定する。
・Edit情報の「イメージ位置：位置調整情報」という項目はイメージの位置調整を指定する。
・Edit情報の「レイアウト情報：カスタム・インポジション配置」という項目は、カスタム面の配置を指定する。
・Edit情報の「レイアウト情報：ページ数」という項目は、用紙１枚のページ数を指定する。
・Edit情報の「レイアウト情報：インポジション情報」という項目は、面配置に関する情報を指定する。
・Edit情報の「レイアウト情報：ページ順序情報」という項目は、印刷されるページの順序に関する情報を指定する。
・Edit情報の「レイアウト情報：クリープ位置調整」という項目は、クリープ位置の調整に関する情報を指定する。
・Edit情報の「マージン情報」という項目は、フィット・ボックスやガターなどのマージンに関する情報を指定する。
・Edit情報の「クロップ・マーク情報：センター・クロップ・マーク情報」という項目は、センター・クロップ・マークに関する情報を指定する。
・Edit情報の「クロップ・マーク情報：コーナー・クロップ・マーク情報」という項目は、コーナー・クロップ・マーク情報に関する情報を指定する。
・Finishing情報の「Collate情報」という項目は、文書が複数部数印刷される場合にページ単位で印刷するか文書単位で印刷するかの情報を指定する。
・Finishing情報の「ステープル/バインド情報」という項目は、ステープル/バインドに関する情報を指定する。
・Finishing情報の「パンチ情報」という項目は、パンチに関する情報を指定する。
・Finishing情報の「折り情報」という項目は、折りに関する情報を指定する。
・Finishing情報の「トリム」という項目は、トリムに関する情報を指定する。
・Finishing情報の「出力トレイ情報」という項目は、出力トレイに関する情報を指定する。
・Finishing情報の「入力トレイ」という項目は、入力トレイに関する情報を指定する。
・Finishing情報の「カバー・シート情報」という項目は、カバー・シートに関する情報を指定する。
【０１００】
また、図示するように、ＤＦＥ内ジョブ属性７１には「ＲＩＰ制御モード」が設定される。「ＲＩＰ制御モード」には「Page Mode」又は「Sheet Mode」が設定される。なお、ダミーＪＤＦの場合、「ＲＩＰ制御モード」には「Page Mode」が設定されるものとする。
【０１０１】
〔RIP Parameter List〕
図１４は、RIP Parameter List７２の一例を示す図である。RIP Parameter List７２は特許請求の範囲の制御データの一例である。
・入出力データ種類情報は、入力、出力データの種類を指定する。(入力、出力データは、ＰＤＬ８２のみだけではなく、テキストファイルや、JPEGなどの画像データも指定される。
・入出力データの読み書き位置指定方式情報は、入力、出力データのオフセット（読み込み／書き込み位置）の指定方法を指定する。例えば、指定の位置から、現在の位置から、最後尾から、などを指定できる。
・入出力データの読み書き位置情報は、入力、出力データの現在の処理位置を指定する。
・入出力データの読み書きの実行モード情報は、実行モードを指定する情報である。例えば、READ、WRITE、READ_WRITEなどを指定する。
・単位情報（ディメンジョン）は、「RIP Parameter List」内で使用する単位を指定する。例えば、「mm」、「inch」、「pel」、「point」などが指定される。
・入出力データの圧縮方式情報は、入力、出力データの圧縮方法を指定する。例えば、「UNCOMPRESSED」、「PACKBITS」などが指定される。
・「ＲＩＰ制御モード」は、集約印刷における制御モードを指定する。例えば、「Page Mode」又は「Sheet Mode」が指定される。
【０１０２】
入出力画像情報部は、「出力画像に関する情報」「入力画像に関連する情報」「画像の取り扱いに関する情報」を有している。
・画像フォーマット・タイプは、出力画像のファーマットのタイプを指定する。例えば、ラスタ等が指定される。
・画像フォーマット・ディメンジョンは、出力画像フォーマットのディメンジョンを指定する。
・画像フォーマット・解像度は、出力画像フォーマットの解像度を指定する。
・画像の位置は、出力画像の位置を指定する。
・カラーセパレーション情報は、カラーセパレーション（カラー分解）を指定する。例えば「ｋ」、「ｃｍｙｋ」、「separation」などが指定される。
・カラープレーン・フィット・ポリシー情報は、カラープレーンの展開方式を指定する。
・プレーン・シフト情報は、カラープレーンのシフト量を指定する。
・画像フォーマットのカラービット数は、出力画像フォーマットのカラービット数を指定する。
・画像の向き情報は、出力画像のページの向きを指定する。
・作像位置情報は、クロップ・エリアの位置情報を指定する。
・作像サイズ情報は、クロップ・エリアのサイズ情報を指定する。
・作像方式情報は、クリップのポリシーを指定する。
・カラーICC情報は、カラーICCプロファイルに関する情報を指定する。
・フォント代替情報は、フォントの代替に関する情報を指定する。
・作像基点情報は、作像起点を指定する。例えば、「センター」、「右上」などが指定される。
・フラットKブラック情報は、フラットKブラックに関する情報を指定する。
・レンダリング情報は、レンダリンク（ラスタライズ）に関する情報を指定する。
・画像フォーマット・タイプは、入力画像のファーマットのタイプを指定する。例えば、ラスタ等が指定される。
・画像フォーマット・ディメンジョンは、入力画像フォーマットのディメンジョンを指定する。
・画像フォーマット・解像度は、入力画像フォーマットの解像度を指定する。
・画像の位置は、入力画像の位置を指定する。
・入力データは、入力データを指定する。
・ページ範囲情報は、ページ番号を指定する。
・カラーICC情報は、カラーICCプロファイルに関する情報を指定する。
・スケーリング・オフセット情報は、拡大縮小アルゴリズムのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットなどが指定される。
・オブジェクト・領域情報は、オブジェクト領域の幅、高さを指定する。
・ハーフトーン情報は、ハーフトーンのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットが指定される。
・スケーリング・アルゴリズム情報は、スケーリングの方式を指定する。
【０１０３】
ＰＤＬ８２に関連する情報は、データ領域、サイズ情報、及び、データの配置方法を指定する。
・データ領域は、ＰＤＬ８２の格納されている領域情報を指定する。フォント情報、ページ数の情報などは、このデータ領域内に存在するＰＤＬ８２に含まれている。
・サイズ情報は、ＰＤＬ８２のサイズを指定する。
・データの配置方法は、データの配置方式を指定する。例えば、リトルエンディアン、ビッグエンディアンなどが指定される。
【０１０４】
〔RIP Parameter List差分情報の作成〕
図１５〜１７を用いてRIP Parameter List差分情報７３の作成とRIP Parameter List７２の再生について説明する。
【０１０５】
図１５（ａ−１）はＡ社ＲＩＰエンジン５９ａのRIP Parameter List７２において、画像の向き(回転)の記述形式を説明する。Ａ社ＲＩＰエンジン５９ａのRIP Parameter List７２では、上向きを基点（0度）として、時計回りに1度刻みで値を指定(範囲:0度〜359度)する。
【０１０６】
図１５（ａ−２）はＢ社ＲＩＰエンジン５９ｂのRIP Parameter List７２において、画像の向き(回転)の記述形式を説明する。Ｂ社ＲＩＰエンジン５９ｂのRIP Parameter List７２では、上向きを基点（0度）として、時計回りをプラス方向とし、90度刻みで値を指定(-180度、-90度、0度、90度、180度)する。
【０１０７】
図１５（ａ−３）はＣ社ＲＩＰエンジン５９ｃのRIP Parameter List７２において、画像の向き(回転)の記述形式を説明する。Ｃ社ＲＩＰエンジン５９ｃのRIP Parameter List７２では、各方向を基点上向き１、右向き２、下向き３、左向き４として回転を指定する。
【０１０８】
なお、ＲＩＰ実行管理部６５は、各ＲＩＰエンジン５９の項目毎の記述形式を予め保持している。
【０１０９】
Ｉ．例１
Ａ社形式のＪＤＦ８１ａにおいて、画像を時計回りに270度回転する設定が指定されている場合について説明する。従って、Ａ社形式のＪＤＦ８１ａがＡ社の変換テーブル６６ａで変換されたＤＦＥ内ジョブ属性７１ａとＰＤＬ８２ａから作成されたRIP Parameter List７２は図１５（ｂ）のようになる。すなわち、ＪＤＦ８１の情報がRIP Parameter List７２に保存される。
【０１１０】
これに対し、Ａ社形式のＪＤＦ８１ａがＢ社の変換テーブル６６ｂで変換されたＤＦＥ内ジョブ属性７１ｂとＰＤＬ８２ａから作成されたRIP Parameter List７２では画像の回転向きは、「-90度」になる。また、Ａ社形式のＪＤＦ８１ａがＣ社の変換テーブル６６ｃで変換されたＤＦＥ内ジョブ属性７１ｃとＰＤＬ８２ａから作成されたRIP Parameter List７２では画像の回転向きは、「4」になる。
【０１１１】
RIP Parameter List差分情報生成部６２は、３つのRIP Parameter List７２の「画像の向き情報」を比較してRIP Parameter List差分情報７３を作成する。図１５（ｃ）はRIP Parameter List差分情報７３の一例を示す。RIP Parameter List差分情報７３は、RIP Parameter List７２の各項目について、３つのRIP Parameter List７２の差異が抽出されたものである。
【０１１２】
続いて、ＲＩＰエンジン５９がレンダリングに用いるRIP Parameter List７２の再生について説明する。
【０１１３】
・Ａ社ＲＩＰエンジン５９ａがレンダリングする場合
RIP Parameter List７２を使ってレンダリングすればよく、RIP Parameter List差分情報７３は使用しない。
【０１１４】
・Ｂ社ＲＩＰエンジン５９ｂがレンダリングする場合
ＲＩＰ実行管理部６５は、「画像の向き情報」の値をＢ社形式に変換する。図１６（ａ）はＢ社形式に変換されたRIP Parameter List７２の一例を示す。図１５（ｃ）のRIP Parameter List差分情報７３によると、Ｂ社形式の「画像の向き情報」は「-90度」なので、ＲＩＰ実行管理部６５は、Ａ社ＲＩＰエンジン用の変換テーブル６６ａから作成されたRIP Parameter List７２の「画像の向き情報」に「-90度」を設定する。
【０１１５】
・Ｃ社ＲＩＰエンジン５９ｃがレンダリングする場合
ＲＩＰ実行管理部６５は、「画像の向き情報」の値をＣ社形式に変換する。図１６（ｂ）はＣ社形式に変換されたRIP Parameter List７２の一例を示す。図１５（ｃ）のRIP Parameter List差分情報７３によると、Ｃ社形式の「画像の向き情報」は「４」なので、ＲＩＰ実行管理部６５は、Ａ社ＲＩＰエンジン用の変換テーブル６６ａから作成されたRIP Parameter List７２の「画像の向き情報」に「4」を設定する。
【０１１６】
例１の場合、どのＲＩＰエンジン５９でもレンダリング可能なので、ＲＩＰエンジン５９が稼働しない状況が少なくなり、ＲＩＰエンジン５９の利用効率が向上する。
【０１１７】
II．例２
Ａ社形式のＪＤＦ８１ａにおいて、画像を時計回りに10度回転する設定が指定されている場合について説明する。この場合もＡ社形式のＪＤＦ８１ａの情報がRIP Parameter List７２に保存される。図１７（ａ）は、Ａ社形式のＪＤＦ８１ａがＡ社の変換テーブル６６ａで変換されたＤＦＥ内ジョブ属性７１ａとＰＤＬ８２ａから作成されたRIP Parameter List７２を示す。
【０１１８】
これに対し、Ｂ社形式及びＣ社形式のRIP Parameter List７２の記述形式では、１０度の回転を指定することができないため、「×」の値が入る。「×」は、差分はあるが変換できないこと又は差異を抽出しないことを示しており、「×」以外の記号や数値などで代用してもよい。「×」は特許請求の範囲の「差異の抽出を行わない旨の情報」の一例である。
【０１１９】
図１７（ｂ）はRIP Parameter List差分情報７３の一例を示す。RIP Parameter List差分情報７３は、Ｂ社形式とＣ社形式では「画像の向き情報」に「×」が設定されている。
【０１２０】
続いて、ＲＩＰエンジン５９がレンダリングに用いるRIP Parameter List７２の再生について説明する。
【０１２１】
・Ａ社ＲＩＰエンジン５９ａがレンダリングする場合
RIP Parameter List７２を使ってレンダリングすればよく、RIP Parameter List差分情報７３は使用しない。
【０１２２】
・Ｂ社ＲＩＰエンジン５９ｂがレンダリングする場合
ＲＩＰ実行管理部６５は、Ｂ社形式の「画像の向き情報」には「×」が設定されているため、「画像の向き情報」の値をＢ社形式に変換できないと判断する。このため、ＲＩＰ実行不許可をＢ社のＲＩＰ待機キュー６９ｂに返す。
【０１２３】
・Ｃ社ＲＩＰエンジン５９ｃがレンダリングする場合
ＲＩＰ実行管理部６５は、Ｃ社形式の画像の向き情報には「×」が設定されているため、「画像の向き情報」の値をＣ社形式に変換できないと判断する。このため、ＲＩＰ実行不許可をＣ社のＲＩＰ待機キュー６９ｃに返す。
【０１２４】
例２の場合は、Ａ社ＲＩＰエンジン５９ａが、ユーザが期待する仕上がりでレンダリングすることができる。従って、ＲＩＰエンジン５９の利用効率を向上させながら、ユーザが期待する仕上がりでレンダリングできる。
【０１２５】
〔ＲＩＰ実行管理部の動作〕
ＲＩＰ実行管理部６５の動作について図１８〜２０に基づき詳細に説明する。下記の１〜１５の連番はＤＦＥ３２の動作の順序を示す。
【０１２６】
１．ＤＦＥ３２は、Job1,Job2,Job3,Job4の計4つの印刷ジョブ８０を下記の順番で受信する。
Job1(3ページ)
Job2(2ページ)
Job3(4ページ)
Job4(3ページ)
２．ジョブ受信部５１が受信した印刷ジョブ８０は、システム制御部５２を経由して、ジョブ制御部５５に到達する。ジョブ制御部５５は受信した印刷ジョブ８０のＪＤＦ８１を、ＪＤＦ変換要求と共にＪＤＦ解析部５６へ送信する。
【０１２７】
３．ＪＤＦ解析部５６は、ＤＦＥ内ジョブ属性への変換を、ＲＩＰエンジン５９の数だけ行い、複数のＤＦＥ内ジョブ属性を作成し、ジョブ制御部５５へ出力する。この時、ＤＦＥ内ジョブ属性７１には「ＲＩＰ制御モード」の情報が付与される。
【０１２８】
４．ジョブ制御部５５は、ジョブ管理リスト６４に、印刷ジョブ８０の受信順、ジョブＩＤ、及び、ＤＦＥ内ジョブ属性内のジョブページ数情報を設定する。
【０１２９】
５．ジョブ制御部５５は、複数のＤＦＥ内ジョブ属性と１つのＰＤＬ８２から複数のRIP Parameter List７２を生成する。RIP Parameter List差分情報生成部６２は、複数のRIP Parameter List７２を比較し、RIP Parameter List差分情報７３を生成する。
【０１３０】
６．インスタンス作成部６３は、印刷ジョブ毎にジョブ制御部ＩＮＳ１〜４を作成し、ジョブ制御部ＩＮＳ１〜４はＲＩＰ制御部５８へＲＩＰ実行要求を行う。ＲＩＰ制御部５８へのＲＩＰ実行要求は、ＲＩＰ制御部５８からの応答を待たずに順次行われ、各ＲＩＰ実行要求は並列に処理される。ＲＩＰ実行要求の際、ＲＩＰ制御部５８には、生成したRIP Parameter List７２と共にRIP Parameter List差分情報７３及びジョブ管理リスト６４の情報であるジョブＩＤが送信される。送信されるRIP Parameter List７２は１つだけである（ＪＤＦの形式に基づき決定されたＲＩＰエンジン５９の変換テーブル６６によりＪＤＦ８１から変換されたＤＦＥ内ジョブ属性とＰＤＬ８２から作成されたもの）。
【０１３１】
７．ＲＩＰ制御部５８は、ＲＩＰ実行要求を取得すると、印刷ジョブ８０のアドレスを全てのＲＩＰ待機キュー６９へ記憶させる。各ＲＩＰ待機キュー６９ａ〜６９ｃには、印刷ジョブ単位でアドレスが記憶され、先頭の印刷ジョブ８０から順にＲＩＰ実行管理部６５に対してＲＩＰ実行許可要請が出力される。
【０１３２】
ＲＩＰ実行管理部６５は、最初にＲＩＰ実行許可要請を送信したＲＩＰ待機キュー６９に対応するＲＩＰエンジン５９でレンダリングすると決定し、ＲＩＰ待機キュー６９へＲＩＰ実行許可を返す。上記のように、RIP Parameter List差分情報７３に、ＲＩＰ実行許可要請を送信したＲＩＰ待機キュー６９に対応するＲＩＰエンジン５９では変換できないことが登録されている場合、ＲＩＰ実行不許可を出力する。
【０１３３】
図１８（ａ）には、Ａ社ＲＩＰ待機キュー６９ａが最初にＲＩＰ実行許可要請を出力し、ＲＩＰ実行許可が返された場合の、ＲＩＰ実行エンジン管理リスト６８が示されている。このため、Ｂ社ＲＩＰ待機キュー６９ｂとＣ社ＲＩＰ待機キュー６９ｃがＲＩＰ実行許可要請を出力しても、ＲＩＰ実行不許可が返される。
【０１３４】
８．ＲＩＰ実行管理部６５が１つの印刷ジョブ８０のＲＩＰエンジン５９を決定すると、RIP Parameter List７２とRIP Parameter List差分情報７３を用いて、RIP Parameter Listを再生する。また、ＲＩＰ待機キュー６９がＲＩＰ実行不許可を取得すると、ＲＩＰ制御部５８は該ＲＩＰ待機キュー６９の先頭の印刷ジョブ８０を取り出す。図１８（ｂ）では、Ｂ社ＲＩＰ待機キュー６９ｂとＣ社ＲＩＰ待機キュー６９ｃのJob1が取り出されている。
【０１３５】
９．ＲＩＰ制御部５８は、ＲＩＰ実行許可を取得したＲＩＰ待機キュー６９の印刷ジョブ８０についてレンダリングを実施する。
【０１３６】
１０．次に、Ｂ社ＲＩＰ待機キュー６９ｂ及びＣ社ＲＩＰ待機キュー６９ｃは、Job2に対するＲＩＰ実行許可要請をＲＩＰ実行管理部６５に出力する。一例として、Ｂ社ＲＩＰ待機キュー６９ｂのＲＩＰ実行許可要請の方が、Ｃ社ＲＩＰ待機キュー６９ｃよりも早く出力されたものとする。
【０１３７】
図１９（ａ）に示すように、ＲＩＰ実行管理部６５はＢ社ＲＩＰ待機キュー６９ｂにＲＩＰ実行許可を返すので、Job2はＢ社ＲＩＰエンジン５９ｂにてレンダリングされる。また、Ｃ社ＲＩＰ待機キュー６９ｃにはＲＩＰ実行不許可が返され、Job2はＣ社ＲＩＰ待機キュー６９ｃから取り出される。この時、ＲＩＰ実行エンジン管理リスト６８は、Job1とJob2までのＲＩＰエンジン５９が決定された状態になる。
【０１３８】
１１．次に、Ｃ社ＲＩＰ待機キュー６９ｃは、Job3に対するＲＩＰ実行許可要請をＲＩＰ実行管理部６５に出力する。ＲＩＰ実行管理部６５はＣ社ＲＩＰ待機キュー６９ｃにＲＩＰ実行許可を返すので、Job3はＣ社ＲＩＰエンジン５９ｃにてレンダリングされる。図１９（ｂ）に示すように、ＲＩＰ実行エンジン管理リスト６８は、Job1〜Job3までのＲＩＰエンジン５９が決定された状態になる。
【０１３９】
１２．ＲＩＰ制御部５８は、ＲＩＰ実行許可を取得した印刷ジョブ８０に対し、RIP Parameter List内のＲＩＰ制御モード情報に従い、ページ単位でのＲＩＰ実行要求をＲＩＰエンジン５９に対して行う。ＲＩＰ制御部５８は、ＲＩＰエンジン５９からページ単位でのＲＩＰ終了通知を受けて、ジョブＩＤと共にジョブ制御部５５へページ単位でＲＩＰ終了通知を送信する。
【０１４０】
ＲＩＰ待機キュー６９の先頭の印刷ジョブ８０は、印刷ジョブ８０の全ページのレンダリングが終了した後、ＲＩＰ待機キュー６９から取り出される。図２０（ａ）に示すように、Job2のレンダリングの終了により、Ｂ社ＲＩＰ待機キュー６９ｂの先頭の印刷ジョブ８０(Job2)が取り出される。図２０（ａ）は、Job2のレンダリングがJob1及びJob3よりも早く終了した場合のＲＩＰ待機キュー６９を示している。
【０１４１】
１３．これにより、Ｂ社ＲＩＰ待機キュー６９ｂの次の印刷ジョブ(Job3)８０がＲＩＰ実行許可要請をＲＩＰ実行管理部６５に出力する。しかし、ＲＩＰ実行エンジン管理リスト６８に、Job3はＣ社ＲＩＰエンジン５９ｃが行うことが登録されているので、ＲＩＰ実行管理部６５はＲＩＰ実行不許可をＢ社ＲＩＰ待機キュー６９ｂに返す。従って、Job3はＢ社ＲＩＰ待機キュー６９ｂから取り出される。
【０１４２】
１４．Ｂ社ＲＩＰ待機キュー６９ｂの先頭の印刷ジョブ８０がJob4になるので、Ｂ社ＲＩＰ待機キュー６９ｂはJob4のＲＩＰ実行許可要請をＲＩＰ実行管理部６５に出力する。ＲＩＰ実行管理部６５はＲＩＰ実行許可をＢ社ＲＩＰ待機キュー６９ｂに返す。
【０１４３】
図２０（ｂ）に示すように、ＲＩＰ実行エンジン管理リスト６８には、Job4のＲＩＰ実行エンジンが決定される。
【０１４４】
１５．以下、同様の手順でレンダリングが終了した印刷ジョブ８０又はＲＩＰ実行不許可の印刷ジョブ８０がＲＩＰ待機キュー６９から取り出される。図２０（ｃ）はＡ社ＲＩＰ待機キュー６９ａ〜Ｃ社ＲＩＰ待機キュー６９ｃから取り出される印刷ジョブ８０を模式的に示す。Ａ社ＲＩＰ待機キュー６９ａから、ＲＩＰ実行不許可によりJob2、Job3、Job4が取り出される。Ｂ社ＲＩＰ待機キュー６９ｂから、レンダリングの終了によりJob4が取り出される。Ｃ社ＲＩＰ待機キュー６９ｃから、レンダリングの終了によりJob3が取り出され、ＲＩＰ実行不許可によりJob4が取り出される。
【０１４５】
〔プリンターによる印刷順〕
図２１は、プリンター制御部６１に対して印刷実行要求が行われる順番を説明する図の一例である。図２１（ａ）に示すように、例えば、印刷ジョブ８０の受信順がJob1、Job2、Job3、Job4であるとする。
【０１４６】
ジョブ制御部５５は、図２１（ｂ）に示すように以下の順番でＲＩＰ終了通知を取得する。
Job1（１ページ目）→Job2（１ページ目）→Job3（１ページ目）→Job1（２ページ目）→Job2（２ページ目）→Job4（１ページ目）→Job1（３ページ目）→Job3（２ページ目）→Job4（２ページ目）→Job3（３ページ目）→Job4（３ページ目）→Job３（４ページ目）
従って、レンダリングが終了した順番は、Job2、Job1、Job4、Job3である。ジョブ制御部５５は、ジョブ管理リスト６４の各印刷ジョブ８０のページ数と比較することで、各印刷ジョブ８０のレンダリングが終了したタイミングを検出できる。また、ジョブ管理リスト６４により、印刷ジョブ８０の受信順も明らかになっている。
【０１４７】
実行順番設定部６７がジョブ受信順という設定を受け付けている場合、ジョブ制御部５５はJob1、Job2、Job3、Job4の順に印刷実行要求をプリンター制御部６１に対し出力する。一方、レンダリングの終了順という設定を受け付けている場合、Job2、Job1、Job4、Job3の順に印刷実行要求をプリンター制御部６１に対し出力する。
【０１４８】
〔動作手順〕
図２２は、印刷システム２００の動作手順を示すシーケンス図の一例である。
S1：アプリケーション１２がＤＦＥ３２に印刷ジョブ８０（Job1＝ＪＤＦ＋ＰＤＬ）を送信する。
S2：ジョブ受信部５１は印刷ジョブ８０をシステム制御部５２に出力する。
S3：システム制御部５２はジョブ制御部５５に印刷ジョブ８０を出力する。なお、印刷ジョブ８０をジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブ８０を格納する。
S4：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦ８１とＪＤＦ変換要求を出力する。
S5：ＪＤＦ解析部５６は、各ＲＩＰエンジン用の変換テーブル６６でＤＦＥ内ジョブ属性７１を作成する。
S6：ＪＤＦ解析部５６は、ＤＦＥ内ジョブ属性７１をＪＤＦ解析部５６に出力する。
S7：ジョブ制御部５５は、複数のＤＦＥ内ジョブ属性７１とＰＤＬ８２を用いて複数のRIP Parameter List７２を作成する。
S8：RIP Parameter List差分情報生成部６２は、３つのRIP Parameter List７２からRIP Parameter List差分情報７３を作成する。
S9：ジョブ制御部５５は、ジョブ管理リスト６４に受信順、ジョブＩＤ、及び、ページ数を登録する。
S10：ジョブ制御部５５のインスタンス作成部６３は、ジョブ制御部ＩＮＳ６３０を作成する。ここではジョブ制御部ＩＮＳ１が作成されたものとする。この後、ジョブ制御部ＩＮＳ１は他のジョブ制御部ＩＮＳ２〜４とは独立にＲＩＰ実行要求を行う。各ジョブ制御部ＩＮＳ１〜４のＲＩＰ制御部５８に対するＲＩＰ実行要求は、ＲＩＰ制御部５８からの応答を待たずに順次実行され、各ＲＩＰ実行要求は並列に処理される。ＲＩＰ実行要求の際、ＲＩＰ制御部５８には、生成したRIP Parameter List７２とRIP Parameter List差分情報７３と共に、ジョブ管理リスト６４のジョブＩＤが出力される。
S11：まず、ジョブ制御部ＩＮＳ１はジョブＩＤをＲＩＰ制御部５８に出力する。
S12：ＲＩＰ制御部５８は、印刷ジョブ８０のアドレスを各ＲＩＰ待機キュー６９ａ〜６９ｃの全てに格納する。なお、各ＲＩＰ待機キュー６９ａ〜６９ｃへの印刷ジョブ８０のアドレスの格納は、アドレスが判明した時点で行えばよい。
S13：ジョブ制御部５５は、RIP Parameter List７２とRIP Parameter List差分情報７３をＲＩＰ制御部５８に出力する。
S14：ＲＩＰ制御部５８は、ＲＩＰエンジン５９を初期化する。
S15：ＲＩＰ制御部５８のＲＩＰ待機キュー６９は、ＲＩＰ実行管理部６５にＲＩＰ実行許可要請を出力する。
S16：ＲＩＰ実行管理部６５は、ＲＩＰ実行許可判定結果を作成する。この処理については図２３にて説明する。
S17：また、ＲＩＰ実行管理部６５は、ＲＩＰ実行許可判定結果がＲＩＰ実行許可である場合には、RIP Parameter List７２とRIP Parameter List差分情報７３から、RIP Parameter List７２を作成する。
S18：ＲＩＰ実行管理部６５は、ＲＩＰ実行許可判定結果（ＲＩＰ実行許可である場合にはRIP Parameter List７２と共に）をＲＩＰ待機キュー６９に出力する。
【０１４９】
以下の処理は、「ＲＩＰ制御モード」が「Page Mode」か「Sheet Mode」によって異なっている。まず、「Page Mode」の場合を説明する。
S19-1：ジョブ制御部５５は、ＲＩＰ制御部５８に対しＲＩＰ実行要求を行う。
S20-1：ＲＩＰ制御部５８は、ジョブ制御部５５の代わりにＲＩＰコマンドを出力する。ＲＩＰ制御部５８は「ＲＩＰ制御モード」が「Page Mode」の場合、「Page Mode」に適したシーケンスでＲＩＰコマンドを出力する。
S21-1：ＲＩＰエンジン５９はラスタライズを行う。
S22-1：ＲＩＰエンジン５９はラスターデータを画像格納部６０に格納する。
S23-1：ＲＩＰエンジン５９はＲＩＰ終了通知をＲＩＰ制御部５８に出力する。
S24-1：ＲＩＰ制御部５８はＲＩＰ終了通知をジョブ制御部ＩＮＳ１に出力する。
【０１５０】
次に、「Sheet Mode」の場合を説明する。
S19-2：ジョブ制御部５５は、ＲＩＰ制御部５８に対しＲＩＰ実行要求を行う。
S20-2：ＲＩＰ制御部５８は、「ＲＩＰ制御モード」が「Sheet Mode」の場合、「Sheet Mode」に適したシーケンスでＲＩＰコマンドを出力する。
S21-2：ＲＩＰエンジン５９はラスタライズを行う。
S22-2：ＲＩＰエンジン５９はラスターデータを画像格納部６０に格納する。
S23-2：ＲＩＰエンジン５９はＲＩＰ終了通知をＲＩＰ制御部５８に出力する。
S24-2：ＲＩＰ制御部５８はＲＩＰ終了通知をジョブ制御部ＩＮＳ１に出力する。
【０１５１】
S25：ジョブ制御部ＩＮＳ１は、ジョブ制御部５５にジョブＩＤと共にページ単位のＲＩＰ終了通知を出力する。
S26：ジョブ制御部５５は、全ページのレンダリングが終了したか否かを判断する。
S27：ジョブ制御部５５のインスタンス作成部６３は、全ページのレンダリングが終了すると終了した印刷ジョブ８０のジョブ制御部ＩＮＳ（図ではジョブ制御部ＩＮＳ１）を削除する。
S28：また、ＲＩＰ制御部５８は、全てのページのレンダリングが終了するとＡ社ＲＩＰ待機キュー６９ａからJob1を取り出す。
【０１５２】
次に、アプリケーション１２が印刷ジョブ８０としてJob2をＤＦＥ３２に送信したものとする。
S31：アプリケーション１２がＤＦＥ３２に印刷ジョブ８０（JobA2＝ＪＤＦ＋ＰＤＬ）を送信する。
S32：ジョブ受信部５１は印刷ジョブ８０をシステム制御部５２に出力する。
S33：システム制御部５２はジョブ制御部５５に印刷ジョブ８０を出力する。なお、印刷ジョブ８０をジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブ８０を格納する。
S34：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦ８１とＪＤＦ変換要求を出力する。
S35：ＪＤＦ解析部５６は、各ＲＩＰエンジン用の変換テーブル６６でＤＦＥ内ジョブ属性７１を作成する。
S36：ＪＤＦ解析部５６は、ＤＦＥ内ジョブ属性７１をＪＤＦ解析部５６に出力する。
S37：ジョブ制御部５５は、複数のＤＦＥ内ジョブ属性７１とＰＤＬ８２を用いて複数のRIP Parameter List７２を作成する。
S38：RIP Parameter List差分情報生成部６２は、３つのRIP Parameter List７２からRIP Parameter List差分情報７３を作成する。
S39：ジョブ制御部５５は、ジョブ管理リスト６４に受信順、ジョブＩＤ、及び、ページ数を登録する。
S40：ジョブ制御部５５のインスタンス作成部６３は、ジョブ制御部ＩＮＳ６３０を作成する。ここではジョブ制御部ＩＮＳ２が作成されたものとする。この後、ジョブ制御部ＩＮＳ２は、ジョブ制御部ＩＮＳ１が行ったS11〜S26の各処理を並列に行う。
【０１５３】
アプリケーション１２が印刷ジョブ８０としてJob3及びJob4をＤＦＥに送信した場合も同様である。
S41、S42：インスタンス作成部６３はジョブ制御部ＩＮＳ３とジョブ制御部ＩＮＳ４を作成する。ジョブ制御部ＩＮＳ３とジョブ制御部ＩＮＳ４も、S11〜S26の各処理を行う。
【０１５４】
この後、ジョブ制御部５５は、印刷順の設定を読み出し、ジョブ受信順かレンダリングが終了した順かを判断する。
S43：ジョブ制御部５５は印刷実行要求と共に「Finishing情報」をプリンター制御部６１に出力する。このタイミングは、ラスターデータの作成前でも作成後でもよい。
S44：プリンター制御部６１は、印刷実行要求を取得したことで、画像格納部６０のラスターデータを確認し、印刷を行う。
【０１５５】
図２３は、図２２のステップＳ１２の処理を説明するフローチャート図の一例である。図２３の処理は、ＲＩＰ待機キュー６９に印刷ジョブ８０が格納され、ＲＩＰ実行管理部６５がＲＩＰ待機キュー６９からＲＩＰ実行許可要請を取得するとスタートする。
Ｓ12-1：ＲＩＰ実行管理部６５は、ＲＩＰ実行エンジン管理リスト６８を参照して、ＲＩＰ待機キュー６９が出力したジョブＩＤの印刷ジョブ８０のＲＩＰエンジン５９が未定か否かを判定する。
Ｓ12-2：ステップ12-1の判断がＮｏの場合、ＲＩＰ実行管理部６５はＲＩＰ待機キュー６９にＲＩＰ実行不許可を出力する。
Ｓ12-3：ステップ12-1の判断がＹｅｓの場合、ＲＩＰ実行管理部６５はRIP Parameter List差分情報７３を参照して、ＲＩＰ実行許可要請を出力したＲＩＰ待機キュー６９に対応するＲＩＰエンジン５９のRIP Parameter List７２に変換可能か否かを判定する。
S12-2：ステップ12-3の判断がＮｏの場合、ＲＩＰ実行管理部６５はＲＩＰ待機キュー６９にＲＩＰ実行不許可を出力する。
S12-4：ステップ12-3の判断がＹｅｓの場合、ＲＩＰ実行管理部６５はＲＩＰ実行エンジン管理リスト６８のジョブＩＤに、ＲＩＰ実行許可要請を出力したＲＩＰ待機キュー６９に対応するＲＩＰエンジン５９を登録する。
Ｓ12-5：ＲＩＰ実行管理部６５はＲＩＰ待機キュー６９にＲＩＰ実行許可を出力する。
【０１５６】
以上説明したように、本実施形態のＤＦＥ３２は、１つの印刷ジョブ８０を各ＲＩＰ待機キュー６９ａ〜６９ｃに格納し、ＲＩＰ実行許可要請の順番にＲＩＰエンジン５９を決めるので、ＲＩＰエンジン５９の利用効率を向上できる。また、「RIP Parameter List」の差分情報を作成することで、例えばＡ社のアプリケーション１２が作成した印刷ジョブ８０をＣ社ＲＩＰエンジン５９ｃがレンダリングすることを可能にできる。また、「RIP Parameter List」の差分情報からレンダリングできないＲＩＰエンジン５９を判別することができる。
【０１５７】
〔好適な変形例〕
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１５８】
例えば、図５ではＤＦＥ３２が全ての機能を有しているが、これらの各機能はネットワーク３を介して通信可能な別々の装置に配置されていてもよい。例えば、各社のＲＩＰエンジン５９やＪＤＦ解析部５６はＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１５９】
画像格納部６０やジョブデータ格納部５３についても同様であり、ＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１６０】
また、ＲＩＰエンジン５９の1つ以上やＲＩＰ待機キュー６９の１つ以上がＤＦＥ３２の外部に存在してもよい。
【０１６１】
また、印刷の実行順の設定は、例えばクライアントＰＣからネットワークを介してＤＦＥ３２に設定可能でもよい。この場合、ＤＦＥはサーバとしてＷｅｂページなどをクライアントＰＣに送信し、実行順の設定を受け付ける。
【符号の説明】
【０１６２】
１      エンドユーザ環境
２      ＰＯＤ印刷システム環境
１１    クライアントＰＣ
１２    アプリケーション
２０    工程管理部
３０    デジタル印刷部
３１    プリンター
３２    ＤＦＥ
５１    ジョブ受信部
５２    システム制御部
５３    ジョブデータ格納部
５４    ＵＩ制御部
５５    ジョブ制御部
５６    ＪＤＦ解析部
５７    ＲＩＰ部
５８    ＲＩＰ制御部
５９    ＲＩＰエンジン
６０    画像格納部
６１    プリンター制御部
６２    RIP Parameter List差分情報生成部
６３    インスタンス作成部
６４    ジョブ管理リスト
６５    ＲＩＰ実行管理部
６６    変換テーブル
６７    実行順番設定部
６８    ＲＩＰ実行エンジン管理リスト
７１    ＤＦＥ内ジョブ属性
７２    RIP Parameter List
７３    RIP Parameter List差分情報
【先行技術文献】
【特許文献】
【０１６３】
【特許文献１】特開２０１２‐２３８１８８号公報
【図１】
2015195012.tif 000003
【図２】
2015195012.tif 000004
【図３】
2015195012.tif 000005
【図４】
2015195012.tif 000006
【図５】
2015195012.tif 000007
【図６】
2015195012.tif 000008
【図７】
2015195012.tif 000009
【図８】
2015195012.tif 000010
【図９】
2015195012.tif 000011
【図１０】
2015195012.tif 000012
【図１１】
2015195012.tif 000013
【図１２】
2015195012.tif 000014
【図１３】
2015195012.tif 000015
【図１４】
2015195012.tif 000016
【図１５】
2015195012.tif 000017
【図１６】
2015195012.tif 000018
【図１７】
2015195012.tif 000019
【図１８】
2015195012.tif 000020
【図１９】
2015195012.tif 000021
【図２０】
2015195012.tif 000022
【図２１】
2015195012.tif 000023
【図２２】
2015195012.tif 000024
【図２３】
2015195012.tif 000025