(57)【要約】【課題】プリンタ等の印刷装置で処理が可能な印刷データのサイズに応じて、適切に印刷データ、つまり、文書を分割することのできる印刷制御方法および装置を提供する。【解決手段】出力先情報記憶部１６に記憶されている出力先の印刷装置の情報に基づいて、ジョブ受付部１０が受け付けたジョブの印刷データのデータサイズが印刷装置の制限値を越えているか否かを判定し、越えている場合には、ジョブ分割部１１が印刷データを分割する。この印刷データの分割に際しては、印刷データの分割によって本来同一用紙に印刷されるべきページが別の用紙に印刷される等の不具合が生じることが無いよう、データ区切検出部１２で適切な印刷データの区切位置を特定する。【選択図】　　　　図１
2004102601.tif 000002
【特許請求の範囲】
【請求項１】
受け付けた印刷データを印刷装置に送出して印刷処理を実行させる印刷制御方法において、
受け付けた印刷データのデータ量を検出するとともに、出力先の印刷装置において処理可能な最大データ量を取得し、該印刷データのデータ量が該最大データ量を越えていた場合に、該印刷データを分割し、該分割した印刷データを前記印刷装置に送出することを特徴とする印刷制御方法。
【請求項２】
前記印刷データを印刷条件に従って用紙に割り付けた際に、新たな用紙への割り付けを開始する位置を該印刷データから検出し、該検出した位置を分割位置として前記印刷データを分割することを特徴とする請求項１記載の印刷制御方法。
【請求項３】
前記印刷条件から１枚の用紙に割り付けるページ数を取得し、該取得したページ数で割り切れるページ番号の直後を前記分割位置として検出することを特徴とする請求項２記載の印刷制御方法。
【請求項４】
前記印刷データを複数の印刷装置に分散して送出するために分割し、該分割した分割印刷データのそれぞれのデータ量を対応する印刷装置の最大データ量とそれぞれ比較し、該分割印刷データのデータ量が該最大データ量を越えていた場合に該分割印刷データを分割して対応する印刷装置に送出することを特徴とする請求項１記載の印刷制御方法。
【請求項５】
前記データ量をページ数換算して前記最大データ量と比較し、前記印刷データにカラーデータが含まれている場合には、該カラーデータのページ数を相当する白黒データのページ数に換算して前記比較を行うことを特徴とする請求項１記載の印刷制御方法。
【請求項６】
前記分割を行った印刷データのそれぞれに他の印刷データとの関連を記述したバナーシートを印刷させるバナーデータを付加することを特徴とする請求項１記載の印刷制御方法。
【請求項７】
前記分割を行った印刷データのそれぞれに、該印刷データにより印刷された文書に対する後処理を記述したバナーシートを印刷させるバナーデータを付加することを特徴とする請求項１記載の印刷制御方法。
【請求項８】
受け付けた印刷データを印刷装置に送出して印刷処理を実行させる印刷制御装置において、
印刷データと該印刷データに対応する印刷条件を受け付ける印刷要求受付手段と、
前記印刷要求受付手段が受け付けた印刷データのデータ量を検出するデータ量検出手段と、
前記印刷要求受付手段が受け付けた印刷条件で指定される印刷装置において処理可能な最大データ量を取得する最大データ量取得手段と、
前記データ量検出手段が検出したデータ量と前記最大データ量取得手段が取得した最大データ量とを比較し、該データ量が該最大データ量を越えていた場合に、前記印刷データを分割するデータ分割手段と、
前記データ分割手段により分割された印刷データを前記印刷装置に送出するデータ送出手段と
を具備することを特徴とする印刷制御装置。
【請求項９】
前記データ分割手段は、
前記印刷データを前記印刷条件に従って用紙に割り付けた際に、新たな用紙への割り付けを開始する位置を該印刷データから検出し、該検出した位置を分割位置として前記印刷データを分割することを特徴とする請求項８記載の印刷制御装置。
【請求項１０】
前記データ分割手段は、
前記印刷条件から１枚の用紙に割り付けるページ数を取得し、該取得したページ数で割り切れるページ番号の直後を前記分割位置として検出することを特徴とする請求項９記載の印刷制御装置。
【請求項１１】
前記データ分割手段は、
前記印刷条件で分散印刷処理が指定されていた際は、前記印刷データを複数の印刷装置に分散して送出するために分割し、該分割した分割印刷データのそれぞれのデータ量を対応する印刷装置の最大データ量とそれぞれ比較し、該分割印刷データのデータ量が該最大データ量を越えていた場合に該分割印刷データを分割することを特徴とする請求項８記載の印刷制御装置。
【請求項１２】
前記データ分割手段は、
前記データ量をページ数換算して前記最大データ量と比較し、前記印刷データにカラーデータが含まれている場合には、該カラーデータのページ数を相当する白黒データのページ数に換算して前記比較を行うことを特徴とする請求項８記載の印刷制御装置。
【請求項１３】
前記データ分割手段が分割した印刷データのそれぞれに、他の印刷データとの関連を記述したバナーシートを印刷させるバナーデータを付加するバナーデータ生成手段をさらに具備することを特徴とする請求項８記載の印刷制御装置。
【請求項１４】
前記データ分割手段が分割した印刷データのそれぞれに、該印刷データにより印刷された文書に対する後処理を記述したバナーシートを印刷させるバナーデータを付加するバナーデータ生成手段をさらに具備することを特徴とする請求項８記載の印刷制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、印刷制御方法および装置に関し、特に、印刷データの容量が大きい場合でも容易に印刷を行わせることのできる印刷制御方法および装置に関する。
【０００２】
【従来の技術】
近年、プリンタ等の印刷装置の性能が向上し、オフィス等で容易に文書等の印刷を行うことができるようになった。そして、最近では、大量の文書等が印刷される機会も増大している。
【０００３】
大量の文書等を印刷する場合、印刷装置の性能が向上しているとはいっても、印刷を終了するまでに多大な時間を要してしまう。このため、複数の印刷装置に分散して印刷処理を行わせることがある。
【０００４】
例えば、特開２０００−２１１２１２号公報記載の「デジタル複写機」では、文書を部数単位で分散して処理を行っており、特開平８−３３５１５０号公報記載の「印刷システム」では、白黒のページとカラーのページとを分散して処理している。
【０００５】
ところで、プリンタには、ページ数が膨大となる文書の印刷を行えないものがある。このようなプリンタは、受信した印刷データを一旦内蔵するディスク装置等に保存した後に印刷を行うものが多いが、ファイルシステム等が取り扱うファイルサイズに制限がある場合があり、この制限によりページ数が一定以上となる文書を印刷することができない。
【０００６】
このため、従来は、ページ数が一定以上となる文書を印刷する際には、プリンタが出力可能なページ数を調べ、文書を分割してから印刷処理を行っていた。
【０００７】
【発明が解決しようとする課題】
上述のように、従来は、ページ数が一定以上となる文書を印刷する際には、プリンタが出力可能なページ数を調べた後に、文書を分割して印刷データを生成する必要があった。このような処理は、多大な手間を要するものであるため、分散印刷の技術を利用して文書を自動で分割することが考えられる。
【０００８】
しかしながら、従来の分散印刷の技術は、ページ単位等で印刷データを分割することはできるものの、印刷データのサイズ（ページ数）を考慮して分割を行うものはなかった。また、文書には、両面印刷等のように１枚の用紙に複数ページが印刷されるものもあり、単に印刷データを分割しただけでは、印刷処理結果に白紙面が混入する等の不具合が生じる可能性もあった。
【０００９】
そこで、この発明は、プリンタ等の印刷装置で処理が可能な印刷データのサイズに応じて、適切に印刷データ、つまり、文書を分割することのできる印刷制御方法および装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上述した目的を達成するため、請求項１の発明は、受け付けた印刷データを印刷装置に送出して印刷処理を実行させる印刷制御方法において、受け付けた印刷データのデータ量を検出するとともに、出力先の印刷装置において処理可能な最大データ量を取得し、該印刷データのデータ量が該最大データ量を越えていた場合に、該印刷データを分割し、該分割した印刷データを前記印刷装置に送出することを特徴とする。
【００１１】
また、請求項２の発明は、請求項１の発明において、前記印刷データを印刷条件に従って用紙に割り付けた際に、新たな用紙への割り付けを開始する位置を該印刷データから検出し、該検出した位置を分割位置として前記印刷データを分割することを特徴とする。
【００１２】
また、請求項３の発明は、請求項２の発明において、前記印刷条件から１枚の用紙に割り付けるページ数を取得し、該取得したページ数で割り切れるページ番号の直後を前記分割位置として検出することを特徴とする。
【００１３】
また、請求項４の発明は、請求項１の発明において、前記印刷データを複数の印刷装置に分散して送出するために分割し、該分割した分割印刷データのそれぞれのデータ量を対応する印刷装置の最大データ量とそれぞれ比較し、該分割印刷データのデータ量が該最大データ量を越えていた場合に該分割印刷データを分割して対応する印刷装置に送出することを特徴とする。
【００１４】
また、請求項５の発明は、請求項１の発明において、前記データ量をページ数換算して前記最大データ量と比較し、前記印刷データにカラーデータが含まれている場合には、該カラーデータのページ数を相当する白黒データのページ数に換算して前記比較を行うことを特徴とする。
【００１５】
また、請求項６の発明は、請求項１の発明において、前記分割を行った印刷データのそれぞれに他の印刷データとの関連を記述したバナーシートを印刷させるバナーデータを付加することを特徴とする。
【００１６】
また、請求項７の発明は、請求項１の発明において、前記分割を行った印刷データのそれぞれに、該印刷データにより印刷された文書に対する後処理を記述したバナーシートを印刷させるバナーデータを付加することを特徴とする。
【００１７】
また、請求項８の発明は、受け付けた印刷データを印刷装置に送出して印刷処理を実行させる印刷制御装置において、印刷データと該印刷データに対応する印刷条件を受け付ける印刷要求受付手段と、前記印刷要求受付手段が受け付けた印刷データのデータ量を検出するデータ量検出手段と、前記印刷要求受付手段が受け付けた印刷条件で指定される印刷装置において処理可能な最大データ量を取得する最大データ量取得手段と、前記データ量検出手段が検出したデータ量と前記最大データ量取得手段が取得した最大データ量とを比較し、該データ量が該最大データ量を越えていた場合に、前記印刷データを分割するデータ分割手段と、前記データ分割手段により分割された印刷データを前記印刷装置に送出するデータ送出手段とを具備することを特徴とする。
【００１８】
また、請求項９の発明は、請求項８の発明において、前記データ分割手段は、前記印刷データを前記印刷条件に従って用紙に割り付けた際に、新たな用紙への割り付けを開始する位置を該印刷データから検出し、該検出した位置を分割位置として前記印刷データを分割することを特徴とする。
【００１９】
また、請求項１０の発明は、請求項９の発明において、前記データ分割手段は、前記印刷条件から１枚の用紙に割り付けるページ数を取得し、該取得したページ数で割り切れるページ番号の直後を前記分割位置として検出することを特徴とする。
【００２０】
また、請求項１１の発明は、請求項８の発明において、前記データ分割手段は、前記印刷条件で分散印刷処理が指定されていた際は、前記印刷データを複数の印刷装置に分散して送出するために分割し、該分割した分割印刷データのそれぞれのデータ量を対応する印刷装置の最大データ量とそれぞれ比較し、該分割印刷データのデータ量が該最大データ量を越えていた場合に該分割印刷データを分割することを特徴とする。
【００２１】
また、請求項１２の発明は、請求項８の発明において、前記データ分割手段は、前記データ量をページ数換算して前記最大データ量と比較し、前記印刷データにカラーデータが含まれている場合には、該カラーデータのページ数を相当する白黒データのページ数に換算して前記比較を行うことを特徴とする。
【００２２】
また、請求項１３の発明は、請求項８の発明において、前記データ分割手段が分割した印刷データのそれぞれに、他の印刷データとの関連を記述したバナーシートを印刷させるバナーデータを付加するバナーデータ生成手段をさらに具備することを特徴とする。
【００２３】
また、請求項１４の発明は、請求項８の発明において、前記データ分割手段が分割した印刷データのそれぞれに、該印刷データにより印刷された文書に対する後処理を記述したバナーシートを印刷させるバナーデータを付加するバナーデータ生成手段をさらに具備することを特徴とする。
【００２４】
【発明の実施の形態】
以下、この発明に係る印刷制御方法および装置の一実施の形態について、添付図面を参照して詳細に説明する。
【００２５】
図１は、この発明を適用したプリントサーバの機能的な構成を示すブロック図である。同図に示すように、プリントサーバ１は、ジョブ受付部１０とジョブ分割部１１、データ区切検出部１２、割付判定部１３、データ量検出部１４、変換係数記憶部１５、出力先情報記憶部１６、バナー生成部１７、ジョブ送出部１８を具備して構成される。なお、プリントサーバ１は、実際には、コンピュータ装置とこれを動作させるソフトウェアによって構成されるが、ハードウェアにより専用の装置として構成することも可能である。
【００２６】
ジョブ受付部１０は、図示しないクライアントやスキャナ等からのジョブを受け付ける。この受け付けるジョブは、出力先や出力装置、出力形態等の印刷条件を含む印刷要求と印刷データで構成されている。
【００２７】
ジョブ分割部１１は、印刷要求や出力先の機能等に基づいて印刷データを分割して複数のジョブを生成するが、その処理の詳細については後述する。データ区切検出部１２は、ジョブ分割部１１が印刷データを分割する際に、分割が可能となる印刷データの区切位置を検出する。割付判定部１３は、データ区切検出部１２が印刷データの区切を検出する際に、１枚の用紙に何ページが割り付けられるかを判定する。これは、例えば、両面印刷が指定されていれば１枚の用紙に２ページが割り付けられるといった判定を行う。
【００２８】
データ量検出部１４は、印刷データのデータサイズを検出する。ジョブ分割部１１は、印刷データの分割をページを単位として行うが、出力先となるプリンタでは、処理可能なデータサイズに制限がある場合があるため、ページ数からデータサイズを検出する処理を行う。変換係数記憶部１５は、カラーの１ページがモノクロの何ページ分のデータに相当するかを示す係数を記憶している。
【００２９】
出力先情報記憶部１６は、出力先となる図示しないプリンタに関する情報を記憶している。この出力先の情報には、制限される印刷データのデータサイズが含まれる。バナー生成部１７は、分割したジョブのそれぞれで必要に応じて出力するバナーシートを生成する。ジョブ送出部１８は、ジョブ受付部１０が受け付けたジョブ若しくはジョブ分割部１１が分割したジョブをそれぞれ指定された出力先に送出する。なお、バナー生成部１７は、必ずしも必要なものではなく、バナー生成部１７を省略して、バナーシートの出力を行わないようにすることもできる。
【００３０】
次に、プリントサーバ１の動作を説明する。図２は、プリントサーバ１の動作の流れを示すフローチャートである。
【００３１】
プリントサーバ１は、ジョブ受付部１０がジョブを受け付けると（ステップ１０１でＹＥＳ）、ジョブ分割部１１がジョブから印刷要求を取得する（ステップ１０２）。
【００３２】
ここで、取得した印刷要求に分散印刷の指示が含まれていれば（ステップ１０３でＹＥＳ）、当該印刷要求から分散数Ｎを取得し（ステップ１０４）、取得した分散数Ｎに基づいて、ジョブ分割部１１がＮ分割処理を実行する（ステップ１０５）。なお、Ｎ分割処理の詳細については後述する。
【００３３】
また、印刷要求に分散印刷の指示が含まれていなければ（ステップ１０３でＮＯ）、Ｎ分割処理を実行しない。
【００３４】
続いて、印刷要求に分散印刷指示が含まれていなかった場合やＮ分割処理の実行が終了した際には、ジョブ分割部１１は、制限回避処理を実行する（ステップ１０６）。制限回避処理は、出力先のプリンタにおける印刷データのデータサイズによる制限を回避するための処理であり、この制限回避処理は、ステップ１０５のＮ分割処理が実行されている場合には、分割されたＮ個のジョブ全てに対して実行される。なお、制限回避処理の詳細については後述する。
【００３５】
制限回避処理が終了すると、バナー生成部１７がジョブ受付部１０が受け付けたジョブの印刷要求やジョブ分割部１１が実行したＮ分割処理、制限回避処理の処理結果に基づいて、受け付けたジョブ若しくは分割されたジョブ毎にバナーシート用の印刷データを生成し（ステップ１０７）、ジョブ送出部１８が生成されたバナーシート用の印刷データをジョブとともに指定された出力先に送出し（ステップ１０８）、受け付けたジョブに対する処理を終了する。
【００３６】
次に、上述のステップ１０５で実行するＮ分割処理について説明する。図３および図４は、Ｎ分割処理の流れを示すフローチャートである。
【００３７】
ジョブ分割部１１は、Ｎ分割処理を開始すると、まず、印刷データの総ページ数Ｐを算出する（ステップ２０１）。この総ページ数Ｐの算出に際しては、必要に応じて印刷データの解釈を行う。そして、算出した総ページ数Ｐを分割数Ｎで割って、１分割当たりの基準となる基準ページ数Ｃを算出するとともに（ステップ２０２）、その余りとなる余りページ数Ｍを算出する（ステップ２０３）。
【００３８】
次に、ジョブ分割部１１は、用紙１枚当たりに割り付けられるページ数の判定をデータ区切検出部１２に依頼し、データ区切検出部１２は、割付判定部１３に判定を実行させてその結果である用紙１枚当たりのページ数Ｓをジョブ割付部１１に返す（ステップ２０４）。
【００３９】
続いて、ジョブ分割部１１は、現在処理しているページ番号を示す変数ＣＵＲの値を１に設定するとともに（ステップ２０５）、補正すべきページ数を示す変数Ｘを０に設定する（ステップ２０６）。そして、変数ＣＵＲの値と総ページ数Ｐの値を比較し、変数ＣＵＲの値が総ページ数Ｐの値以下であれば（ステップ２０７でＮＯ）、ジョブ分割部１１は、データ区切検出部１２に印刷条件が変更されるページ番号ＣＰを検出させる（ステップ２０８）。この検出の対象となる印刷条件は、用紙サイズの変更や片面印刷と両面印刷の切換、ｎアップ印刷（１用紙面にｎページの割付を行う）のｎ値の変更等であり、当該印刷条件の変更が存在しない場合には、ＣＰの値は、総ページ数Ｐの値となる。
【００４０】
次に、ジョブ分割部１１は、検出したＣＰの値と（ＣＵＲ＋Ｃ＋Ｍ−Ｘ）の値とを比較し、ＣＰの方が小さければ（ステップ２０９でＹＥＳ）、変数Ｘに（ＣＰ−ＣＵＲ）の値を代入し（ステップ２１０）、変数ＣＵＲにＣＰの値を代入する（ステップ２１１）。そして、用紙１枚当たりのページ数Ｓを割付判定部１３に再判定させ（ステップ２１２）、ステップ２０８に戻り、次に印刷条件が変更されるページ番号ＣＰを検出させる。ステップ２０９で比較した（ＣＵＲ＋Ｃ＋Ｍ−Ｘ）の値は、仮に決定される印刷データの分割位置であり、これをＣＰと比較することは、分割位置以前で印刷条件が変更されるか否かを判定することと同意である。そして、ＣＰの方が小さいということは、仮の分割位置以前で印刷条件が変更されることを示しているから、後の分割位置を決定するために必要な変数を変更することとなる。
【００４１】
一方、ＣＰの値と（ＣＵＲ＋Ｃ＋Ｍ−Ｘ）の値とを比較した結果、（ＣＵＲ＋Ｃ＋Ｍ−Ｘ）がＣＰ以上であれば（ステップ２０９でＮＯ）、分割する印刷データにより印刷される用紙数Ｄを（Ｃ＋Ｍ−Ｘ）をＳで割ることで算出する（ステップ２１３）。ただし、途中に印刷条件の変更があった場合には、変更前のページ数は、Ｄに含まれていない。そして、分割位置Ｐｉｖを（Ｄ＋１）にＳを乗じた値にＣＵＲを加え、そこから１を減じることで算出する（ステップ２１４）。
【００４２】
続いて、余りページ数Ｍの値を（（Ｃ＋Ｍ−Ｘ）−（Ｄ＋１）Ｓ）の値に変更し（ステップ２１５）、変数ＣＵＲの値を（Ｐｉｖ＋１）に変更し（ステップ２１６）、変数Ｘを０に設定して（ステップ２１７）、ステップ２０７に戻り、同様の処理を繰り返す。
【００４３】
このような処理を繰り返し、変数ＣＵＲの値が総ページ数Ｐの値を越えると（ステップ２０７でＹＥＳ）、ジョブ分割部１１は、算出したＰｉｖの位置で印刷データを分割して（ステップ２１８）、Ｎ分割処理を終了する。
【００４４】
ここで、上述したＮ分割処理を具体的な数字を例に挙げて再度説明する。ここでは、３０２ページの文書を３分割し、４アップで印刷する場合を例とする。
【００４５】
ジョブ分割部１１が処理を開始すると、総ページ数Ｐが３０２（ステップ２０１）、基準ページ数Ｃが１００（ステップ２０２）、余りページ数Ｍが２（ステップ２０３）、用紙１枚当たりのページ数Ｓが４（ステップ２０４）、と算出される。そして、変数ＣＵＲを１に設定し（ステップ２０５）、変数Ｘを０に設定すると（ステップ２０６）、ＣＵＲの値がＰの値よりも小さいので（ステップ２０７でＮＯ）、処理は、ステップ２０８に進む。
【００４６】
ここで、途中での印刷条件の変更が無いものとすると、ＣＰの値は、Ｐと同じ３０２と検出されるため（ステップ２０８）、（ＣＰ＝３０２）と（ＣＵＲ＋Ｃ＋Ｍ−Ｘ＝１０３）の比較の結果、ＣＰの値の方が大きいため（ステップ２０９でＮＯ）、用紙数Ｄが、（Ｃ＋Ｍ−Ｘ）／Ｓ＝２５（余り２）となるため（ステップ２１３）、最初の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝１０４となる（ステップ２１４）。
【００４７】
そして、余りページ数Ｍを（Ｃ＋Ｍ−Ｘ）−（Ｄ＋１）Ｓ＝−２に変更し（ステップ２１５）、変数ＣＵＲにＰｉｖ＋１＝１０５を代入し（ステップ２１６）、変数Ｘの値を０に設定する（ステップ２１７）。
【００４８】
この後、再び用紙数Ｄを算出するが、このとき、Ｄの値は、（Ｃ＋Ｍ−Ｘ）／Ｓ＝２４（余り２）となるため（ステップ２１３）、次の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝２０４となる（ステップ２１４）。
【００４９】
そして、余りページ数Ｍを（Ｃ＋Ｍ−Ｘ）−（Ｄ＋１）Ｓ＝−２に変更し（ステップ２１５）、変数ＣＵＲにＰｉｖ＋１＝２０５を代入する（ステップ２１６）。
【００５０】
そして、再び用紙数Ｄを算出し、Ｄの値は、（Ｃ＋Ｍ−Ｘ）／Ｓ＝２４（余り２）となるため（ステップ２１３）、次の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝３０４となる（ステップ２１４）。
【００５１】
この結果、印刷データは、１０４ページと２０４ページで分割されることとなり（ステップ２１８）、分割された印刷データで印刷した用紙は、２６枚（１０４ページ）、２５枚（１００ページ）、２５枚（９８ページ＋白紙２ページ）となる。
【００５２】
また、３０２ページの文書を３分割して、当初２アップで印刷し、５０ページ目から２アップで両面に印刷する場合を例とすると、総ページ数Ｐが３０２（ステップ２０１）、基準ページ数Ｃが１００（ステップ２０２）、余りページ数Ｍが２（ステップ２０３）、用紙１枚当たりのページ数Ｓが２（ステップ２０４）、と算出される。そして、変数ＣＵＲを１に設定し（ステップ２０５）、変数Ｘを０に設定すると（ステップ２０６）、ＣＵＲの値がＰの値よりも小さいので（ステップ２０７でＮＯ）、処理は、ステップ２０８に進む。
【００５３】
ここで、５０ページ目から印刷条件が変更されるため、ＣＰの値は、５０が検出される（ステップ２０８）。そして、（ＣＰ＝５０）と（ＣＵＲ＋Ｃ＋Ｍ−Ｘ＝１０３）の比較の結果、ＣＰの値の方が小さいため（ステップ２０９でＹＥＳ）、変数ＸにＣＰ−ＣＵＲ＝４９を代入し（ステップ２１０）、変数ＣＵＲにＣＰの値を代入してＣＵＲ＝５０とし（ステップ２１１）、Ｓの値を再判定してＳ＝４とする（ステップ２１２）。そして、ステップ２０８に戻るが、今度は途中での印刷条件の変更が無いので、ＣＰの値は、Ｐと同じ３０２と検出される（ステップ２０８）。
【００５４】
（ＣＰ＝３０２）と（ＣＵＲ＋Ｃ＋Ｍ−Ｘ＝１０５）の比較の結果、ＣＰの値の方が大きいため（ステップ２０９でＮＯ）、用紙数Ｄが、（Ｃ＋Ｍ−Ｘ）／Ｓ＝１３（余り１）となるため（ステップ２１３）、最初の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝１０５となる（ステップ２１４）。
【００５５】
そして、余りページ数Ｍを（Ｃ＋Ｍ−Ｘ）−（Ｄ＋１）Ｓ＝−３に変更し（ステップ２１５）、変数ＣＵＲにＰｉｖ＋１＝１０６を代入する（ステップ２１６）。
【００５６】
この後、再び用紙数Ｄを算出するが、このとき、Ｄの値は、（Ｃ＋Ｍ−Ｘ）／Ｓ＝２４（余り１）となるため（ステップ２１３）、次の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝２０５となる（ステップ２１４）。
【００５７】
そして、余りページ数Ｍを（Ｃ＋Ｍ−Ｘ）−（Ｄ＋１）Ｓ＝−１に変更し（ステップ２１５）、変数ＣＵＲにＰｉｖ＋１＝２０６を代入する（ステップ２１６）。
【００５８】
そして、再び用紙数Ｄを算出し、Ｄの値は、（Ｃ＋Ｍ−Ｘ）／Ｓ＝２４（余り１）となるため（ステップ２１３）、次の分割位置Ｐｉｖが、（Ｄ＋１）Ｓ＋ＣＵＲ−１＝３０５となる（ステップ２１４）。
【００５９】
この結果、印刷データは、１０５ページと２０５ページで分割されることとなり、分割された印刷データで印刷した用紙は、３９枚（片面２アップ４９ページ２５枚＋両面２アップ５６ページ１４枚）、２５枚（両面２アップ１００ページ）、２５枚（９７ページ＋白紙３ページ分）となる。
【００６０】
なお、ここで説明したＮ分割処理は一例であり、他の方法でもＮ分割処理は可能である。また、出力先のプリンタが１つのジョブの途中で片面印刷と両面印刷を切り替えられない場合等には、印刷条件が変化する位置で印刷データを分割することとなり、Ｎ分割処理は、全く別のアルゴリズムを利用することも考えられるが、いずれにしても、両面印刷の一部に片面印刷が混入する等の不具合を生じさせることなく、印刷データをＮ個に分割すればよい。
【００６１】
次に、上述のステップ１０６で実行する制限回避処理について説明する。図５および図６は、制限回避処理の流れを示すフローチャートである。
【００６２】
ジョブ分割部１１は、制限回避処理を開始すると、印刷データにカラーデータが含まれている場合には（ステップ３０１でＹＥＳ）、データ量検出部１４にカラーのページ数をモノクロページ数相当に変換させ、データ量検出部１４は、変換係数記憶部１５を参照して変換した値をジョブ分割部１１に返す（ステップ３０２）。
【００６３】
次に、ジョブ分割部１１は、カラーページ数のモノクロページ相当数を参酌して印刷データの総ページ数を算出し（ステップ３０３）、出力先情報記憶部１６から指定された出力先のプリンタの情報を取得し（ステップ３０４）、印刷データがプリンタのデータサイズによる制限を越えているか否かを判定する。判定の結果、制限を越えていなければ（ステップ２０５でＮＯ）、そのまま処理を終了する。
【００６４】
一方、印刷データのデータサイズが出力先のプリンタの制限値を越えていた場合には（ステップ３０５でＹＥＳ）、ジョブ分割部１１は、総ページ数を制限ページ数で割ることで分割数Ｎを算出し（ステップ３０６）、算出したＮに所定の値、例えば、４を乗じて分割上限数Ｎｍａｘを決定する（ステップ３０７）。
【００６５】
続いて、ジョブ分割部１１は、算出した分割数Ｎに基づいて上述のＮ分割処理を実行し（ステップ３０８）、Ｎ分割処理によりＮ分割された全ての印刷データのサイズが制限値内であれば（ステップ３０９でＮＯ）、制限回避処理を終了する。
【００６６】
また、Ｎ分割処理によりＮ分割された印刷データに、そのサイズが制限値を越えるものがあれば（ステップ３０９でＹＥＳ）、Ｎの値をインクリメントして（ステップ３１０）、再度Ｎ分割処理を実行し（ステップ３１１でＮＯ、ステップ３０８）、Ｎ分割処理によりＮ分割された全ての印刷データのサイズが制限値内となるまで同様に処理を繰り返す。
【００６７】
また、Ｎ分割処理によりＮ分割された全ての印刷データのサイズが制限値内となる前に、分割数Ｎが分割上限数Ｎｍａｘを越えた場合には（ステップ３１１でＹＥＳ）、ジョブの発行元にエラーを通知して（ステップ３１２）、ジョブの実行処理自体を終了する。
【００６８】
次に、バナー生成部１７が生成するバナーシートについて説明する。バナー生成部１７が生成するバナーシートは、一般のバナーシートと同様に文書名や印刷日時等が記述されるが、この他に、図７に示すように、他のプリンタに出力された文書との関係や後処理の指示等が記述される。
【００６９】
他のプリンタから出力される文書との関係では、「Ｎ分割のうちｉ番目」といった表記や「１０ページから４５０ページ」といった表記を含めることで、ユーザが印刷結果をまとめることを容易にする。
【００７０】
また、他の分割文書がどのプリンタから出力されるかを記述するようにしてもよい。例えば、ひとつのジョブをプリンタＡとプリンタＢから出力する場合に、バナーシートには、このジョブがプリンタＡとプリンタＢから出力される旨が記述される。
【００７１】
後処理の指示としては、「箱づめして、どこそこに発送する」等の表記を記述するもので、これにより、ユーザは、バナーシートを見るだけで後処理を行うことができ、業務効率を改善できる。
【００７２】
【発明の効果】
以上説明したように、この発明によれば、印刷データのデータサイズがプリンタ等の印刷装置の制限値を越えている場合に、該当する印刷データを分割し、該分割した印刷データを印刷装置に送出するように構成したので、ページ数の多い文書を容易に印刷することができる。
【図面の簡単な説明】
【図１】この発明を適用したプリントサーバの機能的な構成を示すブロック図である。
【図２】プリントサーバ１の動作の流れを示すフローチャートである。
【図３】Ｎ分割処理の流れを示すフローチャート（１）である。
【図４】Ｎ分割処理の流れを示すフローチャート（２）である。
【図５】制限回避処理の流れを示すフローチャート（１）である。
【図６】制限回避処理の流れを示すフローチャート（１）である。
【図７】バナーシートの出力例を示した図である。
【符号の説明】
１　　プリントサーバ
１０　　ジョブ受付部
１１　　ジョブ分割部
１２　　データ区切検出部
１３　　割付判定部
１４　　データ量検出部
１５　　変換係数記憶部
１６　　出力先情報記憶部
１７　　バナー生成部
１８　　ジョブ送出部
【図１】
2004102601.tif 000003
【図２】
2004102601.tif 000004
【図３】
2004102601.tif 000005
【図４】
2004102601.tif 000006
【図５】
2004102601.tif 000007
【図６】
2004102601.tif 000008
【図７】
2004102601.tif 000009