以下に本発明の実施の形態について図面を参照しながら詳細に説明する。
(実施形態1)
図1は、本実施形態1の印刷システム100の構成例を示す図である。印刷システム100は、図1に示すように、一又は複数の情報端末装置10と、画像処理装置である一又は複数の印刷装置20とを含み、情報端末装置10と印刷装置20は、ネットワークNWを介して相互に通信可能に接続されている。
なお、本実施形態1を含む以下の実施形態においては、情報端末装置10により出力され、印刷装置20へ入力される印刷ジョブはPDFデータであるものとして、以下説明する。
図2は、印刷システム100を構成する印刷装置20の構成例を示す機能ブロック図である。印刷装置20は、情報端末装置10により出力されるPDFデータを処理して、紙などの印刷媒体上に印刷して出力する装置であり、図2に示すように、通信部21と、記憶部22と、表示部23と、操作部24と、プリンタ部25と、制御部26と、を備えて構成されている。
通信部21は、通信モジュールなどで構成され、ネットワークNWを介して、情報端末装置10との間で通信を行う。例えば、通信部21は、情報端末装置10により出力されるPDFデータを受信する。
記憶部22は、RAM(Random Access Memory)、ROM(Read Only Memory)、不揮発性メモリなどで構成され、制御部26を構成するCPU(Central Processing Unit)のワークエリア、印刷装置20全体を制御するための動作プログラムなどの各種プログラムを格納するプログラムエリア、関数F(詳しくは後述)や設定テーブルT1(詳しくは後述)や閾値M(詳しくは後述)などの各種データを格納するデータエリアとして機能する。
また、記憶部22は、図2に示すように、処理待ちジョブ記憶部22aとして機能する。処理待ちジョブ記憶部22aは、RIP処理するPDFデータを一時的に格納する記憶部であり、PDFデータは、処理待ちジョブ記憶部22aに格納されたタイミングが早い順に、RIP処理部26i(詳しくは後述)によりRIP処理された後、印刷処理されることとなる。
ここで、図3と図4を参照して、記憶部22のデータエリアに格納されている関数Fと設定テーブルT1について説明する。
図3は、1ページ当たりのデータサイズ(Byte)とRIP処理のスループット(ppm(paper per minute))の関係を表わす関数Fのグラフの例である。関数Fは、1ページ当たりのデータサイズが異なる複数のPDFデータをそれぞれRIP処理した際のスループットを測定し、例えば、最小二乗法により求めた関数であり、図3に示すように、1ページ当たりのデータサイズとRIP処理のスループットの関係を表わす関数である。本関数Fは、スループット推定部26c(詳しくは後述)が受信したPDFデータにおけるRIP処理のスループットを推定する際に、使用される関数である。
図中の点線Lは、プリンタエンジンのスループット(ppm)を示すラインであり、PDFデータを最適化するか否かの基準となる閾値Mは、プリンタエンジンのスループット(ppm)の値と同じ、あるいは、図3に示すように、若干大きい値に設定される。このように閾値Mを設定するのは、RIP処理のスループットがプリンタエンジンのスループットを上回る場合には、生産性が低下することはないことから、そのようなPDFデータを最適化する必要性はないからである。
なお、1ページ当たりのデータサイズとRIP処理のスループットの関係は、関数ではなく、例えば、テーブル化して保持するように構成してもよい。
図4は、本実施形態1における設定テーブルT1の例を示す図である。設定テーブルT1は、1ページ当たりのデータサイズが異なる複数のPDFデータを最適化処理部26g(詳しくは後述)が最適化処理した場合の、1ページ当たりの最適化処理に要する時間(以下、最適化時間という)(s)と、最適化後の1ページ当たりのデータサイズ(Byte)を予め測定し、テーブル化したものである。設定テーブルT1は、最適化時間推定部26e(詳しくは後述)が受信したPDFデータの1ページ当たりの最適化時間を推定する際などに、参照されるテーブルであり、図4に示すように、1ページ当たりのデータサイズ毎に、1ページ当たりの最適化時間と最適化後の1ページ当たりのデータサイズとが対応付けられているテーブルである。
なお、1ページ当たりのデータサイズと1ページ当たりの最適化時間の関係と、1ページ当たりのデータサイズと最適化後の1ページ当たりのデータサイズの関係は、テーブルではなく、例えば、1ページ当たりのデータサイズとRIP処理のスループットの関係のように、関数化して保持するように構成してもよい。
図2に戻り、表示部23は、LCD(Liquid Crystal Display)や有機EL(Electro-Luminescence)などの表示装置などで構成され、例えば、画像や各種のメッセージや各種機能ボタンなどを表示画面上に表示する。
操作部24は、テンキ−や表示部23の表示画面上に表示されるタッチパネルなどで構成され、ユーザは、操作部24を操作して、印刷装置20への指示を入力することで、所望の処理を実行させることが可能である。
プリンタ部25は、プリンタエンジンなどで構成され、RIP処理部26iによりラスタデータが生成されると、プリンタ部25は、ページ毎にレイアウト処理を実行し、レイアウト処理後のページデータに対して、例えば、キャリブレーションなどの画像処理を施した後に、印刷媒体に印刷し出力する。
制御部26は、CPUなどで構成され、記憶部22のプログラムエリアに格納されている動作プログラムを実行して、図2に示すように、判定部26aと、データサイズ算出部26bと、スループット推定部26cと、最適化前RIP時間推定部26dと、最適化時間推定部26eと、最適化後RIP時間推定部26fと、最適化処理部26gと、格納部26hと、RIP処理部26iとしての機能を実現すると共に、印刷装置20全体を制御する制御処理や詳しくは後述の最適化処理などの処理を実行する。
判定部26aは、PDFデータを受信したか否かを判定する。また、判定部26aは、スループット推定部26cにより推定されたRIP処理のスループットの値が、予め設定され記憶部22のデータエリアに格納されている閾値Mより小さいか否かを判定する。
また、判定部26aは、最適化前RIP時間推定部26dにより推定された最適化しない場合における1ページ当たりのRIP処理に要する時間(以下、RIP時間という)が、最適化時間推定部26eにより推定された1ページ当たりの最適化時間と最適化後RIP時間推定部26fにより推定された最適化した場合における1ページ当たりのRIP時間との和より大きいか否かを判定することで、最適化するか否かを判定する。
すなわち、判定部26aは、(最適化しない場合の1ページ当たりのRIP時間)>[(1ページ当たりの最適化時間)+(最適化した場合の1ページ当たりのRIP時間)]である場合には、最適化すると判定し、一方、(最適化しない場合の1ページ当たりのRIP時間)≦[(1ページ当たりの最適化時間)+(最適化した場合の1ページ当たりのRIP時間)]である場合には、最適化しないと判定する。
データサイズ算出部26bは、受信したPDFデータのデータサイズとページ数とに基づいて、受信したPDFデータの1ページ当たりのデータサイズを算出する。
スループット推定部26cは、記憶部22のデータエリアに格納されている関数Fを用いて、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに対応するRIP処理のスループットを推定する。
最適化前RIP時間推定部26dは、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間を推定する。より具体的には、RIP時間がデータサイズに略比例する関係、あるいは、関数Fを用いて、最適化前RIP時間推定部26dは、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間を推定する。
最適化時間推定部26eは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、1ページ当たりの最適化時間を推定する。
より具体的には、最適化時間推定部26eは、データサイズ算出部26bにより算出された1ページ当たりのデータサイズと同じ値のデータサイズが設定テーブルT1に有る場合には、そのデータサイズに対応する1ページ当たりの最適化時間を特定し、特定した1ページ当たりの最適化時間を、受信したPDFデータの1ページ当たりの最適化時間として推定する。
データサイズ算出部26bにより算出された1ページ当たりのデータサイズと同じ値のデータサイズが設定テーブルT1に無い場合には、最適化時間推定部26eは、例えば、線形補間法により、1ページ当たりの最適化時間を推定する。例えば、図4を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズSが、S1<S<S2の場合には、以下の式1により、最適化時間推定部26eは、1ページ当たりの最適化時間To(S)を推定する。
図2に戻り、最適化後RIP時間推定部26fは、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間を推定する。より具体的には、最適化後RIP時間推定部26fは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、最適化後の1ページ当たりのデータサイズを推定する。そして、最適化後RIP時間推定部26fは、RIP時間がデータサイズに略比例する関係、あるいは、関数Fを用いて、推定した最適化後の1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間を推定する。
例えば、データサイズ算出部26bにより算出された1ページ当たりのデータサイズと同じ値のデータサイズが設定テーブルT1に有る場合には、最適化後RIP時間推定部26fは、そのデータサイズに対応する最適化後の1ページ当たりのデータサイズを特定し、特定した最適化後の1ページ当たりのデータサイズを、受信したPDFデータにおける最適化後の1ページ当たりのデータサイズとして推定する。
また例えば、データサイズ算出部26bにより算出された1ページ当たりのデータサイズと同じ値のデータサイズが設定テーブルT1に無い場合には、最適化後RIP時間推定部26fは、例えば、線形補間法により、最適化後の1ページ当たりのデータサイズを推定する。例えば、図4を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズSが、S1<S<S2の場合には、以下の式2により、最適化後RIP時間推定部26fは、最適化後の1ページ当たりのデータサイズSo(S)を推定する。
図2に戻り、最適化処理部26gは、受信したPDFデータに含まれる各画像の最適化を行い、1ページ当たりのデータサイズを小さくすることで、最適化後のRIP処理のスループットを向上させる。この際、最適化処理部26gは、各画像における解像度の下げ率が等しくなるように最適化する。PDFデータの最適化は、アドビシステムズ社のAcrobat(登録商標)といった既存のソフトウェア、あるいは、既存の技術を用いることで可能である。
格納部26hは、PDFデータを処理待ちジョブ記憶部22aに格納する。
RIP処理部26iは、格納部26hにより処理待ちジョブ記憶部22aに格納されたタイミングが早い順に、処理待ちジョブ記憶部22aからPDFデータを取得して、取得したPDFデータをRIP処理し、ラスタデータを生成する。
次に、図5を参照して、本実施形態1における最適化処理について説明する。図5は、本実施形態1における最適化処理のフローを説明するためのフローチャートの例である。本最適化処理は、情報端末装置10により出力されるPDFデータ(印刷ジョブ)の受信をトリガとして開始される。なお、複数の最適化処理が並列に実行され得る。
判定部26aは、PDFデータを受信したか否かを判定する(ステップS001)。判定部26aにより、PDFデータを受信していないと判定された場合には(ステップS001;NO)、処理はステップS001の処理を繰り返し、PDFデータの受信を待つ。
一方、判定部26aにより、PDFデータを受信したと判定された場合には(ステップS001;YES)、データサイズ算出部26bは、受信したPDFデータの1ページ当たりのデータサイズを算出する(ステップS002)。
そして、スループット推定部26cは、関数Fを用いて、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに対応するRIP処理のスループットを推定する(ステップS003)。
そして、判定部26aは、スループット推定部26cにより推定されたRIP処理のスループットの値が閾値Mより小さいか否かを判定する(ステップS004)。判定部26aにより、推定されたRIP処理のスループットの値は閾値M以上であると判定された場合には(ステップS004;NO)、処理はステップS010の処理へと進み、格納部26hは、受信したPDFデータを最適化することなく処理待ちジョブ記憶部22aに格納し(ステップS010)、本処理は終了する。
一方、判定部26aにより、推定されたRIP処理のスループットの値が閾値Mより小さいと判定された場合には(ステップS004;YES)、最適化前RIP時間推定部26dは、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間を推定する(ステップS005)。
そして、最適化時間推定部26eは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、1ページ当たりの最適化時間を推定する(ステップS006)。
そして、最適化後RIP時間推定部26fは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、最適化後の1ページ当たりのデータサイズを推定し、推定した最適化後の1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間を推定する(ステップS007)。
そして、判定部26aは、推定された最適化しない場合の1ページ当たりのRIP時間と、推定された1ページ当たりの最適化時間と、推定された最適化した場合の1ページ当たりのRIP時間と、に基づいて、受信したPDFデータを最適化するか否かを判定する(ステップS008)。判定部26aにより、受信したPDFデータを最適化しないと判定された場合には(ステップS008;NO)、処理はステップS010の処理へと進み、格納部26hは、受信したPDFデータを最適化することなく処理待ちジョブ記憶部22aに格納し(ステップS010)、本処理は終了する。
一方、判定部26aにより、受信したPDFデータを最適化すると判定された場合には(ステップS008;YES)、最適化処理部26gは、受信したPDFデータの最適化を行い(ステップS009)、格納部26hは、最適化されたPDFデータを処理待ちジョブ記憶部22aに格納し(ステップS010)、本処理は終了する。
次に、図6を参照して、具体例にしたがって、本最適化処理を実行しない場合と、実行した場合における、RIP処理の順序について説明する。図6(A)は、具体例における最適化しない場合の処理順序を示す図であり、図6(B)は、具体例における最適化した場合の処理順序を示す図である。
例えば、図6(A)に示すよう、印刷ジョブが、J1、J2、J3、J4の順に受信され、1ページ当たりのデータサイズが、それぞれ、30Mバイト、4Mバイト、20kバイト、20kバイトであり、この場合のRIP処理の推定スループットの値が、それぞれ、25ppm、100ppm、300ppm、300ppmだとする。
例えば、プリンタエンジンのスループットが130ppmだとすると、RIP処理の推定スループットの値が130ppmを下回る印刷ジョブJ1とJ2の処理において、生産性が低下することになるが、本最適化処理を実行しない場合には、図6(A)に示すように、受信された順に印刷ジョブがRIP処理され、その後、印刷処理されることとなる。
一方、閾値M=140として本最適化処理を実行した場合、RIP処理の推定スループットの値が140を下回る印刷ジョブJ1とJ2に対し、ステップS005以降の処理が実行される。本具体例においては、いずれの印刷ジョブに対しても、最適化処理部26gによる最適化が行われ、処理待ちジョブ記憶部22aに格納されたタイミングが、J3、J4、J2、J1の順に早いものとする。この場合、RIP処理部26iは、処理待ちジョブ記憶部22aに格納されたタイミングが早い順に印刷ジョブを取得して、取得した印刷ジョブをRIP処理することから、図6(B)に示すように、J3、J4、J2、J1の順にRIP処理することとなる。
また、図6(A)と(B)に示すように、最適化後の印刷ジョブJ1とJ2の1ページ当たりのデータサイズは、最適化前の1ページ当たりのデータサイズと比較して小さくなることから、RIP処理のスループットを改善させることが可能となる。
上記実施形態1によれば、印刷装置20は、受信したPDFデータの1ページ当たりのデータサイズを算出し、算出したデータサイズに基づいて、RIP処理のスループットを推定し、推定したRIP処理のスループットの値が閾値Mより小さいか否かを判定する。そして、印刷装置20は、推定したRIP処理のスループットの値が閾値Mより小さいと判定した場合に、算出したデータサイズに基づいて、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間と、1ページ当たりの最適化時間と、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間と、を推定する。そして、印刷装置20は、推定した最適化しない場合のRIP時間と最適化時間と最適化した場合のRIP時間とに基づいて、受信したPDFデータを最適化するか否かを判定し、最適化すると判定した場合に、受信したPDFデータに含まれる各画像の解像度の下げ率が等しくなるように最適化する。
このように構成することで、RIP処理のスループットがプリンタエンジンのスループットを下回るような場合に最適化を行い、RIP処理のスループットを向上させることが可能となる。これにより生産性を向上させることが可能となる。また、最適化するか否かの切り替えを印刷ジョブ単位で行い、各画像の解像度の下げ率が等しくなるように最適化することから、同じ印刷ジョブ内で同じ画像の解像度が変わってしまうようなことは発生しない。したがって、印刷結果の見栄えも保証することが可能となる。
(実施形態2)
本実施形態2においては、処理対象のPDFデータの画像の中に、処理待ちジョブ記憶部22aに格納されているPDFデータ(以下、格納PDFデータという)の画像であって、解像度が変換されている画像がある場合には、そのような画像については、格納PDFデータにおける処理対象のPDFデータと同じ画像の解像度に合わせて、解像度を変換するように構成する。
図7は、本実施形態2における印刷システム100を構成する印刷装置20の構成例を示す機能ブロック図である。本実施形態2における印刷装置20は、実施形態1の場合と基本的な構成は同じである。但し、図7に示すように、制御部26の構成が異なっている。また、記憶部22のデータエリアには、更に、図8に例示するような解像度変換画像管理テーブルT2が格納されている。
ここで、図8を参照して、解像度変換画像管理テーブルT2について説明する。図8は、本実施形態2における解像度変換画像管理テーブルT2の例を示す図である。本実施形態2における解像度変換画像管理テーブルT2は、最適化により解像度が変換された画像を管理しているテーブルであり、例えば、解像度変換部26m(詳しくは後述)が、特定部26k(詳しくは後述)により特定された固有値に対応する解像度を特定する際に、参照されるテーブルである。
本実施形態2における解像度変換画像管理テーブルT2は、図8に示すように、固有値と解像度とが対応付けられているテーブルである。固有値は、解像度が変換された画像の固有値であり、解像度は、変換された後の解像度である。例えば、最適化により、固有値UN1の画像の解像度が200dpiから120dpiに変換された場合には、固有値UN1と変換後の解像度120dpiとが対応付けられて、解像度変換画像管理テーブルT2に格納されることとなる。
図7に戻り、本実施形態2における印刷装置20の制御部26は、CPUなどで構成され、記憶部22のプログラムエリアに格納されている動作プログラムを実行して、図7に示すように、判定部26aと、データサイズ算出部26bと、スループット推定部26cと、最適化前RIP時間推定部26dと、最適化時間推定部26eと、最適化後RIP時間推定部26fと、最適化処理部26gと、格納部26hと、RIP処理部26iと、固有値算出部26jと、特定部26kと、登録部26lと、解像度変換部26mと、更新部26nとしての機能を実現すると共に、印刷装置20全体を制御する制御処理や最適化処理などの処理を実行する。
以下に、本実施形態2特有の機能部である固有値算出部26jと、特定部26kと、登録部26lと、解像度変換部26mと、更新部26nと、実施形態1の場合と果たす機能が異なっている機能部(判定部26a、最適化処理部26g)について説明する。
判定部26aは、更に、特定部26kにより固有値が特定されたか否かを判定する。
最適化処理部26gは、特定部26kによる固有値の特定ができた場合には、処理対象のPDFデータの画像の内で、特定部26kにより特定された固有値の画像については、最適化後の解像度が、格納PDFデータの対応する画像の解像度と同じになるように、処理対象のPDFデータを最適化する。この際、最適化処理部26gは、解像度変換画像管理テーブルT2を参照して、特定部26kにより特定された固有値に対応する解像度を特定することで、格納PDFデータの対応する画像の解像度を特定する。
固有値算出部26jは、処理対象のPDFデータの画像それぞれに対して、画像を一意に識別可能な固有値を算出し、算出した固有値を画像にそれぞれ付加する。このように、固有値を画像に付加し、固有値が同じか否かを判定することで、同じ画像か否かを判定することが可能となる。ここで、固有値としては、ハッシュ値やCRC(Cyclic Redundancy Check)値などが考えられる。
特定部26kは、処理対象のPDFデータの画像の中から、格納PDFデータの画像であって、解像度が変換されている画像と同じ画像を特定する。
より具体的には、特定部26kは、処理対象のPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する。そして、処理対象のPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されている場合には、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、処理対象のPDFデータの画像と同じ固有値の中から、格納PDFデータの画像と同じ固有値を特定する。
例えば、図8に例示する解像度変換画像管理テーブルT2を参照して、処理対象のPDFデータの画像と同じ固有値が、UN1とUN3とUN11だとする。また、格納PDFデータの画像の中に、UN1とUN11の固有値を有する画像が有るとすると、この場合、特定部26kは、固有値UN1とUN11を特定する。
図7に戻り、登録部26lは、最適化処理部26gによりPDFデータが最適化された際に、解像度が変換された画像を抽出し、抽出した画像の内で、固有値が解像度変換画像管理テーブルT2に登録されていない画像の固有値と変換後の解像度とを対応付けて解像度変換画像管理テーブルT2にそれぞれ登録する。
解像度変換部26mは、判定部26aによりRIP処理のスループットは閾値M以上であると判定された場合、あるいは、最適化しないと判定された場合に、つまり、処理対象のPDFデータの最適化を行わない場合に、処理対象のPDFデータの画像の内で、特定部26kにより特定された固有値の画像の解像度を、格納PDFデータの対応する画像の解像度に合わせて変換する。
より具体的には、解像度変換部26mは、解像度変換画像管理テーブルT2を参照して、特定部26kにより特定された固有値に対応する解像度を特定し、特定した解像度に合わせて、処理対象のPDFデータの対応する画像の解像度を変換する。こうすることで、関連性の高い印刷ジョブ間で同じ画像が使用されている場合であっても、両者の解像度が異なるような事態の発生を防止し、異なる印刷ジョブ間であっても、印刷結果の見栄えを保証することが可能となる。
更新部26nは、解像度変換画像管理テーブルT2の更新を行う。より具体的には、更新部26nは、登録部26lにより抽出された画像の中で、固有値が解像度変換画像管理テーブルT2に登録されている画像については、解像度変換画像管理テーブルT2の解像度を更新する。
次に、図9と図10を参照して、本実施形態2における最適化処理について説明する。図9と図10は、それぞれ、本実施形態2における最適化処理のフローを説明するためのフローチャートの例の一部と、他の一部である。本最適化処理は、情報端末装置10により出力されるPDFデータ(印刷ジョブ)の受信をトリガとして開始される。なお、複数の最適化処理が並列に実行され得る。
判定部26aは、PDFデータを受信したか否かを判定する(ステップS101)。判定部26aにより、PDFデータを受信していないと判定された場合には(ステップS101;NO)、処理はステップS101の処理を繰り返し、PDFデータの受信を待つ。
一方、判定部26aにより、PDFデータを受信したと判定された場合には(ステップS101;YES)、データサイズ算出部26bは、受信したPDFデータの1ページ当たりのデータサイズを算出する(ステップS102)。
そして、固有値算出部26jは、画像を一意に識別可能な固有値を算出し(ステップS103)、算出した固有値を画像に付加する(ステップS104)。そして、スループット推定部26cは、関数Fを用いて、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに対応するRIP処理のスループットを推定する(ステップS105)。
そして、判定部26aは、スループット推定部26cにより推定されたRIP処理のスループットの値が閾値Mより小さいか否かを判定する(ステップS106)。判定部26aにより、推定されたRIP処理のスループットの値は閾値M以上であると判定された場合には(ステップS106;NO)、処理は後述のステップS118の処理へと進む。
一方、判定部26aにより、推定されたRIP処理のスループットの値が閾値Mより小さいと判定された場合には(ステップS106;YES)、最適化前RIP時間推定部26dは、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間を推定する(ステップS107)。
そして、最適化時間推定部26eは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、1ページ当たりの最適化時間を推定する(ステップS108)。
そして、最適化後RIP時間推定部26fは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、最適化後の1ページ当たりのデータサイズを推定し、推定した最適化後の1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間を推定する(ステップS109)。
そして、判定部26aは、推定された最適化しない場合の1ページ当たりのRIP時間と、推定された1ページ当たりの最適化時間と、推定された最適化した場合の1ページ当たりのRIP時間と、に基づいて、受信したPDFデータを最適化するか否かを判定する(ステップS110)。判定部26aにより、受信したPDFデータを最適化しないと判定された場合には(ステップS110;NO)、処理は後述のステップS118の処理へと進む。
一方、判定部26aにより、受信したPDFデータを最適化すると判定された場合には(ステップS110;YES)、特定部26kは、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する(ステップS111)。特定部26kにより、受信したPDFデータの画像と同じ固有値は解像度変換画像管理テーブルT2に登録されていないと判定された場合には(ステップS111;NO)、処理は、後述のステップS115の処理へと進む。
一方、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されていると判定した場合には(ステップS111;YES)、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、受信したPDFデータの画像と同じ固有値の中から、格納PDFデータの画像と同じ固有値を特定する(ステップS112)。
そして、判定部26aは、特定部26kにより固有値が特定されたか否かを判定する(ステップS113)。判定部26aにより、固有値が特定されたと判定された場合には(ステップS113;YES)、最適化処理部26gは、受信したPDFデータの画像の内で、特定部26kにより特定された固有値の画像については、最適化後の解像度が、格納PDFデータの対応する画像の解像度と同じになるように、受信したPDFデータを最適化する(ステップS114)。そして、処理は後述のステップS116の処理へと進む。
一方、判定部26aにより、固有値は特定されなかったと判定された場合には(ステップS113;NO)、最適化処理部26gは、受信したPDFデータの最適化を行い(ステップS115)、登録部26lは、最適化の際に解像度が変換された画像を抽出し、抽出した画像の内で、固有値が解像度変換画像管理テーブルT2に登録されていない画像の固有値と変換後の解像度とを対応付けて解像度変換画像管理テーブルT2にそれぞれ登録する(ステップS116)。
そして、更新部26nは、登録部26lにより抽出された画像の中で、固有値が解像度変換画像管理テーブルT2に登録されている画像については、解像度変換画像管理テーブルT2の解像度を更新する(ステップS117)。そして、処理は後述のステップS122の処理へと進む。
ステップS106の処理において、判定部26aにより、推定されたRIP処理のスループットの値が閾値M以上であると判定された場合には(ステップS106;NO)、特定部26kは、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する(ステップS118)。特定部26kにより、受信したPDFデータの画像と同じ固有値は解像度変換画像管理テーブルT2に登録されていないと判定された場合には(ステップS118;NO)、処理は、後述のステップS122の処理へと進む。
一方、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されていると判定した場合には(ステップS118;YES)、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、受信したPDFデータの画像と同じ固有値の中から、格納PDFデータの画像と同じ固有値を特定する(ステップS119)。
そして、判定部26aは、特定部26kにより固有値が特定されたか否かを判定する(ステップS120)。判定部26aにより、固有値は特定されなかったと判定された場合には(ステップS120;NO)、処理は、後述のステップS122の処理へと進む。
一方、判定部26aにより、固有値が特定されたと判定された場合には(ステップS120;YES)、解像度変換部26mは、受信したPDFデータの画像の内で、特定部26kにより特定された固有値の画像の解像度を、格納PDFデータの対応する画像の解像度に合わせて変換する(ステップS121)。
そして、格納部26hは、処理対象のPDFデータを処理待ちジョブ記憶部22aに格納し(ステップS122)、本処理は終了する。
上記実施形態2によれば、印刷装置20は、処理待ちジョブ記憶部22aを備え、受信したPDFデータの最適化を行う場合に、受信したPDFデータの画像の中から、処理待ちジョブ記憶部22aに格納されているPDFデータ(格納PDFデータ)の画像であって、解像度が変換されている画像と同じ画像を特定する。そして、印刷装置20は、特定した画像に対しては、最適化後の解像度が、格納PDFデータの対応する画像の解像度と同じになるように、受信したPDFデータを最適化する。このように構成することで、関連性が高いと思われる、ほぼ同じタイミングで受信したPDFデータ間で同じ画像の解像度が変わってしまうような事態の発生を抑制することが可能となる。
また、上記実施形態2によれば、印刷装置20は、最適化を行わない場合に、受信したPDFデータの画像の中から、格納PDFデータの画像であって、解像度が変換されている画像と同じ画像を特定し、特定した画像に対して、格納PDFデータの対応する画像の解像度と同じになるように、受信したPDFデータの画像の解像度を変換する。このように構成することで、関連性が高いと思われる、ほぼ同じタイミングで受信したPDFデータ間で同じ画像の解像度が変わってしまうような事態の発生を、さらに抑制することが可能となる。
(実施形態3)
上記実施形態2においては、処理対象のPDFデータの画像の中に、格納PDFデータの画像であって、解像度が変換されている画像と同じ画像がある場合には、そのような画像については、格納PDFデータにおける処理対象のPDFデータと同じ画像の解像度に合わせて、解像度を変換するように構成した。
本実施形態3においては、格納PDFデータに限定することなく、処理対象のPDFデータの画像の中に、直近の所定期間に解像度が変換された画像と同じ画像がある場合には、そのような画像については、解像度が変換されている画像の解像度に合わせて解像度を変換するように構成する。
図11は、本実施形態3における印刷システム100を構成する印刷装置20の構成例を示す機能ブロック図である。本実施形態3における印刷装置20は、実施形態2の場合と基本的な構成は同じである。但し、図12に示すように、解像度変換画像管理テーブルT2の構成が異なっている。また、記憶部22のデータエリアには、図11に示すように、更に、図13に例示するような固有値管理テーブルT3が格納されている。
ここで、図12と図13を参照して、本実施形態3における解像度変換画像管理テーブルT2と固有値管理テーブルT3についてそれぞれ説明する。図12は、本実施形態3における解像度変換画像管理テーブルT2の例を示す図である。図13は、本実施形態3における固有値管理テーブルT3の例を示す図である。
まず、本実施形態3における解像度変換画像管理テーブルT2は、最適化により解像度が変換された画像を管理しているテーブルであり、例えば、特定部26kが、処理対象のPDFデータの画像の中から直近の所定期間に解像度が変換された画像を特定する際に、参照されるテーブルである。
本実施形態3における解像度変換画像管理テーブルT2は、図12に示すように、固有値毎に、解像度と変換日時と変換時のジョブ名とが対応付けられているテーブルである。
変換日時は、対応する解像度に変換された日時であり、変換時のジョブ名は、対応する固有値の画像が、対応する解像度に変換された際の処理対象の印刷ジョブの名称であり、例えば、印刷ジョブのファイル名である。
次に、本実施形態3における固有値管理テーブルT3は、処理対象のPDFデータにおける画像の固有値を管理するためのテーブルであり、固有値算出部26jにより管理されている。固有値管理テーブルT3は、例えば、特定部26kが処理対象のPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に有るか否かを判定する際に、参照されるテーブルであり、図13に示すように、画像順序と固有値とが対応付けられているテーブルである。なお、固有値管理テーブルT3は、印刷ジョブ毎に生成される。
画像順序は、例えば、処理対象のPDFデータの画像の配置順序であり、固有値は、対応する画像順序の画像における固有値である。
図11に戻り、本実施形態3における印刷装置20の制御部26は、CPUなどで構成され、記憶部22のプログラムエリアに格納されている動作プログラムを実行して、図11に示すように、判定部26aと、データサイズ算出部26bと、スループット推定部26cと、最適化前RIP時間推定部26dと、最適化時間推定部26eと、最適化後RIP時間推定部26fと、最適化処理部26gと、格納部26hと、RIP処理部26iと、固有値算出部26jと、特定部26kと、登録部26lと、解像度変換部26mと、更新部26nとしての機能を実現すると共に、印刷装置20全体を制御する制御処理や最適化処理などの処理を実行する。
以下に、実施形態1又は2の場合と果たす機能が異なっている機能部(最適化処理部26g、固有値算出部26j、特定部26k、登録部26l、解像度変換部26m、更新部26n)について説明する。
最適化処理部26gは、特定部26kによる固有値の特定ができた場合には、処理対象のPDFデータの画像の内で、特定部26kにより特定された固有値の画像については、最適化後の解像度が、解像度変換画像管理テーブルT2に登録されている対応する解像度と同じになるように、処理対象のPDFデータを最適化する。
固有値算出部26jは、処理対象のPDFデータの画像に対して、画像を一意に識別可能な固有値を算出し、画像順序と算出した固有値とを対応付けて固有値管理テーブルT3に格納する。
特定部26kは、処理対象のPDFデータの画像の中から、直近の所定期間に解像度が変換された画像と同じ画像を特定する。
より具体的には、特定部26kは、処理対象のPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する。そして、処理対象のPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されている場合には、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、処理対象のPDFデータの画像と同じ固有値の中から、直近の所定期間に解像度が変換された画像の固有値を特定する。
例えば、図12に例示する解像度変換画像管理テーブルT2を参照して、処理対象のPDFデータの画像と同じ固有値が、UN1とUN3とUN11だとする。また、UN1とUN3とUN11の変換日時の内で、直近の所定期間に含まれる変換日時が、DT11だとすると、この場合、特定部26kは、固有値UN11を特定する。
図11に戻り、登録部26lは、最適化処理部26gによりPDFデータが最適化された際に、解像度が変換された画像を抽出し、抽出した画像の内で、固有値が解像度変換画像管理テーブルT2に登録されていない画像の固有値と変換後の解像度と変換日時と変換時のジョブ名とを対応付けて解像度変換画像管理テーブルT2にそれぞれ登録する。
解像度変換部26mは、判定部26aによりRIP処理のスループットは閾値M以上であると判定された場合、あるいは、最適化しないと判定された場合に、つまり、処理対象のPDFデータの最適化を行わない場合に、処理対象のPDFデータの画像の内で、特定部26kにより特定された固有値の画像の解像度を、解像度変換画像管理テーブルT2に登録されている対応する解像度に合わせて変換する。
より具体的には、解像度変換部26mは、解像度変換画像管理テーブルT2を参照して、特定部26kにより特定された固有値に対応する解像度を特定し、特定した解像度に合わせて、処理対象のPDFデータの対応する画像の解像度を変換する。
更新部26nは、解像度変換画像管理テーブルT2の更新を行う。より具体的には、更新部26nは、登録部26lにより抽出された画像の内で、固有値が解像度変換画像管理テーブルT2に登録されている画像について、解像度変換画像管理テーブルT2の解像度と変換日時と変換時のジョブ名を更新する。
また、更新部26nは、解像度変換部26mにより解像度が変換された画像について、解像度変換画像管理テーブルT2の変換日時と変換時のジョブ名を更新する。
次に、図14と図15を参照して、本実施形態3における最適化処理について説明する。図14と図15は、それぞれ、本実施形態3における最適化処理のフローを説明するためのフローチャートの例の一部と、他の一部である。本最適化処理は、情報端末装置10により出力されるPDFデータ(印刷ジョブ)の受信をトリガとして開始される。なお、複数の最適化処理が並列に実行され得る。
判定部26aは、PDFデータを受信したか否かを判定する(ステップS101)。判定部26aにより、PDFデータを受信していないと判定された場合には(ステップS101;NO)、処理はステップS101の処理を繰り返し、PDFデータの受信を待つ。
一方、判定部26aにより、PDFデータを受信したと判定された場合には(ステップS101;YES)、データサイズ算出部26bは、受信したPDFデータの1ページ当たりのデータサイズを算出する(ステップS102)。
そして、固有値算出部26jは、画像を一意に識別可能な固有値を算出し(ステップS103)、画像順序と算出した固有値とを対応付けて固有値管理テーブルT3にそれぞれ格納する(ステップS201)。そして、スループット推定部26cは、関数Fを用いて、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに対応するRIP処理のスループットを推定する(ステップS105)。
そして、判定部26aは、スループット推定部26cにより推定されたRIP処理のスループットの値が閾値Mより小さいか否かを判定する(ステップS106)。判定部26aにより、推定されたRIP処理のスループットの値は閾値M以上であると判定された場合には(ステップS106;NO)、処理は後述のステップS118の処理へと進む。
一方、判定部26aにより、推定されたRIP処理のスループットの値が閾値Mより小さいと判定された場合には(ステップS106;YES)、最適化前RIP時間推定部26dは、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化しない場合の1ページ当たりのRIP時間を推定する(ステップS107)。
そして、最適化時間推定部26eは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、1ページ当たりの最適化時間を推定する(ステップS108)。
そして、最適化後RIP時間推定部26fは、設定テーブルT1を参照して、データサイズ算出部26bにより算出された1ページ当たりのデータサイズに基づいて、最適化後の1ページ当たりのデータサイズを推定し、推定した最適化後の1ページ当たりのデータサイズに基づいて、受信したPDFデータを最適化した場合の1ページ当たりのRIP時間を推定する(ステップS109)。
そして、判定部26aは、推定された最適化しない場合の1ページ当たりのRIP時間と、推定された1ページ当たりの最適化時間と、推定された最適化した場合の1ページ当たりのRIP時間と、に基づいて、受信したPDFデータを最適化するか否かを判定する(ステップS110)。判定部26aにより、受信したPDFデータを最適化しないと判定された場合には(ステップS110;NO)、処理は後述のステップS118の処理へと進む。
一方、判定部26aにより、受信したPDFデータを最適化すると判定された場合には(ステップS110;YES)、特定部26kは、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する(ステップS111)。特定部26kにより、受信したPDFデータの画像と同じ固有値は解像度変換画像管理テーブルT2に登録されていないと判定された場合には(ステップS111;NO)、処理は、後述のステップS115の処理へと進む。
一方、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されていると判定した場合には(ステップS111;YES)、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、受信したPDFデータの画像と同じ固有値の中から、直近の所定期間に解像度が変換された画像の固有値を特定する(ステップS202)。
そして、判定部26aは、特定部26kにより固有値が特定されたか否かを判定する(ステップS113)。判定部26aにより、固有値が特定されたと判定された場合には(ステップS113;YES)、最適化処理部26gは、受信したPDFデータの画像の内で、特定部26kにより特定された固有値の画像については、最適化後の解像度が、解像度変換画像管理テーブルT2に登録されている対応する解像度と同じになるように、受信したPDFデータを最適化する(ステップS203)。そして、処理は後述のステップS204の処理へと進む。
一方、判定部26aにより、固有値は特定されなかったと判定された場合には(ステップS113;NO)、最適化処理部26gは、受信したPDFデータの最適化を行い(ステップS115)、登録部26lは、最適化の際に解像度が変換された画像を抽出し、抽出した画像の内で、固有値が解像度変換画像管理テーブルT2に登録されていない画像の固有値と変換後の解像度と変換日時と変換時のジョブ名とを対応付けて解像度変換画像管理テーブルT2にそれぞれ登録する(ステップS204)。
そして、更新部26nは、登録部26lにより抽出された画像の中で、固有値が解像度変換画像管理テーブルT2に登録されている画像について、解像度変換画像管理テーブルT2の解像度と変換日時と変換時のジョブ名を更新する(ステップS205)。そして、処理は後述のステップS122の処理へと進む。
ステップS106の処理において、判定部26aにより、推定されたRIP処理のスループットの値が閾値M以上であると判定された場合には(ステップS106;NO)、特定部26kは、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されているか否かを判定する(ステップS118)。特定部26kにより、受信したPDFデータの画像と同じ固有値は解像度変換画像管理テーブルT2に登録されていないと判定された場合には(ステップS118;NO)、処理は、後述のステップS122の処理へと進む。
一方、受信したPDFデータの画像と同じ固有値が解像度変換画像管理テーブルT2に登録されていると判定した場合には(ステップS118;YES)、特定部26kは、更に、解像度変換画像管理テーブルT2に登録されている、受信したPDFデータの画像と同じ固有値の中から、直近の所定期間に解像度が変換された画像の固有値を特定する(ステップS206)。
そして、判定部26aは、特定部26kにより固有値が特定されたか否かを判定する(ステップS120)。判定部26aにより、固有値は特定されなかったと判定された場合には(ステップS120;NO)、処理は、後述のステップS122の処理へと進む。
一方、判定部26aにより、固有値が特定されたと判定された場合には(ステップS120;YES)、解像度変換部26mは、受信したPDFデータの画像の内で、特定部26kにより特定された固有値の画像の解像度を、解像度変換画像管理テーブルT2に登録されている対応する解像度に合わせて変換する(ステップS207)。
そして、更新部26nは、解像度変換部26mにより解像度が変換された画像について、解像度変換画像管理テーブルT2の変換日時と変換時のジョブ名を更新する(ステップS208)。そして、格納部26hは、処理対象のPDFデータを処理待ちジョブ記憶部22aに格納し(ステップS122)、本処理は終了する。
上記実施形態3によれば、印刷装置20は、最適化を行う場合に、受信したPDFデータの画像の中から、直近の所定期間に解像度が変換された画像と同じ画像を特定し、特定した画像に対しては、最適化後の解像度が、直近の所定期間に解像度が変換された、対応する画像の解像度と同じになるように、受信したPDFデータを最適化する。このように構成することで、格納PDFデータに限定しないことから、関連性が高いと思われる、ほぼ同じタイミングで受信したPDFデータ間で同じ画像の解像度が変わってしまうような事態の発生を、一層、抑制することが可能となる。
また、上記実施形態3によれば、印刷装置20は、最適化を行わない場合に、受信したPDFデータの画像の中から、直近の所定期間に解像度が変換された画像と同じ画像を特定し、特定した画像に対して、直近の所定期間に解像度が変換された、対応する画像の解像度と同じになるように、受信したPDFデータの画像の解像度を変換する。このように構成することで、関連性が高いと思われる、ほぼ同じタイミングで受信したPDFデータ間で同じ画像の解像度が変わってしまうような事態の発生を、さらに抑制することが可能となる。
なお、上記実施形態1乃至3において、PDFデータを例に説明したが、これに限定されるものではなく、1ページ当たりのデータサイズが大きくなるにつれてRIP処理のスループットが低下し、印刷ジョブに含まれる画像を最適化することが可能な他の形式の印刷ジョブであってもよい。
また、上記実施形態1乃至3において、RIP処理のスループットを推定し、判定部26aが、推定したスループットの値が閾値Mより小さいか否かを判定するように構成したが、これに限定されるものではなく、判定部26aが、データサイズ算出部26bにより算出された1ページ当たりのデータサイズが予め設定した閾値より大きいか否かを判定するように構成してもよい。例えば、図3を参照して、この場合の閾値としてSmを設定すればよい。これは、1ページ当たりのデータサイズとRIP処理のスループットの関係は、図3に示すように、1ページ当たりのデータサイズが大きくなるにつれて、RIP処理のスループットは低下するからである。このように構成することで、処理の工程を削減することが可能となる。
また、上記実施形態3において、ユーザが直近の所定期間を設定できるように構成してもよい。
また、上記実施形態3において、処理対象のPDFデータの画像の中に、直近の所定期間に解像度が変換された画像がある場合に、まず、ユーザに対して、解像度変換画像管理テーブルT2に登録されている対応する変換時のジョブ名を報知し、その解像度に変換するか否かの選択をユーザに行わせるように構成してもよい。このように構成することで、画像の解像度を揃える必要がある場合のみ、ユーザは、解像度の変換を実行させることが可能となる。これにより、ユーザの利便性を向上させることも可能となる。
なお、上記動作を実行するための動作プログラムを、フレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical disk)などのコンピュータで読み取り可能な記録媒体に記憶して配布し、これを印刷装置20のコンピュータにインストールすることにより、上述の処理を実行するように構成してもよい。さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
以上本発明の実施形態について説明したが、本発明は、以上に述べた実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成又は実施形態を取ることができる。