(57)【特許請求の範囲】
【請求項１】
フェイスアップ印刷用の複数ページの印刷データを有し、フェイスアップ印刷を行う印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部とを備え、
前記展開処理部が、前記各分割印刷ジョブデータに対して展開処理を施す際、前記印刷ジョブデータの最初のページから前記各分割印刷ジョブデータに割り当てられたページまでの展開処理を行い、該割り当てられたページ以降の展開処理を行わないものであることを特徴とする印刷データ生成装置。
【請求項２】
複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部とを備え、
前記展開処理部が、前記分割印刷ジョブデータに割り当てられたページ以外のページの前記ページデータを記憶することなく破棄するものであることを特徴とする印刷データ生成装置。
【請求項３】
前記展開処理部が、前記分割印刷ジョブデータに割り当てられたページの第１の展開処理と該ページ以外のページの第２の展開処理とを異なる展開処理とするものであり、
前記第２の展開処理が、前記第１の展開処理よりも処理の負荷が軽いものであることを特徴とする請求項２記載の印刷データ生成装置。
【請求項４】
前記分割印刷ジョブデータ生成部が、ｎ＋１（ｎは１以上の整数）番目の前記分割印刷ジョブデータの前記展開処理が、ｎ番目の前記分割印刷ジョブデータの前記ページデータの前記印刷部における印刷処理の間に完了するように前記分割印刷ジョブデータの分割数を決定するものであることを特徴とする請求項２から３いずれか１項記載の印刷データ生成装置。
【請求項５】
前記分割印刷ジョブデータ生成部が、ｎ番目の前記分割印刷ジョブデータの前記ページデータの出力処理の時間とｎ＋１番目の前記分割印刷ジョブデータの前記展開処理の時間との加算値が、ｎ番目の前記分割印刷ジョブデータの印刷処理時間以下となるように前記分割印刷ジョブデータの分割数を決定するものであることを特徴とする請求項４記載の印刷データ生成装置。
【請求項６】
複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部とを備え、
前記展開処理部が、ｎ（ｎは１以上の整数）番目の前記分割印刷ジョブデータの前記展開処理と前記ページデータの出力が終了した時点からｎ＋１番目の前記分割印刷ジョブデータの前記展開処理を開始するものであることを特徴とする印刷データ生成装置。
【請求項７】
前記分割印刷ジョブデータ生成部が、下式（１）を満たす最大のｍの値を分割数として決定するものであることを特徴とする請求項５記載の印刷データ生成装置。
Ｎａ/ｍＸ−（Ｎａ/ｍｔ ＋ ｛Ｎａ（ｍ−２）｝/ｍｒ ＋ Ｎａ/ｍＲ） ＞ ０・・・（１）
ただし、Ｎａは前記印刷ジョブデータの全ページ数、ｒは前記分割印刷ジョブデータに割り当てられたページ以外のページの前記展開処理の速度、Ｒは前記分割印刷ジョブデータに割り当てられたページの前記展開処理の速度、ｔは前記分割印刷ジョブデータの前記ページデータの出力処理速度、Ｘは前記印刷部の印刷処理速度
【請求項８】
前記印刷ジョブデータの全ページ数Ｎａ、前記分割印刷ジョブデータに割り当てられたページ以外のページの前記展開処理の速度ｒ、前記分割印刷ジョブデータに割り当てられたページの前記展開処理の速度Ｒ、および前記分割印刷ジョブデータの前記ページデータの出力処理速度ｔのうちの少なくとも１つを前記印刷ジョブデータの内容を解析することによって取得するプリフライト処理部を備えたことを特徴とする請求項７記載の印刷データ生成装置。
【請求項９】
前記印刷ジョブデータの全ページ数Ｎａ、前記分割印刷ジョブデータに割り当てられたページ以外のページの前記展開処理の速度ｒ、前記分割印刷ジョブデータに割り当てられたページの前記展開処理の速度Ｒ、および前記分割印刷ジョブデータの前記ページデータの出力処理速度ｔのうちの少なくとも１つを設定入力可能な入力部を備えたことを特徴とする請求項７記載の印刷データ生成装置。
【請求項１０】
前記分割印刷ジョブデータ生成部が、複数の前記印刷部の種類と該印刷部に対応する印刷処理速度の情報とを対応づけたテーブルを有し、
前記印刷部の種類を取得して前記テーブルを参照することによって前記印刷処理速度の情報を取得するものであることを特徴とする請求項７から９いずれか１項記載の印刷データ生成装置。
【請求項１１】
前記分割印刷ジョブデータ生成部が、前記印刷部から出力された前記印刷処理速度の情報を取得するものであることを特徴とする請求項７から９いずれか１項記載の印刷データ生成装置。
【請求項１２】
前記ページデータに基づいて面付け処理を行う面付処理部を備え、
前記分割印刷ジョブデータ生成部が、前記面付け処理を行う際の面付け数を取得し、前記決定した分割印刷ジョブデータの分割数によって前記印刷ジョブデータの全ページ数を除算して取得された分割ページ数候補が前記面付け数で割り切れるか否かを判定し、前記分割ページ数候補が前記面付け数で割り切れる場合には、前記分割ページ数候補を分割ページ数とするとともに、前記決定した分割印刷ジョブデータの分割数を用いて前記分割を行い、
前記分割ページ数候補が前記面付け数で割り切れない場合には、前記分割ページ数候補を超える前記面付け数の倍数のうちの最小値を分割ページ数とするとともに、該分割ページ数に基づく分割数を用いて前記分割を行うものであることを特徴とする請求項４、５、７から１１いずれか１項記載の印刷データ生成装置。
【請求項１３】
前記ページデータに基づいて面付処理を行う面付処理部を備え、
前記分割印刷ジョブデータ生成部が、前記面付け処理を行う際の面付け数を取得するとともに、前記面付け数よりも大きい予め設定された分割基準ページ数を取得し、
前記決定した分割印刷ジョブデータの分割数によって前記印刷ジョブデータの全ページ数を除算して取得された第１の分割ページ数候補が、前記面付け数で割り切れるか否かを判定し、前記第１の分割ページ数候補が前記面付け数で割り切れる場合には、該第１の分割ページ数候補を第２の分割ページ数候補として決定し、前記第１の分割ページ数候補が前記面付け数で割り切れない場合には、前記第１の分割ページ数候補を超える前記面付け数の倍数のうちの最小値を第２の分割ページ数候補として決定し、
次いで、前記第２の分割ページ数候補が、前記分割基準ページ数で割り切れるか否かを判定し、前記第２の分割ページ数候補が前記分割基準ページ数で割り切れる場合には、該第２の分割ページ数候補を第３の分割ページ数候補として決定し、前記第２の分割ページ数候補が前記分割基準ページ数で割り切れない場合には、前記第２の分割ページ数候補を超える前記面付け数と前記分割基準ページ数との公倍数であって最小の値を前記第３の分割ページ数候補として決定し、
その後、前記第２の分割ページ数候補を分割ページ数とするとともに、該分割ページ数に基づく分割数を用いて前記分割を行った場合の前記印刷ジョブデータの処理時間と、前記第３の分割ページ数候補を分割ページ数とするとともに、該分割ページ数に基づく分割数を用いて前記分割を行った場合の前記印刷ジョブデータの処理時間との差が、予め設定された処理時間許容増加量以下である場合には、前記第３の分割ページ数候補に基づく分割ページ数および分割数を用いて前記分割を行い、前記差が、前記処理時間許容増加量を超える場合には、前記第２の分割ページ数候補に基づく分割ページ数および分割数を用いて前記分割を行うものであることを特徴とする請求項４、５、７から１１いずれか１項記載の印刷データ生成装置。
【請求項１４】
前記ページデータに基づいて面付処理を行う面付処理部を備え、
前記分割印刷ジョブデータ生成部が、前記面付け処理を行う際の面付け数を第１の分割基準ページ数として取得するとともに、該第１の分割基準ページ数よりも大きい予め設定された１または複数の第ｋ（ｋは２〜ｎ）の分割基準ページ数を取得し、
前記決定した分割印刷ジョブデータの分割数によって前記印刷ジョブデータの全ページ数を除算して取得された第１の分割ページ数候補が、前記第１の分割基準ページ数で割り切れるか否かを判定し、前記第１の分割ページ数候補が前記第１の分割基準ページ数で割り切れる場合には、該第１の分割ページ数候補を第２の分割ページ数候補として決定し、前記第１の分割ページ数候補が前記第１の分割基準ページ数で割り切れない場合には、前記第１の分割ページ数候補を超える前記第１の分割基準ページ数の倍数のうちの最小値を第２の分割ページ数候補として決定し、
該第２の分割ページ数候補を決定した後、第ｋの分割ページ数候補が、第ｋの分割基準ページ数で割り切れるか否かを判定し、前記第ｋの分割ページ数候補が前記第ｋの分割基準ページ数で割り切れる場合には、該第ｋの分割ページ数候補を第ｋ＋１の分割ページ数候補として決定し、前記第ｋの分割ページ数候補が前記第ｋの分割基準ページ数で割り切れない場合には、前記第ｋの分割ページ数候補を超える前記第１〜第ｋの分割基準ページ数の公倍数であって最小の値を前記第ｋ＋１の分割ページ数候補として決定し、
その後、前記第２の分割ページ数候補を分割ページ数とするとともに、該分割ページ数に基づく分割数を用いて前記分割を行った場合の前記印刷ジョブデータの処理時間と、前記第ｋ＋１の分割ページ数候補を分割ページ数とするとともに、該分割ページ数に基づく分割数を用いて前記分割を行った場合の前記印刷ジョブデータの処理時間との差が、予め設定された処理時間許容増加量以下である場合には、前記第ｋ＋１の分割ページ数候補に基づく分割ページ数および分割数を用いて前記分割を行い、前記差が、前記処理時間許容増加量を超える場合には、前記第ｋの分割ページ数候補に基づく分割ページ数および分割数を用いて前記分割を行うものであることを特徴とする請求項４、５、７から１１いずれか１項記載の印刷データ生成装置。
【請求項１５】
コンピュータを、フェイスアップ印刷用の複数ページの印刷データを有し、フェイスアップ印刷を行う印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で前記展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部として機能させる印刷データ生成プログラムであって、
前記展開処理部が、前記各分割印刷ジョブデータに対して展開処理を施す際、前記印刷ジョブデータの最初のページから前記各分割印刷ジョブデータに割り当てられたページまでの展開処理を行い、該割り当てられたページ以降の展開処理を行わないことを特徴とする印刷データ生成プログラム。
【請求項１６】
コンピュータを、複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で前記展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部として機能させる印刷データ生成プログラムであって、
前記展開処理部が、前記分割印刷ジョブデータに割り当てられたページ以外のページの前記ページデータを記憶することなく破棄することを特徴とする印刷データ生成プログラム。
【請求項１７】
コンピュータを、複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、
前記複数ページを所定の複数ページ毎に分割して該分割した複数ページを前記印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、
該分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、該各分割印刷ジョブデータに対して並べられた順で前記展開処理を施してページ毎のページデータを生成し、該展開処理が施された順に、前記分割印刷ジョブデータ毎についてページ順の遅い順に前記ページデータを印刷部に出力する展開処理部として機能させる印刷データ生成プログラムであって、
前記展開処理部が、ｎ（ｎは１以上の整数）番目の前記分割印刷ジョブデータの前記展開処理と前記ページデータの出力が終了した時点からｎ＋１番目の前記分割印刷ジョブデータの前記展開処理を開始することを特徴とする印刷データ生成プログラム。
【請求項１８】
請求項１から１４いずれか１項記載の印刷データ生成装置と、該印刷データ生成装置から出力されたページデータに基づいて印刷処理を行う印刷部とを備えたことを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データ生成装置およびプログラム並びに印刷装置に関するものであり、特に、いわゆるフェイスアップ排紙時に用いられる印刷ジョブデータを生成する装置およびプログラム並びに印刷装置に関するものである。
【背景技術】
【０００２】
従来、メモ帳やＷｏｒｄ（登録商標）などの編集用アプリケーションによって作成された画像データに基づいて印刷を行う際には、その画像データがコンピュータにおけるプリンタドライバによりＰＤＬ（Page Description Language）データに変換されて印刷装置に出力される。
【０００３】
ＰＤＬとは、コンピュータ上で作成された文書や画像などを印刷する際に、印刷装置への出力イメージを記述して印刷装置に対して指示する言語のことである。
【０００４】
印刷装置において文書を印刷する際には、文字や図形の位置情報、書式情報などのデータはビットマップデータに変換される必要がある。このビットマップイメージを作成するための言語がＰＤＬであり、印刷装置の種類や解像度に依存することなく記述することができる。
【０００５】
一方、たとえば、インクジェットプリンタにおいては、印刷直後のインクが装置の一部に転写して汚れが発生することを避けるため、インクジェットヘッドを印刷用紙の上方に配置し、インクを下方に噴射して印刷する方式が一般的に用いられている。
【０００６】
このようなインクジェットプリンタによって印刷された印刷用紙は、印刷面が上向きの状態で排紙トレイに排出される、いわゆるフェイスアップ排紙によって排紙される。
【０００７】
そして、このようなフェイスアップ排紙を行う際には、印刷面が上向きのため、プリンタドライバで生成される印刷ジョブデータが複数ページからなるものである場合には、印刷完了状態の印刷物のページ順を正しく並べるためには、印刷ジョブデータの最終ページから印字する必要がある。
【０００８】
しかしながら、上述したＰＤＬで記述された印刷ジョブデータによって印刷する場合、ページヘッダー等を利用して印刷ジョブデータの途中から展開すると印刷用の正しいビットマップデータを得られない場合が発生する。
【０００９】
したがって、印刷用の正しいビットマップデータを確実に生成するためには、印刷ジョブデータの先頭から順次展開していく必要がある。
【００１０】
しかしながら、フェイスアップ排紙時には、上述したように印刷ジョブデータの最終ページから出力する必要があるため、従来は、印刷ジョブデータを先頭から順次展開し、展開済みのビットマップデータを装置内に順次格納し、最終ページの展開処理が終了するまで出力を待ち続け、最終ページの展開処理が完了した時点で印刷装置に展開済みのビットマップデータを最終ページから先頭ページの順番で印刷をしていた。
【００１１】
しかしながら、このような方法では、最終ページの展開処理まで待って初めて最初のページの印刷が可能になるため、最初のページの印刷を開始するまでに非常に長い時間がかかり、処理時間が長くなってしまうという欠点がある。
【００１２】
また、印刷装置の物理的印刷スピードに対し、展開処理を行う処理装置が十分に上回る処理能力を有していたとしても、展開処理の待機時間は、処理する印刷ジョブデータのページ数が増大するにつれて長時間となる。たとえば、処理装置の処理能力が１，０００ｐｐｍ、印刷装置の印刷スピードが５０ｐｐｍとした場合には、２０ページ以上の印刷ジョブデータの場合には余分な展開処理の待機時間が発生することになる。
【００１３】
そこで、たとえば、特許文献１においては、印刷ジョブデータを複数のブロックに区分し、そのブロック毎についてページ順とは逆順に処理していく方法が提案されている。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開平１１−１１０１７１号公報
【非特許文献】
【００１５】
【非特許文献１】「http//www.sophia-it.com/「BINARY IT 用語辞典」
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、特許文献１に記載の方法では、確かに印刷ジョブデータをブロックに分割しているため最初のページの印刷までの待機時間は短くなるが、ページ順の早いブロックから順次印刷を行っているため、たとえば、印刷装置が１つの排紙トレイしか備えていないような場合には、ページ順の早いブロックから順に排紙され、その上にページ順の遅いブロックが排紙されるため、ブロック単位でみるとページ順は合っているが、印刷物全体としてはページ順があっていないことになる。
【００１７】
また、印刷装置が複数の排紙トレイを備え、各トレイに各ブロックのページを排紙したとしても、全ての排紙が完了した後に、印刷物全体として正しいページ順となるように、ユーザーが排紙トレイ毎の印刷物を並べなおす手間がかかることになる。
【００１８】
本発明は、上記事情に鑑み、高速な印刷出力を可能にするとともに、ユーザーが印刷物を並べなおす手間を省くことができる印刷データ生成装置およびプログラム並びに印刷装置を提供することを目的とするものである。
【課題を解決するための手段】
【００１９】
本発明の印刷データ生成装置は、複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、複数ページを所定の複数ページ毎に分割してその分割した複数ページを印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、その各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、その展開処理が施された順に、分割印刷ジョブデータ毎についてページ順の遅い順にページデータを印刷部に出力する展開処理部とを備えたことを特徴とする。
【００２０】
また、上記本発明の印刷データ生成装置においては、展開処理部を、分割印刷ジョブデータに割り当てられたページ以外のページのページデータを記憶することなく破棄するものとできる。
【００２１】
また、展開処理部を、分割印刷ジョブデータに割り当てられたページの第１の展開処理とそのページ以外のページの第２の展開処理とを異なる展開処理とするものとし、第２の展開処理を、第１の展開処理よりも処理の負荷が軽いものとできる。
【００２２】
また、第２の展開処理を、第１の展開処理よりも解像度が低い展開処理とできる。
【００２３】
また、第１の展開処理を面付け処理を行うものとし、第２の展開処理を面付け処理を行わないものとできる。
【００２４】
また、分割印刷ジョブデータ生成部を、ｎ＋１（ｎは１以上の整数）番目の分割印刷ジョブデータの展開処理が、ｎ番目の分割印刷ジョブデータのページデータの印刷部における印刷処理の間に完了するように分割印刷ジョブデータの分割数を決定するものとできる。
【００２５】
また、分割印刷ジョブデータ生成部を、ｎ番目の分割印刷ジョブデータのページデータの出力処理の時間とｎ＋１番目の分割印刷ジョブデータの展開処理の時間との加算値が、ｎ番目の分割印刷ジョブデータの印刷処理時間以下となるように分割印刷ジョブデータの分割数を決定するものとできる。
【００２６】
また、展開処理部を、ｎ（ｎは１以上の整数）番目の分割印刷ジョブデータの展開処理とページデータの出力が終了した時点からｎ＋１番目の分割印刷ジョブデータの展開処理を開始するものとできる。
【００２７】
また、分割印刷ジョブデータ生成部を、下式（１）を満たす最大のｍの値を分割数として決定するものとできる。
【００２８】
Ｎａ/ｍＸ−（Ｎａ/ｍｔ ＋ ｛Ｎａ（ｍ−２）｝/ｍｒ ＋ Ｎａ/ｍＲ） ＞ ０・・・（１）
ただし、Ｎａは印刷ジョブデータの全ページ数、ｒは分割印刷ジョブデータに割り当てられたページ以外のページの展開処理の速度、Ｒは分割印刷ジョブデータに割り当てられたページの展開処理の速度、ｔは分割印刷ジョブデータのページデータの出力処理速度、Ｘは印刷部の印刷処理速度
また、印刷ジョブデータの全ページ数Ｎａ、分割印刷ジョブデータに割り当てられたページ以外のページの展開処理の速度ｒ、分割印刷ジョブデータに割り当てられたページの展開処理の速度Ｒ、および分割印刷ジョブデータのページデータの出力処理速度ｔのうちの少なくとも１つを印刷ジョブデータの内容を解析することによって取得するプリフライト処理部を設けることができる。
【００２９】
また、印刷ジョブデータの全ページ数Ｎａ、分割印刷ジョブデータに割り当てられたページ以外のページの展開処理の速度ｒ、分割印刷ジョブデータに割り当てられたページの展開処理の速度Ｒ、および分割印刷ジョブデータのページデータの出力処理速度ｔのうちの少なくとも１つを設定入力可能な入力部を設けることができる。
【００３０】
また、分割印刷ジョブデータ生成部を、複数の印刷部の種類とその印刷部に対応する印刷処理速度の情報とを対応づけたテーブルを有するものとし、印刷部の種類を取得してテーブルを参照することによって印刷処理速度の情報を取得するものとできる。
【００３１】
また、分割印刷ジョブデータ生成部を、印刷部から出力された印刷処理速度の情報を取得するものとできる。
【００３２】
また、ページデータに基づいて面付け処理を行う面付処理部を設け、分割印刷ジョブデータ生成部を、面付け処理を行う際の面付け数を取得するものとするとともに、さらに、上記決定した分割印刷ジョブデータの分割数によって印刷ジョブデータの全ページ数を除算して取得された分割ページ数候補が面付け数で割り切れるか否かを判定し、分割ページ数候補が面付け数で割り切れる場合には、分割ページ数候補を分割ページ数とするとともに、上記決定した分割印刷ジョブデータの分割数を用いて分割を行い、分割ページ数候補が面付け数で割り切れない場合には、分割ページ数候補を超える面付け数の倍数のうちの最小値を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて分割を行うものとできる。
【００３３】
また、ページデータに基づいて面付処理を行う面付処理部を設け、分割印刷ジョブデータ生成部を、面付け処理を行う際の面付け数を取得するとともに、その面付け数よりも大きい予め設定された分割基準ページ数を取得するものとし、さらに、上記決定した分割印刷ジョブデータの分割数によって印刷ジョブデータの全ページ数を除算して取得された第１の分割ページ数候補が、面付け数で割り切れるか否かを判定し、第１の分割ページ数候補が面付け数で割り切れる場合には、その第１の分割ページ数候補を第２の分割ページ数候補として決定し、第１の分割ページ数候補が面付け数で割り切れない場合には、第１の分割ページ数候補を超える面付け数の倍数のうちの最小値を第２の分割ページ数候補として決定し、次いで、第２の分割ページ数候補が、分割基準ページ数で割り切れるか否かを判定し、第２の分割ページ数候補が分割基準ページ数で割り切れる場合には、その第２の分割ページ数候補を第３の分割ページ数候補として決定し、第２の分割ページ数候補が前記分割基準ページ数で割り切れない場合には、第２の分割ページ数候補を超える面付け数と分割基準ページ数との公倍数であって最小の値を第３の分割ページ数候補として決定し、その後、第２の分割ページ数候補を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて分割を行った場合の印刷ジョブデータの処理時間と、第３の分割ページ数候補を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて分割を行った場合の印刷ジョブデータの処理時間との差が、予め設定された処理時間許容増加量以下である場合には、第３の分割ページ数候補に基づく分割ページ数および分割数を用いて分割を行い、上記差が、処理時間許容増加量を超える場合には、第２の分割ページ数候補に基づく分割ページ数および分割数を用いて分割を行うものとできる。
【００３４】
また、ページデータに基づいて面付処理を行う面付処理部を設け、分割印刷ジョブデータ生成部を、面付け処理を行う際の面付け数を第１の分割基準ページ数として取得するとともに、その第１の分割基準ページ数よりも大きい予め設定された１または複数の第ｋ（ｋは２〜ｎ）の分割基準ページ数を取得するものとし、さらに、上記決定した分割印刷ジョブデータの分割数によって印刷ジョブデータの全ページ数を除算して取得された第１の分割ページ数候補が、第１の分割基準ページ数で割り切れるか否かを判定し、第１の分割ページ数候補が第１の分割基準ページ数で割り切れる場合には、その第１の分割ページ数候補を第２の分割ページ数候補として決定し、第１の分割ページ数候補が第１の分割基準ページ数で割り切れない場合には、第１の分割ページ数候補を超える第１の分割基準ページ数の倍数のうちの最小値を第２の分割ページ数候補として決定し、その第２の分割ページ数候補を決定した後、第ｋの分割ページ数候補が、第ｋの分割基準ページ数で割り切れるか否かを判定し、第ｋの分割ページ数候補が第ｋの分割基準ページ数で割り切れる場合には、その第ｋの分割ページ数候補を第ｋ＋１の分割ページ数候補として決定し、第ｋの分割ページ数候補が第ｋの分割基準ページ数で割り切れない場合には、第ｋの分割ページ数候補を超える第１〜第ｋの分割基準ページ数の公倍数であって最小の値を第ｋ＋１の分割ページ数候補として決定し、その後、第２の分割ページ数候補を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて分割を行った場合の印刷ジョブデータの処理時間と、第ｋ＋１の分割ページ数候補を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて分割を行った場合の印刷ジョブデータの処理時間との差が、予め設定された処理時間許容増加量以下である場合には、第ｋ＋１の分割ページ数候補に基づく分割ページ数および分割数を用いて分割を行い、上記差が、処理時間許容増加量を超える場合には、第ｋの分割ページ数候補に基づく分割ページ数および分割数を用いて分割を行うものとできる。
【００３５】
本発明の印刷データ生成プログラムは、コンピュータを、複数ページの印刷データを有し、印刷部において認識可能な印刷ジョブデータを受け付ける印刷ジョブデータ受付部と、複数ページを所定の複数ページ毎に分割してその分割した複数ページを印刷ジョブデータ受付部によって受け付けられた印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成する分割印刷ジョブデータ生成部と、その分割印刷ジョブデータ生成部によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、その各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、その展開処理が施された順に、分割印刷ジョブデータ毎についてページ順の遅い順にページデータを印刷部に出力する展開処理部として機能させるものであることを特徴とする。
【００３６】
本発明の印刷装置は、上記印刷データ生成装置と、印刷データ生成装置から出力されたページデータに基づいて印刷処理を行う印刷部とを備えたことを特徴とする。
【発明の効果】
【００３７】
本発明の印刷データ生成装置およびプログラム並びに印刷装置によれば、印刷ジョブデータの複数ページを所定の複数ページ毎に分割し、その分割した複数ページを印刷ジョブデータに割り当てることによって複数の分割印刷ジョブデータを生成し、その分割印刷ジョブデータをページ順の遅い順に並べるとともに、その各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、その展開処理が施された順に、分割印刷ジョブデータ毎についてページ順の遅い順にページデータを印刷部に出力するようにしたので、展開処理による待ち時間を短縮することができ高速な印刷出力が可能になるとともに、ユーザーが印刷物を並べなおすことなくページ順に並んだ印刷物を取得することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の印刷データ生成装置の第１の実施形態を用いたプリンタシステムの概略構成を示すブロック図
【図２】本発明の印刷データ生成装置の第１の実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図３】分割印刷ジョブデータのイメージ図
【図４】各分割印刷ジョブデータの各処理のタイミングチャート
【図５】各分割印刷ジョブデータの各処理のその他のタイミングチャート
【図６】本発明の印刷データ生成装置の第２の実施形態を用いたプリンタシステムの概略構成を示すブロック図
【図７】本発明の印刷データ生成装置の第２の実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図８】印刷エンジンの機種とその印刷処理速度の情報とを対応付けたテーブルの一例を示す図
【図９】本発明の印刷データ生成装置の第３の実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図１０】本発明の印刷データ生成装置の第３の実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図１１】本発明の印刷データ生成装置の第３の実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図１２】各分割印刷ジョブデータの各処理のその他のタイミングチャート
【発明を実施するための形態】
【００３９】
以下、図面を参照して本発明の印刷データ生成装置およびプログラムの第１の実施形態を用いたプリンタシステムについて詳細に説明する。図１は、本実施形態のプリンタシステムの全体概略構成図である。
【００４０】
本実施形態のプリンタシステムは、図１に示すように、コンピュータ１０と、コンピュータ１０に有線または無線ＬＡＮなどのネットワークを介して接続された印刷装置２０とを備えている。
【００４１】
コンピュータ１０は、図１に示すように、アプリケーション１１とプリンタドライバ１２とを備えている。なお、アプリケーション１１およびプリンタドライバ１２は、コンピュータ１０にインストールされたプログラムによって構成されるものである。
【００４２】
アプリケーション１１は、メモ帳やＷｏｒｄ（登録商標）などのような原稿画像を表す画像データを編集することができるプログラムであり、アプリケーション１１において編集された画像データはプリンタドライバ１２に出力される。
【００４３】
プリンタドライバ１２は、印刷枚数や印刷部数、両面印刷やＮアップ印刷などの種々の印刷条件および出力方法などの操作者による入力を受け付けるユーザーインターフェースを有し、その印刷条件や出力方法などに応じて、印刷装置２０において認識可能な印刷ジョブデータを生成して出力するものである。本実施形態におけるプリンタドライバ１２は、印刷ジョブデータとして、ＰＤＬ（Page Description Language）データを生成するものである。なお、印刷条件や出力方法などはコンピュータ１０に設けられたキーボードやマウスなどの所定の入力手段によって入力される。
【００４４】
印刷装置２０は、図１に示すように、印刷ジョブデータ受付部２１と、分割印刷ジョブデータ生成部２２と、展開処理部２３と、印刷エンジン２４とを備えている。
【００４５】
印刷ジョブデータ受付部２１は、コンピュータ１０のプリンタドライバ１２から出力された複数ページの印刷データを有する印刷ジョブデータを受け付けるものである。
【００４６】
分割印刷ジョブデータ生成部２２は、印刷ジョブデータの全ページを所定の複数ページ毎に分割し、その分割した複数ページを印刷ジョブデータにそれぞれ割り当てることによって複数の分割印刷ジョブデータを生成するものである。なお、分割印刷ジョブデータ生成部２２は、入力された印刷ジョブデータを一旦記憶するとともに、その印刷ジョブデータに基づいて生成した分割印刷ジョブデータを記憶するメモリなどの記憶部を備えているものとする。また、具体的な分割印刷ジョブデータの生成方法については、後で詳述する。
【００４７】
展開処理部２３は、分割印刷ジョブデータ生成部２２によって生成された分割印刷ジョブデータをページ順の遅い順に並べるとともに、その各分割印刷ジョブデータに対して並べられた順で展開処理を施してページ毎のページデータを生成し、その展開処理が施された順に、分割印刷ジョブデータ毎についてページ順の遅い順にページデータを印刷エンジン２４に出力するものである。なお、展開処理部２３は、生成したページデータを一旦記憶するメモリなどの記憶部を備えているものとする。また、具体的な展開処理の方法については、後で詳述する。
【００４８】
印刷エンジン２４は、展開処理部２３から出力されたページデータに基づいて印刷用紙に印刷処理を施すものであり、たとえば、孔版印刷プリンタやインクジェットプリンタやレーザープリンタなどを用いることができる。
【００４９】
次に、本実施形態のプリンタシステムの作用について、図２に示すフローチャートを参照しながら説明する。
【００５０】
まず、アプリケーション１１が起動され、このアプリケーション１１を用いて文書、イラスト、写真画像などが編集されて画像データが生成される（Ｓ１０）。
【００５１】
そして、アプリケーション１１において印刷指示が選択されると、プリンタドライバ１２のユーザーインターフェースが起動されて種々の印刷条件および出力方法などの入力を受け付ける印刷条件受付画面が表示され、その印刷条件受付画面において種々の印刷条件および出力方法などが操作者によって所定の入力手段を用いて設定された後、印刷指示が選択されると、プリンタドライバ１２はその印刷条件や出力方法と画像データとに基づいて、印刷ジョブデータを生成する（Ｓ１２）。
【００５２】
そして、プリンタドライバ１２において生成された印刷ジョブデータは印刷装置２０に出力され、印刷ジョブデータ受付部２１によって受け付けられる。そして、印刷ジョブデータ受付部２１によって受け付けられた印刷ジョブデータは分割印刷ジョブデータ生成部２２に出力され、分割印刷ジョブデータ生成部２２において、入力された印刷ジョブデータに基づいて、分割印刷ジョブデータが生成される（Ｓ１４）。
【００５３】
ここで、本実施形態においては、印刷ジョブデータとして５０ページの印刷データを有する印刷ジョブデータが印刷ジョブデータ受付部２１によって受け付けられ、その５０ページの印刷ジョブデータに基づいて、複数の分割印刷ジョブデータが生成される場合について説明する。
【００５４】
具体的には、分割印刷ジョブデータ生成部２２は、５０ページを１０ページ毎に５つのページ群に分け、その５つのページ群をそれぞれ印刷ジョブデータに割り当てることによって５つの分割印刷ジョブデータを生成する。なお、本実施形態においては、全ページを５つのページ群に分割するようにしたが、分割数についてはこれに限らず、その他の分割数を採用してもよい。ただし、印刷処理時間の短縮の効果を得るためには、所定の条件を満たす分割数に設定することが望ましいが、その分割数の設定方法については、後述する本発明の第２の実施形態において説明する。本実施形態については、所定の条件を満たすような分割数が予め取得されて設定されているものとする。
【００５５】
図３に、上述したようにして生成された５つの分割印刷ジョブデータのイメージ図を示す。図３に示すように、印刷ジョブデータに５０ページのうちの１ページ目から１０ページ目までを割り当てて第１の分割印刷ジョブデータを生成し、１１ページ目から２０ページ目までを割り当てて第２の分割印刷ジョブデータを生成し、２１ページ目から３０ページ目までを割り当てて第３の分割印刷ジョブデータを生成し、３１ページ目から４０ページ目までを割り当てて第４の分割印刷ジョブデータを生成し、４１ページ目から５０ページ目までを割り当てて第５の分割印刷ジョブデータを生成する。
【００５６】
そして、分割印刷ジョブデータ生成部２２は、第１〜第５の分割印刷ジョブデータを展開処理部２３に出力し、展開処理部２３において、入力された分割印刷ジョブデータに対して展開処理が施される（Ｓ１６）。図４（Ａ）に、第１〜第５の分割印刷ジョブデータの各処理のタイミングチャートを示す。
【００５７】
具体的には、展開処理部２３は、まず、入力された第１〜第５の分割印刷ジョブデータをページ順の遅い順に並べる。すなわち、第５の分割印刷ジョブデータを先頭にして第４の分割印刷ジョブデータ、第３の分割印刷ジョブデータ、第２の分割印刷ジョブデータ、第１の分割印刷ジョブデータの順に並べる。
【００５８】
次に、図４（Ａ）に示すように、上述したように並べられた順で分割印刷ジョブデータに対して展開処理を施してページ毎のビットマップデータをページデータとして生成し、展開処理が施された順に、分割印刷ジョブデータ毎についてページ順の遅い順にビットマップデータを印刷エンジン２４に出力する。
【００５９】
すなわち、まず、４１ページ目から５０ページ目が割り当てられた第５の分割印刷ジョブデータの展開処理が行われる。具体的には、図３に示すように、最初に１ページ目から４０ページ目までの展開処理が行われ、これらのページのビットマップデータについては記憶されることなく破棄される。そして、４１ページ目から５０ページ目までの展開処理がページ順に施されてビットマップデータが生成され、メモリなどの記憶部に格納される（Ｓ１８，Ｓ２０）。なお、以下の説明では、上述したように展開処理後にビットマップデータを破棄する処理を展開破棄処理といい、展開処理後にビットマップデータを記憶部に格納する処理を展開格納処理という。
【００６０】
ここで、展開処理部２３は、１ページ目から４０ページ目にまでに施される展開破棄処理の解像度の方が、４１ページ目から５０ページ目までに施される展開格納処理の解像度よりも低くなるように展開処理を行う。すなわち、展開処理部２３は、分割印刷ジョブデータに割り当てられたページ以外のページの展開破棄処理の方が、分割印刷ジョブデータに割り当てられたページの展開格納処理よりも解像度が低くなるように展開処理を行う。
【００６１】
また、たとえば、印刷ジョブデータの印刷条件として両面印刷やＮアップ印刷など面付け処理が必要な印刷条件が設定されている場合には、展開処理部２３は、分割印刷ジョブデータに割り当てられたページ以外のページの展開破棄処理を行う際には面付け処理を行わず、分割印刷ジョブデータに割り当てられたページの展開格納処理を行う際には面付け処理を行うようにする。なお、本実施形態における面付け処理とは、両面印刷の場合に２ページ毎のデータを１枚の印刷用紙の表面と裏面とに割り付ける処理や、Ｎアップ印刷の場合に複数ページのデータを印刷用紙の１面に割り付ける処理のことである。この処理を行うためには、まず、面付け後の各ページの割付サイズを計算し、面付け後の各ページの割付方向と位置とを計算し、面付け後の割付サイズ並びに割付方向となるように各ページの展開処理を行った後、面付け後のページ（メモリ上のイメージフレーム）上に、展開処理したページデータを割付位置に合わせて配置する必要があり、大変複雑な処理である。
【００６２】
また、印刷ジョブデータの印刷条件として文字スムージング処理が設定されている場合には、展開処理部２３は、分割印刷ジョブデータに割り当てられたページ以外のページの展開破棄処理を行う際には文字スムージング処理を行わず、分割印刷ジョブデータに割り当てられたページの展開格納処理を行う際には文字スムージング処理を行うようにする。なお、文字スムージング処理とは、多値データに展開する場合に、文字などの輪郭をスムスに見せるための処理であり、この処理は、一旦解像度の高いデータを生成し、そのデータから隣接しあった複数のピクセルの濃度を平均化して解像度を下げていくことで最終的に生成する解像度のデータにおいて、隣接するピクセルの濃度差が小さくなるような処理である。したがって、この処理も、一旦高い解像度のデータを生成する処理と、その後の解像度を下げていく処理とが必要であり、大変複雑な処理である。
【００６３】
要するに、展開処理部２３は、展開破棄処理の方が展開格納処理よりも処理の負荷が軽くなるような処理を行う。以下で説明する第４〜第１の分割印刷ジョブデータの展開処理についても同様である。
【００６４】
そして、展開処理部２３は、５０ページ目までの展開処理が終わると最後の５０ページ目から順に４１ページ目までのビットマップデータを印刷エンジン２４に出力する（Ｓ２２）。
【００６５】
そして、印刷エンジン２４は、展開処理部２３から出力された５０ページ目のビットマップを受け付けるとそのビットマップデータに基づいて５０ページ目の印刷処理を開始し、その後、受け付けたページの印刷処理を順次行っていくが、図４（Ａ）に示すように、展開処理部２３からのビットマップデータの出力処理（図４（Ａ）の矢印）と印刷エンジンにおける印刷処理（図４（Ａ）の縦線部）とは並行して行われる。そして、印刷エンジン２４において印刷処理の施された印刷用紙が５０ページ目から順に印刷エンジン２４から排紙されるが、このとき印刷面が上向きの状態で排紙される。
【００６６】
そして、図４（Ａ）に示すように、第５の分割印刷ジョブデータのビットマップデータの出力処理が終了した時点から次の第４の分割印刷ジョブデータの展開処理が開始される（Ｓ２４，Ｓ１６）。なお、本実施形態のプリンタシステムにおいては、ハードウェアの都合上、ビットマップデータの出力処理と展開処理とが並行して行えないように構成されているが、特にこれに限定されることなくこれらの処理を並行して行うようにしてもよい。その場合には、第５の分割印刷ジョブデータの展開格納処理が終了した時点からその展開処理後のビットマップデータの出力処理と第４の分割印刷ジョブデータの展開破棄処理とを並行して行うようにしてもよい。
【００６７】
そして、第５の分割印刷ジョブデータの印刷処理と並行して第４の分割印刷ジョブデータの展開処理が行われる。具体的には、図３に示すように、まず、１ページ目から３０ページ目までの展開破棄処理が行われ、これらのページのビットマップデータについては記憶されることなく破棄される。そして、３１ページ目から４０ページ目までの展開格納処理がページ順に施されてビットマップデータが生成され、メモリなどの記憶部に格納される（Ｓ１８，Ｓ２０）。そして、展開処理部２３は、４０ページ目までの展開処理が終わると４０ページ目から順に３１ページ目までのビットマップデータを印刷エンジン２４に出力する（Ｓ２２）。
【００６８】
そして、印刷エンジン２４は、展開処理部２３から出力された４０ページ目のビットマップを受け付けるとそのビットマップデータに基づいて４０ページ目の印刷処理を開始し、その後、受け付けたページの印刷処理を順次行っていくが、展開処理部２３からのビットマップデータの出力処理と印刷エンジンにおける印刷処理とは並行して行われる。
【００６９】
そして、印刷エンジン２４において印刷処理の施された印刷用紙が４０ページ目から順に印刷エンジン２４から排紙されるが、このとき印刷面が上向きの状態で排紙される。
【００７０】
そして、図４（Ａ）に示すように、第４の分割印刷ジョブデータの印刷処理と並行して第３の分割印刷ジョブデータの展開処理が行われる。具体的には、図３に示すように、まず、１ページ目から２０ページ目までの展開破棄処理が行われ、これらのページのビットマップデータについては記憶されることなく破棄される。そして、２１ページ目から３０ページ目までの展開格納処理がページ順に施されてビットマップデータが生成され、メモリなどの記憶部に格納される（Ｓ１８，Ｓ２０）。そして、展開処理部２３は、３０ページ目までの展開処理が終わると３０ページ目から順に２１ページ目までのビットマップデータを印刷エンジン２４に出力する（Ｓ２２）。
【００７１】
そして、印刷エンジン２４は、展開処理部２３から出力された３０ページ目のビットマップを受け付けるとそのビットマップデータに基づいて３０ページ目の印刷処理を開始し、その後、受け付けたページの印刷処理を順次行っていくが、第３の分割印刷ジョブデータについては、図４（Ａ）に示すように、印刷エンジン２４が３０ページ目のビットマップデータを受け付けた時点において第４の分割印刷ジョブデータの印刷処理が終了していないので、印刷エンジン２４は、第４の分割印刷ジョブデータの印刷処理が終了した時点から３０ページ目のビットマップデータの印刷処理を開始することになる。
【００７２】
そして、印刷エンジン２４において印刷処理の施された印刷用紙が３０ページ目から順に印刷エンジン２４から排紙されるが、このとき印刷面が上向きの状態で排紙される。
【００７３】
そして、図４（Ａ）に示すように、第３の分割印刷ジョブデータの印刷処理と並行して第２の分割印刷ジョブデータの展開処理が行われる。具体的には、図３に示すように、まず、１ページ目から１０ページ目までの展開破棄処理が行われ、これらのページのビットマップデータについては記憶されることなく破棄される。そして、１１ページ目から２０ページ目までの展開格納処理がページ順に施されてビットマップデータが生成され、メモリなどの記憶部に格納される（Ｓ１８，Ｓ２０）。そして、展開処理部２３は、２０ページ目までの展開処理が終わると２０ページ目から順に１１ページ目までのビットマップデータを印刷エンジン２４に出力する（Ｓ２２）。
【００７４】
そして、印刷エンジン２４は、展開処理部２３から出力された２０ページ目のビットマップを受け付けるとそのビットマップデータに基づいて２０ページ目の印刷処理を開始し、その後、受け付けたページの印刷処理を順次行っていくが、第２の分割印刷ジョブデータについても、図４（Ａ）に示すように、印刷エンジン２４が２０ページ目のビットマップデータを受け付けた時点において第３の分割印刷ジョブデータの印刷処理が終了していないので、印刷エンジン２４は、第３の分割印刷ジョブデータの印刷処理が終了した時点から２０ページ目のビットマップデータの印刷処理を開始することになる。
【００７５】
そして、印刷エンジン２４において印刷処理の施された印刷用紙が２０ページ目から順に印刷エンジン２４から排紙されるが、このとき印刷面が上向きの状態で排紙される。
【００７６】
そして、図４（Ａ）に示すように、第２の分割印刷ジョブデータの印刷処理と並行して第１の分割印刷ジョブデータの展開処理が行われる。具体的には、図３に示すように、１ページ目から１０ページ目までの展開格納処理がページ順に施されてビットマップデータが生成され、メモリなどの記憶部に格納される（Ｓ１８，Ｓ２０）。そして、展開処理部２３は、１０ページ目までの展開格納処理が終わると１０ページ目から順に１ページ目までのビットマップデータを印刷エンジン２４に出力する（Ｓ２２）。
【００７７】
そして、印刷エンジン２４は、展開処理部２３から出力された１０ページ目のビットマップを受け付けるとそのビットマップデータに基づいて１０ページ目の印刷処理を開始し、その後、受け付けたページの印刷処理を順次行っていくが、第１の分割印刷ジョブデータについても、図４（Ａ）に示すように、印刷エンジン２４が１０ページ目のビットマップデータを受け付けた時点において第２の分割印刷ジョブデータの印刷処理が終了していないので、印刷エンジン２４は、第２の分割印刷ジョブデータの印刷処理が終了した時点から１０ページ目のビットマップデータの印刷処理を開始することになる。
【００７８】
そして、印刷エンジン２４において印刷処理の施された印刷用紙が１０ページ目から順に印刷エンジン２４から排紙されるが、このとき印刷面が上向きの状態で排紙される。
【００７９】
ここで、図４（Ｂ）に、本実施形態のプリンタシステムの処理時間と従来のプリンタシステムの処理時間とを比較するために従来のプリンタシステムの各処理のタイミングチャートも示している。従来のプリンタシステムにおいては、印刷ジョブデータ全体の展開処理が終了した後、データ出力処理および印刷処理が行われる。
【００８０】
図４（Ａ），（Ｂ）に示すように、本実施形態のプリンタシステムは、前の分割印刷ジョブデータの印刷処理と並行して次の分割印刷ジョブデータの展開処理を行うようにしたので、従来のプリンタシステムと比較すると処理時間が短縮することがわかる。
【００８１】
ここで、上述したとおり、上記実施形態のプリンタシステムにおいては、分割印刷ジョブデータ毎に所定の複数ページが割り当てられているが、展開処理を行う際には、１ページ目からその割り当てられたページに到達するまでのページについても展開破棄処理を行う必要がある。
【００８２】
したがって、場合によっては、１ページ目から割り当てられたページまで到達するまでのページの展開処理に要するオーバーヘッド時間と分割印刷ジョブデータのデータ出力処理の時間との合計が、図４（Ａ）に示す短縮時間を上回り、図５（Ａ）に示すように印刷ジョブデータを第１〜第５の印刷分割ジョブデータに分割して処理を行った方が、図５（Ｂ）に示す従来のプリントシステムの処理の時間よりも長い時間がかかってしまうことがある。
【００８３】
そこで、このような問題を生じないように構成された本発明の印刷データ生成装置の第２の実施形態を用いたプリンタシステムについて説明する。図６は、本発明の印刷データ生成装置の第２の実施形態を用いたプリンタシステムの概略構成を示すブロック図である。
【００８４】
第２の実施形態のプリンタシステムは、図６に示すように、第１の実施形態のプリンタシステムに対してさらにプリフライト処理部２５を設けたものである。
【００８５】
プリフライト処理部２５は、印刷ジョブデータ受付部２１によって受け付けられた印刷ジョブデータの内容を解析し、その解析結果に基づいて分割印刷ジョブデータ生成部２２において生成される分割印刷ジョブデータの分割数を算出するものである。
【００８６】
第２の実施形態のプリンタシステムの作用を図７に示すフローチャートを参照しながら説明する。
【００８７】
まず、コンピュータ１０において画像データを生成し、その画像データに基づいて印刷ジョブデータを生成するステップ３０〜Ｓ３２までについては、上述した第１の実施形態の説明と同様である。
【００８８】
そして、コンピュータ１０から出力された印刷ジョブデータは、印刷装置３０の印刷ジョブデータ受付部２１によって受け付けられた後、プリフライト処理部２５に出力される。
【００８９】
プリフライト処理部２５は、入力された印刷ジョブデータの内容を解析し、分割印刷ジョブデータの分割数を決定するためのパラメータを取得する（Ｓ３４，Ｓ３６）。
【００９０】
具体的には、プリフライト処理部２５は、上記パラメータとして、印刷ジョブデータの全ページ数Ｎａ、ジョブ分割処理速度ｓ、展開破棄処理速度ｒ、展開処理速度Ｒ、およびデータ出力処理速度ｔを取得する。
【００９１】
プリフライト処理部２５は、印刷ジョブデータの全ページ数Ｎａについては、印刷ジョブデータに含まれる全ページ数の情報を読み出すことによって取得する。
【００９２】
ジョブ分割処理速度ｓ（ページ/秒）とは、たとえば、印刷ジョブデータを一旦記憶部に記憶し、その記憶した印刷ジョブデータを読出し、その印刷ジョブデータに基づいて分割印刷ジョブデータを生成し、その分割印刷ジョブデータを記憶部に記憶するまでの間の処理速度のことをいい、プリフライト処理部２５は、印刷ジョブデータのサイズと記憶部の入出力速度に基づいてジョブ分割処理速度ｓを算出する。なお、印刷ジョブデータのサイズについては印刷ジョブデータを解析することによって取得され、記憶部の入出力速度については予め設定されているものとする。
【００９３】
展開破棄処理速度ｒ（ページ/秒）とは、展開破棄処理を行う際の１秒あたりの処理ページの数のことをいい、展開処理速度Ｒ（ページ/秒）とは、展開格納処理を行う際の１秒あたりの処理ページの数のことをいう。
【００９４】
プリフライト処理部２５は、展開破棄処理速度ｒおよび展開処理速度Ｒについては、印刷ジョブデータの一部のページまたは全ページについて低解像度で展開破棄処理を行うとともに、印刷ジョブデータの一部のページまたは全ページについて通常の解像度で展開格納処理を行い、その展開破棄処理と展開格納処理とを行うのに要した時間をそれぞれ計測する。具体的には、展開破棄処理の際には、印刷ジョブデータの一部または全部をメモリ上に読み込み、その印刷ジョブデータを最初から解析して、「改ページコマンド」が記録されている部分のデータまで到達するまで、低解像処理など、通常の展開処理よりも負荷の軽い状態で展開処理を行い、１ページ分のイメージデータをメモリ上に生成し、ハードディスクなどへの格納は行わない。上記処理を指定されているページまで繰り返す。また、展開格納処理の際には、印刷ジョブデータの一部または全部をメモリ上に読み込み、印刷ジョブデータを指定ページから解析して、「改ページコマンド」が記録されている部分のデータまで到達するまで、通常の展開処理を行い１ページ分のイメージデータをメモリ上に生成し、その生成したイメージデータをハードディスクに保存する。上記処理を最終ページまで繰り返す。
【００９５】
そして、処理対象のページ数を計測した時間（秒）で除算することによって展開破棄処理速度ｒと展開処理速度Ｒとを算出する。なお、計測時間と展開破棄処理速度ｒとの対応関係を示すテーブルと計測時間と展開処理速度Ｒとの対応関係を示すテーブルをそれぞれ予め設定しておき、このテーブルを参照することによって展開破棄処理速度ｒと展開処理速度Ｒとを取得するようにしてもよい。
【００９６】
データ出力処理速度ｔ（ページ/秒）は、展開格納処理の施されたビットマップデータを記憶部から読み出して印刷エンジン２４に出力する際の処理速度である。プリフライト処理部２５は、印刷ジョブデータのサイズと記憶部のデータ転送速度とに基づいてデータ出力処理速度ｔを算出する。印刷ジョブデータのサイズについては、印刷ジョブデータを解析することによって取得し、その印刷ジョブデータに対応するビットマップデータのサイズを取得し、ビットマップデータのサイズとデータ転送速度とに基づいてデータ出力処理速度ｔを算出する。印刷ジョブデータのサイズとビットマップデータのサイズとの関係は予め設定されているものとし、記憶部のデータ転送速度についても予め設定されているものとする。
【００９７】
そして、プリフライト処理部２５において取得された上記パラメータは、分割印刷ジョブデータ生成部２２に出力され、分割印刷ジョブデータ生成部２２は、入力されたパラメータに基づいて分割印刷ジョブデータの分割数を算出する（Ｓ３８）。
【００９８】
具体的には、分割印刷ジョブデータ生成部２２は、ｎ＋１（ｎは１以上の整数）番目の分割印刷ジョブデータの展開処理が、ｎ番目の分割印刷ジョブデータのビットマップデータの印刷処理の間に完了するように分割印刷ジョブデータの分割数を決定する。以下、その具体的な算出方法について検討する。
【００９９】
まず、本実施形態においては、データ出力処理と展開処理とを並列に行うことができないので、ｎ＋１（ｎは１以上の整数）番目の分割印刷ジョブデータの展開処理が、ｎ番目の分割印刷ジョブデータのビットマップデータの印刷処理の間に完了するようにするには、ｎ番目の分割印刷ジョブデータのビットマップデータの出力処理とｎ＋１番目の分割印刷ジョブデータの展開破棄処理時間および展開格納処理時間との加算値を、ｎ番目の分割印刷ジョブデータの印刷処理時間以下とする必要がある。
【０１００】
ここで、各分割印刷ジョブデータの展開破棄処理時間については、先に展開処理が施される分割印刷ジョブデータほど展開破棄処理を行う対象のページ数が多いことになるので、先に展開処理が施される分割印刷ジョブデータほど長い時間になる。また、展開格納処理時間については、各分割印刷ジョブデータのページ数が同じであるとすると全ての分割印刷ジョブデータの展開格納処理時間が同じになる。また、ビットマップデータの出力処理時間と印刷エンジン２４における印刷処理時間については、各分割印刷ジョブデータのページ数が同じであるとするとこれも全て同じ時間となる。
【０１０１】
すなわち、各分割印刷ジョブデータ間で変動する時間は展開破棄処理時間だけであるので、この展開破棄処理時間は先に展開処理の施される分割印刷ジョブデータほど長いので、上述したようにｎ番目の分割印刷ジョブデータのビットマップデータの出力処理とｎ＋１番目の分割印刷ジョブデータの展開破棄処理時間および展開格納処理時間との加算値を、ｎ番目の分割印刷ジョブデータの印刷処理時間以下とするためには、１番目の分割印刷ジョブデータのビットマップデータの出力処理時間と２番目に展開処理の施される分割印刷ジョブデータの展開破棄処理時間および展開格納処理時間との加算値が、１番目の分割印刷ジョブデータのビットマップデータの印刷エンジン２４における印刷処理時間以下となるようにすればよく、この条件を満たせばその他の分割印刷ジョブデータ間もこの条件を満たすことになる。なお、ここでいう１番目、２番目の数値は、図３に示す第１、第２、・・・の数値とは異なるものであり、ここでいう１番目の印刷ジョブデータは、図３では第５の印刷ジョブデータに相当し、２番目の印刷ジョブデータは、図３では第４の印刷ジョブデータに相当する。
【０１０２】
そして、分割印刷ジョブデータの分割数をｍとすると、１番目の分割印刷ジョブデータのビットマップデータの出力処理時間はＮａ/ｍｔで表され、２番目に展開処理の施される分割印刷ジョブデータの展開破棄処理時間は｛Ｎａ（ｍ−２）｝/ｍｒで表され、展開格納処理時間はＮａ/ｍＲで表される。また、１番目の分割印刷ジョブデータのビットマップデータの印刷処理時間は、印刷エンジン２４における印刷処理速度をＸ（ページ/秒）とするとＮａ/ｍＸで表される。なお、印刷処理速度Ｘについては、本実施形態においては予め設定されているものとする。
【０１０３】
したがって、上記条件を満たすには下式（１）を満たせば良いことになる。
【０１０４】
Ｎａ/ｍＸ−（Ｎａ/ｍｔ ＋ ｛Ｎａ（ｍ−２）｝/ｍｒ ＋ Ｎａ/ｍＲ） ＞ ０・・・（１）
一方、全体処理時間を短くするためには、図４（Ａ）からもわかるように、ジョブ分割処理時間と最初の分割印刷ジョブデータの展開破棄処理時間および展開格納処理時間との加算値がより小さいことが望ましい。そして、ジョブ分割処理時間はＮａｍ/ｓで表され、最初の分割印刷ジョブデータの展開破棄処理時間は｛Ｎａ（ｍ−１）｝/ｍｒで表され、展開格納処理時間はＮａ/ｍＲで表されることから、これらの加算値は下式（２）で表すことができる。
【０１０５】
Ｎａｍ/ｓ＋｛Ｎａ（ｍ−１）｝/ｍｒ＋Ｎａ/ｍＲ  ・・・（２）
そして、この上式（２）を小さくするためには、下式（３）を満たすものとすると、分割数ｍがより大きい方が良いことになる。
【０１０６】
Ｎａ/ｓ＜＜Ｎａ/ｒ＜＜Ｎａ/Ｒ  ・・・（３）
したがって、上記のような検討結果から、本実施形態においては、上式（１）を満たす分割数ｍのうちの最大値を実際の分割数として取得する。
【０１０７】
なお、上式（１）に関してシミュレーションを実施した結果、印刷ジョブデータの全ページ数Ｎａの大きさに関わらず、最適な分割数ｍは一定であることがわかっている。
【０１０８】
また、上式（３）のＮａ/ｓ＜＜Ｎａ/ｒが成り立つのは、ジョブ分割処理速度ｓ（ページ/秒）は、ジョブ全体に対してデータ解析する部分がごく一部であるのに対し、展開破棄処理速度ｒ（ページ/秒）は、先頭ページから指定ページまでデータを全て解析する必要があり時間がかかるため、多ページという前提においてはｓ＞＞ｒとなるからである。また、上式（３）のＮａ/ｒ＜＜Ｎａ/Ｒが成り立つのは、展開破棄処理速度ｒ（ページ/秒）は、負荷の軽い展開処理を行うとともに、データをハードディスクに格納しないのに対し、展開格納処理速度Ｒ（ページ/秒）は、通常の展開処理を行うとともに、データをハードディスクに格納するので時間がかかるため、ｒ＞＞Ｒとなるからである。
【０１０９】
そして、分割印刷ジョブデータ生成部２２は、上式（１）に基づいて分割数を算出するが、上式（１）を満たす値が存在しない場合には（Ｓ４０，ＮＯ）、分割印刷ジョブデータを生成することなく印刷ジョブデータに基づいて従来と同様の処理を行う（Ｓ４２）。すなわち、印刷ジョブデータの１ページ目から最後のページに対し展開格納処理を施した後に、ビットマップデータの出力処理と印刷処理とを並行して行う。
【０１１０】
一方、上式（１）を満たす分割数が存在する場合には（Ｓ４０，ＹＥＳ）、その分割数の分割印刷ジョブデータを生成する（Ｓ４４）。すなわち、印刷ジョブデータにＮａ/ｍページをそれぞれ割り当てた分割印刷ジョブデータをｍ個生成する。
【０１１１】
そして、その後のＳ４６〜Ｓ５４までの処理については、上記第１の実施形態のＳ１６〜Ｓ２４までの処理と同様である。
【０１１２】
また、上記第２の実施形態の説明においては、印刷処理速度Ｘの情報を予め設定するようにしたが、これに限らず、たとえば、分割印刷ジョブデータ生成部２２において、図８に示すような印刷エンジン２４の機種情報と印刷処理速度Ｘとを対応付けたテーブルを予め記憶しておき、印刷エンジン２４からその機種情報を取得して上記テーブルを参照することによってその機種に応じた印刷処理速度Ｘを取得するようにしてもよい。このような構成にすれば、印刷エンジン２４のみが別個に構成され、種々の印刷エンジン２４が使用されるような場合でもその印刷エンジン２４に応じた印刷処理速度Ｘを設定することができる。
【０１１３】
また、上述したようなテーブルを設定するのではなく、印刷エンジン２４から印刷処理速度Ｘの情報自体を直接出力させ、これを分割印刷ジョブデータ生成部２２が取得するようにしてもよい。このように構成すれば、機種が予めわかっていない印刷エンジン２４が用いられた場合でも適切な印刷処理速度Ｘを取得することができ、適切な分割数を設定することができる。
【０１１４】
また、上記第２の実施形態においては、分割数を決定するためのパラメータをプリフライト処理によって取得するようにしたが、これに限らず、たとえば、操作者が所定の入力手段から任意に設定入力可能なように構成してもよい。
【０１１５】
次に、本発明の印刷データ生成装置の第３の実施形態を用いたプリンタシステムについて説明する。
【０１１６】
上記第２の実施形態を用いたプリンタシステムにおいては、ｎ番目の分割印刷ジョブデータの印刷処理時間内において、ｎ番目の分割印刷ジョブデータのビットマップデータの出力処理とｎ＋１番目の分割印刷ジョブデータの展開破棄処理および展開格納処理とが終了するように、分割印刷ジョブデータの分割数を決定するようにしたが、このようにして分割数を決定し、この分割数で印刷ジョブデータの全ページ数を除算して各分割印刷ジョブデータに割り当てられるページ数を決定した場合、印刷結果が好ましくない結果となる場合がある。
【０１１７】
具体的には、たとえば両面印刷を行う場合、各分割印刷ジョブデータに割り当てられたページ数が奇数である場合には、両面印刷の表面のページデータと裏面のページデータとが異なる分割印刷ジョブデータに属することになり、各分割印刷ジョブデータの最後に印刷されるページが片面印刷される問題が生じる。また、同様に、Ｎアップ印刷を行う場合、各分割印刷ジョブデータに割り当てられたページ数がＮの倍数でない場合には、１枚の印刷用紙に印刷されるべきＮ枚のページデータのうちの一部のページデータとそれ以外のページデータとが、異なる分割印刷ジョブデータに属することになり、各分割印刷ジョブデータの最後に印刷されるページにＮ枚のページデータのうちの一部のページデータのみが印刷される問題が生じる。すなわち、両面印刷やＮアップ印刷などといった面付け処理を行って印刷を行う場合に問題が生じることになる。
【０１１８】
また、上述したような面付け処理の制約だけでなく、たとえば、各分割印刷ジョブデータの印刷を、印刷装置における給紙部（図示省略）の給紙許容量や排紙部（図示省略）の排紙許容量などで終了させたり、もしくは印刷用紙の梱包枚数で終了させたりした方が、ワークフロー面や物理面から便利な場合がある。
【０１１９】
そこで、本発明の第３の実施形態を用いたプリンタシステムは、上述したような面付け処理の制約を考慮するとともに、給排紙許容量や梱包枚数などといった使用者の要望に応じた制約を考慮した分割数で印刷ジョブデータを分割するものである。
【０１２０】
第３の実施形態のプリンタシステムの構成については、図６に示す第２の実施形態のプリンタシステムと同様である。なお、上述した面付け処理は展開処理部２３において行われるものである。
【０１２１】
また、第３の実施形態のプリンタシステムの作用については、印刷ジョブデータの分割数を決定する方法以外は第２の実施形態のプリンタシステムと同様である。そして、第３の実施形態のプリンタシステムは、図７に示すフローチャートのＳ４０において上式（１）を満たす分割数が存在すると判断された後、その分割数をさらに最適化する処理を行うものである。
【０１２２】
以下、その印刷ジョブデータの分割数の最適化の作用について、図９〜図１１に示すフローチャートを参照しながら説明する。
【０１２３】
まず、分割印刷ジョブデータ生成部２２によって、第１〜第ｎの分割基準ページ数Ｃ１〜Ｃｎと処理時間許容増加量Ｄｍａｘとが取得される（Ｓ６０）。具体的には、本実施形態においては、第１の分割基準ページ基準数Ｃ１として上述した面付け処理の際の面付け数が取得される。すなわち、両面印刷の面付け処理を行う際には、第１の分割基準ページ数としてＣ１＝２が取得され、Ｎ（たとえば４）アップ印刷の面付け処理を行う際には、第１の分割基準ページ数としてＣ１＝Ｎ（たとえば４）が取得される。
【０１２４】
また、本実施形態においては、第２〜第ｎの分割基準ページ数Ｃ２〜Ｃｎとして上述した梱包枚数や給紙許容枚数や排紙許容枚数が取得される。この第２〜第ｎの分割基準ページ数Ｃ２〜Ｃｎは使用者によって任意に設定されるものであり、コンピュータ１０や印刷装置３０における所定の入力部によって設定入力されるものである。ただし、第２〜第ｎの分割基準ページ数Ｃ２〜Ｃｎは、Ｃ１＜Ｃ２＜Ｃ３＜Ｃ４・・・＜Ｃｎ−１＜Ｃｎを満たすように設定されるものとする。
【０１２５】
また、処理時間許容増加量Ｄｍａｘとは、第２の実施形態において算出した上式（１）を満たす分割数を最適化して新たな分割数を設定した場合における印刷ジョブデータの処理時間の増加量の許容量を示すものであり、使用者によって任意に設定されるものである。すなわち、面付け処理を行うことを条件として分割数および分割ページ数を決めた場合に、印刷ジョブデータ全体の処理時間に対して増加分として許される時間のことである。
【０１２６】
そして、上述したような第１〜第ｎの分割基準ページ数Ｃ１〜Ｃｎと処理時間許容増加量Ｄｍａｘとが取得された後、上式（１）を満たす分割数ｍ１によって印刷ジョブデータの全ページ数Ｎａを除算した値を第１の分割ページ数候補Ｍ１として算出し、この第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れるか否かを判定する（Ｓ６２）。なお、Ｎａ/ｍ１が割り切れずに余りが出た場合には、その余りは無視して除算値をＭ１とする。
【０１２７】
そして、第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れる場合には、その第１の分割ページ数候補Ｍ１を第２の分割ページ数候補Ｍ２とする（Ｓ６４）。一方、第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れない場合には、第１の分割ページ数候補Ｍ１を超える第１の分割基準ページ数Ｃ１の倍数であってかつ最小の値を算出し、その最小値を第２の分割ページ数候補Ｍ２とする（Ｓ６６）。
【０１２８】
次に、上述したようにして取得された第２の分割ページ数候補Ｍ２が第２の分割基準ページ数Ｃ２によって割り切れるか否かを判定する（Ｓ６８）。
【０１２９】
そして、第２の分割ページ数候補Ｍ２が第２の分割基準ページ数Ｃ２によって割り切れる場合には、その第２の分割ページ数候補Ｍ２を第３の分割ページ数候補Ｍ３とする（Ｓ７０）。一方、第２の分割ページ数候補Ｍ２が第２の分割基準ページ数Ｃ２によって割り切れない場合には、第２の分割ページ数候補Ｍ２を超える第１の分割基準ページ数Ｃ１と第２の分割基準ページ数Ｃ２の公倍数を算出し、その公倍数のうちの最小の値（以下、最小の公倍数という）を第３の分割ページ数候補Ｍ３とする（Ｓ７２）。
【０１３０】
次いで、上述した第２の分割ページ数候補Ｍ２を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間と、上述した第３の分割ページ数候補Ｍ３を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間とを算出する（Ｓ７４）。
【０１３１】
ここで、印刷ジョブデータの全体処理時間は、たとえば、図４に示すようなジョブ分割処理時間と、各分割印刷ジョブデータの展開破棄処理時間、展開格納処理時間、データ出力処理時間および印刷時間から計算されるが、これらの時間の中でデータ出力処理時間と印刷時間とについては、印刷ジョブデータの全ページ数もしくは面付け後のページ数は分割ページ数に関わらず一定であるので、データ出力処理時間と印刷時間との合計値も分割ページ数に関わらす一定であり、最適化された分割ページ数および分割数を決定するプロセスにおいては考慮する必要がないパラメータである。
【０１３２】
一方、上述した面付け処理も考慮して分割ページ数および分割数を決定した場合、上記第２の実施形態のように、前の分割印刷ジョブデータの印刷処理時間内に現在の分割印刷ジョブデータの展開破棄処理および展開格納処理を終了させることができない場合が発生するため、この場合、図１２（Ａ）に示すような待機時間も考慮する必要がある。なお、図１２（Ｂ）は従来のプリントシステムの処理の時間を示す図である。
【０１３３】
上記待機時間は、下式から算出することができる。
【０１３４】
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブデータの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
なお、この待機時間は、上述した処理時間許容増加量Ｄｍａｘを大きな値に設定した場合に発生しやすい時間である。なぜならば、分割基準ページ数が多く適用され、それに伴い、分割ページ数が多くなり、結果として最初に処理を行う分割印刷ジョブデータのページ数が端数となって他の分割印刷ジョブデータとの格差が大きくなり、その分割印刷ジョブデータの印刷処理時間中に次の分割印刷ジョブデータの印刷前の処理が完了しないからである。
【０１３５】
したがって、上述したような検討結果に基づいて、本実施形態においては、印刷ジョブデータ全体に関わる「分割処理時間」と、最初に処理を行う分割印刷ジョブデータに関わる「展開破棄処理時間」と「展開格納処理時間」と、その後に処理を行う分割印刷ジョブデータに関わる「待機時間」との合計値を上述した実効処理時間とし、各分割ページ数に対する実効処理時間から第１の分割基準ページ数Ｃ１を適用したとき（面付けしたとき）の分割ページ数に対応する実効処理時間を差し引いた差分を処理時間許容増加量Ｄｍａｘと比較する。
【０１３６】
すなわち、次に、第３の分割ページ数候補Ｍ３に基づく分割ページ数および分割数で印刷ジョブデータを処理した場合の実効処理時間から第２の分割ページ数候補Ｍ２に基づく分割ページ数および分割数で印刷ジョブデータを処理した場合の実効処理時間が減算されて実効処理時間の増加量が算出される（Ｓ７６）。
【０１３７】
そして、この増加量と予め設定された処理時間許容増加量Ｄｍａｘとが比較され、この増加量が処理時間許容増加量Ｄｍａｘよりも大きい値である場合には（Ｓ７８，ＹＥＳ）、第２の分割ページ数候補Ｍ２に基づく分割ページ数および分割数を最終的な分割数として決定する（Ｓ８０）。
【０１３８】
一方、Ｓ７６において算出された増加量が処理時間許容増加量Ｄｍａｘ以下である場合には（Ｓ７８，ＮＯ）、次に、第３の分割ページ数候補Ｍ３が第３の分割基準ページ数Ｃ３によって割り切れるか否かを判定する（Ｓ８２）。
【０１３９】
そして、第３の分割ページ数候補Ｍ３が第３の分割基準ページ数Ｃ３によって割り切れる場合には、その第３の分割ページ数候補Ｍ３を第４の分割ページ数候補Ｍ４とする（Ｓ８４）。一方、第３の分割ページ数候補Ｍ３が第３の分割基準ページ数Ｃ３によって割り切れない場合には、第３の分割ページ数候補Ｍ３を超える第１の分割基準ページ数Ｃ１と第２の分割基準ページ数Ｃ２と第３の分割基準ページ数Ｃ３との最小の公倍数を算出し、その最小の公倍数を第４の分割ページ数候補Ｍ４とする（Ｓ８６）。
【０１４０】
次いで、上述した第２の分割ページ数候補Ｍ２を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間と、上述した第４の分割ページ数候補Ｍ４を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間とを算出する（Ｓ８８）。
【０１４１】
そして、第４の分割ページ数候補Ｍ４に基づく分割ページおよび分割数で印刷ジョブデータを処理した場合の実効処理時間から第２の分割ページ数候補Ｍ２に基づく分割ページ数および分割数で印刷ジョブデータを処理した場合の実効処理時間が減算されて実効処理時間の増加量が算出される（Ｓ９０）。
【０１４２】
そして、この増加量と予め設定された処理時間許容増加量Ｄｍａｘとが比較され、この増加量が処理時間許容増加量Ｄｍａｘよりも大きい値である場合には（Ｓ９２，ＹＥＳ）、第３の分割ページ数候補Ｍ３に基づく分割ページ数および分割数を最終的な分割数として決定する（Ｓ９４）。
【０１４３】
一方、Ｓ９０において算出された増加量が処理時間許容増加量Ｄｍａｘ以下であり（Ｓ９２，ＮＯ）、第４の分割基準ページ数Ｃ４が設定されている場合には、引き続き、第４の分割ページ数候補Ｍ４が第４の分割基準ページ数Ｃ４によって割り切れるか否かを判定する。
【０１４４】
そして、以下は、再び、上述したＳ６８〜Ｓ８０までの処理やＳ８２〜Ｓ９４までの処理が、第ｎの分割基準ページ数Ｃｎに基づく分割ページ数および分割数の判定まで繰り返して行われる。
【０１４５】
すなわち、最終的には、第ｎの分割ページ数候補Ｍｎが第ｎの分割基準ページ数Ｃｎによって割り切れるか否かを判定する（Ｓ９６）。
【０１４６】
そして、第ｎの分割ページ数候補Ｍｎが第ｎの分割基準ページ数Ｃｎによって割り切れる場合には、その第ｎの分割ページ数候補Ｍｎを第ｎ＋１の分割ページ数候補Ｍｎ＋１とする（Ｓ９８）。一方、第ｎの分割ページ数候補Ｍｎが第ｎの分割基準ページ数Ｃｎによって割り切れない場合には、第ｎの分割ページ数候補Ｍｎを超える第１〜第ｎの分割基準ページ数Ｃ１〜Ｃｎの最小の公倍数を算出し、その最小の公倍数の値を第ｎ＋１の分割ページ数候補Ｍｎ＋１とする（Ｓ１００）。
【０１４７】
次いで、上述した第２の分割ページ数候補Ｍ２を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間と、上述した第Ｍｎ＋１の分割ページ数候補Ｍｎ＋１を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間とを算出する（Ｓ１０２）。
【０１４８】
そして、第Ｍｎ＋１の分割ページ数候補Ｍｎ＋１に基づく分割ページ数および分割数で印刷ジョブデータを処理した場合の実効処理時間から第２の分割ページ数候補Ｍ２に基づく分割ページ数および分割数で印刷ジョブデータを処理した場合の実効処理時間が減算されて実効処理時間の増加量が算出される（Ｓ１０４）。
【０１４９】
そして、この増加量と予め設定された処理時間許容増加量Ｄｍａｘとが比較され、この増加量が処理時間許容増加量Ｄｍａｘよりも大きい値である場合には（Ｓ１０６，ＹＥＳ）、第ｎの分割ページ数候補Ｍｎに基づく分割ページ数および分割数を最終的な分割数として決定する（Ｓ１０８）。
【０１５０】
一方、Ｓ１０４において算出された増加量が処理時間許容増加量Ｄｍａｘ以下である場合には（Ｓ１０６，ＮＯ）、第ｎ＋１の分割ページ数候補Ｍｎ＋１に基づく分割ページ数および分割数を最終的な分割数として決定する（Ｓ１１０）。
【０１５１】
そして、上述したようにして最適化された分割数を決定した後、その分割数に基づいて分割印刷ジョブデータを生成する。分割印刷ジョブデータを生成する処理以降の処理については、上記第１および第２の実施形態のプリンタシステムと同様である。
【０１５２】
ここで、上述した第３の実施形態のプリンタシステムの作用について、具体的な数値例を挙げて以下に説明する。ここでは、印刷ジョブデータの全ページ数をＮａ＝３２７５８、第２の実施形態のプリンタシステムにおいて算出された上式（１）を満たす分割数をｍ１＝５、第１の分割基準ページ数（面付け数Ｎ）をＣ１＝２、第２の分割基準ページ数をＣ２＝１００、第３の分割基準ページ数をＣ３＝５００、処理時間許容増加量Ｄｍａｘ＝１８０（秒）とした場合について説明する。
【０１５３】
まず、分割印刷ジョブデータ生成部２２によって、第１〜第３の分割基準ページ数Ｃ１〜Ｃ３と処理時間許容増加量Ｄｍａｘとが取得される（Ｓ６０）。具体的には、上述した第１の分割基準ページ基準数Ｃ１＝２、第２の分割基準ページ数Ｃ２＝１００、第３の分割基準ページ数Ｃ３＝５００、処理時間許容増加量Ｄｍａｘ＝１８０（秒）が取得される。
【０１５４】
そして、上述したような第１〜第３の分割基準ページ数Ｃ１〜Ｃ３と処理時間許容増加量Ｄｍａｘとが取得された後、上式（１）を満たす分割数ｍ１＝５によって印刷ジョブデータの全ページ数Ｎａ＝３２７５８を除算した値を第１の分割ページ数候補Ｍ１として算出し、この第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れるか否かを判定する（Ｓ６２）。具体的には、Ｎａ/ｍ１＝３２７５８/５を算出し、第１の分割ページ数候補としてＭ１＝６５５２を取得する。そして、この第１の分割ページ数候補Ｍ１＝６５５２が、第１の分割基準ページ数Ｃ１＝２によって割り切れるか否かを判定する。
【０１５５】
そして、この場合、Ｍ１/Ｃ１＝６５５２/２＝３２７６となって割り切れるので、第１の分割ページ数候補Ｍ１＝６５５２をそのまま第２の分割ページ数候補Ｍ２として取得する（Ｓ６４）。
【０１５６】
次に、上述したようにして取得された第２の分割ページ数候補Ｍ２＝６５５２が第２の分割基準ページ数Ｃ２＝１００によって割り切れるか否かを判定する（Ｓ６８）。
【０１５７】
この場合、第２の分割ページ数候補Ｍ２＝６５５２は第２の分割基準ページ数Ｃ２＝１００によって割り切れないので、第２の分割ページ数候補Ｍ２＝６５５２を超える第１の分割基準ページ数Ｃ１＝２と第２の分割基準ページ数Ｃ２＝１００の最小の公倍数を算出し、その最小の公倍数の値を第３の分割ページ数候補Ｍ３とする（Ｓ７２）。具体的には、第２の分割ページ数候補Ｍ２＝６５５２を超える第１の分割基準ページ数Ｃ１＝２と第２の分割基準ページ数Ｃ２＝１００の最小の公倍数の最小値は６６００であるので、第３の分割ページ数候補Ｍ３＝６６００を取得する。
【０１５８】
次いで、上述した第２の分割ページ数候補Ｍ２＝６５５２を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間と、上述した第３の分割ページ数候補Ｍ３＝６６００を分割ページ数とし、その分割ページ数に基づく分割数で印刷ジョブデータを処理した場合の実効処理時間とを算出する（Ｓ７４）。なお、このとき第２の分割ページ数候補Ｍ２＝６５５２に基づく分割数と第３の分割ページ数候補Ｍ３＝６６００に基づく分割数とはともに５となる。
【０１５９】
具体的には、第２の分割ページ数候補Ｍ２＝６５５２を分割ページ数とし、分割数を５とした場合の印刷ジョブデータの実効処理時間は、以下のようにして計算される。なお、第２の実施形態において説明したとおり、Ｎａは印刷ジョブデータの全ページ数、ｍは分割数、ｓはジョブ分割処理速度、ｒは展開破棄速度、Ｒは展開処理速度、ｔはデータ出力処理速度、Ｘは印刷処理速度のことであり、ここでは、Ｎａ＝３２７５８（ページ）、ｓ＝４２０００（ページ/秒）、ｒ＝５０（ページ/秒）、Ｒ＝７．５（ページ/秒）、ｔ＝５（ページ/秒）、Ｘ＝２．５（ページ/秒）として計算を行うものとする。
【０１６０】
印刷ジョブデータ全体に関わる処理時間＋第５の分割印刷ジョブデータの処理時間：
分割処理時間＋展開破棄処理時間＋展開格納処理時間
＝Ｎａｍ/ｓ＋｛分割ページ数（ｍ−１）｝/ｒ＋｛Ｎａ−分割ページ数（ｍ−１）｝/Ｒ
＝３２７５８×５/４２０００＋｛６５５２（５−１）｝/５０＋｛３２７５８−６５５２（５−１）｝/７．５≒１４０１
第４から第１の分割印刷ジョブデータの処理時間：
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブデータの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
第４から第１の分割印刷ジョブデータの待機時間は、それぞれマイナスの値となるため、ここでは０としてカウントする。
【０１６１】
したがって、第２の分割ページ数候補Ｍ２＝６５５２を分割ページ数とし、分割数を５とした場合の印刷ジョブデータの実効処理時間は１４０１（秒）≒２３．４（分）
一方、第３の分割ページ数候補Ｍ２＝６６００を分割ページ数とし、分割数を５とした場合の印刷ジョブデータの実効処理時間は、以下のようにして計算される。
【０１６２】
印刷ジョブデータ全体に関わる処理時間＋第５の分割印刷ジョブデータの処理時間：
分割処理時間＋展開破棄処理時間＋展開格納処理時間
＝Ｎａｍ/ｓ＋｛分割ページ数（ｍ−１）｝/ｒ＋｛Ｎａ−分割ページ数（ｍ−１）｝/Ｒ
＝３２７５８×５/４２０００＋｛６６００（５−１）｝/５０＋｛３２７５８−６６００（５−１）｝/７．５≒１３８０
第４の分割印刷ジョブデータの処理時間：
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブデータの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
＝[｛分割ページ数（ｍ−２）｝／ｒ＋分割ページ数／Ｒ]−[｛Ｎａ−分割ページ数（ｍ−１）｝／Ｘ−｛Ｎａ−分割ページ数（ｍ−１）｝／ｔ]
＝[｛６６００（５−２）｝／５０＋６６００／７．５]−[｛３２７５８−６６００（５−１）｝／２．５−｛３２７５８−６６００（５−１）｝／５]≒４
第３から第１の分割印刷ジョブデータの処理時間：
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブ
データの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
第３から第１の分割印刷ジョブデータの待機時間は、それぞれマイナスの値となるため、ここでは０としてカウントする。
【０１６３】
したがって、第３の分割ページ数候補Ｍ２＝６６００を分割ページ数とし、分割数を５とした場合の印刷ジョブデータの実効処理時間は、１３８０（秒）＋４（秒）≒２３．１（分）
次に、第３の分割ページ数候補Ｍ３に基づく分割ページ数（６６００）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間から第２の分割ページ数候補Ｍ２に基づく分割ページ数（６５５２）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間が減算されて実効処理時間の増加量が算出される（Ｓ７６）。具体的には、上記の計算結果より、実効処理時間の増加量は以下のような大きさとなる。
【０１６４】
２３．１（分）−２３．４（分）＝−０．３（分）＝−１８（秒）
そして、この増加量と予め設定された処理時間許容増加量Ｄｍａｘとが比較され、この増加量が処理時間許容増加量Ｄｍａｘよりも大きい値である場合には（Ｓ７８，ＹＥＳ）、第２の分割ページ数候補Ｍ２に基づく分割ページ数（６５５２）および分割数（５）を最終的な分割数として決定し（Ｓ８０）、一方、増加量が処理時間許容増加量Ｄｍａｘ以下である場合には（Ｓ７８，ＮＯ）、第３の分割ページ数候補Ｍ３＝６６００が第３の分割基準ページ数Ｃ３＝５００によって割り切れるか否かを判定する（Ｓ８２）。
【０１６５】
ここでは、上述したとおり実効処理時間が減少しているため、処理時間許容増加量Ｄｍａｘ以下であるとして説明を進める。
【０１６６】
この場合、第３の分割ページ数候補Ｍ３＝６６００は第３の分割基準ページ数Ｃ３＝５００によって割り切れないので、第３の分割ページ数候補Ｍ３＝６６００を超える第１〜第３の分割基準ページ数Ｃ１〜Ｃ３の最小の公倍数を算出し、その最小の公倍数の値を第４の分割ページ数候補Ｍ４とする（Ｓ８６）。具体的には、第３の分割ページ数候補Ｍ３＝６６００を超える第１〜第３の分割基準ページ数Ｃ１〜Ｃ３の最小の公倍数は７０００であるので、第４の分割ページ数候補Ｍ４＝７０００を取得する。
【０１６７】
次いで、上述した第２の分割ページ数候補Ｍ２に基づく分割ページ数（６５５２）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間と、上述した第４の分割ページ数候補Ｍ４に基づく分割ページ数（７０００）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間とを算出する（Ｓ８８）。
【０１６８】
具体的には、第２の分割ページ数候補Ｍ２に基づく分割ページ数（６５５２）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間は、上記と同様であり、第４の分割ページ数候補Ｍ４に基づく分割ページ数（７０００）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間は、以下のようにして計算される。
【０１６９】
印刷ジョブデータ全体に関わる処理時間＋第５の分割印刷ジョブデータの処理時間：
分割処理時間＋展開破棄処理時間＋展開格納処理時間
＝Ｎａｍ/ｓ＋｛分割ページ数（ｍ−１）｝/ｒ＋｛Ｎａ−分割ページ数（ｍ−１）｝/Ｒ
＝３２７５８×５/４２０００＋｛７０００（５−１）｝/５０＋｛３２７５８−７０００（５−１）｝/７．５≒１１９８
第４の分割印刷ジョブデータの処理時間：
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブデータの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
＝[｛分割ページ数（ｍ−２）｝／ｒ＋分割ページ数／Ｒ]−[｛Ｎａ−分割ページ数（ｍ−１）｝／Ｘ−｛Ｎａ−分割ページ数（ｍ−１）｝／ｔ]
＝[｛７０００（５−２）｝／５０＋７０００／７．５]−[｛３２７５８−７０００（５−１）｝／２．５−｛３２７５８−７０００（５−１）｝／５]≒４０２
第３から第１の分割印刷ジョブデータの処理時間：
待機時間＝（現在の分割印刷ジョブデータの展開破棄処理時間＋現在の分割印刷ジョブデータの展開格納処理時間）−（前の分割印刷ジョブデータの印刷時間−前の分割印刷ジョブデータのデータ出力処理時間）
第３から第１の分割印刷ジョブデータの待機時間は、それぞれマイナスの値となるため、ここでは０としてカウントする。
【０１７０】
したがって、第４の分割ページ数候補Ｍ４＝７０００を分割ページ数とし、分割数を５とした場合の印刷ジョブデータの実効処理時間は、１１９８（秒）＋４０２（秒）≒２６．７（分）
そして、第４の分割ページ数候補Ｍ４に基づく分割ページ数（７０００）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間から第２の分割ページ数候補Ｍ２に基づく分割ページ数（６５５２）および分割数（５）で印刷ジョブデータを処理した場合の実効処理時間が減算されて実効処理時間の増加量が算出される（Ｓ９０）。具体的には、上記の計算結果より、実効処理時間の増加量は以下のような大きさとなる。
【０１７１】
２６．７（分）−２３．４（分）＝３．３（分）＝１９８秒
そして、この増加量と予め設定された処理時間許容増加量Ｄｍａｘとが比較され、この増加量が処理時間許容増加量Ｄｍａｘよりも大きい値である場合には（Ｓ９２，ＹＥＳ）、第３の分割ページ数候補Ｍ３に基づく分割ページ数（６６００）および分割数（５）を最終的な分割ページ数および分割数として決定する（Ｓ９４）。一方、Ｓ９０において算出された増加量が処理時間許容増加量Ｄｍａｘ以下である場合には（Ｓ９２，ＮＯ）、第４の分割ページ数候補Ｍ４に基づく分割ページ数（７０００）および分割数（５）を最終的な分割ページ数および分割数として決定する。ここでは、上述したとおり実効処理時間の増加量は１９８（秒）であり、処理時間許容増加量Ｄｍａｘよりも大きい値であるので、第３の分割ページ数候補Ｍ３に基づく分割ページ数（６６００）および分割数（５）が最終的な分割ページ数および分割数として決定される。
【０１７２】
第３の実施形態のプリンタシステムによれば、面付け処理の制約を考慮した分割数で印刷ジョブデータを分割するとともに、給排紙許容量や梱包枚数などといった使用者の要望に応じた制約を考慮した分割数で印刷ジョブデータを分割するようにしたので、適切な印刷結果を得ることができるとともに、ワークフロー面や物理面において利便性を向上させることができる。
【０１７３】
なお、上記第３の実施形態のプリンタシステムにおいては、面付け処理の際の面付け数に基づく第１の分割基準ページ数の他に第２〜第ｎの分割基準ページ数を設定するようにしたが、第２〜第ｎの分割基準ページ数を設定することなく、面付け数に基づく第１の分割基準ページだけを設定するようにしてもよい。
【０１７４】
その場合、図９に示すＳ６２において、第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れるか否かを判定した後、第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れる場合には、その第１の分割ページ数候補Ｍ１を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて印刷ジョブデータを分割する。一方、第１の分割ページ数候補Ｍ１が第１の分割基準ページ数Ｃ１によって割り切れない場合には、第１の分割ページ数候補Ｍ１を超える第１の分割基準ページ数Ｃ１の倍数のうちの最小値を算出し、その最小値を分割ページ数とするとともに、その分割ページ数に基づく分割数を用いて印刷ジョブデータを分割する。
【０１７５】
また、上記第３の実施形態のプリンタシステムにおいては、第１〜第ｎの分割基準ページ数Ｃ１〜ＣｎとしてＣ１＜Ｃ２＜Ｃ３＜Ｃ４・・・＜Ｃｎ−１＜Ｃｎを満たすような値を設定するようにしたが、たとえば、第２〜第ｎの分割基準ページ数Ｃ２〜Ｃｎとして、上式の大小関係を満たさないような値が使用者によって設定された場合には、その値を受け付けることなく、警告メッセージを表示するなどすることによって、設定された値が適切でない旨を使用者に報知するようにしてもよい。
【符号の説明】
【０１７６】
１０   コンピュータ
１１   アプリケーション
１２   プリンタドライバ
２０，３０     印刷装置
２１   印刷ジョブデータ受付部
２２   分割印刷ジョブデータ生成部
２３   展開処理部
２４   印刷エンジン
２５   プリフライト処理部
【図１】
0005869816.tif 000002
【図２】
0005869816.tif 000003
【図３】
0005869816.tif 000004
【図４】
0005869816.tif 000005
【図５】
0005869816.tif 000006
【図６】
0005869816.tif 000007
【図７】
0005869816.tif 000008
【図８】
0005869816.tif 000009
【図９】
0005869816.tif 000010
【図１０】
0005869816.tif 000011
【図１１】
0005869816.tif 000012
【図１２】
0005869816.tif 000013