(57)【要約】【課題】リソースを効率的に活用可能な情報処理装置を提供すること。【解決手段】印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理装置３２であって、前記設定情報を各描画データ作成手段用の装置用設定情報に変換する変換手段５６と、前記印刷データと前記装置用設定情報を用いて描画データ作成制御手段に描画データの作成要求を出力する描画データ作成要求手段５５と、前記描画データ作成要求手段から作成要求された印刷ジョブを、複数の描画データ作成手段のそれぞれに対応づけられた記憶手段６６に記憶させる前記描画データ作成制御手段５８と、前記描画データ作成制御手段から前記記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段５９と、を有することを特徴とする。【選択図】図２
2015172933.tif 000002
【特許請求の範囲】
【請求項１】
印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理装置であって、
前記設定情報を各描画データ作成手段用の装置用設定情報に変換する変換手段と、
前記印刷データと前記装置用設定情報を用いて描画データ作成制御手段に描画データの作成要求を出力する描画データ作成要求手段と、
前記描画データ作成要求手段から描画データの作成が要求された印刷ジョブを、複数の描画データ作成手段のそれぞれに対応づけられた記憶手段に記憶させる前記描画データ作成制御手段と、
前記描画データ作成制御手段から前記記憶手段に記憶された印刷ジョブを取得して描画データを作成する前記複数の描画データ作成手段と、
を有することを特徴とする情報処理装置。
【請求項２】
複数の前記描画データ作成要求手段を有し、
それぞれの前記描画データ作成要求手段は、他の前記描画データ作成要求手段とは独立に、前記描画データ作成制御手段に対し描画データの作成要求を出力する、
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
外部から印刷ジョブの描画データの作成要求があった場合に、印刷ジョブに専用の前記描画データ作成要求手段を生成する作成要求手段生成手段を有する、
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
印刷装置に対し描画データを印刷させる印刷装置制御手段と、
外部から印刷ジョブの描画データの作成要求があった場合に、ページ数を記録する印刷ジョブ記録手段と、を有し、
前記描画データ作成要求手段は、前記描画データ作成制御手段に作成要求を出力することで印刷ジョブのページごとの作成終了通知を取得し、記録されたページ数の前記作成終了通知を取得した場合、１つの印刷ジョブの描画データが作成されたと判断し、
前記印刷装置制御手段に対し描画データの印刷を開始させる、
ことを特徴とする請求項１〜３いずれか１項記載の情報処理装置。
【請求項５】
印刷装置に対し描画データを印刷させる印刷装置制御手段と、
外部から印刷ジョブの描画データの作成要求があった場合に、印刷ジョブの受信順を記録する印刷ジョブ記録手段と、を有し、
前記描画データ作成要求手段は、前記描画データ作成制御手段に作成要求を出力することで印刷ジョブの作成終了通知を取得して、１つの印刷ジョブの描画データが作成されたと判断し、
前記印刷装置制御手段に対し印刷ジョブの受信順に描画データの印刷を開始させる、
ことを特徴とする請求項１〜３いずれか１項記載の情報処理装置。
【請求項６】
描画データが作成された印刷ジョブから順に前記印刷装置制御手段に対し描画データの印刷を開始させるか、又は、印刷ジョブの受信順に前記印刷装置制御手段に対し描画データの印刷を開始させるかの設定を受け付ける印刷順設定受け付け手段を有する、
ことを特徴とする請求項４又は５記載の情報処理装置。
【請求項７】
前記印刷順設定受け付け手段が、描画データが作成された印刷ジョブから順に描画データの印刷を開始させるという設定を受け付け、さらに同じ前記描画データ作成手段の印刷ジョブを連続して印刷するという設定を受け付けた場合、
第１の印刷ジョブの印刷が完了するまでに、第１の印刷ジョブの次に同じ前記描画データ作成手段が描画データを作成する第２の印刷ジョブの描画データの作成が完了する場合、別の描画データ作成手段が描画データの作成を終了させた場合でも、
前記描画データ作成要求手段は、前記印刷装置制御手段に対し、第１の印刷ジョブの印刷に続いて第２の印刷ジョブの描画データを印刷させる、
ことを特徴とする請求項６記載の情報処理装置。
【請求項８】
前記印刷順設定受け付け手段が、描画データが作成された印刷ジョブから順に描画データの印刷を開始させるという設定を受け付け、さらに強制的に同じ前記描画データ作成手段の印刷ジョブを連続して印刷するという設定を受け付けた場合、
第１の印刷ジョブの印刷が完了するまでに、第１の印刷ジョブの次に同じ前記描画データ作成手段が描画データを作成する第２の印刷ジョブの描画データの作成が完了しない場合でも、
前記描画データ作成要求手段は、前記印刷装置制御手段に対し、第１の印刷ジョブの印刷に続いて第２の印刷ジョブの描画データを印刷させる、
ことを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記描画データ作成制御手段は、前記描画データ作成要求手段から出力された印刷ジョブを解析して該印刷ジョブから描画データを作成する前記描画データ作成手段を判断し、  判断した前記描画データ作成手段に対応づけられた前記記憶手段に印刷ジョブを記憶させ、
前記記憶手段に古くから記憶されている印刷ジョブから順に前記描画データ作成手段に描画データを作成させる、
ことを特徴とする請求項１〜８いずれか１項記載の情報処理装置。
【請求項１０】
前記描画データ作成手段は、前記印刷データの所定単位の記述を取得した場合に、該記述が指定する印刷設定情報を返すものであり、
前記描画データ作成制御手段は、前記描画データ作成手段に対し前記記憶手段に記憶された印刷ジョブの前記所定単位の前記記述を出力して前記印刷設定情報を取得し、前記印刷設定情報と前記記述が異なる場合に、前記記憶手段から印刷ジョブを削除する、
ことを特徴とする請求項１記載の情報処理装置。
【請求項１１】
複数の同じ前記描画データ作成手段と、
前記描画データ作成手段ごとに設けられた前記記憶手段と、を有し、
前記描画データ作成制御手段は、前記描画データ作成要求手段から描画データが作成要求された印刷ジョブを解析して描画データを作成する前記描画データ作成手段を判断し、
判断した前記描画データ作成手段が複数、存在する場合、該描画データ作成手段に対応づけられたそれぞれの前記記憶手段のうち、記憶している印刷ジョブが少ない前記記憶手段に印刷ジョブを割り当てて記憶させる、ことを特徴とする請求項９記載の情報処理装置。
【請求項１２】
印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理方法であって、
変換手段が、前記設定情報を各描画データ作成手段用の装置用設定情報に変換するステップと、
描画データ作成要求手段が、前記印刷データと前記装置用設定情報を用いて描画データ作成制御手段に描画データの作成要求を出力するステップと、
前記描画データ作成制御手段が、前記描画データ作成要求手段から描画データを作成要求された印刷ジョブを、複数の描画データ作成手段のそれぞれに対応づけられた記憶手段に記憶させるステップと、
複数の描画データ作成手段が、前記描画データ作成制御手段から前記記憶手段に記憶された印刷ジョブを取得して描画データを作成するステップと、
を有することを特徴とする情報処理方法。
【請求項１３】
印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理装置に、
前記設定情報を各描画データ作成手段用の装置用設定情報に変換する変換ステップと、
前記印刷データと前記装置用設定情報を用いて描画データ作成制御手段に描画データの作成要求を出力する描画データ作成要求ステップと、
前記描画データ作成要求ステップにより描画データを作成要求された印刷ジョブを、前記描画データ作成制御手段が、複数の描画データ作成手段のそれぞれに対応づけられた記憶手段に記憶させるステップと、
前記描画データ作成制御手段から前記記憶手段に記憶された印刷ジョブを取得して複数の描画データ作成手段にそれぞれ描画データを作成させるステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理装置等に関する。
【背景技術】
【０００２】
業務用の大量の文書を印刷したり製本したりするいわゆるプロダクションプリンティングが知られている（例えば、特許文献１参照。）。特許文献１には、印刷システム全体を考慮して、後処理が利用可能か否かをユーザに通知できる印刷システムが開示されている。
【０００３】
プロダクションプリンティングでは印刷工程がワークフローとして扱われることが多いが、印刷ワークフローでは、印刷ワークフローのオープン化が進められている。オープン化により、各社のソフトウェア（次述するワークフローアプリケーション）や印刷機器が、印刷の主要な工程における印刷ジョブの設定などを共通の記述方式で記述することが可能となる。印刷ワークフローの工程全体を記述するフォーマットとしてＪＤＦ（Job Definition Format）と呼ばれる標準フォーマットが知られている。
【０００４】
印刷ワークフローの工程には、文書やコンテンツの作成、印刷方法の指定、印刷、後処理などの各種の工程がある。これらの各工程は様々なワークフローアプリケーションや印刷機器により行われるものであるが、ＪＤＦによりワークフローアプリケーションや印刷機器のメーカの違いに関わりなく、印刷機器間の連携や印刷工程管理等が可能になる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、各ワークフローアプリケーションや印刷機器がＪＤＦを拡張する場合があり、この場合、各社のワークフローアプリケーションが作成するＪＤＦがワークフローアプリケーション独自の記述を含む場合がある。この場合、下位工程のワークフローアプリケーションや印刷機器が、ＪＤＦを解析して処理できないという状況が生じることが知られている。
【０００６】
図２３はＪＤＦが拡張されていた場合の不都合を説明する図の一例である。図２３は比較例であり従来例ではない点に注意されたい。ＪＤＦを解析して処理できないという状況に対し、図２３（ａ）に示すように、下位工程のワークフローアプリケーションや印刷機器は、ＪＤＦを解析してＪＤＦを作成したワークフローアプリケーションのメーカを判断することが検討される。例えばＣ社の印刷処理装置は、Ａ社（Ｂ社）のワークフローアプリケーションが作成したＡ社（Ｂ社）形式のＪＤＦを解析して、Ａ社（Ｂ社）の印刷ジョブであると判断する。Ａ社（Ｂ社）形式のＪＤＦであると判断できれば拡張形式がわかるので、印刷処理装置はＡ社（Ｂ社）のＪＤＦをＣ社に対応した設定情報に変換して、Ａ社（Ｂ社）の印刷ジョブをレンダリングすることができる。
【０００７】
しかしながら、各社のワークフローアプリケーションや印刷機器のレンダリングエンジンの差異により出力結果が変わってしまう場合があった。
【０００８】
そこで、図２３（ｂ）に示すように、Ｃ社の印刷処理装置が各社のワークフローアプリケーションに対応したレンダリングエンジン（以下、ＲＩＰエンジンという）を有することが検討される。これにより、各社がＰＤＬを拡張していても、Ｃ社の印刷処理装置はユーザが意図する仕上がりで印刷ジョブをレンダリングすることができる。
【０００９】
しかしながら、図２３（ｂ）のように複数のＲＩＰエンジンが搭載された場合に、印刷処理装置が、各ＲＩＰエンジンを含め印刷処理装置のリソースを効率的に活用できていないという問題があった。
【００１０】
本発明は、上記課題に鑑み、リソースを効率的に活用可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、印刷データと設定情報とを含む印刷ジョブを用いて描画データを作成する情報処理装置であって、前記設定情報を各描画データ作成手段用の装置用設定情報に変換する変換手段（例えば、ＪＤＦ解析部）と、前記印刷データと前記装置用設定情報を用いて描画データ作成制御手段に描画データの作成要求を出力する描画データ作成要求手段（例えば、ジョブ制御部）と、前記描画データ作成要求手段から作成要求された印刷ジョブを、複数の描画データ作成手段のそれぞれに対応づけられた記憶手段に記憶させる前記描画データ作成制御手段（例えば、ＲＩＰ制御部）と、前記描画データ作成制御手段から前記記憶手段に記憶された印刷ジョブを取得して描画データを作成する複数の描画データ作成手段（例えば、ＲＩＰエンジン）と、を有することを特徴とする。
【発明の効果】
【００１２】
リソースを効率的に活用可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】比較のために示したＤＦＥが印刷ジョブを取得する際の動作を模式的に説明する図の一例である。
【図２】本実施形態のＤＦＥの概略的な構成を説明する図の一例である。
【図３】印刷システムの全体構成図の一例である。
【図４】ＤＦＥのハードウェア構成図の一例である。
【図５】ＤＦＥの機能ブロック図の一例を示す図である。
【図６】ジョブ制御部とＲＩＰ部の詳細な機能ブロック図の一例である。
【図７】ジョブ管理リストを模式的に説明する図の一例である
【図８】ディスプレイに表示された実行順番設定画面の一例を示す図である。
【図９】ＪＤＦの記載の一部を説明する図の一例である。
【図１０】変換テーブルの一例を示す図である。
【図１１】「ＤＦＥ内ジョブ属性」の作成を説明する図の一例である。
【図１２】「ＤＦＥ内ジョブ属性」の一例を示す図である。
【図１３】「RIP Parameter List」の一例を示す図である。
【図１４】ＲＩＰ待機キューとジョブ管理リストの対応について説明する図の一例である。
【図１５】プリンター制御部に対して印刷実行要求が行われる順番を説明する図の一例である。
【図１６】ユーザが印刷順を設定する手順を示すシーケンス図の一例である。
【図１７】印刷システムの動作手順を示すシーケンス図の一例である。
【図１８】各ＲＩＰエンジンのレンダリング処理と印刷のタイミングを示す図の一例である。
【図１９】ディスプレイに表示された実行順番設定画面の一例を示す図である。
【図２０】ジョブ制御部が印刷順を制御する手順を示すフローチャート図の一例である。
【図２１】ＲＩＰ待機キューの印刷ジョブに対して行われるプレＲＩＰを模式的に示す図の一例である。
【図２２】同種の複数のＲＩＰエンジンが搭載されたＲＩＰ部５７の一例を示す図である。
【図２３】ＪＤＦが拡張されていた場合の不都合を説明する図の一例である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を参照しながら実施例を挙げて説明する。
【実施例１】
【００１５】
図１は、比較のために示したＤＦＥ（Digital Front End)が印刷ジョブを取得する際の動作を模式的に説明する図の一例である。図１のＤＦＥ３２の構成および動作は本実施例の特徴部を説明するための比較例に過ぎず、公知例や従来例ではないことに注意されたい。ＤＦＥ３２の詳細については後述する。
（１）Ａ社のワークフローアプリケーションがJobA1、JobA2、及び、JobA3をＤＦＥに送信する。
（２）Ｂ社のワークフローアプリケーションがJobB1をＤＦＥに送信する。
（３）ジョブ制御部５５は受信した順番に印刷ジョブを対応するＲＩＰエンジンに出力する。このため、JobA1から順番にＡ社ＲＩＰエンジンに出力していき、JobA2、JobA3のレンダリングが終わるとJobB1をＢ社ＲＩＰエンジンに出力する。
（４）したがって、Ａ社ＲＩＰエンジンがJobA1から順番に処理している間、Ｂ社ＲＩＰエンジンが空いていても、JobB1はＢ社ＲＩＰエンジンに出力されないのでラスターデータの作成効率が低下してしまう。
【００１６】
〔本実施形態のＤＦＥの動作の概略〕
そこで、本実施形態では、以下のようにして各ＲＩＰエンジンが並列にレンダリングすることを可能にし、ラスターデータの作成効率を向上させる。
【００１７】
図２は、本実施形態のＤＦＥの概略的な構成を説明する図の一例である。
Ｉ．ＤＦＥ３２は、ＲＩＰエンジン毎にＲＩＰ待機キュー６６を有している。Ａ社ＲＩＰ待機キュー６６ａにはＡ社ＲＩＰエンジンの印刷ジョブが格納され、Ｂ社ＲＩＰ待機キュー６６ｂにはＢ社ＲＩＰエンジンの印刷ジョブが格納され、Ｃ社ＲＩＰ待機キュー６６ｃにはＣ社ＲＩＰエンジンの印刷ジョブが格納される。したがって、JobA1、JobA2、JobA3、JobB1の順に印刷ジョブが受信されても、JobB1はＢ社ＲＩＰ待機キュー６６ｂの先頭に格納されるので、Ｂ社ＲＩＰエンジンが空いている場合はＢ社ＲＩＰエンジンがレンダリングすることが可能になる。
【００１８】
II．また、ＤＦＥ３２は印刷ジョブ毎にジョブ制御部５５のインスタンス（Ａ１ジョブ制御部ＩＮＳ５５ａ１、Ａ２ジョブ制御部ＩＮＳ５５ａ１、Ａ３ジョブ制御部ＩＮＳ５５ａ１、Ｂ１ジョブ制御部ＩＮＳ５５ｂ１）を作成する。ジョブ制御部５５はＲＩＰエンジンにレンダリングの実行要求を行うものであり、１つの印刷ジョブについて１ページから最終ページまでＲＩＰエンジンに対しレンダリングを行わせる。このジョブ制御部５５のインスタンスが印刷ジョブ毎に生成されることで、レンダリング処理の並列化が可能になる。すなわち、Ａ１ジョブ制御部ＩＮＳ５５ａ１がＡ社ＲＩＰエンジンに対し行わせるレンダリングと、Ｂ１ジョブ制御部ＩＮＳ５５ｂ１がＢ社ＲＩＰエンジンに対し行わせるレンダリングとを時間的に並列に行うことができる。
【００１９】
したがって、本実施形態のＤＦＥ３２は、複数のＲＩＰエンジンが並列にレンダリングすることが可能なので、ラスターデータの作成効率を向上させることができる。
【００２０】
〔構成例〕
図３は、本実施例に係る印刷システム２００の全体構成図の一例を示す。本実施例に係る印刷システム２００は、ＬＡＮやインターネットなどのネットワーク３を介して接続された、一台以上のエンドユーザ環境１と、ＰＯＤ（Print On Demand）印刷システム環境２とを有する。
【００２１】
エンドユーザ環境１には、クライアントＰＣ１１が配置されている。クライアントＰＣ１１はＰＯＤ印刷業務向けのワークフローアプリケーション（以下、単にアプリケーショという）１２が搭載されており、ユーザの操作を受け付けて印刷ジョブの生成を行うことができる。
【００２２】
アプリケーション１２は用紙面に複数の論理的なページイメージを複数貼り付けるための集約印刷機能（Ｎｕｍｂｅｒ Ｕｐ面付け機能）、ヘッダー、フッター、ページ番号などを付加するためのイメージ編集機能を実行することができる。また、アプリケーション１２は印刷製本のための穴あけ（パンチ）指示やステープル留め（ステープル）などの指示を指定することができる。これらの指示や設定はＪＤＦに記述される。ＪＤＦはジョブチケット又は作業指示書、印刷指示書などと呼ばれる場合がある。
【００２３】
ＰＯＤ印刷システム環境２は、ネットワーク３で接続された、工程管理部２０と、デジタル印刷部３０と、ポストプレス部４０とを有している。工程管理部２０はＰＯＤ印刷システム環境２においてデジタル印刷部３０及びポストプレス部４０の各工程に対して作業を指示し、ＰＯＤ印刷システム環境２のワークフローを一元管理する。
【００２４】
工程管理部２０は、エンドユーザ環境１から印刷ジョブ（ＪＤＦとＰＤＬ）を受信し、印刷ジョブを保存する。ＪＤＦは特許請求の範囲の設定情報の一例である。ＰＤＬは特許請求の範囲の印刷データの一例である。ＰＤＬは、ページイメージ（ラスタライズされた画像）の描画内容を指示するための言語であるが、ここではＰＤＬで記述されたデータを意味している。ＰＤＬには、ＰＤＦ（Portable Document Format）、PostScript、ＰＣＬ、ＲＰＤＬなどがある。
【００２５】
また、工程管理部２０はエンドユーザ環境１からの印刷ジョブに基づいて各工程における作業をワークフローとして組み立てたり、デジタル印刷部３０やポストプレス部４０、各作業者の作業を効率よくスケジューリングしたり、自動運転時におけるエラー発生時、必要に応じてオペレータに通知をしたりすることもできる。一般的に工程管理部２０は１台以上のＰＣサーバ２１を含むように構成される。
【００２６】
工程管理部２０は、印刷ジョブをデジタル印刷部３０に送信し印刷を行わせる。また、印刷物はポストプレス部４０に搬送され、工程管理部２０からの指示によりポストプレス部４０は製本などを行う。なお、デジタル印刷部３０から直接、印刷ジョブがポストプレス部４０に送信されてもよい。
【００２７】
デジタル印刷部３０は、種々のプリンター（プロダクション向けプリンター、高速カラーインクジェットプリンター、カラー／モノクロＭＦＰなどのプリンター装置）３１を含むように構成される。デジタル印刷部３０には、ＤＦＥ３２が配置される。ＤＦＥ３２は印刷処理装置とも呼ばれ、プリンター３１（印刷装置）による印刷を制御する。ＤＦＥ３２は、図示するようにプリンター３１と別体でもよいし、プリンター３１と一体でもよい。ＤＦＥ３２は、工程管理部２０から印刷ジョブを取得すると、ＪＤＦとＰＤＬを用いてプリンター３１がトナー像又はインクによる画像を形成するためのラスターデータ（特許請求の範囲の描画データの一例である）を生成して、プリンター３１に送信する。
【００２８】
デジタル印刷部３０は種々のプリンター３１を有している。なお、デジタル印刷部３０には印刷した記録紙に対して、紙折り、中綴じ製本、くるみ製本、パンチ等の後加工（後処理）を行うためのフィニッシャ（後処理装置）と直接接続したプリンター３１が含まれていてもよい。
【００２９】
ポストプレス部４０は、工程管理部２０から受信した印刷物（ポストプレスジョブ）の作業指示に従って、紙折り機、中綴じ製本機、くるみ製本機、断裁機、封入機、帳合い機等の後処理デバイスを含むように構成される。また、ポストプレス部４０はデジタル印刷部３０より出力された印刷物に対して、紙折り、中綴じ製本、くるみ製本、断裁、封入、帳合い等の仕上げ処理を実行する。ポストプレス部４０には、ステープラ４０１、パンチ穴あけ機４０２など、デジタル印刷後の後加工（後処理）を行うための後処理装置が含まれている。
【００３０】
エンドユーザ環境１のエンドユーザは、クライアントＰＣ１１から、ＰＯＤ印刷業務向けのアプリケーション１２を使用して、画像の編集、面付け、テキスト挿入、後処理の指示などを行い、ＰＯＤ印刷システム環境２の工程管理部２０に対して、印刷ジョブを送信する。
【００３１】
工程管理部２０のＰＣサーバ２１はＪＤＦに従い、デジタル印刷部３０に対して印刷の指示を行い、ポストプレス部４０に対して後処理の指示を行う。
【００３２】
〔ハードウェア構成〕
本実施例では、エンドユーザ環境１が作成した印刷ジョブを工程管理部２０が受け取り、工程管理部２０がＤＦＥ３２に印刷ジョブを送信する。
【００３３】
図４は、ＤＦＥ３２のハードウェア構成図の一例を示す。ＤＦＥ３２は、例えば図４に示すようなハードウェア構成により実現される。すなわち、ＤＦＥ３２は情報処理装置（コンピュータ）としての機能を有している。ＤＦＥ３２は、バス３２９で相互に接続されているＣＰＵ３２１、ＲＡＭ３２２、補助記憶装置３２３、通信装置３２４、入力装置３２５、表示制御部３２６、及び、記録媒体Ｉ／Ｆ３２７を有している。
【００３４】
ＣＰＵ３２１は、ＲＡＭ３２２をワークメモリにしてプログラムを実行することで、ＤＦＥ３２の全体を制御する。補助記憶装置３２３は、ＨＤＤ（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」における「xmlns:A="www.aaa.com/schema/aaa"」や「xmlns:B="www.bbb.com/schema/bbb"」という記述に基づきＲＩＰエンジン５９を判断する。また、例えばジョブ制御部５５が「RIP Parameter List」にＲＩＰエンジン識別情報を明示していれば、ＲＩＰエンジン識別情報が指示するＲＩＰエンジン５９を選択する。ＲＩＰ制御部５８は、「RIP Parameter List」を参照して、選択したＲＩＰエンジン５９にＲＩＰコマンドを送信する。
【００６０】
ＲＩＰ制御部５８は、ＲＩＰエンジン毎に、ＲＩＰ待機キュー６６を有している。区別する場合、それぞれＡ社ＲＩＰ待機キュー６６ａ、Ｂ社ＲＩＰ待機キュー６６ｂ、及び、Ｃ社ＲＩＰ待機キュー６６ｃという。ＲＩＰ待機キュー６６には、対応するＲＩＰエンジン５９に対しジョブ制御部５５からＲＩＰ実行要求があった順番に印刷ジョブが格納される。ＲＩＰ制御部５８は、ＲＩＰ待機キュー６６に格納されている順番にＲＩＰエンジン５９に対しＲＩＰ実行要求を出力する。
【００６１】
また、ＲＩＰ制御部５８は、「RIP Parameter List」を参照して、「ＲＩＰ制御モード」が「Sheet Mode」の場合、「Sheet Mode」に従ってＲＩＰコマンドをＲＩＰエンジン５９に出力する。これにより、印刷ジョブ（主にＰＤＬ）の違いを吸収できる。
【００６２】
ＲＩＰエンジン５９はレンダリングエンジンであり、ＲＩＰコマンドに従ってラスタライズを行うことでラスターデータを作成する。ＲＩＰエンジン５９は特許請求の範囲の「描画データ作成手段」の一例である。ＲＩＰエンジン５９は、ソフトウェア又はＬＳＩなどのハードウェアのどちらで実装されていてもよい。ソフトウェアで実装されている場合、各ＲＩＰエンジン５９はマルチタスクにより並列にレンダリングを行い、ハードウェアにより実装されている場合、各ＲＩＰエンジン５９は独立にレンダリングできるので並列にレンダリングできる。なお、ＲＩＰエンジン５９においてソフトウェアとハードウェアの実装が混在していてもよい。
【００６３】
画像格納部６０は、作成されたラスターデータが格納される記憶手段である。画像格納部６０は、例えば、補助記憶装置３２３に搭載される。または、ネットワーク上の記憶装置に搭載されてもよい。
【００６４】
プリンター制御部６１は、プリンター３１と接続されており、画像格納部６０に格納されているラスターデータを読み出しプリンター３１に送信することで印刷を行う。また、ジョブ制御部５５から取得した「Finishing情報」に基づき仕上げ処理を行う。
【００６５】
プリンター制御部６１は、各種の通信規格を利用してプリンター３１と通信し、プリンター３１の情報を取得することができる。例えば印刷ワークフローの規格を定めるＣＩＰ４では、ＪＤＦの規格としてデバイス仕様情報をプリンター３１と送受信するDevCapsという規格を定めている。また、ＳＮＭＰ（Simple Network Management Protocol）という通信プロトコルとＭＩＢ（Management Information Base）というデータベースとを利用したプリンター３１の情報の収集方法も知られている。プリンター制御部６１はこれらを利用してプリンター３１に格納されている各種の情報を取得する。例えば、プリンター３１の装備の構成（ＡＤＦの有無、両面印刷ユニットの有無、トレイ構成、手差しトレイの有無、各種のフィニッシャーの有無など）を取得できる。また、プリンター３１の状態（印刷中、スキャン中、ＦＡＸ受信中、スリープ中など）を取得することができる。また、各トレイの用紙の残量などを取得できる。
【００６６】
図６は、ジョブ制御部５５とＲＩＰ部５７の詳細な機能ブロック図の一例である。インスタンス作成部６４はJobA1を取得することでＡ１ジョブ制御部ＩＮＳ５５ａ１を作成し、JobA2を取得することでＡ２ジョブ制御部ＩＮＳ５５ａ２を作成し、JobA3を取得することでＡ３ジョブ制御部ＩＮＳ５５ａ３を作成し、JobB1を取得することでＢ１ジョブ制御部ＩＮＳ５５ｂ１を作成する（以下、ジョブ制御部ＩＮＳの符号は省略して説明する）。
【００６７】
また、ジョブ管理リスト６５には、印刷ジョブ毎に以下の情報が登録される。
【００６８】
- ジョブ受信順
- ジョブＩＤ
- ページ数
ジョブ制御部５５はジョブ管理リスト６５に印刷ジョブの「受信順」、「ジョブＩＤ」、及び、「ページ数」を登録する。
【００６９】
図７は、ジョブ管理リスト６５を模式的に説明する図の一例である。受信順を管理することで、プリンター制御部６１が印刷ジョブを実行する順番（印刷する順番）を受信順に制御できる。ジョブＩＤはジョブ管理リスト６５の印刷ジョブを一意に管理する番号、文字、記号、アルファベット又はこれらの組み合わせである。ページ数は印刷ジョブのページ数である。
【００７０】
Ａ１ジョブ制御部ＩＮＳは、ＲＩＰ制御部５８にJobA1のＲＩＰ実行要求を出力する。Ａ２ジョブ制御部ＩＮＳは、ＲＩＰ制御部５８にJobA2のＲＩＰ実行要求を出力する。Ａ３ジョブ制御部ＩＮＳは、ＲＩＰ制御部５８にJobA3のＲＩＰ実行要求を出力する。Ｂ１ジョブ制御部ＩＮＳは、ＲＩＰ制御部５８にJobB1のＲＩＰ実行要求を出力する。各ジョブ制御部ＩＮＳは、並列にＲＩＰ実行要求を出力する。
【００７１】
ＲＩＰ制御部５８は、印刷ジョブがどのＲＩＰエンジン５９に対応するものかを判断して、ＲＩＰエンジン５９に対応するＲＩＰ待機キュー６６に格納する。すなわち、印刷ジョブがレンダリングされることが想定されているＲＩＰエンジン５９を判断するか、又は、印刷ジョブを作成したアプリケーション１２のメーカを判断する。
【００７２】
ＲＩＰ待機キュー６６にはＲＩＰ実行要求の受信順に印刷ジョブ単位に印刷ジョブが格納される。ＲＩＰ制御部５８は格納順に各ＲＩＰエンジン５９を用いてレンダリングを行う。
【００７３】
また、各ＲＩＰエンジン５９はページ単位にＲＩＰ終了通知（特許請求の範囲の作成終了通知の一例である）をＲＩＰ制御部５８に返すので、ＲＩＰ制御部５８はページ単位にＲＩＰ終了通知をジョブ制御部ＩＮＳに出力する。ＲＩＰ終了通知にはジョブＩＤが含まれており、ジョブ制御部ＩＮＳは印刷ジョブの何ページまでレンダリングが終了したかを判断できる。
【００７４】
１つの印刷ジョブの最後のページまでレンダリングが終了したとジョブ制御部５５が判断すると、例えばインスタンス作成部６４はレンダリングが終了した印刷ジョブのジョブ制御部ＩＮＳを削除する。これにより、不要になったジョブ制御部ＩＮＳによりリソースが使用されることを抑制できる。
【００７５】
また、同様に、ＲＩＰ制御部５８は各印刷ジョブの全ページのレンダリングが終了すると、ＲＩＰ待機キュー６６から印刷ジョブを削除する。
【００７６】
〔印刷ジョブの実行順の設定〕
図８は、ディスプレイ３３０に表示された実行順番設定画面の一例を示す図である。実行順番設定画面にはラジオボタン５０１，５０２と共に「印刷ジョブの受信順」「レンダリングの終了順」というメッセージが表示されている。ユーザはいずれかのラジオボタン５０１，５０２を選択する。ＵＩ制御部５４は選択された実行順番の設定を受け付けジョブ制御部５５に出力する。これにより、ジョブ制御部５５は設定された順番で印刷実行要求をプリンター制御部６１に出力できる。
【００７７】
〔ＪＤＦ及びＪＤＦを作成したアプリケーションのメーカの決定について〕
ＪＤＦはＸＭＬ（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プロファイルに関する情報を指定する。
・スケーリング・オフセット情報は、拡大縮小アルゴリズムのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットなどが指定される。
・オブジェクト・領域情報は、オブジェクト領域の幅、高さを指定する。
・ハーフトーン情報は、ハーフトーンのオフセットを指定する。例えば、水平方向オフセット、垂直方向オフセットが指定される。
・スケーリング・アルゴリズム情報は、スケーリングの方式を指定する。
【００９１】
ＰＤＬに関連する情報は、データ領域、サイズ情報、及び、データの配置方法を指定する。
・データ領域は、ＰＤＬの格納されている領域情報を指定する。フォント情報、ページ数の情報などは、このデータ領域内に存在するＰＤＬに含まれている。
・サイズ情報は、ＰＤＬのサイズを指定する。
・データの配置方法は、データの配置方式を指定する。例えば、リトルエンディアン、ビッグエンディアンなどが指定される。
【００９２】
〔ＲＩＰ待機キューについて〕
図１４は、ＲＩＰ待機キュー６６とジョブ管理リスト６５の対応について説明する図の一例である。図１４（ａ）はジョブ管理リスト６５を、図１４（ｂ）は従来のＲＩＰ待機キュー６６と各社毎とＲＩＰ待機キュー６６の一例を示している。
【００９３】
Ａ社、Ｂ社、Ｃ社のＲＩＰエンジン５９を搭載したＤＦＥ３２が、合計４つの印刷ジョブ（JobA1,JobA2,JobA3、JobB1）を順に受信する。なお、JobA1〜A3はＡ社形式のＪＤＦを有し、JobB1はＢ社形式のＪＤＦを有している。
JobA1(3ページ)
JobA2(2ページ)
JobA3(4ページ)
JobB1(3ページ)
ＤＦＥ３２が受信した各印刷ジョブは、ジョブ受信部５１とシステム制御部５２とを経由してジョブ制御部５５へ出力される。なお、システム制御部５２は、取得した印刷ジョブをジョブデータ格納部５３に一度スプールし、ＵＩ制御部５４を介してユーザによりＪＤＦの編集等が施された後、ジョブ制御部５５へ出力してもよい。
【００９４】
ジョブ制御部５５は受信した印刷ジョブのＪＤＦを、ＪＤＦ変換要求とともにＪＤＦ解析部５６に出力する。ＪＤＦ解析部５６は受信したＪＤＦを「ＤＦＥ内ジョブ属性」に変換し、ＲＩＰ制御モードの情報を付与した上で、ジョブ制御部５５へ出力する。
【００９５】
図１４（ａ）に示すように、ジョブ制御部５５は、ジョブの受信順、ジョブＩＤ、及び、受信した「ＤＦＥ内ジョブ属性」のジョブページ数情報を、ジョブ管理リスト６５の１レコードとして追加する。ジョブ制御部５５は、「ＤＦＥ内ジョブ属性」とＰＤＬから「RIP Parameter List」を生成する。
【００９６】
ＲＩＰ制御部５８は、ＲＩＰ実行要求を受けた際、「RIP Parameter List」の情報を基に印刷ジョブを各社のＲＩＰ待機キュー６６に振り分ける。各社のＲＩＰ待機キュー６６の先頭の印刷ジョブは並列に処理され、従来のＲＩＰ待機キューを用いた方式よりも効率的にＲＩＰ処理することができる。
【００９７】
図１４（ｂ）を用いて説明する。従来の印刷ジョブは、印刷ジョブが違っても同じ１つのＲＩＰ待機キュー６６に格納されていた。このため、１つずしか（図ではJobA1しか）レンダリングすることができなかった。
【００９８】
これに対し、本実施形態では各ＲＩＰエンジン毎にＲＩＰ待機キュー６６を有しているので、複数の印刷ジョブを並列に実行することができる。図の例ではＡ社ＲＩＰ待機キュー６６ａのJobA1とＢ社ＲＩＰ待機キュー６６ｂのJobB1とを並列にレンダリングできる。仮に、１つのＲＩＰ待機キュー６６に全ての印刷ジョブが格納された場合、ＲＩＰ制御部５８がＲＩＰ待機キュー６６の中からＲＩＰエンジンが空いている印刷ジョブを検索する処理が増え、処理負荷が増大してしまう。本実施例では検索することなく並列にレンダリングできる。
【００９９】
ＲＩＰ制御部５８は、「RIP Parameter List」のＲＩＰ制御モードに基づき、ページ単位のＲＩＰ実行要求をＲＩＰエンジン５９に対して実施する。ＲＩＰ制御部５８は、ＲＩＰエンジン５９からページ単位でのＲＩＰ終了通知を取得して、ジョブＩＤとともにジョブ制御部５５へページ単位でＲＩＰ終了通知を出力する。
【０１００】
図１４（ｃ）に示すように、ＲＩＰ待機キューの先頭の印刷ジョブは、印刷ジョブの全ページのレンダリングが終了した後、ＲＩＰ待機キューから取り出される。
【０１０１】
ジョブ制御部５５は、ジョブ管理リスト内のジョブページ数情報と、各ジョブのページ単位でのＲＩＰ終了通知を基に、印刷ジョブの全ページのレンダリングが終了したか否かを判断する。
【０１０２】
ジョブ制御部５５は、レンダリングが完了した印刷ジョブの印刷実行要求を、プリンター制御部６１に対して出力する。印刷実行要求が行われる順番は、上記のように、ジョブの受信順とレンダリングの完了順のいずれかに設定されている。
【０１０３】
図１５は、プリンター制御部６１に対して印刷実行要求が行われる順番を説明する図の一例である。例えば、印刷ジョブの受信順がJobA1、JobA2、JobA3、JobB1、レンダリングが終了した順番が、JobA1、JobB1、JobA2、JobA3であるとする。
【０１０４】
ジョブ制御部５５は、JobA1（１ページ目）→JobB1（１ページ目）→JobA1（２ページ目）→JobB1（２ページ目）→JobA1（３ページ目）→JobB1（３ページ目）の順番でＲＩＰ終了通知を取得する。この後、ジョブ制御部５５はJobA2（１ページ目、２ページ目）、JobA3（１ページ目〜４ページ目）のＲＩＰ終了通知を取得する。
【０１０５】
ジョブ制御部５５は、ジョブ管理リスト６５の各印刷ジョブのページ数と比較して、JobA1のＲＩＰ終了通知を３回取得すると、JobA1のレンダリングが終了したと判断する。JobB1についても同様である。したがって、ジョブ制御部５５は各印刷ジョブのレンダリングが終了したタイミングを検出できる。また、ジョブ管理リスト６５により、印刷ジョブの受信順も明らかになっている。
【０１０６】
実行順番設定部６２がジョブ受信順という設定を受け付けている場合、ジョブ制御部５５はJobA1、JobA2、JobA3、JobB1の順に印刷実行要求をプリンター制御部６１に対し出力する。レンダリングの終了順という設定を受け付けている場合、JobA1、JobB1、JobA2、JobA3の順に印刷実行要求をプリンター制御部６１に対し出力する。
【０１０７】
〔動作手順〕
図１６は、ユーザが印刷順を設定する手順を示すシーケンス図の一例である。ユーザはＤＦＥ３２を操作してディスプレイ３３０に印刷順の設定画面を表示させる。
S1：ＵＩ制御部５４はユーザの操作を受け付けて、現在の印刷順の設定をジョブ制御部５５に対し要求する。
S2：ジョブ制御部５５は現在の印刷順の設定をＵＩ制御部５４に出力する。
S3：ＵＩ制御部５４は現在の印刷順の設定に応じてラジオボタンをマークして印刷順の設定画面を表示する。
S4：ＵＩ制御部５４はユーザによる印刷順の設定を受け付ける。
S5：ＵＩ制御部５４は印刷順の設定の格納要求をジョブ制御部５５に出力する。
【０１０８】
図１７は、印刷システム２００の動作手順を示すシーケンス図の一例である。
S1：アプリケーション１２がＤＦＥ３２に印刷ジョブ（JobA1＝ＪＤＦ＋ＰＤＬ）を送信する。
S2：ジョブ受信部５１は印刷ジョブ（JobA1＝ＪＤＦ＋ＰＤＬ）をシステム制御部５２に出力する。
S3：システム制御部５２はジョブ制御部５５に印刷ジョブを出力する。なお、印刷ジョブをジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブを格納する。
S4：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦとＪＤＦ変換要求を出力する。
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：ＲＩＰ制御部５８はＲＩＰ終了通知をＡ１ジョブ制御部ＩＮＳに出力する。
【０１１１】
次に、アプリケーション１２が印刷ジョブとしてJobA2をＤＦＥ３２に送信したものとする。
S20：アプリケーション１２がＤＦＥ３２に印刷ジョブ（JobA2＝ＪＤＦ＋ＰＤＬ）を送信する。
S21：ジョブ受信部５１は印刷ジョブ（JobA2＝ＪＤＦ＋ＰＤＬ）をシステム制御部５２に出力する。
S22：システム制御部５２はジョブ制御部５５に印刷ジョブを出力する。なお、印刷ジョブをジョブデータ格納部５３に格納するようにＤＦＥ３２が設定されている場合、システム制御部５２はジョブデータ格納部５３に印刷ジョブを格納する。
S23：ジョブ制御部５５は、ＪＤＦ解析部５６にＪＤＦとＪＤＦ変換要求を出力する。
S24：ＪＤＦ解析部５６は、ＪＤＦを解析してＪＤＦを作成したアプリケーション１２のメーカ（ＲＩＰエンジン５９）を判断し、該ＲＩＰエンジン５９に対応する変換テーブル６３で「ＤＦＥ内ジョブ属性」を作成する。
S25：ＪＤＦ解析部５６は、「ＤＦＥ内ジョブ属性」をＪＤＦ解析部５６に出力する。
S26：ジョブ制御部５５は、ページ毎の「ＤＦＥ内ジョブ属性」とＰＤＬを用いて「RIP Parameter List」を作成する。
S27：ジョブ制御部５５は、ジョブ管理リスト６５に受信順、ジョブＩＤ、及び、ページ数を登録する。
S28：ジョブ制御部５５のインスタンス作成部６４は、ジョブ制御部ＩＮＳを作成する。ここではＡ２ジョブ制御部ＩＮＳが作成されたものとする。この後、Ａ２ジョブ制御部ＩＮＳは、Ａ１ジョブ制御部ＩＮＳが行ったS10〜S19-2の各処理を並列に行う。
【０１１２】
アプリケーション１２が印刷ジョブとしてJobA3及びJobB1をＤＦＥに送信した場合も同様である。
S29、S30：インスタンス作成部６４はＡ３ジョブ制御部ＩＮＳとＢ１ジョブ制御部ＩＮＳを作成する。Ａ３ジョブ制御部ＩＮＳとＢ１ジョブ制御部ＩＮＳも、S10〜S19-2の各処理を行う。
【０１１３】
S31：Ａ１ジョブ制御部ＩＮＳは、ジョブ制御部５５にジョブＩＤと共にページ単位のＲＩＰ終了通知を出力する。
S32：また、ＲＩＰ制御部５８は、全てのページのレンダリングが終了するとＡ社ＲＩＰ待機キューからJobA1を取り出す。
S33：ジョブ制御部５５は、全ページのレンダリングが終了したか否かを判断する。
S34：ジョブ制御部５５のインスタンス作成部６４は、全ページのレンダリングが終了すると終了した印刷ジョブのジョブ制御部ＩＮＳ（図ではＡ１ジョブ制御部ＩＮＳ）を削除する。
【０１１４】
この後、ジョブ制御部５５は、印刷順の設定を読み出し、ジョブ受信順かレンダリングが終了した順かを判断する。
S35：ジョブ制御部５５は印刷実行要求と共に「Finishing情報」をプリンター制御部６１に出力する。このタイミングは、ラスターデータの作成前でも作成後でもよい。
S36：プリンター制御部６１は、印刷実行要求を取得したことで、画像格納部６０のラスターデータを確認し、印刷を行う。
【０１１５】
以上説明したように、本実施形態のＤＦＥ３２は、複数のＲＩＰエンジン５９を有する場合、ジョブ制御部５５がインスタンス化され、ＲＩＰ待機キュー６６がＲＩＰエンジン毎に設けられているため、複数のＲＩＰエンジン５９が並列にレンダリングすることが可能になる。したがって、複数の印刷ジョブが連続して入力された場合など、効率的なレンダリングが可能になる。
【実施例２】
【０１１６】
実施例１によれば、ＲＩＰエンジン５９が複数あり各ＲＩＰエンジン５９が並列にレンダリングすることが可能になり、また、レンダリングが終了した順に印刷することが可能になったため、効率的に印刷することが可能である。
【０１１７】
しかしながら、図１８（ａ）に示すように、例えばあるＲＩＰエンジン（図ではＡ社ＲＩＰエンジン）が作成したラスターデータを連続して先に印刷したい場合がある。図１８は、各ＲＩＰエンジン５９のレンダリング処理と印刷のタイミングを示す図の一例である。
【０１１８】
図１８（ａ）では、Ａ社ＲＩＰエンジン、Ｂ社ＲＩＰエンジン、及び、Ｃ社ＲＩＰエンジンがほぼ並列にJobA1、JobB1、JobC1のレンダリング処理を行い、その後、Ａ社ＲＩＰエンジンがJobA2をレンダリングしている。印刷順の設定がレンダリングの終了順の場合、プリンター制御部６１はJobA1、JobB1、JobC1、JobA2の順に印刷する。しかし、JobA1とJobA2に関連がある場合など、ユーザとしてはJobA1に続いてJobA2を印刷したい場合がある。
【０１１９】
一方、常に、同じＲＩＰエンジン５９のラスターデータが連続して印刷されるように設定すると、図１８（ｂ）に示すように、レンダリングが終了したラスターデータがあるにも関わらず、印刷が開始されず効率的な印刷が困難になる。図１８（ｂ）ではJobA2のレンダリングに時間がかかるため、JobB1,JobC1のレンダリングが終わっているが、プリンター制御部６１がJobB1を印刷できず待ち時間が生じている。
【０１２０】
そこで、本実施例では、効率的に、同じＲＩＰエンジン５９の印刷ジョブを連続して印刷するＤＦＥについて説明する。
【０１２１】
例えば、JobA2のレンダリングが終了する時刻がJobA1の印刷が終了する時刻よりも早いか否かを判定すればよい。JobA2のレンダリングが終了する時刻がJobA1の印刷が終了する時刻よりも早い場合にだけ、同じＲＩＰエンジン５９の印刷ジョブを連続して印刷すれば、JobA1、JobA2を効率的に印刷できる。
【０１２２】
また、図１８（ｂ）のように、JobA2のレンダリングが終了する時刻がJobA1の印刷が終了する時刻よりも早くなくても、強制的にJobA1とJobA2を連続して印刷してもよい。
【０１２３】
本実施例のＤＦＥの機能ブロック図は図６と同様でよいが、ジョブ制御部５５は次の機能を有する。すなわち、同じＲＩＰ待機キュー６６に複数の印刷ジョブが格納されている場合、「直前の印刷ジョブの印刷が完了する時刻」よりも「次の印刷ジョブのレンダリングが終了する時刻」が前の場合、同じＲＩＰエンジン５９の印刷ジョブを連続して印刷する。
【０１２４】
なお、「直前の印刷ジョブの印刷が完了する時刻」は、印刷枚数（ページ数×部数）に１枚あたりの印刷時間を乗じることで求められる。「次の印刷ジョブのレンダリングが終了する時刻」は、印刷ジョブのページ数に1ページあたりのレンダリング時間（例えば、予め平均的な値を求めておく）を乗じることで求められる。
【０１２５】
図１９は、ディスプレイに表示された実行順番設定画面の一例を示す図である。図１９では図８と比較して、ラジオボタン５０３，５０４が追加されている。ラジオボタン５０３には「可能な限り同じＲＩＰエンジンの印刷ジョブを連続して印刷する」というメッセージが表示されている。ラジオボタン５０４には「強制的に同じＲＩＰエンジンの印刷ジョブを連続して印刷する」というメッセージが表示されている。
【０１２６】
ユーザが「レンダリングの終了順」のラジオボタン５０２を選択した場合、ラジオボタン５０３，５０４の選択が可能になる。したがって、ユーザがラジオボタン５０３を選択することで、効率的に印刷しながら、同じＲＩＰエンジン５９の印刷ジョブを連続的にして印刷できる。ユーザがラジオボタン５０４を選択することで、待ち時間が生じても、同じＲＩＰエンジン５９の印刷ジョブを連続的にして印刷できる。
【０１２７】
図２０は、ジョブ制御部５５が印刷順を制御する手順を示すフローチャート図の一例である。図２０は、実行順番設定画面で「可能な限り同じＲＩＰエンジンの印刷ジョブを連続して印刷する」が選択されており、ＲＩＰ待機キュー６６に複数の印刷ジョブが格納されている状態で実行される。
【０１２８】
ジョブ制御部５５は１つのＲＩＰ待機キュー６６に複数の印刷ジョブが登録されているか否かを判定する（Ｓ１０）。１つのＲＩＰ待機キュー６６に複数の印刷ジョブが登録されていない場合、処理は終了する。
【０１２９】
１つのＲＩＰ待機キュー６６に複数の印刷ジョブが登録されている場合（Ｓ１０のＹｅｓ）、ジョブ制御部５５は次の印刷ジョブのレンダリングが終了する時刻が、直前の印刷ジョブの印刷が終了する時刻より前か否かを判定する（Ｓ２０）。
【０１３０】
ステップＳ２０の判定がＹｅｓの場合、ジョブ制御部５５は次の印刷ジョブを、他のＲＩＰエンジン５９がレンダリングを終了しても、直前の印刷ジョブに続いて印刷する（Ｓ３０）。これにより、プリンター制御部６１を待機させることなく、同じＲＩＰエンジン５９の印刷ジョブを連続的に印刷できる。
【０１３１】
ステップＳ２０の判定がＮｏの場合、ジョブ制御部５５は「強制的に同じＲＩＰエンジンの印刷ジョブを連続して印刷する」が選択されているか否かを判定する（Ｓ４０）。
【０１３２】
ステップＳ４０の判定がＹｅｓの場合、ジョブ制御部５５は、ステップＳ３０の処理を行う。したがって、プリンター制御部６１を待機させて、同じＲＩＰエンジン５９の印刷ジョブを連続的に印刷できる。
【０１３３】
ステップＳ４０の判定がＮｏの場合、ジョブ制御部５５はレンダリングが終了した他のＲＩＰエンジンの印刷ジョブを印刷する（Ｓ５０）。これにより、レンダリングが終了した順で印刷することができる。
【０１３４】
以上説明したように、本実施例のＤＦＥ３２は、レンダリングが終了した順番で効率的に印刷しながら、同じＲＩＰエンジン５９の印刷ジョブを連続して印刷することができる。
【実施例３】
【０１３５】
本実施例では、ＲＩＰ待機キュー６６から印刷ジョブを消去可能なＤＦＥ３２について説明する。
【０１３６】
ＤＦＥ３２にはプレＲＩＰという仕組みがある。プレＲＩＰとは、ＪＤＦ解析部５６がＲＩＰ制御部（又はＲＩＰエンジン５９）５８に対し実際のレンダリングなしにＰＤＬのコマンドを出力し、属性情報（属性と属性値）を取得する処理である（ＲＩＰ制御部５８が返す属性情報は、特許請求の範囲の印刷設定情報の一例である）。
【０１３７】
ＰＤＬのコマンドに対しプレＲＩＰで帰ってくる属性情報は、ＲＩＰエンジン５９がＰＤＬに対応している場合、ＰＤＬのコマンドの属性情報と同じである。
【０１３８】
本実施例では、ＲＩＰ制御部５８がプレＲＩＰを行うことで、ＲＩＰエンジン５９がＰＤＬのコマンドに対応しているか否かを判断できる。
【０１３９】
ＰＤＬのコマンド「%% A_CropMark: Center」を例にしてプレＲＩＰの一例を説明する。「%% A_CropMark: Center」の属性と属性情報は以下のようになる。
属性…A_CropMark
属性値…Center
ＲＩＰエンジン５９はＰＤＬのコマンドに対して属性情報（属性と属性値）を返す。
属性…センタークロップマーク
属性値…ＯＮ
という属性情報を返す。
【０１４０】
従って、この例では、プレＲＩＰのコマンドの属性情報とプレＲＩＰで帰ってくる属性情報が異なっており、印刷ジョブがＲＩＰエンジン５９に対応していないと推定でき、ユーザの意図した仕上がりとならないおそれがある。
【０１４１】
従来は、プレＲＩＰを行ってから、ジョブ制御部５５がＲＩＰ待機キュー６６に印刷ジョブを格納していたが、本実施形態のようにＲＩＰ制御部５８が複数のＲＩＰ待機キュー６６を有する場合、ＲＩＰ待機キュー６６に格納された印刷ジョブに対しプレＲＩＰすることが可能になる。
【０１４２】
また、ＲＩＰエンジン５９とＲＩＰ待機キュー６６が複数あるので、プレＲＩＰも並列に行うことができる。したがって、プレＲＩＰによる時間の増大を抑制して、プレＲＩＰにより、仕上がりが期待できない印刷ジョブを削除できる。
【０１４３】
図２１はＲＩＰ待機キュー６６の印刷ジョブに対して行われるプレＲＩＰを模式的に示す図の一例である。ＲＩＰ制御部５８はＡ社ＲＩＰ待機キュー６６ａのJobA1、JobA2、JobA3に対しＡ社ＲＩＰエンジンを用いてプレＲＩＰを行う。また、ＲＩＰ制御部５８はＢ社ＲＩＰ待機キュー６６ｂのJobB1に対Ｂ社ＲＩＰエンジンを用いてプレＲＩＰを行う。
【０１４４】
従来と異なり、Ｂ社ＲＩＰエンジンとＡ社ＲＩＰエンジンが並列にプレＲＩＰを行うことができる。
【０１４５】
また、例えば、JobA2がＡ社ＲＩＰエンジンに対応していないおそれがある場合、ジョブ制御部５５はＡ社ＲＩＰ待機キュー６６ａからJobA2を削除する。削除することで、ＤＦＥ３２は不要な印刷を行うことを抑制できる。
【０１４６】
したがって、本実施例によれば、ＲＩＰエンジン５９とＲＩＰ待機キュー６６が複数あることを利用してプレＲＩＰを並列に行うことができ、プレＲＩＰの結果に応じて不要な印刷を抑制することができる。
【実施例４】
【０１４７】
本実施例では、同種のＲＩＰエンジン５９が複数搭載されたＤＦＥ３２について説明する。例えば、Ａ社ＲＩＰエンジンが複数、存在する場合、複数のＡ社ＲＩＰエンジンが並列にレンダリングすることができるため、短時間に同じアプリケーション１２で作成された印刷ジョブが入力された場合に、レンダリング時間を実施例１よりも短縮できる。
【０１４８】
図２２は、同種の複数のＲＩＰエンジン５９が搭載されたＲＩＰ部５７の一例を示す図である。ＲＩＰ部５７は、２つのＡ社ＲＩＰエンジン、２つのＢ社ＲＩＰエンジン、及び、２つのＣ社ＲＩＰエンジンを有している。各社のＲＩＰエンジンは３つ以上でもよい。ＲＩＰエンジン５９がＬＳＩなどのハードウェアで作成されていない場合、コスト増を抑制して複数のＲＩＰエンジン５９を用意できる場合がある。
【０１４９】
また、ＲＩＰ制御部５８は、各社用のＲＩＰ待機キュー６６を有しているだけでなく、１つのＲＩＰエンジン５９に１つのＲＩＰ待機キュー６６を有している。すなわち、１つのＡ社ＲＩＰエンジンに１つのＡ社ＲＩＰ待機キュー６６ａ−１と６６ａ−２、１つのＢ社ＲＩＰエンジンに１つのＢ社ＲＩＰ待機キュー６６ｂ−１と６６ｂ−２、１つのＣ社ＲＩＰエンジンに１つのＣ社ＲＩＰ待機キュー６６ｃ−１と６６ｃ−２、を有している。このようにＲＩＰ待機キュー６６を有することで、ＲＩＰ待機キュー６６からＲＩＰエンジン５９に対応した印刷ジョブを検索する処理を省略できる。
【０１５０】
ＲＩＰ制御部５８は、ジョブ制御部５５から出力された印刷ジョブがどのＲＩＰエンジン向けに作成されているかを判断し、複数のＲＩＰ待機キューのうち格納されている印刷ジョブが少ない方に印刷ジョブを格納する。これにより、１つのＲＩＰ待機キューに格納される印刷ジョブを均等化できる。また、均等化することで、同じアプリケーション１２に対応したＲＩＰエンジン５９が並列にレンダリングする機会を増やすことができる。
【０１５１】
なお、インスタンス化されたジョブ制御部ＩＮＳは、実施例１等と同様に、それぞれが独立に「RIP Parameter List」を出力すればよいので、同種のＲＩＰエンジン５９が複数あっても、動作に変更はない。
【０１５２】
したがって、本実施例のＤＦＥ３２によれば、同じＲＩＰエンジン５９を複数、有することで、実施例１よりもさらに効率的にレンダリングすることが可能になる。
【０１５３】
〔好適な変形例〕
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１５４】
例えば、図５ではＤＦＥ３２が全ての機能を有しているが、これらの各機能はネットワーク３を介して通信可能な別々の装置に配置されていてもよい。例えば、各社のＲＩＰエンジン５９やＪＤＦ解析部５６はＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１５５】
画像格納部６０やジョブデータ格納部５３についても同様であり、ＤＦＥ３２がアクセス可能なネットワーク上に存在すればよい。
【０１５６】
また、実行順の設定は、例えばクライアントＰＣからネットワークを介してＤＦＥ３２に設定可能でもよい。この場合、ＤＦＥはサーバとしてＷｅｂページなどをクライアントＰＣに送信し、実行順の設定を受け付ける。
【符号の説明】
【０１５７】
１      エンドユーザ環境
２      ＰＯＤ印刷システム環境
１１    クライアントＰＣ
１２    アプリケーション
２０    工程管理部
３０    デジタル印刷部
３１    プリンター
３２    ＤＦＥ
５１    ジョブ受信部
５２    システム制御部
５３    ジョブデータ格納部
５４    ＵＩ制御部
５５    ジョブ制御部
５６    ＪＤＦ解析部
５７    ＲＩＰ部
５８    ＲＩＰ制御部
５９    ＲＩＰエンジン
６０    画像格納部
６１    プリンター制御部
６２    実行順番設定部
６３    変換テーブル
６４    インスタンス作成部
６５    ジョブ管理リスト
【先行技術文献】
【特許文献】
【０１５８】
【特許文献１】特開２０１２‐２３８１８８号公報
【図１】
2015172933.tif 000003
【図２】
2015172933.tif 000004
【図３】
2015172933.tif 000005
【図４】
2015172933.tif 000006
【図５】
2015172933.tif 000007
【図６】
2015172933.tif 000008
【図７】
2015172933.tif 000009
【図８】
2015172933.tif 000010
【図９】
2015172933.tif 000011
【図１０】
2015172933.tif 000012
【図１１】
2015172933.tif 000013
【図１２】
2015172933.tif 000014
【図１３】
2015172933.tif 000015
【図１４】
2015172933.tif 000016
【図１５】
2015172933.tif 000017
【図１６】
2015172933.tif 000018
【図１７】
2015172933.tif 000019
【図１８】
2015172933.tif 000020
【図１９】
2015172933.tif 000021
【図２０】
2015172933.tif 000022
【図２１】
2015172933.tif 000023
【図２２】
2015172933.tif 000024
【図２３】
2015172933.tif 000025