(57)【要約】【課題】  ホストコンピュータなどの画像情報処理装置上において何らかのスプール処理をする際に、印刷速度の高速化を図ること。【解決手段】  バンド分割手段２１２によって分割された描画オブジェクトのバンド領域が先頭のバンドであった場合のみ、生成された印刷コマンドを、直接プリントスプーラ２０３へ転送し、それ以外はバンドメモリ２１６に一旦蓄積することによって、プリンタ２２０において、特定のバンド領域に存在する描画オブジェクトの印刷処理を先行して行うことが可能となる。【選択図】  図２
2005182417.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブを印刷装置に出力する画像情報処理装置であって、
描画オブジェクトを分類する描画オブジェクト分類手段と、前記描画オブジェクトから前記印刷装置に応じた印刷コマンドを生成する印刷コマンド生成手段と、前記描画オブジェクト分類手段の分類結果に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一時蓄積するかを切り替える制御手段とを具えたことを特徴とする画像情報処理装置。
【請求項２】
請求項１において、
前記描画オブジェクト分類手段は前記描画オブジェクトの描画位置または描画領域によって分類することを特徴とする画像情報処理装置。
【請求項３】
請求項１において、
前記描画オブジェクト分類手段は前記描画オブジェクトの種類によって分類することを特徴とする画像情報処理装置。
【請求項４】
請求項３において、
前記描画オブジェクト分類手段は、前記描画オブジェクトに対し位置情報を含まない描画オブジェクトかそうでないかによって分類することを特徴とする画像情報処理装置。
【請求項５】
請求項３において、
前記描画オブジェクト分類手段は、前記描画オブジェクトを前記印刷装置に登録するリソースオブジェクトかそうでないかによって分類することを特徴とする画像情報処理装置。
【請求項６】
請求項５において、
前記制御手段は、前記描画オブジェクトが登録文字である場合に、前記文字描画オブジェクトのグリフ情報を直接プリントスプーラへ転送し、前記印刷コマンド生成手段は描画位置情報を含む文字描画命令のみを前記描画オブジェクト分類手段で分類された結果に応じて、直接プリントスプーラへ転送するか、前記記憶装置に一旦蓄積するかを切り替える
ことを特徴とする画像情報処理装置。
【請求項７】
請求項１から６のいずれかに記載の画像情報処理装置からの印刷ジョブを受信し、そのデータを解析して記録媒体に出力する印字情報を作成することを特徴とする印刷装置。
【請求項８】
請求項７において、
印刷データを受信した段階で初期化を行う印刷初期化手段を有することを特徴とする印刷装置。
【請求項９】
請求項８において、
前記印刷初期化手段は少なくとも印刷エンジン加熱処理を行うことを特徴とする印刷装置。
【請求項１０】
印刷ジョブを印刷装置に出力する画像情報処理装置であって、
描画オブジェクトをバンド状に分割された領域に対応して分割するバンド分割手段と、前記バンド分割手段によって分割された描画オブジェクトから前記印刷装置に対応した印刷コマンドを生成する印刷コマンド生成手段と、前記分割された描画オブジェクトのバンド領域に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一旦蓄積するかを切り替える制御手段とを具えたことを特徴とする画像情報処理装置。
【請求項１１】
請求項１０において、
前記制御手段は、前記分割された描画オブジェクトのバンド領域が先頭のバンドであった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送する
ことを特徴とする画像情報処理装置。
【請求項１２】
請求項１１において、
前記バンド分割手段は、前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記先頭バンドのバンド高さを動的に変更することを特徴とする画像情報処理装置。
【請求項１３】
請求項１０において、
前記制御手段は、前記分割された描画オブジェクトのバンド領域が印刷されるバンドのうち先頭から数えて所定のバンド数以内であった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することを特徴とする画像情報処理装置。
【請求項１４】
請求項１３において、
前記バンド分割手段は、前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記所定のバンド数を動的に変更することを特徴とする画像情報処理装置。
【請求項１５】
請求項１０から１４のいずれかに記載の画像情報処理装置からの印刷ジョブを受信し、そのデータを解析して記録媒体に出力する印字情報を作成することを特徴とする印刷装置。
【請求項１６】
請求項１５において、
印刷データを受信した段階で初期化を行う印刷初期化手段を有することを特徴とする印刷装置。
【請求項１７】
請求項１６において、
前記印刷初期化手段は少なくとも印刷エンジン加熱処理を行うことを特徴とする印刷装置。
【請求項１８】
印刷ジョブを印刷装置に出力する画像情報処理方法であって、
描画オブジェクトを分類し、前記描画オブジェクトから前記印刷装置に応じた印刷コマンドを生成し、前記描画オブジェクトの分類結果に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一時蓄積するかを切り替えることを特徴とする画像情報処理方法。
【請求項１９】
請求項１８において、
前記描画オブジェクトは当該描画オブジェクトの描画位置または描画領域によって分類することを特徴とする画像情報処理方法。
【請求項２０】
請求項１８において、
前記描画オブジェクトは当該描画オブジェクトの種類によって分類することを特徴とする画像情報処理方法。
【請求項２１】
請求項２０において、
前記描画オブジェクトは、当該描画オブジェクトに対し位置情報を含まない描画オブジェクトかそうでないかによって分類することを特徴とする画像情報処理方法。
【請求項２２】
請求項２０において、
前記描画オブジェクトは、前記描画オブジェクトを前記印刷装置に登録するリソースオブジェクトかそうでないかによって分類することを特徴とする画像情報処理方法。
【請求項２３】
請求項２２において、
前記描画オブジェクトが登録文字である場合に、前記文字描画オブジェクトのグリフ情報を直接プリントスプーラへ転送し、描画位置情報を含む文字描画命令のみを前記分類された結果に応じて、直接プリントスプーラへ転送するか、前記記憶装置に一旦蓄積するかを切り替えることを特徴とする画像情報処理方法。
【請求項２４】
請求項１８から２３のいずれかの画像情報処理方法によって得られた印刷ジョブを受信し、そのデータを解析して記録媒体に出力する印字情報を作成することを特徴とする印刷方法。
【請求項２５】
請求項２４において、
印刷データを受信した段階で初期化を行うことを特徴とする印刷方法。
【請求項２６】
請求項２５において、
前記初期化は少なくとも印刷エンジン加熱処理を行うことを特徴とする印刷方法。
【請求項２７】
印刷ジョブを印刷装置に出力する画像情報処理方法であって、
描画オブジェクトをバンド状に分割された領域に対応して分割し、前記分割された描画オブジェクトから前記印刷装置に対応した印刷コマンドを生成し、前記分割された描画オブジェクトのバンド領域に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一旦蓄積するかを切り替えることを特徴とする画像情報処理方法。
【請求項２８】
請求項２７において、
前記分割された描画オブジェクトのバンド領域が先頭のバンドであった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することを特徴とする画像情報処理方法。
【請求項２９】
請求項２８において、
前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記先頭バンドのバンド高さを動的に変更することを特徴とする画像情報処理方法。
【請求項３０】
請求項２７において、
前記分割された描画オブジェクトのバンド領域が印刷されるバンドのうち先頭から数えて所定のバンド数以内であった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することを特徴とする画像情報処理方法。
【請求項３１】
請求項３０において、
前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記所定のバンド数を動的に変更することを特徴とする画像情報処理方法。
【請求項３２】
請求項２７から３１のいずれかの画像情報処理方法によって得られた印刷ジョブを受信し、そのデータを解析して記録媒体に出力する印字情報を作成することを特徴とする印刷方法。
【請求項３３】
請求項３２において、
印刷データを受信した段階で初期化を行うことを特徴とする印刷方法。
【請求項３４】
請求項３３において、
前記初期化は少なくとも印刷エンジン加熱処理を行うことを特徴とする印刷方法。
【請求項３５】
請求項１８から２３のいずれかに記載の画像情報処理方法を実行する為のプログラム。
【請求項３６】
請求項１８から２３のいずれかに記載の画像情報処理方法を実行する為のコンピュータ読取可能な記録媒体。
【請求項３７】
請求項２４から２６のいずれかに記載の印刷方法を実行する為のプログラム。
【請求項３８】
請求項２４から２６のいずれかに記載の印刷方法を実行する為のコンピュータ読取可能な記録媒体。
【請求項３９】
請求項２７から３１のいずれかに記載の画像情報処理方法を実行する為のプログラム。
【請求項４０】
請求項２７から３１のいずれかに記載の画像情報処理方法を実行する為のコンピュータ読取可能な記録媒体。
【請求項４１】
請求項３２から３４のいずれかに記載の印刷方法を実行する為のプログラム。
【請求項４２】
請求項３２から３４のいずれかに記載の印刷方法を実行する為のコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像情報処理装置、画像情報処理方法、印刷装置、印刷方法、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
従来のページプリンタにおける印刷システムでは、ユーザがアプリケーションを用いて作成した印刷データは、描画オブジェクト単位にオペレーションシステムの描画関数を通じてホストコンピュータ上で動作するプリンタドライバへ渡され、プリンタドライバは渡された描画オブジェクトを接続された印刷装置に応じた印刷コマンドへ逐次変換し、印刷コマンドが出来上がるとすぐに印刷データがプリントスプーラへ転送される。その後所定の単位で印刷データがプリンタへ転送される。プリンタでは送られてきた印刷データから印刷コマンドを読み出し、その印刷コマンドを逐次中間データへ変換する。このとき、印刷データの論理用紙レイアウトとプリンタにセットされた物理用紙レイアウトが異なる場合には、必要に応じて回転・拡大縮小を施す。こうして１ページ分の中間データが出来上がると、それを専用のハードウェア装置などを用いてビットマップデータへ変換し、ビットマップデータをビデオデータとしてプリンタエンジンに転送することで最終的な印刷結果を得ていた。
【０００３】
このような印刷システムでは、プリンタ内部で１ページ分の中間データを記憶するメモリを必要とし、プリンタは大量のメモリを搭載していた。
【０００４】
しかし近年になってアプリケーションで生成される印刷データが煩雑化し、同時にプリンタへ転送されるデータ量も増大してきた。そのためプリンタ内部でのメモリ不足が頻発し、印刷速度および印刷品質が低下していた。
【０００５】
そこで、近年になってホストコンピュータの処理能力が向上すると、プリンタでの処理を低減し、ホストコンピュータ上へシフトすることにより、より効率的に処理を行うことができる別の印刷システムが開発されている。より具体的な例を示すと、ホストコンピュータ上のプリンタドライバで、最終的に印刷される物理用紙レイアウトを意識してデータの回転・拡大縮小を行い、さらにプリンタでの処理データ単位を小さくするため描画オブジェクトをバンド状の領域単位に分割し、印刷される順番にバンド単位にデータを転送する（描画オブジェクトをバンド状の領域単位に分割する技術は例えば特許文献１に記載されている）。プリンタではバンド単位に中間データを生成し、バンド単位の中間データが出来上がるとすぐにビットマップデータを生成する。さらにこの間に次のバンドの中間データ作成処理をおこなう。このように中間データ生成処理とビットマップ生成処理を平行して同時に行うことにより処理が高速化され、また処理単位がバンド単位のため必要なメモリサイズが低減する。こうすることでメモリサイズを削減することが可能となり、印刷時間を高速化することができる。
【０００６】
【特許文献１】特開２００３−０７６５１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
またプリンタでは印刷データ処理の他に、プリンタエンジンを加熱するためのヒート時間が必要となる。通常プリンタではデータを受信したと同時に、それが印刷ジョブであると判断できるとエンジンヒートさせることで印刷データ解析処理とエンジンヒートを平行して同時におこなっている。
【０００８】
しかし後者のような別の印刷システムでは、バンド単位でのデータ転送を実現するため、ホストコンピュータ上でプリンタドライバが１ページ分の描画オブジェクトをメモリないし記憶装置にスプールしておく必要があるそのため前者の印刷システムに比較して、ユーザからの印刷開始指示から先頭データがプリンタへ送られるタイミングが遅れてしまうため、エンジンヒートのタイミングも遅れてしまう。したがってプリンタでの印刷データ解析処理がエンジンヒート時間よりも短いようなデータの場合には、後者の印刷システムの方が前者の印刷システムに比較して、返って印刷速度が遅くなってしまうという問題があった。
【０００９】
本発明は、上記問題点を鑑みてなされたもので、第１の目的は、例えばホストコンピュータなどの画像情報処理装置上において何らかのスプール処理をする際に、印刷速度の高速化を図ることである。
【００１０】
また、例えば、従来のバンド分割ドライバでは、ドライバで１ページ分の全コマンドをメモリへスプールするため、通常のメモリスプールしないドライバに比較して、プリンタ本体へのデータインタイミングが遅れ、このため、データインと同時にプレスキャンするプリンタなどではかえって印刷速度が劣ってしまうという問題があったが、本発明では、コマンドの種類やその描画位置などによって記憶装置に一旦記憶するか（すなわちメモリスプールするか）、またはプリントスプーラに転送するかを切替えることによって、できるだけ早くプリンタにデータを転送することによって、上記の問題を解消することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明は、印刷ジョブを印刷装置に出力する画像情報処理装置であって、描画オブジェクトを分類する描画オブジェクト分類手段と、前記描画オブジェクトから前記印刷装置に応じた印刷コマンドを生成する印刷コマンド生成手段と、前記描画オブジェクト分類手段の分類結果に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一時蓄積するかを切り替える制御手段とを具えたことを特徴とする。
【００１２】
ここで、好ましくは、前記描画オブジェクト分類手段は前記描画オブジェクトの描画位置または描画領域によって分類することを特徴とする。
【００１３】
また、好ましくは、前記描画オブジェクト分類手段は前記描画オブジェクトの種類によって分類することを特徴とする。
【００１４】
さらに、好ましくは、前記描画オブジェクト分類手段は、前記描画オブジェクトに対し位置情報を含まない描画オブジェクトかそうでないかによって分類することを特徴とする。
【００１５】
さらに、好ましくは、前記描画オブジェクト分類手段は、前記描画オブジェクトを前記印刷装置に登録するリソースオブジェクトかそうでないかによって分類することを特徴とする。
【００１６】
さらに、好ましくは、前記制御手段は、前記描画オブジェクトが登録文字である場合に、前記文字描画オブジェクトのグリフ情報を直接プリントスプーラへ転送し、前記印刷コマンド生成手段は描画位置情報を含む文字描画命令のみを前記描画オブジェクト分類手段で分類された結果に応じて、直接プリントスプーラへ転送するか、前記記憶装置に一旦蓄積するかを切り替えることを特徴とする。
【００１７】
また、本発明の別の態様は、印刷ジョブを印刷装置に出力する画像情報処理装置であって、描画オブジェクトをバンド状に分割された領域に対応して分割するバンド分割手段と、前記バンド分割手段によって分割された描画オブジェクトから前記印刷装置に対応した印刷コマンドを生成する印刷コマンド生成手段と、前記分割された描画オブジェクトのバンド領域に応じて、前記生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一旦蓄積するかを切り替える制御手段とを具えたことを特徴とする。
【００１８】
ここで、好ましくは、前記制御手段は、前記分割された描画オブジェクトのバンド領域が先頭のバンドであった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することを特徴とする。
【００１９】
さらに、好ましくは、前記バンド分割手段は、前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記先頭バンドのバンド高さを動的に変更することを特徴とする。
【００２０】
さらに、好ましくは、前記制御手段は、前記分割された描画オブジェクトのバンド領域が印刷されるバンドのうち先頭から数えて所定のバンド数以内であった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することを特徴とする。
【００２１】
さらに、好ましくは、前記バンド分割手段は、前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記所定のバンド数を動的に変更することを特徴とする。
【００２２】
さらに本発明の別の態様は、上記いずれかの画像情報処理装置からの印刷ジョブを受信し、そのデータを解析して記録媒体に出力する印字情報を作成する印刷装置を特徴とする。
【００２３】
ここで、好ましくは、印刷データを受信した段階で初期化を行う印刷初期化手段を有することを特徴とする。
【００２４】
さらに、好ましくは、前記印刷初期化手段は少なくとも印刷エンジン加熱処理を行うことを特徴とする。
【発明の効果】
【００２５】
本発明によれば、画像情報処理装置上において何らかのスプール処理をする際に、印刷速度の高速化を図ることができる。
【００２６】
また、本発明によれば、コマンドの種類やその描画位置などによって記憶装置に一旦記憶するか（すなわちメモリスプールするか）、またはプリントスプーラに転送するかを切替えることによって、できるだけ早く印刷装置にデータを転送することができ、画像情報処理装置および印刷装置を含めたシステムの総合的な処理速度を向上することができる。
【００２７】
さらに本発明によれば、描画オブジェクト分類手段の分類結果に応じて、生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一時蓄積するかを切り替えることによって、印刷装置において、特定の描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００２８】
また、本発明によれば、描画オブジェクト分類手段が描画オブジェクトの描画位置または描画領域によって分類することによって、印刷装置において、特定の描画位置または描画領域に存在する描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００２９】
さらに、本発明によれば、描画オブジェクト分類手段が描画オブジェクトの種類によって分類することによって、印刷装置において、特定の種類の描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００３０】
さらに、本発明によれば、バンド分割手段によって分割された描画オブジェクトのバンド領域に応じて、生成された印刷コマンドを、直接プリントスプーラへ転送するか、記憶装置に一旦蓄積するかを切り替えることによって、印刷装置において、特定のバンド領域に存在する描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００３１】
さらに、本発明によれば、前記バンド分割手段によって分割された描画オブジェクトのバンド領域が先頭のバンドであった場合のみ、生成された印刷コマンドを、直接プリントスプーラへ転送することによって、印刷装置において、先頭のバンドに存在する描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００３２】
さらに、本発明によれば、バンド分割手段が、描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記先頭バンドのバンド高さを動的に変更することによって、印刷装置において、先行して処理可能な描画オブジェクトの量を最適に変更することが可能となる。
【００３３】
さらに、本発明によれば、バンド分割手段が、分割された描画オブジェクトのバンド領域が印刷されるバンドのうち先頭から数えて所定のバンド数以内であった場合のみ、前記生成された印刷コマンドを、直接プリントスプーラへ転送することによって、印刷装置において、先頭から数えて所定のバンド数以内に存在する描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００３４】
さらに、本発明によれば、前記描画オブジェクトを生成したアプリケーションの種類、印刷データの種類、前記画像情報処理装置及び前記印刷装置の処理能力、前記画像情報処理装置及び前記印刷装置の搭載メモリ、前記画像情報処理装置及び前記印刷装置の処理状況、前記プリントスプーラへのデータ転送手段のうち少なくとも一つ以上の項目に応じて、前記所定のバンド数を動的に変更することによって、印刷装置において、先行して処理可能な描画オブジェクトの量を最適に変更することが可能となる。
【００３５】
さらに、本発明によれば、描画オブジェクト分類手段が、描画オブジェクトに対し位置情報を含まない描画オブジェクトかそうでないかによって分類することによって、印刷装置において、位置情報を含まない描画オブジェクトの印刷処理を先行して行うことが可能となる。
【００３６】
さらに、本発明によれば、描画オブジェクト分類手段が、描画オブジェクトを印刷装置に登録するリソースオブジェクトかそうでないかによって分類することによって、印刷装置において、リソースオブジェクトの登録処理を先行して行うことが可能となる。
【００３７】
さらに、本発明によれば、描画オブジェクトが登録文字である場合に、文字描画オブジェクトのグリフ情報を直接プリントスプーラへ転送し、印刷コマンド生成手段が描画位置情報を含む文字描画命令のみを描画オブジェクト分類手段で分類された結果に応じて、直接プリントスプーラへ転送するか、記憶装置に一旦蓄積するかを切り替えることによって、印刷装置において、登録文字オブジェクトの登録処理を先行して行うことが可能となる。
【００３８】
さらに、本発明によれば、印刷データを受信した段階で印刷初期化手段により印刷装置の初期化を行うことによって、早いタイミングで印刷装置の初期処理を行うことが可能となる。
【００３９】
さらに、本発明によれば、印刷初期化手段が印刷エンジン加熱処理を行うことによって、早いタイミングで印刷エンジン加熱処理を行うことが可能となる。
【発明を実施するための最良の形態】
【００４０】
本実施例を適用するのに好適なレーザビームプリンタおよびインクジェットプリンタの構成について図１を参照しながら説明する。なお、本実施例を適用する印刷装置は、レーザビームプリンタおよびインクジェットプリンタに限られるものではなく、他のプリント方式の印刷装置でも良いことは言うまでもない。
【００４１】
図１は本発明を適用可能な第１の印刷装置の構成を示す断面図であり、例えばレーザビームプリンタ（ＬＢＰ）の場合を示す。  
図１において１０１はプリンタ本体である。１２８は操作パネルで、操作のためのスイッチおよびＬＥＤ表示器、ＬＣＤ表示器が配されている。１０３は制御ボード収納部で、プリンタの印字プロセス制御を行うエンジンコントローラ、およびプリンタ全体の制御とホストコンピュータからのデータを解析しイメージデータに変換するビデオコントローラ、および各種オプションユニットを統括して制御するオプションコントローラが収納されている。
【００４２】
１３０は用紙カセットで、用紙を保持し不図示の仕切り板によって電気的に用紙サイズを検知する機構を有する。また用紙カセット１３０は収納されている用紙の残量を検知するセンサ１３２を備え、用紙の残量を検知する機能を有する。１３１はカセット給紙クラッチで、用紙カセット１３０上に収納された用紙の最上位の用紙一枚のみを分離し、不図示の駆動手段によって分離した用紙を給紙ローラ１０４まで搬送させるカムであり、給紙の度に間欠的に回転し、一回転に対応して一枚の用紙を給紙する。１２９はレジストシャッタで用紙を押圧して給紙を停止させる。給紙ローラ１０４はカセット給紙クラッチ１３１より給紙される用紙の先端部をレジストシャッタ１２９まで搬送する。１０２は手差し給紙トレイであり、１０５は手差し給紙ローラで、この手差し給紙ローラ１０５は用紙の先端をレジストシャッタ１２９まで搬送する。
【００４３】
以上のような構成によって用紙カセット１３０および手差し給紙用トレイ１０２から選択的に用紙を給紙する事が可能となる。また、手差し給紙ローラ１０５、カセット給紙クラッチ１３１の下流には、記録紙を同期搬送する給紙ローラ１０４、レジストローラ対１０６がそれぞれ設けられ、レジストローラ対１０６の下流には、レーザスキャナ部１０７から発したレーザ光によって、記録紙上にトナー像を形成する画像記録部１０８が設けられている。
【００４４】
さらに、画像記録部１０８の下流には、記録紙上に形成されたトナー像を熱定着する定着器１０９が設けられ、定着器１０９の下流には、排紙部の紙搬送状態を検知する排紙センサ１１０、記録紙を搬送する搬送ローラ１１１などが設けられている。排紙トレイ１１５は用紙残量検知センサ１１５Ｓを備えており、一定時間毎に排紙トレイ１１５に積載された用紙残量を検知する。
【００４５】
次にレーザスキャナ部１０７は、プリンタコントローラから送出される画像信号（画像信号ＶＤＯ）に基づいて変調されたレーザ光を発光するレーザユニット１１６、このレーザユニット１１６からのレーザ光を感光ドラム１２２上に走査するポリゴンミラー１１７、走査方向のレーザ光位置を検出するビーム検出器１１８、結像レンズ群１１９、折返ミラー１２０およびレーザ光の光量を検知する光量検知センサ１２１等により構成されている。
【００４６】
前述の画像記録部１０８は公知の電子写真プロセスに必要な、レーザスキャナ部１０７の走査により形成された静電潜像を保持する感光ドラム１２２、感光ドラム１２２を光除電する前露光ランプ１２３、感光ドラムを一様帯電させる一時帯電器１２４、感光ドラム１２２に形成された静電潜像をトナー現像する現像器１２５、現像器１２５により現像されたトナー像を給送される記録紙に転写する転写帯電器１２６、感光ドラム１２２上の残存トナーを清掃するクリーナ１２７等から構成されている。
【００４７】
制御ボード収納部１０３内には図示しないビデオコントローラ、エンジンコントローラおよびオプションコントローラ部があり、エンジンコントローラはレーザスキャナ部１０７、画像記録部１０８，定着器１０９による電子写真プロセスの制御およびプリンタ本体１０１内の記録紙の搬送制御を行う。また、ビデオコントローラは、パーソナルコンピュータ等の外部装置（不図示）と汎用インタフェース（セントロニクスインタフェースやＲＳ２３２Ｃ等）で接続され、汎用インタフェースを介して送られてくる画像情報をビットデータに展開し、そのビットデータを信号ＶＤＯとしてエンジンコントローラへ送る。
【００４８】
〔第１実施例〕
＜図２の説明＞
図２は、本発明の第１の実施の形態に係る印刷システムの概略構成を示すブロック図である。  
なお、ここではレーザビームプリンタ（図１）を例にして説明する。
【００４９】
同図に示すように、本実施例に係る印刷システムは、ホストコンピュータ２０１と、ＬＡＮなどの通信回線によってホストコンピュータ２０１に接続され、送られてきた印刷ジョブを印刷用紙に印刷するプリンタ２２０から構成される。
【００５０】
ホストコンピュータは、後述の各プログラムを実行するＣＰＵと、このＣＰＵの作業領域を提供するＲＡＭ（後述のバンドメモリ２１６を含む）と、初期化プログラム等を格納したＲＯＭと、オペレーティングシステムプログラム、文書作成等を行うアプリケーションプログラム、プリンタドライバプログラム等のソフトウエアプログラムを格納した大容量記憶装置としてのハードディスク装置と、キーボード、マウス等を含む入力装置と、表示手段とを有する。
【００５１】
アプリケーション２０２は、入力装置によるユーザからの入力情報を取得し、印刷する文書を生成することができ、プリンタドライバ２１０は、アプリケーション２０２によって作成された文書から、プリンタ２２０に送信する印刷ジョブを生成する。
【００５２】
２１１〜２１５は、プリンタドライバ２１０によって実行される機能を示している。すなわち、プリンタドライバ２１０はアプリケーション２０２を用いて作成された文書に基づいて、オペレーションシステムのＡＰＩを通じて受け取った描画オブジェクトを物理用紙レイアウトに変換するレイアウト変換手段２１１と、レイアウト変換された描画オブジェクトをバンド状に分割された領域に対応して分割するバンド分割手段２１２と、バンド分割手段２１２によって分割された描画オブジェクトから所定のルールに基づきプリンタ２２０に対応した印刷コマンドを生成する印刷コマンド生成手段２１３と、印刷コマンド生成手段２１３によって生成された印刷コマンドを対応するバンドメモリ２１６へ転送するバンドメモリ転送手段２１４と、バンドメモリ２１６に格納された印刷データを所定の順序で順次プリントスプーラ２０３へ転送するスプーラ転送手段２１５とを実現する。
【００５３】
プリンタ２２０は、プログラムを実行するＣＰＵと、このＣＰＵの作業領域を提供するＲＡＭ（後述のメモリ２２３を含む）と、プリンタ全体を制御するプログラム等（図５に示すプログラムを含む）を格納したＲＯＭとを有しており、ＲＯＭ内のプログラムを実行して以下に示す手段２２２，２２６，２２８を実現する。すなわち、プリンタ２２０は、プリンタ２２０に転送された印刷ジョブを受信する印刷ジョブ受信手段２２１と、受信した印刷ジョブから印刷コマンドを読み出し所定のルールに基づき印刷コマンドを解析し、中間データを生成する印刷ジョブ解析手段２２２と、各種ワークメモリとして使用されるメモリ２２３と、メモリ２２３上に構成され中間データを蓄積する中間データバッファ２２４と、中間データバッファ２２４に蓄積された中間データをビットマップイメージへ展開するイメージ展開手段２２６と、メモリ２２３上に構成されイメージ展開手段２２６により展開されたビットマップイメージを蓄積するイメージデータバッファ２２５と、展開されたイメージデータを印刷用紙に物理的に印刷するプリンタエンジン２２７と、プリンタエンジンへエンジンヒート開始を命令するエンジンヒート開始手段２２８とを有する。
なお、２３０は試し印刷で印刷された印刷結果を表す。
【００５４】
以上のような構成の印刷システムにおける印刷処理の流れを説明する。  
＜図３の説明＞
図３はプリンタドライバ２１０の処理動作を表すフローチャートである。ユーザからの印刷指示を受け取ると、処理を開始し、まず、Ｓ３０１で、プリンタドライバ２１０はアプリケーション２０２より描画オブジェクト単位に印刷データを受け取り、Ｓ３０２に進む。Ｓ３０２では、描画オブジェクトの論理用紙レイアウトとプリンタにセットされている物理用紙レイアウトが異なるか否かを判断し、異なる場合はレイアウト変換が必要と判断し（Ｓ３０２−ＹＥＳ）、レイアウト変換手段２１１により必要に応じてオブジェクトの回転・拡大縮小を行う（Ｓ３０３）。次にＳ３０４では描画オブジェクトが物理用紙レイアウト上で複数のバンドにまたがっているか否かを判断し、またがっている場合にはバンド分割が必要と判断して（Ｓ３０４−ＹＥＳ）、バンド分割手段２１２により描画オブジェクトを各バンド単位のオブジェクトに分割する（Ｓ３０５）。次にＳ３０６では分割された描画オブジェクトから印刷コマンド生成手段２１３により印刷コマンドを生成する。そしてＳ３０６で生成した印刷コマンドが物理用紙レイアウト上で最初に印刷されるバンドに対応する印刷コマンドであるか否かを判断し、対応するコマンドであった場合には（Ｓ３０７−ＹＥＳ）、プリントスプーラ２０３へ直接転送する（Ｓ３０８）、一方Ｓ３０６で生成した印刷コマンドが物理用紙レイアウト上で最初に印刷されるバンドに対応する印刷コマンドなかった場合には（Ｓ３０７−ＮＯ）、バンドメモリ転送手段２１４によってバンドメモリ２１６内の対応するバンドメモリへ格納する（Ｓ３０９）。Ｓ３１０ではＳ３０５で分割されたすべての描画オブジェクトに対し以上の処理が終了しているか否かを判断し、終了していなければ（Ｓ３１０−ＮＯ）、Ｓ３０６に立ち返り、分割されたすべての描画オブジェクトに対する処理が終了するまで繰り返す。ついで、Ｓ３１１では、印刷データ中のすべての描画オブジェクトを受け取り終了したか否かを判断し、終了したならば（Ｓ３１１−ＹＥＳ）、バンドメモリ２１６に格納されている印刷データをスプーラ転送手段２１５により、所定の順序で順次プリントスプーラ２０３へ転送し（Ｓ３１２）、処理を終了する。一方未だ受け取っていない描画オブジェクトがある場合には（Ｓ３１１−ＮＯ）、Ｓ３０１へ立ち返り、すべての描画オブジェクトを受け取り終了するまで上記処理を繰り返す。
【００５５】
またプリントスプーラに転送された印刷データは、ホストコンピュータ２０１のオペレーションシステムの処理により順次プリンタへデータ転送される。以上のようにしてプリンタドライバ２１０は印刷データを生成してプリンタへ送信する。
【００５６】
＜図４の説明＞
図４は本実施例において印刷される印刷データの構成の一例を示した図である。図４を用いてプリンタドライバ２１０の処理動作の例を説明する。  
４０１はアプリケーション２０２で作成した論理用紙レイアウト上での印刷データを示す。４０１には描画オブジェクトとして４０２〜４０６のオブジェクトが存在する。まずプリンタドライバ２１０は、レイアウト変換手段２１１により各描画オブジェクトを物理用紙レイアウトへ変換する。４１０は、プリンタドライバ２１０がプリンタ２２０にセットされた物理用紙に応じてレイアウト変換した様子を示している。描画オブジェクト４０２〜４０６はそれぞれ回転されて４０２’〜４０６’へとレイアウト変換されている。
【００５７】
次にレイアウト変換処理を施した描画オブジェクトに対して、バンド分割手段２１２が各オブジェクトをバンド毎に分割し、分割された各描画オブジェクトに対し印刷コマンド生成手段２１３によって印刷コマンドを生成する。ここでバンド領域は物理用紙レイアウト上に４１１〜４１４の様に設定されたとすると、４０５’、４０６’のようなグラフィックオブジェクトはそれぞれバンド分割手段２１２によって、４０５ａ、４０５ｂおよび４０６ａ、４０６ｂ、４０６ｃに分割される。
【００５８】
次に分割された各描画オブジェクトは、そのバンド領域によって直接プリントスプーラ２０３へデータ転送されるか、バンドメモリ２１６へ格納されるか、を振り分けられる。ここでプリンタ２２０での物理用紙搬送方向が４１５の場合、描画オブジェクト４０５ａ、４０２’が直接プリントスプーラ２０３へデータ転送され、残りの描画オブジェクトはすべてバンドメモリ２０６内の所定のバンドメモリに格納される。
【００５９】
また描画オブジェクト４０４’は文字オブジェクトのため文字グリフデータが文字リソースとしてプリンタへ登録され、バンド４１３、４１４の２箇所に対して文字オブジェクト４０４’の印刷コマンドが発行される。
【００６０】
＜図５の説明＞
図５はプリンタ２２０の処理動作を表すフローチャートである。プリンタ２２０は印刷ジョブ受信手段２２１により印刷ジョブを受信すると（Ｓ５０１）、エンジンヒート開始手段２２８によりエンジンヒートを開始する（Ｓ５０２）。次にバンド単位に逐次印刷コマンドを読み出し、印刷ジョブ解析手段２２２により印刷コマンドを解析していく（Ｓ５０３）。Ｓ５０３の解析によって生成される中間データは、中間データバッファ２２４に蓄積される（Ｓ５０４）。該バンドのすべての印刷コマンドを解析したか否かを判断し（Ｓ５０５）、終了していなければ、以上の作業を該バンドのすべての印刷コマンドを解析終了するまで続け、該バンドのすべての印刷コマンドを解析終了したならば（Ｓ５０５−ＹＥＳ）、蓄積された中間データをイメージ展開手段２２６によってビットマップイメージへ変換し、イメージデータバッファ２２５へ蓄積する（Ｓ５０６）。ついで、Ｓ５０７では、すべてのバンドのイメージ展開処理が終了したか否かを判断し、終了していなければ終了するまでＳ５０３〜Ｓ５０６の処理を繰り返し、すべてのバンドのイメージ展開処理が終了したならば（Ｓ５０７−ＹＥＳ）、蓄積された１ページ分のイメージデータをプリンタエンジン２２７へ転送して（Ｓ５０８）、印刷結果２３０を得る。またＳ５０２とＳ５０５の処理はバンド単位に平行して同時に行われることにより高速に処理することが可能となっている。
【００６１】
以上のような処理により、印刷データをバンド単位に分割してプリンタへ転送する印刷システムにおいて、より高速に印刷結果を得ることが可能となる。
【００６２】
なお本実施例では、先頭バンドに含まれる描画オブジェクトのみ直接プリントスプーラへデータ転送したが、先頭バンドだけでなく他のバンドに対しても同様にしてもよい。例えば先頭から数えて２つのバンドに関しては直接プリントスプーラへデータ転送することによって、プリンタ側でより多くの印刷データを先行して処理することが可能となる。また同様の考え方でバンド領域の分割高さを均等ではなく先頭バンドだけバンド領域が広くなるように高さを調節してもかまわない。ただし、どちらの場合もプリンタで処理する印刷データの単位が大きくなるため最低限必要なメモリ量はいくらか増大する。
【００６３】
ホスト能力や、印刷データの種類、メモリ搭載量によって直接プリントスプーラへデータ転送するバンド数やバンド高さを動的に決定すれば、より最適な印刷処理をおこなう印刷システムが構築できる。
【００６４】
〔第２実施例〕
第１実施例では、先頭バンドに存在する描画データのみ直接プリントスプーラへデータ転送したが、第２実施例ではリソースとしてプリンタへ登録される印刷コマンドも直接プリントスプーラへデータ転送する場合ついて説明する。なお本実施例では、第１実施例と異なる部分のみ主に説明し、同じ構成のものについては同一の符号を用いて説明省略する。すなわち、図６に示すように、プリンタドライバ２１０においては、リソース登録手段６０１を追加し、プリンタ２２０においては、リソース登録バッファ６０２を追加した。図８に示すプログラムは、プリンタ内のＲＯＭに格納されている。
【００６５】
＜図７の説明＞
図７はプリンタドライバ２１０の処理動作を表すフローチャートである。ユーザが印刷指示を発行したならば、プリンタドライバ２１０はアプリケーション２０２より描画オブジェクト単位に印刷データを受け取る（Ｓ７０１）。このとき描画オブジェクトの論理用紙レイアウトとプリンタにセットされている物理用紙レイアウトが異なる場合はレイアウト変換が必要と判断し（Ｓ７０２−ＹＥＳ）、レイアウト変換手段２１１により必要に応じてオブジェクトの回転・拡大縮小を行う（Ｓ７０３）。次に描画オブジェクトがプリンタ２２０へ登録すべきリソースデータを持っているか否かを判断し（Ｓ７０４）、持っていたならば（Ｓ７０４−ＹＥＳ）、リソース登録手段７０１はリソースデータ登録コマンドを生成しプリントスプーラ２０３へ転送する（Ｓ７０５）。次に描画オブジェクトが物理用紙レイアウト上で複数のバンドにまたがっている場合にはバンド分割が必要と判断され（Ｓ７０６ーＹＥＳ）、バンド分割手段２１２により描画オブジェクトは各バンド単位のオブジェクトに分割される（Ｓ７０７）。次に分割された描画オブジェクトから印刷コマンド生成手段２１３により印刷コマンドを生成する（Ｓ７０８）。そしてＳ７０８で生成した印刷コマンドが物理用紙レイアウト上で最初に印刷されるバンドに対応する印刷コマンドであった場合には（Ｓ７０９−ＹＥＳ）、プリントスプーラ２０３へ直接転送される（Ｓ７１０）。一方Ｓ７０８で生成した印刷コマンドが物理用紙レイアウト上で最初に印刷されるバンドに対応する印刷コマンドなかった場合には（Ｓ７０９−ＮＯ）、バンドメモリ転送手段２１４によってバンドメモリ２１６内の対応するバンドメモリへ格納される（Ｓ７１１）。Ｓ７０７で分割されたすべての描画オブジェクトに対し以上の処理が終了していなければ（Ｓ７１２−ＮＯ）、Ｓ７０８に立ち返り、分割されたすべての描画オブジェクトに対する処理が終了するまで繰り返す。ここで、印刷データ中のすべての描画オブジェクトを受け取り終了したならば（Ｓ７１３−ＹＥＳ）、バンドメモリ２１６に格納されている印刷データをスプーラ転送手段２１５により、所定の順序で順次プリントスプーラ２０３へ転送し（Ｓ７１４）、処理を終了する。一方未だ受け取っていない描画オブジェクトがある場合には（Ｓ７１３−ＮＯ）、Ｓ７０１へ立ち返り、すべての描画オブジェクトを受け取り終了するまで上記処理を繰り返す。
【００６６】
またプリントスプーラに転送された印刷データは、ホストコンピュータ２０１のオペレーションシステムの処理により順次プリンタへデータ転送される。以上のようにしてプリンタドライバ２１０は印刷データを生成してプリンタへ送信する。
【００６７】
＜図８の説明＞
図８はプリンタ２２０の処理動作を表すフローチャートである。プリンタ２２０は印刷ジョブ受信手段２２１により印刷ジョブを受信すると（Ｓ８０１）、エンジンヒート開始手段２２８によりエンジンヒートを開始する（Ｓ８０２）。次にバンド単位に逐次印刷コマンドを読み出し、印刷ジョブ解析手段２２２により印刷コマンドを解析していく（Ｓ８０３）。ここで印刷コマンドがリソース登録命令であるか否かを判断し（Ｓ８０４）、登録命令であった場合には（Ｓ８０４−ＹＥＳ）、リソースデータをリソース登録バッファ６０２へ蓄積し（Ｓ８０５）、Ｓ８０３へ立ち返り次のコマンドを解析する。一方Ｓ８０３の解析によって中間データが生成された場合、中間データバッファ２２４に蓄積される（Ｓ８０６）。以上の作業を該バンドのすべての印刷コマンドを解析終了するまで続け、該バンドのすべての印刷コマンドを解析終了したならば（Ｓ８０７−ＹＥＳ）、蓄積された中間データをイメージ展開手段２２６によってビットマップイメージへ変換し、イメージデータバッファ２２５へ蓄積する（Ｓ８０８）。こうしてすべてのバンドのイメージ展開処理が終了するまでＳ８０３〜Ｓ８０８の処理を繰り返し、すべてのバンドのイメージ展開処理が終了したならば（Ｓ８０９−ＹＥＳ）、蓄積された１ページ分のイメージデータをプリンタエンジン２２７へ転送して（Ｓ８１０）、印刷結果２３０を得る。またＳ５０２とＳ５０５の処理はバンド単位に平行して同時に行われることにより高速に処理することが可能となっている。
【００６８】
以上のような処理により、印刷データをバンド単位に分割してプリンタへ転送する印刷システムにおいて、より早いタイミングで登録リソースデータの処理を行うことが可能となる。
【図面の簡単な説明】
【００６９】
【図１】本発明の実施例１、２に係る印刷システムの断面図である。
【図２】本発明の実施例１に係る印刷システムの構成を説明するブロック図である。
【図３】本発明の実施例１に係るプリンタドライバの処理動作を表すフローチャートである。
【図４】本発明の実施例１、２に係るプリンタドライバの処理を表す模式図である。
【図５】本発明の実施例１に係るプリンタの処理動作を表すフローチャートである。
【図６】本発明の実施例２に係る印刷システムの構成を説明するブロック図である。
【図７】本発明の実施例２に係るプリンタドライバの処理動作を表すフローチャートである。
【図８】本発明の実施例２に係るプリンタの処理動作を表すフローチャートである。
【符号の説明】
【００７０】
１０１  ＬＢＰ本体
１０３  制御ボード収納部
１１５  排紙トレイ
１２８  操作パネル
１３０  用紙カセット
２０１  ホストコンピュータ
２０２  アプリケーション
２１０  ドライバ
２０３  プリントスプーラ
２１１  レイアウト変換手段
２１２  バンド分割手段
２１３  印刷コマンド生成手段
２１４  バンドメモリ転送手段
２１５  スプーラ転送手段
２１６  バンドメモリ
２２０  プリンタ
２２１  印刷ジョブ受信手段
２２２  印刷ジョブ解析手段
２２３  メモリ
２２４  中間データバッファ
２２５  イメージデータバッファ
２２６  イメージ展開手段
２２７  プリンタエンジン
２３０  印刷結果
６０１  リソース登録手段
６０２  リソース登録バッファ
【図１】
2005182417.tif 000003
【図２】
2005182417.tif 000004
【図３】
2005182417.tif 000005
【図４】
2005182417.tif 000006
【図５】
2005182417.tif 000007
【図６】
2005182417.tif 000008
【図７】
2005182417.tif 000009
【図８】
2005182417.tif 000010