(57)【要約】【課題】予測終了時刻を大きく変更することなく印刷ジョブの割り込みを受け付ける情報処理装置を提供すること。【解決手段】描画データ作成手段にそれぞれ対応づけられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段５９と、描画データ作成手段が印刷ジョブから描画データを作成する描画データ作成時間を推定する時間推定手段６８と、割り込み印刷の設定がある割り込み印刷ジョブを取得した場合、記憶手段の各印刷ジョブの描画データ作成時間の合計を前記記憶手段ごとに算出して、割り込み印刷ジョブが記憶される記憶手段の割り込み印刷ジョブを含む描画データ作成時間の第１の合計と、他の記憶手段の描画データ作成時間の第２の合計の比較結果に応じて、割り込み印刷ジョブが記憶される記憶手段における割り込み印刷ジョブの登録順を決定する描画データ登録手段５８と、を有することを特徴とする。【選択図】図２６
2015201173.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブを用いて複数の描画データ作成手段の少なくとも１つに描画データを作成させる情報処理装置であって、
前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段と、
前記描画データ作成手段が印刷ジョブから描画データを作成する描画データ作成時間を推定する時間推定手段と、
割り込み印刷の設定がある割り込み印刷ジョブを取得した場合、前記記憶手段の各印刷ジョブの前記描画データ作成時間の合計を前記記憶手段ごとに算出して、前記割り込み印刷ジョブが記憶される前記記憶手段の前記割り込み印刷ジョブを含む前記描画データ作成時間の第１の合計と、他の前記記憶手段の前記描画データ作成時間の第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定する描画データ登録手段と、を有し、
前記描画データ登録手段は、前記記憶手段に記憶された印刷ジョブを記憶されている順番に、該記憶手段に対応する前記描画データ作成手段に出力する、
ことを特徴とする情報処理装置。
【請求項２】
前記描画データ登録手段は、前記第１の合計が前記第２の合計以上の場合、前記割り込み印刷ジョブが記憶される前記記憶手段にすでに記憶されている印刷ジョブよりも前に、前記割り込み印刷ジョブを記憶させることなく、
前記第１の合計が前記第２の合計より小さい場合、前記割り込み印刷ジョブが記憶される前記記憶手段にすでに記憶されている印刷ジョブよりも前に、前記割り込み印刷ジョブを記憶させる、ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記描画データ登録手段は、前記第１の合計が前記第２の合計より小さい場合、前記割り込み印刷ジョブが記憶される前記記憶手段に記憶されまだ描画データの作成が始まっていない全ての印刷ジョブよりも前に前記割り込み印刷ジョブを記憶させる、
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
印刷ジョブは、印刷の設定情報と印刷データとを含み、
前記設定情報を、前記描画データ作成手段に対応した方法で当該情報処理装置が扱う装置用設定情報に変換し、前記描画データ作成手段に対応した方法がない場合、全ての前記方法で当該情報処理装置が扱う前記装置用設定情報に変換する変換手段と、
全ての前記方法で前記設定情報が前記装置用設定情報に変換された場合、前記設定情報と前記装置用設定情報との比較結果に基づき、予め定められた印刷ジョブの範囲の、前記装置用設定情報の評価値を前記方法ごとに決定する評価値決定手段と、
前記範囲ごとに、前記評価値に基づき前記描画データ作成手段を決定する描画データ作成手段決定手段と、を有し、
前記描画データ登録手段は、前記割り込み印刷ジョブについて前記描画データ作成手段決定手段が決定した前記描画データ作成手段の数が１つの場合、前記第１の合計と前記第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定する、
ことを特徴とする請求項１〜３いずれか１項記載の情報処理装置。
【請求項５】
前記描画データ登録手段は、１つの印刷ジョブについて前記描画データ作成手段決定手段が決定した前記描画データ作成手段の数が複数の場合、前記第１の合計と前記第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定することなく、
前記描画データ作成手段決定手段が決定した前記描画データ作成手段に対応するそれぞれの前記記憶手段の最後に、前記範囲の前記１つの印刷ジョブを記憶させる、
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記描画データ登録手段に印刷ジョブを用いた描画データの作成要求を出力する複数の描画データ作成要求手段を有し、
それぞれの前記描画データ作成要求手段は、他の前記描画データ作成要求手段とは独立に、前記描画データ登録手段に対し描画データの作成要求を出力する、
ことを特徴とする請求項１〜５いずれか１項記載の情報処理装置。
【請求項７】
外部から印刷ジョブの描画データの作成要求を取得した場合に、印刷ジョブに専用の前記描画データ作成要求手段を生成する作成要求手段生成手段を有する、
ことを特徴とする請求項６記載の情報処理装置。
【請求項８】
印刷ジョブを用いて複数の描画データ作成手段の少なくとも１つに描画データを作成させる情報処理方法であって、
時間推定手段が、前記描画データ作成手段が印刷ジョブから描画データを作成する描画データ作成時間を推定するステップと、
描画データ登録手段が、割り込み印刷の設定がある割り込み印刷ジョブを取得した場合、前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段の各印刷ジョブの前記描画データ作成時間の合計を前記記憶手段ごとに算出して、前記割り込み印刷ジョブが記憶される前記記憶手段の前記割り込み印刷ジョブを含む前記描画データ作成時間の第１の合計と、他の前記記憶手段の前記描画データ作成時間の第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定するステップと、
前記描画データ登録手段が、前記記憶手段に記憶された印刷ジョブを記憶されている順番に、該記憶手段に対応する前記描画データ作成手段に出力するステップと、
描画データ作成手段が、前記記憶手段に記憶された印刷ジョブを前記描画データ登録手段から取得して描画データを作成するステップと、を有することを特徴とする情報処理方法。
【請求項９】
印刷ジョブを用いて複数の描画データ作成手段の少なくとも１つに描画データを作成させる情報処理装置に、
前記描画データ作成手段が印刷ジョブから描画データを作成する描画データ作成時間を推定する時間推定ステップと、
割り込み印刷の設定がある割り込み印刷ジョブを取得した場合、前記描画データ作成手段にそれぞれ対応づけられた複数の記憶手段の各印刷ジョブの前記描画データ作成時間の合計を前記記憶手段ごとに算出して、前記割り込み印刷ジョブが記憶される前記記憶手段の前記割り込み印刷ジョブを含む前記描画データ作成時間の第１の合計と、他の前記記憶手段の前記描画データ作成時間の第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定する描画データ登録ステップと、
前記記憶手段に記憶された印刷ジョブを記憶されている順番に、該記憶手段に対応する前記描画データ作成手段に出力する描画データ出力ステップと、
複数の前記記憶手段に記憶された印刷ジョブを取得して描画データを作成する描画データ作成ステップと、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
印刷ジョブを用いて複数の描画データ作成手段の少なくとも１つに描画データを作成させる情報処理装置等に関する。
【背景技術】
【０００２】
業務用の大量の文書を印刷したり製本したりするいわゆるプロダクションプリンティングが知られている（例えば、特許文献１参照。）。特許文献１には、印刷システム全体を考慮して、後処理が利用可能か否かをユーザに通知できる印刷システムが開示されている。
【０００３】
プロダクションプリンティングでは印刷工程がワークフローとして扱われることが多いが、印刷ワークフローでは、印刷ワークフローのオープン化が進められている。オープン化により、各社のソフトウェア（次述するワークフローアプリケーション）や印刷機器が、印刷の主要な工程における印刷ジョブの設定などを共通の記述方式で記述することが可能となる。印刷ワークフローの工程全体を記述するフォーマットとしてＪＤＦ（Job Definition Format）と呼ばれる標準フォーマットが知られている。
【０００４】
印刷ワークフローの工程には、文書やコンテンツの作成、印刷方法の指定、印刷、後処理などの各種の工程がある。これらの各工程は様々なワークフローアプリケーションや印刷機器により行われるものであるが、ＪＤＦによりワークフローアプリケーションや印刷機器のメーカの違いに関わりなく、印刷機器間の連携や印刷工程管理等が可能になる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、各ワークフローアプリケーションや印刷機器がＪＤＦを拡張する場合があり、各社のワークフローアプリケーションが作成するＪＤＦがワークフローアプリケーション独自の記述を含む場合がある。この場合、下位工程のワークフローアプリケーションや印刷機器が、ＪＤＦを解析して処理できないという状況が生じることが知られている。
【０００６】
図１はＪＤＦが拡張されていた場合の不都合を説明する図の一例である。図１は比較例であり従来例ではない点に注意されたい。ＪＤＦを解析して処理できないという状況に対し、図１（ａ）に示すように、下位工程のワークフローアプリケーションや印刷機器は、ＪＤＦを解析してＪＤＦを作成したワークフローアプリケーションのメーカを判断することが検討される。例えばＣ社の印刷処理装置は、Ａ社（Ｂ社）のワークフローアプリケーションが作成したＡ社（Ｂ社）形式のＪＤＦを解析して、Ａ社（Ｂ社）の印刷ジョブであると判断する。Ａ社（Ｂ社）形式のＪＤＦであると判断できれば拡張形式がわかるので、印刷処理装置はＡ社（Ｂ社）のＪＤＦをＣ社に対応した設定情報に変換して、Ａ社（Ｂ社）の印刷ジョブをレンダリングすることができる。
【０００７】
しかしながら、各社のワークフローアプリケーションや印刷機器のレンダリングエンジンの差異により出力結果が変わってしまう場合があった。
【０００８】
そこで、図１（ｂ）に示すように、Ｃ社の印刷処理装置が各社のワークフローアプリケーションに対応したレンダリングエンジン（以下、ＲＩＰエンジン５９という）を有することが検討される。これにより、各社がＰＤＬを拡張していても、Ｃ社の印刷処理装置はユーザが意図する仕上がりで印刷ジョブをレンダリングすることができる。
【０００９】
ここで、Ｃ社の印刷処理装置が複数のＲＩＰエンジン５９を有することを利用して、各ＲＩＰエンジンを並列に動作させて、印刷処理装置のリソースを有効に活用することが検討される。これにより、複数のＲＩＰエンジンが並列に動作して、単一又は複数の印刷ジョブの実行が終了するまでの時間を短縮できる。
【００１０】
また、Ｃ社の印刷処理装置は、各社のＲＩＰエンジンを利用した（又は単一のＲＩＰエンジンでもよい）場合に印刷ジョブの実行が終了するまでの時間を算出することができる。この機能を利用して、ユーザに予測終了時間（残り時間又は終了予定時刻のどちらで提供してもよい）を提供することで、ユーザは待ち時間を把握することが可能になる。
【００１１】
ところで、印刷処理装置には割り込み印刷という機能があり、ワークフローアプリケーションが優先度の高い印刷ジョブに割り込み印刷を指定して、印刷処理装置に送信する場合がある。
【００１２】
しかし、すでに印刷処理装置が受け付けた印刷ジョブに対し割り込みが許可されると、すでに印刷処理装置が受け付けた印刷ジョブについてユーザに提供した予測終了時間よりも実際の印刷ジョブの終了時間が遅くなってしまうという問題がある。
【００１３】
本発明は、上記課題に鑑み、予測終了時刻を大きく変更することなく印刷ジョブの割り込みを受け付ける情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題に鑑み、本発明は、印刷ジョブを用いて複数の描画データ作成手段の少なくとも１つに描画データを作成させる情報処理装置であって、前記描画データ作成手段にそれぞれ対応付けられた複数の記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段と、前記描画データ作成手段が印刷ジョブから描画データを作成する描画データ作成時間を推定する時間推定手段と、割り込み印刷の設定がある割り込み印刷ジョブを取得した場合、前記記憶手段の各印刷ジョブの前記描画データ作成時間の合計を前記記憶手段ごとに算出して、前記割り込み印刷ジョブが記憶される前記記憶手段の前記割り込み印刷ジョブを含む前記描画データ作成時間の第１の合計と、他の前記記憶手段の前記描画データ作成時間の第２の合計の比較結果に応じて、前記割り込み印刷ジョブが記憶される前記記憶手段における前記割り込み印刷ジョブの登録順を決定する描画データ登録手段と、を有し、前記描画データ登録手段は、前記記憶手段に記憶された印刷ジョブを記憶されている順番に対応する前記描画データ作成手段に出力する、ことを特徴とする。
【発明の効果】
【００１５】
予測終了時刻を大きく変更することなく印刷ジョブの割り込みを受け付ける情報処理装置を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】ＪＤＦが拡張されていた場合の不都合を説明する図の一例である。
【図２】印刷システムの全体構成図の一例である。
【図３】ＤＦＥのハードウェア構成図の一例である。
【図４】ＤＦＥの機能ブロック図の一例を示す図である。
【図５】ジョブ制御部とＲＩＰ部の詳細な機能ブロック図の一例である。
【図６】ジョブ管理リストを模式的に説明する図の一例である。
【図７】ＪＤＦの記載の一部を説明する図の一例である。
【図８】変換テーブルの一例を示す図である。
【図９】「ＤＦＥ内ジョブ属性」の作成を説明する図の一例である。
【図１０】「ＤＦＥ内ジョブ属性」の一例を示す図である。
【図１１】「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」には「ＲＩＰ制御モード」が含まれている。ＲＩＰ制御部５８は「ＲＩＰ制御モード」に応じてＲＩＰエンジン５９を制御する。よって、「ＲＩＰ制御モード」によりシーケンスが決定される。
「Page Mode」…ページ毎にＲＩＰ処理を指示して１枚に集約されたラスターデータを作成する
「Sheet Mode」…すでに複数のページが集約された１ページの各部分（集約前の各ページ部分に相当する）毎にＲＩＰ処理を指示してラスターデータを作成する
また、ジョブ制御部５５はインスタンス作成部６６を有し、インスタンス作成部６６は印刷ジョブ毎にジョブ制御部５５のインスタンスを作成する。インスタンス作成部６６が作成するインスタンスをジョブ制御部ＩＮＳ６６０という。ジョブ制御部ＩＮＳ６６０については図５にて説明する。
【００６２】
ジョブ制御部ＩＮＳ６６０は印刷ジョブ毎に作成されるため、区別する際には「ジョブ制御部ＩＮＳ＋ジョブ番号」で記載する。また、ジョブ制御部５５は、ジョブ制御部ＩＮＳ６６０が、印刷ジョブを管理するためにジョブ管理リスト６７を有している。これらの詳細は図６にて説明する。
【００６３】
プログラミング用語と対比すると、ジョブ制御部５５が「クラス」に相当し、ジョブ制御部ＩＮＳ１〜３が「インスタンス」に相当する。「クラス」は一般に「型」「設計図」「定義」「テンプレート（雛形）」と呼ばれ、「インスタンス」は「クラス」が実態化されたものである。なお、本実施形態で使用されるプログラム言語は限定されず、特定のプログラム言語のクラスとインスタンスを意図していない。
【００６４】
ジョブ制御部ＩＮＳ１〜３はジョブ制御部５５の機能の全てがインスタンス化されたものである必要はなく、少なくともＲＩＰ制御部５８にＲＩＰ実行要求（特許請求の範囲の作成要求の一例である）を行う機能を有していればよい。したがって、ジョブ制御部ＩＮＳ１〜３をジョブ制御部５５のインスタンスとするのでなく、ジョブ制御部５５をクラスとして別のクラスを承継して作成し、該クラスのインスタンスをジョブ制御部ＩＮＳ１〜３としてもよい。
【００６５】
なお、インスタンス作成部６６がジョブ制御部ＩＮＳ１〜３を動的に作成するのでなく、ジョブ制御部ＩＮＳ１〜３が予め、複数個、ＤＦＥ３２に搭載されていてもよい。しかし、インスタンスを作成する場合は、印刷ジョブの数だけインスタンスを作成すればよいのでＤＦＥ３２にかかる負荷を抑制しやすい。
【００６６】
ＲＩＰ部５７は、ＲＩＰ制御部５８とＲＩＰエンジン５９を有し、これらによりラスターデータを作成する。ＲＩＰ制御部５８は、「RIP Parameter List」の情報を解析して、複数あるＲＩＰエンジン５９ａ〜５９ｃから使用するものを決定する。ＲＩＰエンジン５９の決定は、「RIP Parameter List」の１つ以上の項目に基づく場合と、「RIP Parameter List」に明示されたＲＩＰエンジン識別情報に基づく場合とがある。例えばジョブ制御部５５が「RIP Parameter List」にＲＩＰエンジン識別情報を明示していれば、ＲＩＰエンジン識別情報が指示するＲＩＰエンジン５９を選択する。ＲＩＰ制御部５８は、「RIP Parameter List」を参照して、選択したＲＩＰエンジン５９にＲＩＰコマンドを送信する。
【００６７】
ＲＩＰ制御部５８は、「RIP Parameter List」を参照して、印刷ジョブ８０が割り込み印刷の設定を含むか否かを判断する。割り込み印刷の設定を含む場合、後述するように、割り込み印刷の設定がある印刷ジョブよりも前の印刷ジョブの予測終了時間を超えない場合に、印刷ジョブ８０を割り込ませる。なお、割り込み印刷の設定を印刷ジョブ８０に含めるのでなく、ＤＦＥ３２の動作モードなどとして設定されてもよい。
【００６８】
ＲＩＰ制御部５８は、ＲＩＰエンジン毎に、ＲＩＰ待機キュー６９を有している。区別する場合、それぞれＡ社ＲＩＰ待機キュー６９ａ、Ｂ社ＲＩＰ待機キュー６９ｂ、及び、Ｃ社ＲＩＰ待機キュー６９ｃという。ＲＩＰ待機キュー６９には、対応するＲＩＰエンジン５９に対しジョブ制御部５５からＲＩＰ実行要求があった順番に印刷ジョブが格納される。ＲＩＰ制御部５８は、ＲＩＰ待機キュー６９に格納されている順番にＲＩＰエンジン５９に対しＲＩＰ実行要求を出力する。
【００６９】
また、ＲＩＰ制御部５８は、「RIP Parameter List」を参照して、「ＲＩＰ制御モード」が「Sheet Mode」の場合、「Sheet Mode」に従ってＲＩＰコマンドをＲＩＰエンジン５９に出力する。これにより、印刷ジョブ（主にＰＤＬ）の違いを吸収できる。
【００７０】
ＲＩＰエンジン５９はレンダリングエンジンであり、ＲＩＰコマンドに従ってラスタライズを行うことでラスターデータを作成する。ＲＩＰエンジン５９には、Ａ社ＲＩＰエンジン５９ａ、Ｂ社ＲＩＰエンジン５９ｂ、及び、Ｃ社ＲＩＰエンジン５９ｃがある。Ａ社のワークフローアプリケーションが作成する印刷ジョブはＡ社ＲＩＰエンジン５９ａによりレンダリングされることが想定されており、Ｂ社のワークフローアプリケーションが作成する印刷ジョブはＢ社ＲＩＰエンジン５９ｂによりレンダリングされることが想定されており、Ｃ社のワークフローアプリケーションが作成する印刷ジョブはＣ社ＲＩＰエンジン５９ｃによりレンダリングされることが想定されている。
【００７１】
ＲＩＰエンジン５９は特許請求の範囲の「描画データ作成手段」の一例である。ＲＩＰエンジン５９は、ソフトウェア又はＬＳＩなどのハードウェアのどちらで実装されていてもよい。ソフトウェアで実装されている場合、各ＲＩＰエンジン５９はマルチタスクにより並列にレンダリングを行い、ハードウェアにより実装されている場合、各ＲＩＰエンジン５９は独立にレンダリングできるので並列にレンダリングできる。なお、ＲＩＰエンジン５９においてソフトウェアとハードウェアの実装が混在していてもよい。
【００７２】
画像格納部６０は、作成されたラスターデータが格納される記憶手段である。画像格納部６０は、例えば、補助記憶装置３２３に搭載される。または、ネットワーク上の記憶装置に搭載されてもよい。
【００７３】
プリンター制御部６１は、プリンター３１と接続されており、画像格納部６０に格納されているラスターデータを読み出し、プリンター３１に送信することで印刷を行う。また、ジョブ制御部５５から取得した「Finishing情報」に基づき仕上げ処理を行う。
【００７４】
プリンター制御部６１は、各種の通信規格を利用してプリンター３１と通信し、プリンター３１の情報を取得することができる。例えば印刷ワークフローの規格を定めるＣＩＰ４では、ＪＤＦの規格としてデバイス仕様情報をプリンター３１と送受信するDevCapsという規格を定めている。また、ＳＮＭＰ（Simple Network Management Protocol）という通信プロトコルとＭＩＢ（Management Information Base）というデータベースとを利用したプリンター３１の情報の収集方法も知られている。プリンター制御部６１はこれらを利用してプリンター３１に格納されている各種の情報を取得する。
【００７５】
〔ジョブ制御部とＲＩＰ部の詳細について〕
図５は、ジョブ制御部５５とＲＩＰ部５７の詳細な機能ブロック図の一例である。インスタンス作成部６６はJob1を取得することでジョブ制御部ＩＮＳ１を作成し、Job2を取得することでジョブ制御部ＩＮＳ２を作成し、Job3を取得することでジョブ制御部ＩＮＳ３を作成する。
【００７６】
また、ジョブ管理リスト６７には、印刷ジョブ毎に以下の情報が登録される。
【００７７】
- ジョブ受信順
- ジョブＩＤ
- ページ数
ジョブ制御部５５はジョブ管理リスト６７に印刷ジョブの「受信順」、「ジョブＩＤ」、及び、「ページ数」を登録する。
【００７８】
図６は、ジョブ管理リスト６７を模式的に説明する図の一例である。受信順を管理することで、プリンター制御部６１が印刷ジョブを実行する順番（印刷する順番）を受信順に制御できる。ジョブＩＤはジョブ管理リスト６７の印刷ジョブを一意に管理する番号、文字、記号、アルファベット又はこれらの組み合わせである。ページ数は印刷ジョブのページ数である。
【００７９】
図５に戻り、ジョブ制御部ＩＮＳ１は、ＲＩＰ制御部５８にJob1のＲＩＰ実行要求を出力する。ジョブ制御部ＩＮＳ２は、ＲＩＰ制御部５８にJob2のＲＩＰ実行要求を出力する。ジョブ制御部ＩＮＳ３は、ＲＩＰ制御部５８にJob3のＲＩＰ実行要求を出力する。各ジョブ制御部ＩＮＳ１〜３は、並列にＲＩＰ実行要求を出力する。
【００８０】
ＲＩＰ制御部５８は、印刷ジョブがどのＲＩＰエンジン５９ａ〜５９ｃに対応するものかを判断して、ＲＩＰエンジン５９ａ〜５９ｃに対応するＡ社ＲＩＰ待機キュー６９ａ〜Ｃ社ＲＩＰ待機キュー６９ｃに格納する（特許請求の範囲の記憶手段の一例である）。すなわち、印刷ジョブがレンダリングされることが想定されているＲＩＰエンジン５９を判断するか、又は、印刷ジョブを作成したアプリケーション１２のメーカを判断する。なお、ＪＤＦ解析部５６がＲＩＰエンジン５９を判断できなかった場合は、ＲＩＰ制御部５８はＤＦＥ内ジョブ属性選択部６４の選択結果を利用する。
【００８１】
ＲＩＰ待機キュー６９にはＲＩＰ実行要求の受信順にページ単位又は印刷ジョブ単位に印刷ジョブが格納される。ＲＩＰ制御部５８はＲＩＰ待機キュー６９に格納されている順に各ＲＩＰエンジンを用いてレンダリングを行う。
【００８２】
Ａ社のアプリケーション１２が作成した印刷ジョブ８０ａは、Ａ社ＲＩＰエンジン５９ａでレンダリングすると判断され、Ａ社ＲＩＰ待機キュー６９ａに格納される。Ｂ社、Ｃ社の場合も同様に全ページが１つのＢ社ＲＩＰ待機キュー６９ｂ又はＣ社ＲＩＰ待機キュー６９ｃに格納される。これに対し、Ｄ社のアプリケーション１２が作成した印刷ジョブ８０ｄは、評価値に基づきページ毎に判断されたＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９に格納される。
【００８３】
また、各ＲＩＰエンジン５９ａ〜５９ｃはページ単位にＲＩＰ終了通知をＲＩＰ制御部５８に返すので、ＲＩＰ制御部５８はページ単位にＲＩＰ終了通知をジョブ制御部ＩＮＳ１〜３に出力する。ＲＩＰ終了通知にはジョブＩＤが含まれており、ジョブ制御部ＩＮＳ１〜３は印刷ジョブの何ページまでレンダリングが終了したかを判断できる。
【００８４】
１つの印刷ジョブの最後のページまでレンダリングが終了したとジョブ制御部５５が判断すると、例えばインスタンス作成部６６はレンダリングが終了した印刷ジョブのジョブ制御部ＩＮＳ１〜３を削除する。これにより、不要になったジョブ制御部ＩＮＳ１〜３によりリソースが使用されることを抑制できる。
【００８５】
また、同様に、ＲＩＰ制御部５８は各印刷ジョブの全ページのレンダリングが終了すると、ＲＩＰ待機キュー６９から印刷ジョブを削除する。
【００８６】
また、ＲＩＰ制御部５８はＲＩＰ制御部状態管理部６８を有しており、ＲＩＰ制御部状態管理部６８はＲＩＰ制御部ジョブ管理リスト７７を有している。ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部ジョブ管理リスト７７で、各印刷ジョブのＲＩＰ待機キュー６９における状態を管理し、予測ＲＩＰ時間を算出したり、予測終了時間を計算したりする。
【００８７】
〔ＪＤＦ及びＪＤＦを作成したアプリケーションのメーカの決定について〕
ＪＤＦはＸＭＬ（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」の一例を示す図である。
・入出力データ種類情報は、入力、出力データの種類を指定する。(入力、出力データは、ＰＤＬのみだけではなく、テキストファイルや、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プロファイルに関する情報を指定する。
・スケーリング・オフセット情報は、拡大縮小アルゴリズムのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットなどが指定される。
・オブジェクト・領域情報は、オブジェクト領域の幅、高さを指定する。
・ハーフトーン情報は、ハーフトーンのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットが指定される。
・スケーリング・アルゴリズム情報は、スケーリングの方式を指定する。
【０１０１】
ＰＤＬに関連する情報は、データ領域、サイズ情報、及び、データの配置方法を指定する。
・データ領域は、ＰＤＬの格納されている領域情報を指定する。フォント情報、ページ数の情報などは、このデータ領域内に存在するＰＤＬに含まれている。
・サイズ情報は、ＰＤＬのサイズを指定する。
・データの配置方法は、データの配置方式を指定する。例えば、リトルエンディアン、ビッグエンディアンなどが指定される。
【０１０２】
〔変換評価値算出用テーブル〕
図１２〜１５は、変換評価値算出用テーブル６５の一例を示す図である。変換評価値算出用テーブル６５は、予めユーザが評価値算出用テーブル設定部７２を通してＡ社、Ｂ社、及び、Ｃ社用の変換テーブル毎に（ＲＩＰエンジン毎に）設定している。図１２〜１５は、例えばＡ社用の変換評価値算出用テーブル６５ａである。変換評価値算出用テーブル６５では、図１０に示した項目毎に、「ＪＤＦ内での値」、「変換後のＤＦＥ内ジョブ属性の値」及び「評価値」が対応づけられている。
【０１０３】
上記のように、「ＤＦＥ内ジョブ属性」が作成されることで図１２〜１５の「変換後のＤＦＥ内ジョブ属性の値」が得られる。「ＪＤＦ内での値」とは、「ＤＦＥ内ジョブ属性」に変換されたＪＤＦ内の記述（属性値）である。この変換評価値算出用テーブル６５は、項目毎に、「ＪＤＦ内での値」がどの「変換後のＤＦＥ内ジョブ属性の値」に変換されたかに応じて「評価値」を与える。
【０１０４】
例えば、「部数」という項目では、ＪＤＦで「0〜32768」だった値が「ＤＦＥ内ジョブ属性」で「0〜32768」に変換されると「0」という評価値が与えられ、ＪＤＦで「32768〜」だったものが「32768」に変換されると「-5」という評価値が与えられる。この評価値から明らかなように、ＪＤＦの属性値と「ＤＦＥ内ジョブ属性」の値の差異が少ないほど「評価値」が高いことを意味している。
【０１０５】
同様に、「向き情報」という項目では、ＪＤＦで「Portrait」だった値が「ＤＦＥ内ジョブ属性」で「Portrait」に変換されるか、ＪＤＦで「Landscape」だった値が「ＤＦＥ内ジョブ属性」で「Landscape」に変換されると、「0」という評価値が与えられる。ＪＤＦで「向きタイプ１」だったものが「Portrait」に変換されるか、ＪＤＦで「向きタイプ２」だったものが「Landscape」に変換されると「-１」という評価値が与えられる。ＪＤＦで「向きタイプ３」だったものが「Portrait」に変換されると「-5」という評価値が与えられる。
【０１０６】
また、「Finishing情報」の「Collate情報」という項目では、ＪＤＦで「None」だった値が「ＤＦＥ内ジョブ属性」で「None」に変換されるか、ＪＤＦで「Sheet」だった値が「ＤＦＥ内ジョブ属性」で「Sheet」に変換されるか、又は、ＪＤＦで「SheetSetAndJob」だった値が「ＤＦＥ内ジョブ属性」で「SheetSetAndJob」に変換されると、「0」という評価値が与えられる。ＪＤＦで「Collateタイプ１」だったものが「None」に変換されるか、ＪＤＦで「Collateタイプ２」だったものが「Sheet」に変換されるか、又は、ＪＤＦで「Collateタイプ３」だったものが「SheetSetAndJob」に変換されると、「-2」という評価値が与えられる。ＪＤＦで「Collateタイプ４」だったものが「None」に変換されるか、又は、ＪＤＦで「Collateタイプ５」だったものが「None」に変換されると、「-5」という評価値が与えられる。
【０１０７】
〔評価値の算出〕
印刷ジョブ単位の評価値の算出と、ページ単位の評価値の算出について説明する。
【０１０８】
・印刷ジョブ単位の評価値の算出
図１６、１７は印刷ジョブ単位の評価値の算出について詳細に説明する図の一例である。図１６は、あるＪＤＦについて、「ＤＦＥ内ジョブ属性」の項目毎に「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」の対応を示す図の一例である。図１６は上述した変換前後情報である。
【０１０９】
「部数」、「向き情報」、「回転」、「拡大／縮小」、「イメージ位置−オフセット」、「イメージ位置−位置調整情報」、「レイアウト情報−カスタム・インポジション配置」、「レイアウト情報−ページ数」、「レイアウト情報−インポジション情報」、「レイアウト情報−ページ順序情報」、「レイアウト情報−クリープ位置調整ｘ」、「マージン情報」、「クロップ・マーク情報−センター・クロップ・マーク情報」、「クロップ・マーク情報−コーナー・クロップ・マーク情報」、「Collate情報」、「ステープル／バインド情報」、「パンチ情報」、「折り情報」、「トリム情報」、「出力トレイ情報」、「入力トレイ情報」、及び、「カバー・シート情報」では、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が同じである。
【０１１０】
これらを除く「印刷面情報」と「レイアウト情報−クリープ位置調整ｙ」では「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が異なっている。
【０１１１】
ＪＤＦ変換評価値算出部６３は、変換評価値算出用テーブル６５を参照して、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が同じであれば、「0」という評価値を与える。「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が異なっていれば変換評価値算出用テーブル６５を参照して、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」の組に対応づけられた評価値を読み出し、該評価値を項目に付与する。
【０１１２】
図１７は、図１６の「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」に付与された評価値の一例を示す図である。「印刷面情報」と「レイアウト情報−クリープ位置調整ｙ」以外では、評価値は「0」である。
【０１１３】
一方、「印刷面情報」は、「ＪＤＦ内での値」が「表面片面」、「変換後のＤＦＥ内ジョブ属性の値」が「表面」なので、変換評価値算出用テーブル６５により「-1」という評価値が与えられる。また、「レイアウト情報−クリープ位置調整ｙ」は、「ＪＤＦ内での値」が「ｙ」、「変換後のＤＦＥ内ジョブ属性の値」が「ＣＹａ」なので、変換評価値算出用テーブル６５により「-2」という評価値が与えられる。
【０１１４】
このように、評価値により、ＪＤＦがどの程度正確に「ＤＦＥ内ジョブ属性」に変換されたかの指標が得られる。ＤＦＥ内ジョブ属性選択部６４は、全ての項目の評価値を合計して、最も合計値が大きい「ＤＦＥ内ジョブ属性」を選択する。したがって、ジョブ制御部５５には「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」の違いが最も少ないと推定される「ＤＦＥ内ジョブ属性」が出力される。
【０１１５】
・ページ単位の評価値の算出
続いて、ページ単位の評価値の算出について説明する。このページは特許請求の範囲の「範囲」の一例である。図１８はＤ社のアプリケーション１２が作成したＪＤＦに含まれるページ毎に異なる属性値の一例を示す図である。図１８に示すように、ＪＤＦにはページ毎に異なる属性値が設定される場合がある。
【０１１６】
「xmlns:D="www.ddd.com/schema/ddd"」は、このＪＤＦがＤ社のアプリケーション１２により作成されていることを示す（ＤＦＥにとっては未知のＪＤＦ）。また、「D:Amount="2"」は部数が２部であることを、「D:Rotate−Page1＝"90"」は１ページ目を９０度回転させることを、「D:Rotate−Page2＝"45"」は２ページ目を４５度回転させることを、「D:Rotate−Page3＝"135"」は３ページ目を１３５度回転させることを、それぞれ意味している。
【０１１７】
ＲＩＰエンジン選択モード設定部７３にページ単位でＲＩＰエンジン５９を切り替えることが設定されている場合、ＪＤＦ変換評価値算出部６３はページを指定した属性を検出して、ページ単位に評価値を算出する。ページを指定した属性は、例えば「Page+n」（ｎは自然数）のようなページを指定する記述として予め定められた記述を検出する。
【０１１８】
図１９は、ページ単位の評価値の算出を模式的に説明する図の一例である。なお、部数については全てのページで同じ設定なので評価値も等しくなる。また、変換評価値算出用テーブル６５は、Ａ社、Ｂ社及びＣ社で異なるものが用意される。図１９ではＡ社、Ｂ社及びＣ社のそれぞれの変換評価値算出用テーブル６５ａ〜６５ｃから、回転という属性の評価値の一部が抜粋されている。
【０１１９】
１ページ目
Ｄ社のＪＤＦの９０度回転するという属性をＡ社用の変換テーブル６２ａで「ＤＦＥ内ジョブ属性」に変換した場合、Ａ社の変換評価値算出用テーブル６５ａによれば、評価値は０（ゼロ）である。
Ｄ社のＪＤＦの９０度回転するという属性をＢ社用の変換テーブル６２ｂで「ＤＦＥ内ジョブ属性」に変換した場合、Ｂ社の変換評価値算出用テーブル６５ｂによれば、評価値は０（ゼロ）である。
Ｄ社のＪＤＦの９０度回転するという属性をＣ社用の変換テーブル６２ｃで「ＤＦＥ内ジョブ属性」に変換した場合、Ｃ社の変換評価値算出用テーブル６５ｃによれば、評価値は０（ゼロ）である。
【０１２０】
２ページ目
Ｄ社のＪＤＦの４５度回転するという属性をＡ社用の変換テーブル６２ａで「ＤＦＥ内ジョブ属性」に変換した場合、Ａ社の変換評価値算出用テーブル６５ａによれば、評価値は−５である。
Ｄ社のＪＤＦの４５度回転するという属性をＢ社用の変換テーブル６２ｂで「ＤＦＥ内ジョブ属性」に変換した場合、Ｂ社の変換評価値算出用テーブル６５ｂによれば、評価値は０（ゼロ）である。
Ｄ社のＪＤＦの４５度回転するという属性をＣ社用の変換テーブル６２ｃで「ＤＦＥ内ジョブ属性」に変換した場合、Ｃ社の変換評価値算出用テーブル６５ｃによれば、評価値は−５である。
【０１２１】
３ページ目
Ｄ社のＪＤＦの１３５度回転するという属性をＡ社用の変換テーブル６２ａで「ＤＦＥ内ジョブ属性」に変換した場合、Ａ社の変換評価値算出用テーブル６５ａによれば、評価値は−５である。
Ｄ社のＪＤＦの１３５度回転するという属性をＢ社用の変換テーブル６２ｂで「ＤＦＥ内ジョブ属性」に変換した場合、Ｂ社の変換評価値算出用テーブル６５ｂによれば、評価値は−５である。
Ｄ社のＪＤＦの１３５度回転するという属性をＣ社用の変換テーブル６２ｃで「ＤＦＥ内ジョブ属性」に変換した場合、Ｃ社の変換評価値算出用テーブル６５ｃによれば、評価値は０（ゼロ）である。
【０１２２】
図２０に示すように、ＤＦＥ内ジョブ属性選択部６４はページ毎に評価値が最も高いＲＩＰエンジン５９ａ〜５９ｃを採用する。図２０は、ページ毎に採用される「ＤＦＥ内ジョブ属性」の一例を示す図である。この評価値によれば、１ページ目では各社のＲＩＰエンジン５９の評価値が同じなので、ＤＦＥ内ジョブ属性選択部６４は、任意のＲＩＰエンジン５９を採用する。本実施形態では例えばＡ社ＲＩＰエンジン５９ａを採用すると予め定められているものとする。
【０１２３】
２ページ目ではＢ社ＲＩＰエンジン５９ｂの評価値が最も高いので、ＤＦＥ内ジョブ属性選択部６４はＢ社ＲＩＰエンジン用の「ＤＦＥ内ジョブ属性」を採用する。
【０１２４】
３ページ目ではＣ社ＲＩＰエンジン５９ｃの評価値が最も高いので、ＤＦＥ内ジョブ属性選択部６４はＣ社ＲＩＰエンジン用の「ＤＦＥ内ジョブ属性」を採用する。
【０１２５】
ＤＦＥ内ジョブ属性選択部６４はページ単位で「ＤＦＥ内ジョブ属性」を選択しジョブ制御部５５に出力する。ジョブ制御部５５はページ単位で、使用する「ＤＦＥ内ジョブ属性」を切り替えて、「ＤＦＥ内ジョブ属性」とＰＤＬから「RIP Parameter List」を作成する。なお、ページ単位で評価値を算出しても、必ずしもページ単位で「RIP Parameter List」の変換に用いられる「ＤＦＥ内ジョブ属性」が切り替わるとは限らず、ＲＩＰエンジン５９が切り替わるとは限らない。
【０１２６】
なお、図１９、２０では、「回転」を例にしてページ単位の評価値について説明したが、ページ単位に属性値が異なる属性がある場合、それぞれの属性についてページ単位に評価値が算出される。例えば、「向き情報」「拡大／縮小」「イメージ位置」「レイアウト情報（集約印刷）」「マージン情報」「クロップ・マーク情報」などはページ単位に評価値が異なりうる。
【０１２７】
〔変換評価値算出用テーブルの設定〕
変換評価値算出用テーブル６５はユーザが設定することができる。ユーザは項目の重要度を考慮して、項目毎に評価値を設定する。項目の重要度は、一般に「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が異なると、ラスターデータが大きく異なる項目ほど重要度が高いと判断される。
【０１２８】
また、ラスターデータにおいてユーザが重要視する態様（部数、印刷向き、色味、フォント、など）と関連する項目は、重要度が高いと判断される。例えば、「部数」が異なると支障がある場合は、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が異なる場合に「部数」の評価値を大きな負値に設定し、支障が少ない場合は、「部数」の評価値に「0」又はこれに近い値に設定する。また、ラスターデータの印刷向きが異なると支障がある場合は、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」が異なる場合に「向き情報」の評価値を大きな負値に設定し、支障が少ない場合は、「向き情報」の評価値に「0」又はこれに近い値に設定する。このように、ユーザは印刷の目的などに応じて、適切な評価値を設定できる。
【０１２９】
なお、変換評価値算出用テーブル６５には、予め標準的な評価値が初期値として設定されている。これにより、ユーザは全ての項目で評価値を設定しなくてもよく操作性を向上できる。
【０１３０】
図２１は、ディスプレイ３３０に表示される評価値設定画面の一例を示す図である。評価値設定画面は、テーブル選択欄５０１、項目名欄５０２，５０３、テーブル表示欄５０４、及び、登録ボタン５０５を有している。テーブル選択欄５０１は、どのＲＩＰエンジン５９（アプリケーション１２のメーカ）の変換評価値算出用テーブル６５を設定するかの選択を受け付ける。項目名欄５０２，５０３には、「ＤＦＥ内ジョブ属性」の項目名が表示され、ユーザによる項目の選択を受け付ける。また、テーブル表示欄５０４には、現在の変換評価値算出用テーブル６５の評価値が表示される。
【０１３１】
ユーザが登録ボタン５０５を押下すると、評価値算出用テーブル設定部７２が変更後の変換評価値算出用テーブル６５を受け付け、ＪＤＦ変換評価値算出部６３に出力する。これにより、ＪＤＦ変換評価値算出部６３は更新後の変換評価値算出用テーブル６５を保持できる。
【０１３２】
なお、評価値は、「０」を最大とするのでなく、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」の差が小さいほど大きなゼロ以上の数値が設定されてもよい。この場合は、正値としての評価値の合計が最も大きい「ＤＦＥ内ジョブ属性」が選択される。また、「ＪＤＦ内での値」と「変換後のＤＦＥ内ジョブ属性の値」の差が小さいほど絶対値の小さな値が評価値として設定されてもよい。この場合は、正値としての評価値の合計が最も小さい「ＤＦＥ内ジョブ属性」が選択される。
【０１３３】
また、任意のＰＣからＤＦＥ３２にアクセスして、ユーザが変換評価値算出用テーブル６５を設定してもよい。この場合、ＤＦＥ３２はサーバとしてＨＴＭＬやJavaScript（登録商標）で記述された評価値設定画面をＰＣに送信する。ユーザはＰＣを操作して評価値を設定し、評価値設定画面をＤＦＥ３２に送信する。
【０１３４】
〔ＲＩＰエンジン選択モード設定部による選択モードの設定〕
ユーザは、評価値をページ単位で算出するか、印刷ジョブ単位で算出するか（ＲＩＰエンジン５９をページ単位で切り替えるか、印刷ジョブ単位で切り替えるか）を設定できる。
【０１３５】
図２２（ａ）は、ディスプレイ３３０に表示される選択モード設定画面の一例を示す図である。選択モード設定画面では、チェックボックス５１１に対応づけて「ページ単位でＲＩＰエンジンを切り替える」というメッセージが表示されている。ユーザがチェックボックス５１１をチェックすると、ＲＩＰエンジン選択モード設定部７３が設定を受け付けて、ＪＤＦ変換評価値算出部６３に出力する。これにより、ＪＤＦ変換評価値算出部６３はページ単位に評価値を算出する。チェックボックス５１１がチェックされていない場合、ＪＤＦ変換評価値算出部６３は印刷ジョブ単位に評価値を算出する。
【０１３６】
このようにユーザは印刷ジョブ単位に評価値を算出して印刷ジョブ単位で同じＲＩＰエンジン５９を使用するか、ページ単位に評価値を算出してページ単位でＲＩＰエンジン５９を切り替え可能とするかを選択できる。例えば、色合いを重視する印刷ジョブでは、印刷ジョブの全体を同じＲＩＰエンジン５９で処理することが好ましい場合があり、ユーザは印刷ジョブ単位で評価値を算出するように設定する。一方、全体の色味がそれほど重要ではなく、また、ページ単位でＪＤＦにて設定されている属性に最適なＲＩＰエンジン５９を選択したい場合、ユーザはページ単位で評価値を算出するように設定する。
【０１３７】
図２２（ｂ）は、一覧表示された複数の印刷ジョブに対し、個別に選択モードの設定が行われる選択モード設定画面の一例である。この選択モード設定画面では、「ジョブ名」に対し「ＲＩＰエンジン切り替え単位」が表示されている。例えばジョブデータ格納部５３に複数の印刷ジョブが格納されており、ユーザが各印刷ジョブを選択してＲＩＰエンジン５９の切り替え単位を設定したい場合に、このような設定が有効である。
【０１３８】
各印刷ジョブには切り替えボタン５１３が用意されており、切り替えボタン５１３が押下される毎にジョブ単位とページ単位とが切り替えられる。ＲＩＰエンジン選択モード設定部７３は設定を受け付けて、例えば印刷ジョブに紐づけて記憶しておく。これにより、ＪＤＦ変換評価値算出部６３は印刷ジョブに紐づけられたページ又は印刷ジョブの単位で評価値を算出できる。
【０１３９】
〔印刷ジョブの実行順の設定〕
図２３は、ディスプレイに表示された実行順番設定画面の一例を示す図である。実行順番設定画面にはラジオボタン５２１，５２２と共に「印刷ジョブの受信順」「レンダリングの終了順」というメッセージが表示されている。ユーザはいずれかのラジオボタン５２１，５２２を選択する。ＵＩ制御部５４は選択された実行順番の設定を受け付け、ジョブ制御部５５に出力する。これにより、ジョブ制御部５５は設定された順番で印刷実行要求をプリンター制御部６１に出力できる。
【０１４０】
〔ＲＩＰ制御部ジョブ管理リスト〕
図２４（ａ）は、ＲＩＰ制御部ジョブ管理リスト７７の一例を示し、図２４（ｂ）は「ジョブ状態」の遷移を示す図の一例である。ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部ジョブ管理リスト７７に、ＲＩＰ制御部５８が取得した印刷ジョブ毎に「ＲＩＰ待機キュー」「キュー状態」「ジョブ状態」「予測ＲＩＰ時間」を登録する。
・「ＲＩＰ待機キュー」は、印刷ジョブが割り当てられ得るＲＩＰ待機キュー６９である。
・「キュー状態」は、印刷ジョブがＲＩＰ待機キュー６９を使用するか否か（使用又は未使用）が登録される。すなわち、印刷ジョブがＲＩＰエンジン５９ａ〜５９ｃを使用するか否かが登録される。
・「ジョブ状態」は、ＲＩＰ待機キュー６９の印刷ジョブの状態（待機中、ＲＩＰ中、ＲＩＰ完了）が登録される。図２４（ｂ）に示すように、「ジョブ状態」は、レンダリングの開始前は「待機中」である。レンダリングが開始されると「ＲＩＰ中」となり、レンダリングが完了すると「ＲＩＰ完了」になる。なお、「ＲＩＰ完了」になると、ＲＩＰ制御部ジョブ管理リスト７７から印刷ジョブが削除される。
・「予測ＲＩＰ時間」は、ＲＩＰ待機キュー６９の印刷ジョブのレンダリングに要すると予測される時間である（特許請求の範囲の描画データ作成時間の一例である）。予測ＲＩＰ時間の推測に、ＲＩＰ制御部状態管理部６８はプレ(Pre)ＲＩＰという機能を利用する。プレＲＩＰとはＪＤＦ解析部５６がＲＩＰ制御部５８に対し実際のレンダリングなしにＰＤＬのコマンドを出力し、属性情報（属性と属性値）を取得する処理である。プレＲＩＰにより属性の情報として印刷ジョブのページ数と画像サイズを取得できるので、画像サイズに係数を乗じてページ数分を合計することで、予測ＲＩＰ時間を算出できる。
【０１４１】
図２４のJob1は、評価値に基づきページ毎に、Ａ社ＲＩＰエンジン５９ａ、Ｂ社ＲＩＰエンジン５９ｂ、及び、Ｃ社ＲＩＰエンジン５９ｃのそれぞれでレンダリングされると判断されたため、全ての待機キュー６９の「キュー状態」が「使用」となっている。また、それぞれのＲＩＰエンジン５９が、Job1よりも前の印刷ジョブを実行していないため、「ジョブ状態」は「ＲＩＰ中」となる。また、プレＲＩＰから求められた「予測ＲＩＰ時間」はそれぞれ１０sec、２０sec、３０secである。
【０１４２】
続いて、図２５，２６を用いて、割り込み設定を含む印刷ジョブが入稿された場合に、各印刷ジョブがどのように処理されるかを説明する。図２５は、印刷ジョブを割り込ませることが可能な場合のＲＩＰ制御部ジョブ管理リスト７７と各ＲＩＰエンジンのＲＩＰ時間を模式的に示す図の一例である。
【０１４３】
なお、図２５の例では、Job1の予測終了時間は、最も予測ＲＩＰ時間が長いＣ社ＲＩＰエンジン５９ｃの予測ＲＩＰ時間（３０sec）である。Job2の予測終了時間は、最も予測ＲＩＰ時間が長いＢ社ＲＩＰエンジン５９ｂの予測ＲＩＰ時間（４０sec）であるが、この場合はユーザの待ち時間として「３０＋４０＝７０sec」として算出されてもよい。
【０１４４】
以下のような印刷ジョブがこの順番で入稿されたものとする。
１．Job1(Ｄ社形式のＪＤＦ付きの印刷ジョブ、3ページ)
２．Job2(Ｄ社形式のＪＤＦ付きの印刷ジョブ、4ページ)
３．Job3(Ａ社形式のＪＤＦ付きの印刷ジョブ、2ページ)…割り込み設定あり
Job1、Job2は、Ｄ社のアプリケーション１２が作成したので、ページ毎にＲＩＰ待機キュー６９ａ〜６９ｃに格納される。これに対し、ＲＩＰ制御部状態管理部６８はJob3の登録順を決定する。
【０１４５】
具体的には、ジョブ制御部５５がJob3のＲＩＰ実行要求をＲＩＰ制御部５８に出力する。ＲＩＰ制御部状態管理部６８は、Job3に割り込み設定があるため、該印刷ジョブをレンダリングすると判断されたＲＩＰエンジン５９のＲＩＰ待機キュー６９の中で一番最初の「待機中」である印刷ジョブを探す。なお、割り込み設定が有効となるのは、ＪＤＦ解析部５６がＪＤＦを解析してＲＩＰエンジン５９を特定できた場合（「RIP Parameter List」が１つしか作成されていない場合）である。
【０１４６】
また、ＲＩＰ制御部状態管理部６８が、割り込みが可能か否かを判断するため、ＲＩＰ待機キュー毎に、現在「ＲＩＰ中」の印刷ジョブの処理経過時間をカウントしている。図２５では、ＲＩＰ制御部５８がJob3を受信した時、Job1の処理経過時間が５secであるとする。
【０１４７】
図２５において、「Job1受信後」に示すように、Job1のＡ社ＲＩＰエンジン５９ａの「予測ＲＩＰ時間」は10sec、Ｂ社ＲＩＰエンジン５９ｂの「予測ＲＩＰ時間」は20sec、Ｃ社ＲＩＰエンジン５９ｃの「予測ＲＩＰ時間」は30secである。Ａ社〜Ｃ社のＲＩＰ待機キュー６９ａ〜６９ｃの「ジョブ状態」は「ＲＩＰ中」である。
【０１４８】
図２５において、「Job2受信後」に示すように、Job2のＡ社ＲＩＰエンジン５９ａの「予測ＲＩＰ時間」は20sec、Ｂ社ＲＩＰエンジン５９ｂの「予測ＲＩＰ時間」は30sec、Ｃ社ＲＩＰエンジン５９ｃの「予測ＲＩＰ時間」は40secである。Ａ社〜Ｃ社のＲＩＰ待機キュー６９ａ〜６９ｃの「ジョブ状態」は「待機中」である。
【０１４９】
図２５において、「Job3受信後」に示すように、Job3のＡ社ＲＩＰエンジン５９ａの「予測ＲＩＰ時間」は10secである。Ａ社ＲＩＰ待機キュー６９ａの「ジョブ状態」は「待機中」になる。
【０１５０】
図２５のＡ欄は本実施形態の割り込み制御を行う場合にJob3の割り込み位置を示し、図２５のＢ欄は本実施形態の割り込み制御を行わない場合にJob3の割り込み位置を示す。以下、ＲＩＰ制御部状態管理部６８による割り込み制御について説明する。ＲＩＰ制御部状態管理部６８は各ＲＩＰ待機キュー６９における予測ＲＩＰ時間の合計を算出する。また、予測ＲＩＰ時間の合計から、すでに経過した処理経過時間を考慮するため、予測ＲＩＰ時間の合計からそれぞれのＲＩＰ待機キューの処理経過時間を減算し、これをＲＩＰ待機キュー合計予測時間として定義する。Ａ社ＲＩＰ待機キュー合計予測時間は特許請求の範囲の「第１の合計」の一例であり、Ｂ社ＲＩＰ待機キュー合計予測時間とＣ社ＲＩＰ待機キュー合計予測時間は特許請求の範囲の「第２の合計」の一例である。
・A社RIP待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間 + Job3の予測RIP時間
= 10sec - 5sec + 20sec + 10sec = 35sec
・B社RIP待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間
= 20sec - 5sec + 30sec = 45sec
・C社RIP待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間
= 30sec - 5sec + 40sec = 65sec
この場合、Ａ社ＲＩＰ待機キュー合計予測時間が、Ｂ社ＲＩＰ待機キュー合計予測時間、及び、Ｃ社ＲＩＰ待機キュー合計予測時間よりも短いので、ＲＩＰ制御部状態管理部６８は、Job3をJob2の前に割り込ませる事が可能であると判断できる。
【０１５１】
したがって、図２５のＡ欄に示すように、ＲＩＰ制御部状態管理部６８は、Job1の次にJob3を割り込ませる。このJob3の予測終了時間がユーザに提供される。これに対し、図２５のＢ欄に示すように、本実施形態の割り込み制御を用いないと、Job3はJob2の後に実行するとスケジュールされるので、Job3の予測終了時間が遅くなっていた。
【０１５２】
図２６は、印刷ジョブを割り込ませるべきでない場合のＲＩＰ制御部ジョブ管理リスト７７と各ＲＩＰエンジンのＲＩＰ時間を模式的に示す図の一例である。図２６では、Job3の「予測ＲＩＰ時間」が５０secであることが、図２５と異なっている。その他の条件は同じである。
・Ａ社ＲＩＰ待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間 + Job3の予測RIP時間
= 10sec - 5sec + 20sec + 50sec = 75sec
・Ｂ社ＲＩＰ待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間
= 20sec - 5sec + 30sec = 45sec
・Ｃ社ＲＩＰ待機キュー合計予測時間
Job1の予測RIP時間 - 処理経過時間 + Job2の予測RIP時間
= 30sec - 5sec + 40sec = 65sec
この場合、Ａ社ＲＩＰ待機キュー合計予測時間が、Ｂ社ＲＩＰ待機キュー合計予測時間、又は、Ｃ社ＲＩＰ待機キュー合計予測時間の少なくとも一方よりも長いので、ＲＩＰ制御部状態管理部６８は、Job3をJob2の前に割り込ませる事が困難であると判断できる。
【０１５３】
したがって、図２６のＡ欄に示すように、ＲＩＰ制御部状態管理部６８は、Job2の前にJob3を割り込ませることをしない。この場合、図２６のＢ欄に示すように、本実施形態の割り込み制御を用いることで、Job3はJob2の後に実行するとスケジュールされる。
【０１５４】
本実施形態の割り込み制御を用いない場合、図２６のＡ欄に示すように、Job2の前にJob3が挿入されてしまうので、Job2の予測終了時間（Ｃ社ＲＩＰエンジン５９ｃによる予測ＲＩＰ時間）が、Ａ社ＲＩＰエンジン５９ａによる予測ＲＩＰ時間の影響を受けてしまう。
【０１５５】
このように、本実施形態のＲＩＰ制御部状態管理部６８は、Ａ社ＲＩＰ待機キュー合計予測時間が、Ｂ社ＲＩＰ待機キュー合計予測時間、及び、Ｃ社ＲＩＰ待機キュー合計予測時間より大きいか否かを判断するので、Job2の予測終了時間を超えない場合にだけ、Job3を割り込ませることができる。
【０１５６】
〔動作手順〕
図２７は、印刷システム２００の動作手順を示すシーケンス図の一例である。なお、印刷ジョブは、図２５，２６で説明したJob1、Job2、及び、Job3が入力されるものとする。
S1：Ｄ社のアプリケーション１２がＤＦＥ３２に印刷ジョブ（Job1＝ＪＤＦ＋ＰＤＬ）を送信する。
S2：ジョブ受信部５１は印刷ジョブ（Job1＝ＪＤＦ＋ＰＤＬ）をシステム制御部５２に出力する。
S3：システム制御部５２はジョブ制御部５５に印刷ジョブを出力する。なお、印刷ジョブをジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブを格納する。
S4：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦとＪＤＦ変換要求を出力する。
S5：ＪＤＦ解析部５６は、ＪＤＦを解析してＪＤＦを作成したアプリケーション１２のメーカ（ＲＩＰエンジン５９）を判断し、該ＲＩＰエンジン５９に対応する変換テーブル６２で「ＤＦＥ内ジョブ属性」を作成する。Job1はＤ社のアプリケーション１２で作成されているので、図２８にて説明するように、ステップS5では３つの「ＤＦＥ内ジョブ属性」が作成される。
S6：ＪＤＦ解析部５６は、「ＤＦＥ内ジョブ属性」をジョブ制御部５５に出力する。
S7：ジョブ制御部５５は、ページ毎の「ＤＦＥ内ジョブ属性」とＰＤＬを用いて「RIP Parameter List」を作成する。
S8：ジョブ制御部５５は、ジョブ管理リスト６７に受信順、ジョブＩＤ、及び、ページ数を登録する。
S9：ジョブ制御部５５のインスタンス作成部６６は、ジョブ制御部ＩＮＳ６６０を作成する。ここではジョブ制御部ＩＮＳ１が作成されたものとする。この後、ジョブ制御部ＩＮＳ１は他のジョブ制御部ＩＮＳ２，３とは独立にＲＩＰ実行要求を行う。ジョブ制御部ＩＮＳ１は他のジョブ制御部ＩＮＳ２，３による影響を受けないので、互いに並列にＲＩＰ実行要求できる。各ジョブ制御部ＩＮＳ１〜３のＲＩＰ制御部５８に対するＲＩＰ実行要求は、ＲＩＰ制御部５８からの応答を待たずに順次実行され、各ＲＩＰ実行要求は並列に処理される。ＲＩＰ実行要求の際、ＲＩＰ制御部５８には、生成した「RIP Parameter List」と共に、ジョブ管理リスト６７のジョブＩＤが出力される。
S10：まず、ジョブ制御部ＩＮＳ１はジョブＩＤをＲＩＰ制御部５８に出力する。
S11：ＲＩＰ制御部５８は、印刷ジョブを各ＲＩＰ待機キュー６９に振り分けて格納する。ステップＳ１１の手順は図２９で説明する。
S12：ジョブ制御部５５は、「RIP Parameter List」をＲＩＰ制御部５８に出力する。
S13：ＲＩＰ制御部５８は、ＲＩＰエンジン５９を初期化する。
【０１５７】
以下の処理は、「ＲＩＰ制御モード」が「Page Mode」か「Sheet Mode」によって異なっている。まず、「Page Mode」の場合を説明する。ＲＩＰ制御部５８はページ単位にＲＩＰエンジン５９を切り替えることができる。
S14-1：ジョブ制御部５５は、ＲＩＰ制御部５８に対しＲＩＰ実行要求を行う。
S15-1：ＲＩＰ制御部５８は、ジョブ制御部５５の代わりにＲＩＰコマンドを出力する。ＲＩＰ制御部５８は「ＲＩＰ制御モード」が「Page Mode 」の場合、「Page Mode 」に適したシーケンスでＲＩＰコマンドを出力する。
S16-1：ＲＩＰエンジン５９はラスタライズを行う。
S17-1：ＲＩＰエンジン５９はラスターデータを画像格納部６０に格納する。
S18-1：ＲＩＰエンジン５９はＲＩＰ終了通知をＲＩＰ制御部５８に出力する。
S19-1：ＲＩＰ制御部５８はＲＩＰ終了通知をジョブ制御部ＩＮＳ１に出力する。
【０１５８】
次に、「Sheet Mode」の場合を説明する。
S14-2：ジョブ制御部５５は、ＲＩＰ制御部５８に対しＲＩＰ実行要求を行う。
S15-2：ＲＩＰ制御部５８は、「ＲＩＰ制御モード」が「Sheet Mode」の場合、「Sheet Mode」に適したシーケンスでＲＩＰコマンドを出力する。
S16-2：ＲＩＰエンジン５９はラスタライズを行う。
S17-2：ＲＩＰエンジン５９はラスターデータを画像格納部６０に格納する。
S18-2：ＲＩＰエンジン５９はＲＩＰ終了通知をＲＩＰ制御部５８に出力する。
S19-2：ＲＩＰ制御部５８はＲＩＰ終了通知をジョブ制御部ＩＮＳ１に出力する。
S20：ジョブ制御部ＩＮＳ１は、ジョブ制御部５５にジョブＩＤと共にページ単位のＲＩＰ終了通知を出力する。
S21：ジョブ制御部５５は、全ページのレンダリングが終了したか否かを判断する。
S22：ジョブ制御部５５のインスタンス作成部６６は、全ページのレンダリングが終了すると終了した印刷ジョブのジョブ制御部ＩＮＳ（図ではジョブ制御部ＩＮＳ１）を削除する。
S23：また、ＲＩＰ制御部５８は、全てのページのレンダリングが終了するとＡ社ＲＩＰ待機キュー６９ａからJob1を取り出す。
【０１５９】
次に、Ｄ社のアプリケーション１２が印刷ジョブとしてJob2をＤＦＥ３２に送信したものとする。
S31：アプリケーション１２がＤＦＥ３２に印刷ジョブ（Job2＝ＪＤＦ＋ＰＤＬ）を送信する。
S32：ジョブ受信部５１は印刷ジョブ（Job2＝ＪＤＦ＋ＰＤＬ）をシステム制御部５２に出力する。
S33：システム制御部５２はジョブ制御部５５に印刷ジョブを出力する。なお、印刷ジョブをジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブを格納する。
S34：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦとＪＤＦ変換要求を出力する。
S35：ＪＤＦ解析部５６は、ＪＤＦを解析してＪＤＦを作成したアプリケーション１２のメーカ（ＲＩＰエンジン５９）を判断し、該ＲＩＰエンジン５９に対応する変換テーブル６２で「ＤＦＥ内ジョブ属性」を作成する。Job2はＤ社のアプリケーション１２で作成されているので、図２８にて説明するように、ステップS35では３つの「ＤＦＥ内ジョブ属性」が作成される。
S36：ＪＤＦ解析部５６は、「ＤＦＥ内ジョブ属性」をジョブ制御部５５に出力する。
S37：ジョブ制御部５５は、ページ毎の「ＤＦＥ内ジョブ属性」とＰＤＬを用いて「RIP Parameter List」を作成する。
S38：ジョブ制御部５５は、ジョブ管理リスト６７に受信順、ジョブＩＤ、及び、ページ数を登録する。
S39：ジョブ制御部５５のインスタンス作成部６６は、ジョブ制御部ＩＮＳ６６０を作成する。ここではジョブ制御部ＩＮＳ２が作成されたものとする。この後、ジョブ制御部ＩＮＳ２は、ジョブ制御部ＩＮＳ１が行ったS10〜S20の各処理を並列に行う。
【０１６０】
次に、Ａ社のアプリケーション１２が印刷ジョブとしてJob3をＤＦＥ３２に送信した場合も同様である。ただし、Ａ社のアプリケーション１２が作成した印刷ジョブは、ＪＤＦ解析部５６がＡ社ＲＩＰエンジン５９ａを使用すると判断するので、「ＤＦＥ内ジョブ属性」は１つしか作成されない。
S40：インスタンス作成部６６はジョブ制御部ＩＮＳ３を作成する。ジョブ制御部ＩＮＳ３も、S10〜S20の各処理を行う。
【０１６１】
この後、ジョブ制御部５５は、印刷順の設定を読み出し、ジョブ受信順かレンダリングが終了した順かを判断する。
S41：ジョブ制御部５５は印刷実行要求と共に「Finishing情報」をプリンター制御部６１に出力する。このタイミングは、ラスターデータの作成前でも作成後でもよい。
S42：プリンター制御部６１は、印刷実行要求を取得したことで、画像格納部６０のラスターデータを確認し、印刷を行う。
【０１６２】
＜ステップＳ５＞
図２８は、図２７のステップＳ５の手順を説明する図の一例である。
S5-1：ＪＤＦ解析部５６は、ＪＤＦを作成したアプリケーション１２を特定できるか否かを判定する。
S5-2：ＪＤＦを作成したアプリケーション１２を特定できた場合、ＪＤＦ解析部５６は特定したＲＩＰエンジン用の変換テーブル６２で「ＤＦＥ内ジョブ属性」を作成する。
S5-3：ＪＤＦを作成したアプリケーション１２を特定できない場合、ＪＤＦ解析部５６は、各ＲＩＰエンジン用に用意されている全ての変換テーブル６２で「ＤＦＥ内ジョブ属性」を作成する。ＪＤＦ解析部５６は、まず、Ａ社のアプリケーション１２が作成したＪＤＦを「ＤＦＥ内ジョブ属性」に変換する変換テーブル６２ａを用いて、ＪＤＦを「ＤＦＥ内ジョブ属性」に変換する。この時、変換前後情報Ａが作成される。
S5-4：ＪＤＦ変換評価値算出部６３は変換前後情報Ａを用いて変換評価値算出用テーブル６５ａを参照し、例えばページ単位の評価値Ａを算出する。
S5-5：ＪＤＦ解析部５６はＢ社のアプリケーション１２が作成したＪＤＦを「ＤＦＥ内ジョブ属性」に変換する変換テーブル６２ｂを用いて、ＪＤＦを「ＤＦＥ内ジョブ属性」に変換する。この時、変換前後情報Ｂが作成される。
S5-6：ＪＤＦ変換評価値算出部６３は変換前後情報Ｂを用いて変換評価値算出用テーブル６５ｂを参照し、例えばページ単位の評価値Ｂを算出する。
S5-7：ＪＤＦ解析部５６はＣ社のアプリケーション１２が作成したＪＤＦを「ＤＦＥ内ジョブ属性」に変換する変換テーブル６２ｃを用いて、ＪＤＦを「ＤＦＥ内ジョブ属性」に変換する。この時、変換前後情報Ｃが作成される。
S5-8：ＪＤＦ変換評価値算出部６３は変換前後情報Ｃを用いて変換評価値算出用テーブル６５ｃを参照し、例えばページ単位の評価値Ｃを算出する。
S5-9：ＤＦＥ内ジョブ属性選択部６４は、「ＤＦＥ内ジョブ属性」を選択する。すなわち、ページ単位で評価値Ａ〜Ｃのうち最も高いものを選ぶ。評価値が同じ場合は、予め定められている例えばＲＩＰエンジンＡ用の「ＤＦＥ内ジョブ属性」を選択する。これにより、例えばページ毎に「ＤＦＥ内ジョブ属性」が選択される。
１ページ：Ａ社ＲＩＰエンジン用の「ＤＦＥ内ジョブ属性」
２ページ：Ｂ社ＲＩＰエンジン用の「ＤＦＥ内ジョブ属性」
３ページ：Ｃ社ＲＩＰエンジン用の「ＤＦＥ内ジョブ属性」
なお、あるページで、最も高い評価値が閾値未満の場合、ＵＩ制御部５４にページ取り止め表示を要求してもよい。
【０１６３】
この後、図２７のステップＳ６で、ＪＤＦ解析部５６は「ＤＦＥ内ジョブ属性」をジョブ制御部５５に出力するので、ステップＳ６以下の処理が実行される。
【０１６４】
＜図２７のステップＳ１１＞
図２９は、図２７のステップＳ１１の手順を説明する図の一例である。なお、Job3には割り込み印刷の設定が含まれているものとする。
S11-1：ＲＩＰ制御部５８は「RIP Parameter List」を取得するか否かを監視している。なお、「RIP Parameter List」の取得の処理は、図２７のステップＳ１２と重複するが、説明のため図示した。
S11-2：ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部ジョブ管理リスト７７に印刷ジョブを登録する。「予測ＲＩＰ時間」については、「RIP Parameter List」を取得してプレＲＩＰが完了したら登録する。
S11-3：ＲＩＰ制御部５８は１つの印刷ジョブ用に指定されたＲＩＰエンジン５９の数が１より大きいか否かを判定する。すなわち、複数の「ＤＦＥ内ジョブ属性」が作成され、ページ毎にＲＩＰエンジン５９が異なるか否かを判定する。
S11-4：ステップS11-3の判断がＹｅｓの場合、ＲＩＰ制御部状態管理部６８はページ毎に、ＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９の最後に印刷ジョブを登録する。すなわち、この場合は、割り込み制御は行われない。
S11-5：ステップS11-3の判断がＮｏの場合、ＲＩＰ制御部状態管理部６８は、ＪＤＦ解析部５６により選択されたＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９の中の「待機中ジョブ」を探す。
S11-6：ステップS11-5の判断がＮｏの場合、印刷ジョブを割り込ませる必要がないので、ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部５８が選択したＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９の一番最後に印刷ジョブを登録する。
S11-7：ステップS11-5の判断がＹｅｓの場合、ＲＩＰ制御部状態管理部６８は、各社のＲＩＰ待機キュー合計予測時間を算出する。
S11-8：そして、ＲＩＰ制御部５８が選択したＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９のＲＩＰ待機キュー合計予測時間が、他のＲＩＰ待機キュー合計予測時間以上か否かを判断する。
S11-6：ステップS11-8の判断がＹｅｓの場合、印刷ジョブを割り込ませると予測終了時間が変わってしまうので、ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部５８により選択されたＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９の一番最後に印刷ジョブを登録する。
S11-9：ステップS11-8の判断がＮｏの場合、印刷ジョブを割り込ませても予測終了時間が変わらない。このため、ＲＩＰ制御部状態管理部６８は、ＲＩＰ制御部５８が選択したＲＩＰエンジン５９に対応するＲＩＰ待機キュー６９の一番最初の「待機中」の印刷ジョブの前に印刷ジョブを挿入する。
【０１６５】
以上のような処理により、ＲＩＰ制御部状態管理部６８は、すでにＲＩＰ待機キュー６９に登録されている印刷ジョブの予測終了時間を変更しない場合に、印刷ジョブを割り込ませることができる。
【０１６６】
〔好適な変形例〕
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１６７】
例えば、図４ではＤＦＥ３２が全ての機能を有しているが、これらの各機能はネットワーク３を介して通信可能な別々の装置に配置されていてもよい。例えば、各社のＲＩＰエンジン５９やＪＤＦ解析部５６はＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１６８】
画像格納部６０やジョブデータ格納部５３についても同様であり、ＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１６９】
また、ＪＤＦ変換評価値算出部６３がＤＦＥ３２の外部に存在してもよい。この場合、ＤＦＥ３２は変換前後情報を外部のＪＤＦ変換評価値算出部６３に送信し、ＪＤＦ変換評価値算出部６３から評価値を取得する。変換評価値算出用テーブル６５の設定は、ＤＦＥ３２の外部のＪＤＦ変換評価値算出部６３に対し行われる。
【符号の説明】
【０１７０】
１      エンドユーザ環境
２      ＰＯＤ印刷システム環境
１１    クライアントＰＣ
１２    アプリケーション
２０    工程管理部
３０    デジタル印刷部
３１    プリンター
３２    ＤＦＥ
５１    ジョブ受信部
５２    システム制御部
５３    ジョブデータ格納部
５４    ＵＩ制御部
５５    ジョブ制御部
５６    ＪＤＦ解析部
５７    ＲＩＰ部
５８    ＲＩＰ制御部
５９    ＲＩＰエンジン
６０    画像格納部
６１    プリンター制御部
６２    変換テーブル
６３    ＪＤＦ変換評価値算出部
６４    ＤＦＥ内ジョブ属性選択部
６５    変換評価値算出用テーブル
６６    インスタンス作成部
６７    ジョブ管理リスト
６８    ＲＩＰ制御部状態管理部
６９    ＲＩＰ待機キュー
７１    実行順設定部
７２    評価値算出用テーブル設定部
７３    ＲＩＰエンジン選択モード設定部
【先行技術文献】
【特許文献】
【０１７１】
【特許文献１】特開２０１２‐２３８１８８号公報
【図１】
2015201173.tif 000003
【図２】
2015201173.tif 000004
【図３】
2015201173.tif 000005
【図４】
2015201173.tif 000006
【図５】
2015201173.tif 000007
【図６】
2015201173.tif 000008
【図７】
2015201173.tif 000009
【図８】
2015201173.tif 000010
【図９】
2015201173.tif 000011
【図１０】
2015201173.tif 000012
【図１１】
2015201173.tif 000013
【図１２】
2015201173.tif 000014
【図１３】
2015201173.tif 000015
【図１４】
2015201173.tif 000016
【図１５】
2015201173.tif 000017
【図１６】
2015201173.tif 000018
【図１７】
2015201173.tif 000019
【図１８】
2015201173.tif 000020
【図１９】
2015201173.tif 000021
【図２０】
2015201173.tif 000022
【図２１】
2015201173.tif 000023
【図２２】
2015201173.tif 000024
【図２３】
2015201173.tif 000025
【図２４】
2015201173.tif 000026
【図２５】
2015201173.tif 000027
【図２６】
2015201173.tif 000028
【図２７】
2015201173.tif 000029
【図２８】
2015201173.tif 000030
【図２９】
2015201173.tif 000031