(57)【特許請求の範囲】
【請求項１】
出力情報を供給する情報処理装置と、前記情報処理装置より供給される出力情報を印刷出力する印刷装置とを含む情報出力システムであって、
前記情報処理装置に出力画像を描画する描画機能と、前記印刷装置とのインタフェースを司るプリンタドライバ機能とを備え、
前記プリンタドライバ機能は、
前記描画機能で描画される中間データを前記印刷装置で処理するバンド単位にディザ処理により２値化したイメージデータ形式に展開する展開手段と、
前記印刷装置と自装置の接続形態から得られるデータ転送レートと、前記展開手段で展開されるバンド単位の出力情報のバンド幅と、前記印刷装置の１バンド分の排紙速度から、前記データ転送レートで転送した時における前記印刷装置の排紙速度に間に合う最低圧縮率を求める算出手段と、
前記展開手段により得られる全バンドの出力情報に可逆圧縮処理を行う第１圧縮手段と、
前記第１圧縮手段により可逆圧縮処理された各バンドの出力情報の中で圧縮率が前記算出手段で算出した最低圧縮率が得られないバンドがあるか判定する判定手段と、
前記判定手段により前記最低圧縮率が得られないバンドがあると判定されると、ディザ処理により２値化されているイメージデータのスキャンラインについて、ディザ周期単位でドットの並び替えを行って、前記第１圧縮手段による可逆圧縮処理を行わせる並び替え手段と、
前記並び替え手段による並び替え後に前記判定手段により前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在する場合に、該判定されたバンドに含まれる前記中間データの高解像度の多値イメージデータを低解像度の多値イメージデータに変換して、該多値イメージデータに関連する全てのバンドについて前記展開手段により展開処理を行わせるイメージデータ変換手段と、
前記並び替え手段による並び替え後に前記判定手段により前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在しない場合に、全バンドの出力情報に非可逆圧縮処理を行う第２圧縮手段と、
前記第２圧縮手段による非可逆圧縮処理後に、前記最低圧縮率が得られないバンドがある場合に、前記非可逆圧縮処理の圧縮率を高くし、前記第２圧縮手段による非可逆圧縮処理を実行させる圧縮率変更手段とを含み、
前記印刷装置が１ページ分のページメモリを持たずに高精細な画像を出力可能とすることを特徴とする情報出力システム。
【請求項２】
前記印刷装置は、カラー印刷処理部を備え、
前記プリンタドライバ機能における前記展開手段は、中間データを前記印刷装置で処理する各色毎にディザ処理により２値化したイメージデータ形式に展開し、
前記第２圧縮手段は、カラーイメージデータのカラー用ディザマトリックステーブルと、モノクロイメージデータのモノクロ用ディザマトリックステーブルとを用い、前記カラー用ディザマトリックステーブルと前記モノクロ用ディザマトリックステーブルとはドット配置が異なることを特徴とする請求項１記載の情報出力システム。
【請求項３】
出力情報を供給する情報処理装置と、前記情報処理装置より供給される出力情報を印刷出力する印刷装置とを含む情報出力システムにおける情報出力方法であって、
前記情報処理装置に出力画像を描画する描画機能と、前記印刷装置とのインタフェースを司るプリンタドライバ機能とを備え、
前記プリンタドライバ機能は、
前記描画機能で描画される中間データを前記印刷装置で処理するバンド単位にディザ処理により２値化したイメージデータ形式に展開する展開工程と、
前記印刷装置と自装置の接続形態から得られるデータ転送レートと、前記展開工程で展開されるバンド単位の出力情報のバンド幅と、前記印刷装置の１バンド分の排紙速度から、前記データ転送レートで転送した時における前記印刷装置の排紙速度に間に合う最低圧縮率を求める算出工程と、
前記展開工程において得られる全バンドの出力情報に可逆圧縮処理を行う第１圧縮工程と、
前記第１圧縮工程において可逆圧縮処理された各バンドの出力情報の中で圧縮率が前記算出工程で算出した最低圧縮率が得られないバンドがあるか判定する判定工程と、
前記判定工程において前記最低圧縮率が得られないバンドがあると判定されると、ディザ処理により２値化されているイメージデータのスキャンラインについて、ディザ周期単位でドットの並び替えを行って、前記第１圧縮工程における可逆圧縮処理を行わせる並び替え工程と、
前記並び替え工程における並び替え後に前記判定工程において前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在する場合に、該判定されたバンドに含まれる前記中間データの高解像度の多値イメージデータを低解像度の多値イメージデータに変換して、該多値イメージデータに関連する全てのバンドについて前記展開工程において展開処理を行わせるイメージデータ変換工程と、
前記並び替え工程における並び替え後に前記判定工程において前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在しない場合に、全バンドの出力情報に非可逆圧縮処理を行う第２圧縮工程と、
前記第２圧縮工程における非可逆圧縮処理後に、前記最低圧縮率が得られないバンドがある場合に、前記非可逆圧縮処理の圧縮率を高くし、前記第２圧縮工程における非可逆圧縮処理を実行させる圧縮率変更工程とを実行し、
前記印刷装置が１ページ分のページメモリを持たずに高精細な画像を出力可能とすることを特徴とする情報出力システムにおける情報出力方法。
【請求項４】
前記印刷装置は、カラー印刷処理部を備え、
前記プリンタドライバ機能における前記展開工程では、中間データを前記印刷装置で処理する各色毎にディザ処理により２値化したイメージデータ形式に展開し、
前記第２圧縮工程では、カラーイメージデータのカラー用ディザマトリックステーブルと、モノクロイメージデータのモノクロ用ディザマトリックステーブルとを用い、前記カラー用ディザマトリックステーブルと前記モノクロ用ディザマトリックステーブルとはドット配置が異なることを特徴とする請求項３記載の情報出力システムにおける情報出力方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は出力情報を供給する情報処理装置と、前記情報処理装置より供給される出力情報を印刷出力する印刷装置とを含む情報出力システム及び情報出力方法に関するものである。
【０００２】
【従来の技術】
近年の印刷装置として、ＣＡＤ（計算機支援用設計）、ＣＧ（コンピュータグラフィックス）、デザイン、ビジネスにおけるＤＴＰ（ディスクトップパブリッシング）分野等のマルチメディア処理で利用されるデータを高精細に印刷・記録するプリンタが製品化されている。
【０００３】
このようなプリンタとして、ホストコンピュータから送られるプリンタ制御言語（ＰＤＬ(Printer Description Language)）（ページ記述言語）やプリンタ制御コマンドなどと呼ばれるプリンタ制御機能を持つ印刷装置においては、ＰＤＬコードを受け取って解析し、保持されてた中間言語をハードウェアまたはソフトウェアで高速にレンダリング（ラスタライズ）を行うＰＤＬプリンタと、プリンタ側の機能を減らし、ホストコンピュータ側でプリンタが出力可能な形にまでラスタライズして送ってくることで、コストの削減を図ったイメージプリンタがある。
【０００４】
このプリンタは、ホストコンピュータ側から、ホストコンピュータで備えられているプリンタドライバ、またはプリントスプーラやプリントプロセッサなどと呼ばれるソフトウェアにより制御されることが多い。
【０００５】
イメージプリンタには、イメージデータに圧縮処理を加え、ホストコンピュータから排紙速度に同期させてイメージデータを送るバブルジェットプリンタタイプのものがあった。バブルジェットプリンタエンジンは印刷処理をバンド単位で止めることが可能であるため、最小で１バンド分のメモリを持てば圧縮率が悪くても印字することが可能であった。
【０００６】
【発明が解決しようとする課題】
しかし、レーザビームプリンタエンジンでイメージプリンタを実現しようとした時、「ＬＢＰエンジンは印刷処理途中で停止できない」という特徴があるため、データ圧縮率が悪い場合を考慮すると、プリンタ内部に１ページ分のイメージデータ格納用メモリを保持する必要があった。つまり、６００ＤＰＩ，Ａ４モノクロプリンタの場合、４Ｍバイト、ＹＭＣＫ出力カラープリンタなら１６Ｍバイトのデータ格納用メモリが必要となり、装置のコストアップが避けられなかった。
【０００７】
本発明は上述した課題を解決することを目的としてなされたもので、例えば印刷処理を止められないプリンタエンジンにおいて、１ページ分のメモリを持たずに高精細な印刷を可能とすることを目的とする。
【０００８】
【課題を解決するための手段】
そして、上述した目的を達成する一手段として例えば以下の構成を備える。
【０００９】
即ち、出力情報を供給する情報処理装置と、前記情報処理装置より供給される出力情報を印刷出力する印刷装置とを含む情報出力システムであって、前記情報処理装置に出力画像を描画する描画機能と、前記印刷装置とのインタフェースを司るプリンタドライバ機能とを備え、前記プリンタドライバ機能は、前記描画機能で描画される中間データを前記印刷装置で処理するバンド単位にディザ処理により２値化したイメージデータ形式に展開する展開手段と、前記印刷装置と自装置の接続形態から得られるデータ転送レートと、前記展開手段で展開されるバンド単位の出力情報のバンド幅と、前記印刷装置の１バンド分の排紙速度から、前記データ転送レートで転送した時における前記印刷装置の排紙速度に間に合う最低圧縮率を求める算出手段と、前記展開手段により得られる全バンドの出力情報に可逆圧縮処理を行う第１圧縮手段と、前記第１圧縮手段により可逆圧縮処理された各バンドの出力情報の中で圧縮率が前記算出手段で算出した最低圧縮率が得られないバンドがあるか判定する判定手段と、前記判定手段により前記最低圧縮率が得られないバンドがあると判定されると、ディザ処理により２値化されているイメージデータのスキャンラインについて、ディザ周期単位でドットの並び替えを行って、前記第１圧縮手段による可逆圧縮処理を行わせる並び替え手段と、前記並び替え手段による並び替え後に前記判定手段により前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在する場合に、該判定されたバンドに含まれる前記中間データの高解像度の多値イメージデータを低解像度の多値イメージデータに変換して、該多値イメージデータに関連する全てのバンドについて前記展開手段により展開処理を行わせるイメージデータ変換手段と、前記並び替え手段による並び替え後に前記判定手段により前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在しない場合に、全バンドの出力情報に非可逆圧縮処理を行う第２圧縮手段と、前記第２圧縮手段による非可逆圧縮処理後に、前記最低圧縮率が得られないバンドがある場合に、前記非可逆圧縮処理の圧縮率を高くし、前記第２圧縮手段による非可逆圧縮処理を実行させる圧縮率変更手段とを含み、前記印刷装置が１ページ分のページメモリを持たずに高精細な画像を出力可能とすることを特徴とする。
【００１０】
更に、前記印刷装置は、カラー印刷処理部を備え、前記プリンタドライバ機能における前記展開手段は、中間データを前記印刷装置で処理する各色毎にディザ処理により２値化したイメージデータ形式に展開し、前記第２圧縮手段は、カラーイメージデータのカラー用ディザマトリックステーブルと、モノクロイメージデータのモノクロ用ディザマトリックステーブルとを用い、前記カラー用ディザマトリックステーブルと前記モノクロ用ディザマトリックステーブルとはドット配置が異なることを特徴とする。
【００１１】
又は、出力情報を供給する情報処理装置と、前記情報処理装置より供給される出力情報を印刷出力する印刷装置とを含む情報出力システムにおける情報出力方法であって、前記情報処理装置に出力画像を描画する描画機能と、前記印刷装置とのインタフェースを司るプリンタドライバ機能とを備え、前記プリンタドライバ機能は、前記描画機能で描画される中間データを前記印刷装置で処理するバンド単位にディザ処理により２値化したイメージデータ形式に展開する展開工程と、前記印刷装置と自装置の接続形態から得られるデータ転送レートと、前記展開工程で展開されるバンド単位の出力情報のバンド幅と、前記印刷装置の１バンド分の排紙速度から、前記データ転送レートで転送した時における前記印刷装置の排紙速度に間に合う最低圧縮率を求める算出工程と、前記展開工程において得られる全バンドの出力情報に可逆圧縮処理を行う第１圧縮工程と、前記第１圧縮工程において可逆圧縮処理された各バンドの出力情報の中で圧縮率が前記算出工程で算出した最低圧縮率が得られないバンドがあるか判定する判定工程と、前記判定工程において前記最低圧縮率が得られないバンドがあると判定されると、ディザ処理により２値化されているイメージデータのスキャンラインについて、ディザ周期単位でドットの並び替えを行って、前記第１圧縮工程における可逆圧縮処理を行わせる並び替え工程と、前記並び替え工程における並び替え後に前記判定工程において前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在する場合に、該判定されたバンドに含まれる前記中間データの高解像度の多値イメージデータを低解像度の多値イメージデータに変換して、該多値イメージデータに関連する全てのバンドについて前記展開工程において展開処理を行わせるイメージデータ変換工程と、前記並び替え工程における並び替え後に前記判定工程において前記最低圧縮率が得られないバンドがあると判定され、かつ、該判定されたバンドに含まれる前記中間データに高解像度の多値イメージデータが存在しない場合に、全バンドの出力情報に非可逆圧縮処理を行う第２圧縮工程と、前記第２圧縮工程における非可逆圧縮処理後に、前記最低圧縮率が得られないバンドがある場合に、前記非可逆圧縮処理の圧縮率を高くし、前記第２圧縮工程における非可逆圧縮処理を実行させる圧縮率変更工程とを実行し、前記印刷装置が１ページ分のページメモリを持たずに高精細な画像を出力可能とすることを特徴とする。
【００１２】
更に、前記印刷装置は、カラー印刷処理部を備え、前記プリンタドライバ機能における前記展開工程では、中間データを前記印刷装置で処理する各色毎にディザ処理により２値化したイメージデータ形式に展開し、前記第２圧縮工程では、カラーイメージデータのカラー用ディザマトリックステーブルと、モノクロイメージデータのモノクロ用ディザマトリックステーブルとを用い、前記カラー用ディザマトリックステーブルと前記モノクロ用ディザマトリックステーブルとはドット配置が異なることを特徴とする。
【００１６】
【発明の実施の形態】
以下添付図面を参照して本発明に係る一発明の実施の形態例を詳細に説明する。
【００１７】
＜装置本体の概略説明＞
図１は、本発明の印刷装置として用いることが可能なインクジェットプリンタＩＪＲＡの構成の概要を示す外観斜視図である。図１において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５０１１，５００９を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（不図示）を有し、矢印ａ，ｂ方向に往復移動される。このキャリッジＨＣには、インクジェットカートリッジＩＪＣが搭載されている。５００２は紙押え板であり、キャリッジの移動方向に亙って紙をプラテン５０００に対して押圧する。５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの域での存在を確認して、モータ５０１３の回転方向切り換え等を行うためのホームポジション検知手段である。５０１６は記録ヘッドの前面をキャップするキャップ部材５０２２を支持する部材で、５０１５はこのキャップ内を吸引する吸引手段で、キャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、５０１９はこのブレードを前後方向に移動可能にする部材であり、本体支持板５０１８にこれらが支持されている。ブレードは、この形態でなく周知のクリーニングブレードが本例に適用できることは言うまでもない。又、５０１２は、吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータからの駆動力がクラッチ切り換え等の公知の伝達手段で移動制御される。
【００１８】
これらのキャッピング、クリーニング、吸引回復は、キャリッジがホームポジション側の領域に来た時にリードスクリュー５００５の作用によってそれらの対応位置で所望の処理が行えるように構成されているが、周知のタイミングで所望の作動を行うようにすれば、本例にはいずれも適用できる。
【００１９】
＜制御構成の説明＞
次に、上述した装置の記録制御を実行するための制御構成について説明する。
図２はインクジェットプリンタＩＪＲＡの制御回路の構成を示すブロック図である。制御回路を示す同図において、１７００は記録信号を入力するインタフェース、１７０１はＭＰＵ、１７０２はＭＰＵ１７０１が実行する制御プログラムを格納するプログラムＲＯＭ、１７０３は各種データ（上記記録信号やヘッドに供給される記録データ等）を保存しておくダイナミック型のＲＡＭである。１７０４は記録ヘッド１７０８に対する記録データの供給制御を行うゲートアレイであり、インタフェース１７００、ＭＰＵ１７０１、ＲＡＭ１７０３間のデータ転送制御も行う。１７１０は記録ヘッド１７０８を搬送するためのキャリアモータ、１７０９は記録紙搬送のための搬送モータである。１７０５はヘッドを駆動するヘッドドライバ、１７０６，１７０７はそれぞれ搬送モータ１７０９、キャリアモータ１７１０を駆動するためのモータドライバである。
【００２０】
上記制御構成の動作を説明すると、インタフェース１７００に記録信号が入るとゲートアレイ１７０４とＭＰＵ１７０１との間で記録信号がプリント用の記録データに変換される。そして、モータドライバ１７０６、１７０７が駆動されると共に、ヘッドドライバ１７０５に送られた記録データに従って記録ヘッドが駆動され、印字が行われる。
本発明は、特にインクジェット記録方式の中でも、インク吐出を行わせるために利用されるエネルギーとして熱エネルギーを発生する手段（例えば電気熱変換体やレーザ光等）を備え、前記熱エネルギーによりインクの状態変化を生起させる方式のプリント装置について説明したが、かかる方式によれば記録の高密度化、高精細化が達成できる。
【００２１】
その代表的な構成や原理については、例えば、米国特許第４７２３１２９号明細書、同第４７４０７９６号明細書に開示されている基本的な原理を用いて行うものが好ましい。この方式はいわゆるオンデマンド型、コンティニュアス型のいずれにも適用可能であるが、特に、オンデマンド型の場合には、液体（インク）が保持されているシートや液路に対応して配置されている電気熱変換体に、記録情報に対応していて膜沸騰を越える急速な温度上昇を与える少なくとも１つの駆動信号を印加することによって、電気熱変換体に熱エネルギーを発生せしめ、記録ヘッドの熱作用面に膜沸騰を生じさせて、結果的にこの駆動信号に１対１で対応した液体（インク）内の気泡を形成できるので有効である。この気泡の成長、収縮により吐出用開口を介して液体（インク）を吐出させて、少なくとも１つの滴を形成する。この駆動信号をパルス形状をすると、即時適切に気泡の成長収縮が行われるので、特に応答性に優れた液体（インク）の吐出が達成でき、より好ましい。
【００２２】
このパルス形状の駆動信号としては、米国特許第４４６３３５９号明細書、同第４３４５２６２号明細書に記載されているようなものが適している。なお、上記熱作用面の温度上昇率に関する発明の米国特許第４３１３１２４号明細書に記載されている条件を採用すると、さらに優れた記録を行うことができる。
【００２３】
記録ヘッドの構成としては、上述の各明細書に開示されているような吐出口、液路、電気熱変換体の組み合わせ構成（直線状液流路または直角液流路）の他に熱作用面が屈曲する領域に配置されている構成を開示する米国特許第４５５８３３３号明細書、米国特許第４４５９６００号明細書を用いた構成も本発明に含まれるものである。加えて、複数の電気熱変換体に対して、共通するスロットを電気熱変換体の吐出部とする構成を開示する特開昭５９−１２３６７０号公報や熱エネルギーの圧力波を吸収する開口を吐出部に対応させる構成を開示する特開昭５９−１３８４６１号公報に基づいた構成としても良い。
【００２４】
さらに、記録装置が記録できる最大記録媒体の幅に対応した長さを有するフルラインタイプの記録ヘッドとしては、上述した明細書に開示されているような複数記録ヘッドの組み合わせによってその長さを満たす構成や、一体的に形成された１個の記録ヘッドとしての構成のいずれでもよい。
【００２５】
加えて、装置本体に装着されることで、装置本体との電気的な接続や装置本体からのインクの供給が可能になる交換自在のチップタイプの記録ヘッド、あるいは記録ヘッド自体に一体的にインクタンクが設けられたカートリッジタイプの記録ヘッドを用いてもよい。
【００２６】
また、本発明の記録装置の構成として設けられる、記録ヘッドに対しての回復手段、予備的な補助手段等を付加することは本発明の効果を一層安定にできるので好ましいものである。これらを具体的に挙げれば、記録ヘッドに対してのキャッピング手段、クリーニング手段、加圧あるいは吸引手段、電気熱変換体あるいはこれとは別の加熱素子あるいはこれらの組み合わせによる予備加熱手段、記録とは別の吐出を行う予備吐出モードを行うことも安定した記録を行うために有効である。
【００２７】
さらに、記録装置の記録モードとしては黒色等の主流色のみの記録モードだけではなく、記録ヘッドを一体的に構成するか複数個の組み合わせによってでも良いが、異なる色の複色カラー、または混色によるフルカラーの少なくとも１つを備えた装置とすることもできる。
【００２８】
以上説明した本発明に係る一発明の実施の形態例においては、インクを液体として説明しているが、室温やそれ以下で固化するインクであっても、室温で軟化もしくは液化するものを用いても良く、あるいはインクジェット方式ではインク自体を３０°Ｃ以上７０°Ｃ以下の範囲内で温度調整を行ってインクの粘性を安定吐出範囲にあるように温度制御するものが一般的であるから、使用記録信号付与時にインクが液状をなすものであればよい。
【００２９】
加えて、積極的に熱エネルギーによる昇温をインクの固形状態から液体状態への状態変化のエネルギーとして使用せしめることで積極的に防止するため、またはインクの蒸発を防止するため、放置状態で固化し加熱によって液化するインクを用いても良い。いずれにしても熱エネルギーの記録信号に応じた付与によってインクが液化し、液状インクが吐出されるものや、記録媒体に到達する時点では既に固化し始めるもの等のような、熱エネルギーの付与によって初めて液化する性質のインクを使用する場合も本発明は適用可能である。このような場合インクは、特開昭５４−５６８４７号公報あるいは特開昭６０−７１２６０号公報に記載されるような、多孔質シート凹部または貫通孔に液状または固形物として保持された状態で、電気熱変換体に対して対向するような形態としてもよい。本発明においては、上述した各インクに対して最も有効なものは、上述した膜沸騰方式を実行するものである。
【００３０】
さらに加えて、本発明に係る記録装置の形態としては、コンピュータ等の情報処理機器の画像出力端末として一体または別体に設けられるものの他、リーダ等と組み合わせた複写装置、さらには送受信機能を有するファクシミリ装置の形態を取るものであっても良い。
【００３１】
＜印刷出力システムの全体構成＞
図３は本発明に係る一発明の実施の形態例における印刷出力システムの全体構成を示すブロック図である。
【００３２】
図１において、１０１はホストコンピュータ、１０３はプリンタコントローラ、１１０はプリンタエンジンである。ホストコンピュータ１０１とプリンタコントローラ１０３間におけるデータの授受は原則としてＤＭＡ転送によって行われる。また、プリンタコントローラ１０３からプリンタエンジン１１０への出力情報の供給はビデオ信号の形式で行われる。
【００３３】
プリンタエンジン１１０は、プリンタコントローラ１０２から送出されるビデオ信号を印刷出力するプリンタであり、電子写真によるレーザビームプリンタ（ＬＢＰ）でも上述したインクジェット方式プリンタであってもよい、またカラープリンタでもモノクロプリンタでもよい。
【００３４】
ホストコンピュータ１０１は、不図示の作画アプリケーションプログラムが起動可能であり、この作画アプリケーションプログラムを用いて作成したデータは、ホストコンピュータ１０１が備えるイメージドライバによりプリンタが受け取れるデータ形式に変換される。
【００３５】
変換されたデータは、ホストコンピュータ１０１から１０２に示す接続ケーブルを介してＤＭＡ転送によってプリンタコントローラ１０３に送出される。ＤＭＡ転送によってホストコンピュータ１０１よりプリンタコントローラ１０３に入力されたデータは、入力バッファ１０４（ＲＡＭ）に格納される。
【００３６】
入力バッファ１０４に格納されたデータは、プログラム用ＲＯＭ１０５内の転送データ解析プログラムによって処理される。プログラム用ＲＯＭ１０５は、例えば、後述する図１３に示す処理手順（制御プログラム）を含むＣＰＵの制御プログラムを格納するメモリであり、ＣＰＵ１０６がこの制御プログラムにしたがってデータを読み込み各処理を実行する。
【００３７】
ＣＰＵ１０６はデータが入力バッファ１０４に格納されると、イメージデータの描画位置などのパラメータをイメージハードレンダラー１０７にセットする。
イメージハードレンダラー１０７は、入力バッファ１０４内のイメージデータをセットされたパラメータに従ってプリンタエンジン１１０の出力形式に変換してバンドメモリ１０８に描画する。
【００３８】
本実施の形態例においては、バンドメモリ（ページ幅×１２８程度のバンド高さ）を最低２つ備え、シッピング状態及びイメージ展開状態と、文字描画状態とを追っかけ処理によって合成処理する。合成処理が終わったバンドの情報は、即座にプリンタエンジン１１０とのインタフェースであるプリンタインタフェース（ビデオインターフェース）１０９を介してプリンタエンジン１１０に送られる。
【００３９】
プリンタインターフェース１０９は、プリンタエンジン１１０、例えば上述したインクジェットプリンタあるいは、レーザビームプリンタ（ＬＢＰ）との間でバンドメモリ１０８との間でプリンタエンジン１１０へのコマンド送信やプリンタエンジン１１０からのステータス受信を行う。
【００４０】
接続ケーブル１０２は、セントロニクスケーブルのようなホストマシンとプリンタを直接接続するものでも、ネットワークを介するものであってもよい。なお、ＣＰＵ１０５はプリンタコントローラ１０２の内部処理を制御する演算装置である。
【００４１】
本実施の形態例のプログラムＲＯＭ１０５には、例えば図４に示す各種のプログラムが格納されている。
【００４２】
即ち、プリンタエンジン１１０とのインタフェースを司る印刷制御プログラム１０５−１、ホストコンピュータ１０１とのインタフェースを司るホストインタフェースプログラム１０５−２、後述する出力情報に対する圧縮制御を行う圧縮制御プログラム１０５−３、プリンタエンジン１１０の仕様からホストコンピュータ１０１とのデータ転送レートを算出して後述するデータ展開制御プログラムの制御に基づいて展開されるバンド単位の出力情報を算出した転送レートで転送した時におけるプリンタエンジン１１０の排紙速度に間に合う最低圧縮率を求めるデータ転送制御プログラム１０５−４、ホストコンピュータ１０１の作画アプリケーションプログラムで作画された出力情報の中間データをプリンタエンジン１１０で処理するバンド単位のイメージデータ形式に展開するデータ展開制御プログラム１０５−５とが含まれている。
【００４３】
そして、１ページ分のページメモリを持たずに高精細な画像を出力可能としている。
（基本処理）
以上の構成を備える本実施の形態例における印刷情報に対する基本処理を図５を参照して以下に説明する。以下の説明は、プリンタエンジン１１０がモノクロプリンタである場合を例として説明する。
【００４４】
図５はホストコンピュータ１０１内のプリンタドライバ２００で文字と図形が混ざったデータを作成し、プリンタコントローラ１０３に出力するまでの概要を示す説明図である。
【００４５】
２０２は作画アプリケーションで作画した結果をディスプレイに表示された出力結果の模式図である。横筋はプリンタ側で処理を行う単位であるバンド境界を示している。
【００４６】
キーボードやマウス等よりの指示入力による印刷命令を受けると、ホストコンピュータ１０１のアプリケーションソフトは、ＯＳの機能とプリンタドライバ２００の機能を用いてプリントコマンドを生成する。近年のパーソナルコンピュータのＯＳ（例えばＷｉｎｄｏｗｓ，ＭａｃＯＳ等）は。、プリンタの能力に応じてプリントコマンドを生成するものが一般的である。
【００４７】
プリンタドライバ２００がＯＳに対して「バンド単位のイメージデータしか扱えないプリンタ」とセットすれば、ＯＳは２０３に示すように文字や図形をバンド単位のイメージデータに展開する。プリンタドライバ２００は、そのデータに対して２０４に示すようにプリンタ特性に合わせた２値化処理を加える。
【００４８】
ここで、例えば、転送レートを上げるために、データにはデータ損失のないＬｏｓｓＬｅｓｓ圧縮処理を加え、１ページ全バンドを揃える（２０５）。
【００４９】
全バンド揃ったら、プリンタコントローラ１０３の入力バッファ１０４にデータを転送する。プリンタコントローラ１０３の入力バッファ１０４にデータが格納されると、即座にイメージハードレンダラー１０７を用いて受け取った出力情報に対する伸長処理を行い、２つのバンドメモリ１０８に格納する。
【００５０】
同時にプリンタエンジン１１０に起動をかけ、プリンタエンジン１１０からデータ要求信号が来るのを待つ。プリンタエンジン１１０からのデータ要求信号が届くと、バンドメモリ１０８に用意したイメージデータを送出し、それによって空いたバンドに、次のイメージデータの伸長を排紙速度に間に合うように展開する。
【００５１】
図５において、ホスト側プリンタドライバ２００より入力バッファ１０４に出力情報が格納されると、イメージハードレンダラー１０７は伸長処理を施しながら受信データをバンドメモリ１０８に格納し、その後にプリンタエンジン１１０に出力する。
（ＬｏｓｓＬｅｓｓ圧縮方法）
プリンタドライバ２００における圧縮方式の条件としては、圧縮率が高く、プリンタ側での伸長処理が高速であることが必要である。これらの条件を満たす圧縮方式とするために本実施の形態例においては、プリンタ側に転送するイメージデータはディザ処理による二値イメージデータとし、圧縮方式としてＬｏｓｓＬｅｓｓ圧縮方式（バイトランレングス圧縮法、パックビッツ（PackBits）圧縮法、等）を用いる個と賭している。
【００５２】
この圧縮法は、共に隣り合うバイトの値が連続している場合に、連続数と値をセットにしてデータ圧縮する方法ある。構造が単純なためエンコード、デコード共にソフトウェアで行っても高速で行うことができる。
【００５３】
バイトランレングス圧縮法は、データを、出現回数を指定する制御部（１バイト）と、出現するデータを記述するデータ部（１バイト）の合計２バイトを１単位として記述し、制御部には連続して出現する回数を２５６回まで指定でき、”出現回数−１”の値を記述する方法である。
【００５４】
またパックビッツ圧縮法は、データを、出現回数を指定する制御部（１バイト）と、出現するデータを記述するデータ部（１バイト）の合計２バイトを単位として記述し、制御部には連続して出現する回数を１２８回まで指定でき、”（出現回数−１）×（−１）”の値を記述する。繰り返しの無いデータ（１回だけ出現するデータ）は、制御部に繰り返しの無いデータのバイト数を”（出現回数−１）”の値を記述する方法である。
【００５５】
更に、本実施の形態例においては、バイトランレングス、パックビッツ圧縮法の圧縮率を上げるために、２値化手法としてバイト幅単位のディザ法を用いる。
【００５６】
図６を用いて本実施の形態例における２値化手法として、バイト幅単位のディザ法を用い一定濃度（５５）を２値化した場合の動作を説明する。
【００５７】
ディザ法は、図６の上部に示すような８×８のディザマトリクステーブルをページ一面に張り詰め、対応するピクセルの階調値の方が大きい場合はＯＮピクセルにする手法である。
【００５８】
１面の濃度５５のイメージをディザマトリクス（３００）で２値化すると、下部の３０１に示すように、スキャンライン単位で同一の値が連続するデータとなる。
【００５９】
つまり、例えばＤＴＰソフトウェア、Ｄｒａｗソフトウェアで作成した広い区域が同一色で塗られたようなデータは高圧縮率を得ることができる。逆に不規則な濃度パターンが高解像度で出現するデータはディザ処理を加えても圧縮率を上げることはできずかえって低くなる。
【００６０】
しかし、圧縮したプリンタへ転送するデータの圧縮率が低く、必要な転送レートが得られない場合は、１ページ分入らない入力バッファ（１頁分以下の容量しかない入力バッファ）で処理を行うことは不可能である。
【００６１】
データ転送レートは接続プリンタによって（接続ケーブル１０２によって）物理的に決まっており、ホストコンピュータとプリンタとの接続形態が解れば求めることが可能である。また、出力するページフォーマットからバンド幅を求められる。そこで、本実施の形態例のプリンタドライバ２００では、データ転送レート（バイト／秒）と、バンド幅バイト数（バイト）、排紙速度（ｌ行／秒）から最低圧縮率を求める。
【００６２】
最低圧縮率（％）
＝（（データ転送レート）／（バンド幅バイト数×排紙速度））×１００
ランレングス圧縮法、パックビッツ圧縮法等のＬｏｓｓＬｅｓｓ圧縮によって上述の計算式で求められる最低圧縮率が得られない場合は、以下に述べる対処法によって圧縮率を上げる。
（圧縮率が規定値を越えたときの第１の対処法）
まず、図７を参照して本実施の形態例における圧縮率が規定値を越えたときの第１の対処法を図７を参照して説明する。
【００６３】
上述した図５に示す通常処理と同様にしてバンド単位でＬｏｓｓＬｅｓｓ圧縮処理を行う。図７において、上述した図５に示す処理と同様処理には同一番号を付し詳細説明を省略する。
【００６４】
印刷命令を受けると、ホストコンピュータ１０１のアプリケーションソフトは、ＯＳの機能とプリンタドライバ２００の機能を用いてプリントコマンドを生成する。プリンタドライバ２００は、そのデータに対して２０４に示すようにプリンタ特性に合わせた２値化処理を加える。
【００６５】
ここで、転送レートを上げるために、ＬｏｓｓＬｅｓｓ圧縮処理を加え、１ページ全バンドを揃える（２０５）。その結果、目的の圧縮率が得られないバンドがあると、元のデータ２０４に対して、ＬｏｓｓＬｅｓｓフィルタ（インタリーブ処理）を掛け４０６に示すデータを生成する。その後再度ＬｏｓｓＬｅｓｓ圧縮を掛け４０７に示すデータを得る。
【００６６】
そして、全バンドのデータが揃ったら、プリンタコントローラ１０３の入力バッファ１０４にデータを転送する。以後の動作は図６に示す動作と同様である。
【００６７】
上述したＬｏｓｓＬｅｓｓフィルタ（インタリーブ処理）の詳細を図８を参照して以下に説明する。
【００６８】
前述した通り、図６の３００に示すような８×８のディザ処理によって２値化されたイメージデータ５００は、１スキャンライン単位で見たとき、５０１に示すように、８ドット周期で似たドットパターンが連続して現れるという特性を持つ。そのため、そのままバイトランレングス圧縮処理をかけても圧縮率は高いが、途中に１ドットでも異なるバイトがあると圧縮率は落ちる。
【００６９】
そこで、本実施の形態例におけるインタリーブフィルタ処理は、５０２に示すように、スキャンラインをディザ周期単位でドットを集めて並べ替えを行う。このように、周期性のあるドットを集めてデータを再構成するため、５０２に示すデータは５０１に示すデータよりもランレングス圧縮、パックビッツ圧縮の圧縮率は高くなる可能性が高い。このため、以上の処理を施すことにより、圧縮したプリンタへ転送するデータの圧縮率が低く、必要な転送レートが得られない事態が解消できる。
（圧縮率が規定値を越えたときの第２の対処法）
プリンタの性能を最大限に活かして高精細に出力するためには、プリンタドライバは高解像度でイメージデータを展開し、圧縮する場合もデータ欠損のないＬｏｓｓＬｅｓｓ圧縮方式でデータ量を減らして転送することが望ましいが、それでは圧縮率が上がらない場合も考えられる。本実施の形態例においては、以上の事態に対処するため、以上の対処法で十分な圧縮率が得られない場合、又は得られない可能性のある場合には以下の手法を取る。
【００７０】
以下、図９を参照して本実施の形態例における圧縮率が規定値を越えたときの第２の対処法を説明する。図９において、上述した図５及び図７に示す処理と同様処理には同一番号を付し詳細説明を省略する。
【００７１】
通常処理と同様にバンド単位でＬｏｓｓＬｅｓｓ圧縮処理を加えた結果（２０５）、上述した最低圧縮率が得られないバンドがあると、以下に示す制御を行う。
【００７２】
最低圧縮率を得られないバンドに高解像度のイメージデータが含まれている場合には、圧縮率があがらない原因はそのイメージデータにある可能性が高い。このため、この対処法では高解像度のイメージデータが含まれている全てのバンドの再描画処理を行う。この時、イメージデータはＬｏｓｓｙなフィルタリング処理によって、エントロピーを落として描画を行い、６０６に示す新たな展開描画データを生成する。そしてこのデータに対して２値化処理（ディザ）を行って６０７に示すデータを得る。そしてこのデータ６０７に対してＬｏｓｓＬｅｓｓ圧縮を掛け直して圧縮情報６０８を得る。
【００７３】
ただし、以上の処理において、再度の展開処理において、高解像度イメージ以外の文字、図形等があった場合には、これらに対しては高解像度で描画処理を行う。
（多値イメージデータの場合の低解像度での展開処理）
高解像度で複雑なイメージである場合には、エントロピーが高い。従って、このような多値イメージデータである場合における本実施の形態例における図９に示す第２の対処法におけ再展開処理における高解像度、多値イメージのエントロピーを落とす方法を図１０を参照して以下に説明する。
【００７４】
高解像度で複雑なイメージはエントロピーが高い。そこで多値ソースイメージ７００をディザ処理で２値化しても、７０１に示すように隣り合うバイトの相関性薄いため圧縮率の低いイメージデータとなる。
【００７５】
このため、本実施の形態例においては、多値ソースイメージデータ７００の縦横２×２ピクセル単位で平均値を取る、または４ピクセル中の１つを取る単純間引き方によって、７０２に示す低解像度多値イメージデータを得ることができる。７０２に示すデータに２値化処理を加えると、７０１に示すデータよりもエントロピーの小さな７０３に示すイメージデータとなり、圧縮率が向上する。
（２値イメージデータの場合の低解像度での展開処理）
本実施例におけるアプリケーションが扱うソースイメージデータが２値イメージの場合の本実施の形態例における図９に示す第２の対処法における再展開処理における高解像度、２値イメージのエントロピーを落とす方法を図１１を参照して以下に説明する。
【００７６】
図１１の８００に示す高解像度、２値イメージを例えば等倍または変倍処理により８０１に示す様に展開処理すると、８０１に示すように隣り合うバイトの相関性薄いため圧縮率の低いイメージデータとなる。
【００７７】
このため、本実施の形態例においては、２値ソースイメージデータ８００の縦横２×２ピクセル単位でＯＮピクセルの数をカウントし、８０２に示されるようなルックアップテーブルに従い２×２ピクセル値を変換して８０３に示すデータを得る。このようにして得られた８０３に示すデータは、８００に示すソースデータに比べてデータの並びに規則性があるため、その後の圧縮率を向上させることができる。
（圧縮率が規定値を越えたときの第３の対処法）
以上の示す第１の対処法あるいは第２の対処法を行っても求める圧縮率が得られないバンドが存在する場合は、以下に示す第３の対処法を行う。この第３の対処法では、全バンドに対してＬｏｓｓｙなフィルタリング処理を加えることで圧縮率を向上させる。なお、第３の対処法において、Ｌｏｓｓｙなフィルタリング処理を特定のバンドだけに加えると、他のバンドとの継ぎ目が目立つため、Ｌｏｓｓｙなフィルタリング処理を全バンドにかける必要がある。
【００７８】
以下、図１２を参照して本実施の形態例における圧縮率が規定値を越えたときの第３の対処法を説明する。図１２において、上述した図５及び図７、図９に示す処理と同様処理には同一番号を付し詳細説明を省略する。
【００７９】
通常処理と同様にバンド単位でＬｏｓｓＬｅｓｓ圧縮処理を加えた結果（２０５）、上述した最低圧縮率が得られないバンドがあると、以下に示す制御を行う。
【００８０】
ＬｏｓｓＬｅｓｓ圧縮で圧縮した結果（２０５）圧縮率が規定値に満たない場合は、伸長処理を行って９０６に示すデータを得てそのバンド全域に対して第２の対処法の図１１に示す２値イメージ用Ｌｏｓｓｙフィルタリング処理を行ない、９０７に示すデータを得る。そして、データ９０７に対してＬｏｓｓＬｅｓｓ圧縮処理を施して圧縮率が規定値以内であれば、それまでに展開した全バンドに対しても同様のフィルタリング処理を行う。
【００８１】
そして、全バンドのデータ（９０８）が揃ったら、プリンタコントローラ１０３の入力バッファ１０４にデータを転送する。以後の動作は図６に示す動作と同様である。
（本実施の形態例におけるデータ圧縮制御の説明）
以上の第１乃至第３の対処法を組み合わせた本実施の形態例におけるデータ圧縮制御の一例を図１３のフローチャートを用いて説明する。
【００８２】
まず、ホスト側のプリンタドライバ２００は、ステップＳ１において、印刷出力すべきオブジェクトをバンド単位で高解像度でのレンダリング（描画処理）を行う。ここでは、２値化処理までを行う。そして続くステップＳ２でＬｏｓｓＬｅｓｓ圧縮処理をバンド単位で加える。この処理は上述した図５に示す基本処理のデータ圧縮に相当する。
【００８３】
続いてステップＳ３でプリンタと自装置間のデータ転送時にプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがあるか否かを調べる。圧縮率が規定値を超えるバンドが無ければステップＳ４に進み、圧縮データの全バンドデータをプリンタコントローラ１０３の受信バッファ１０４に転送する。そして処理を終了する。
【００８４】
一方、ステップＳ３でプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがある場合にはステップＳ５に進み、圧縮率が得られないバンドに対して、上述した図７に示す第１の対象法におけるインターリーブ処理を行ってその後にＬｏｓｓＬｅｓｓ圧縮を掛け直して圧縮情報を得る。
【００８５】
続いてステップＳ６でまだプリンタと自装置間のデータ転送時にプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがあるか否かを調べる。圧縮率が規定値を超えるバンドが無ければステップＳ４に進み、圧縮データの全バンドデータをプリンタコントローラ１０３の受信バッファ１０４に転送する。そして処理を終了する。
【００８６】
一方、ステップＳ６でプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがある場合にはステップＳ７に進み、圧縮率が得られないバンド内に高解像度イメージ中間データがあるか否かを調べる。圧縮率が得られないバンド内に高解像度イメージ中間データがある場合にはステップＳ８に進み、上述した第２の対処法における図１０に示す高解像度イメージ中間データを展開するときに、低解像度に変換してレンダリング処理を行う（２値化処理まで）多値イメージデータの場合の低解像度での展開処理を行う。そしてステップＳ２に戻り再度ＬｏｓｓＬｅｓｓ圧縮を掛け直して圧縮情報を得る。
【００８７】
一方、ステップＳ６で圧縮率が得られないバンド内に高解像度イメージ中間データが無い場合にはステップＳ１0に進み、上述した図１２に示す第３の対処法における全てのバンドに対してＬｏｓｓｙ圧縮処理を加える処理を行う。そしてステップＳ１１でまだプリンタと自装置間のデータ転送時にプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがあるか否かを調べる。圧縮率が規定値を超えるバンドが無ければステップＳ４に進み、圧縮データの全バンドデータをプリンタコントローラ１０３の受信バッファ１０４に転送する。そして処理を終了する。
【００８８】
一方、ステップＳ１１でプリンタの排紙速度に間に合う最低圧縮率が得られないバンドがある場合にはステップＳ１２に進み、Ｌｏｓｓｙ圧縮率の圧縮率をアップする。そして再びステップＳ１０に戻って全てのバンドに対してＬｏｓｓｙ圧縮処理を加える処理を行う。
【００８９】
以上の処理を行うことにより、プリンタへの印刷出力画質の劣化を最小限に抑えて、プリンタと自装置間のデータ転送時に、全てのバンドに対してプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う出力データの転送が可能となり、プリンタは、１ページ分のページメモリを持たずに高精細な画像を出力することが可能となる。
【００９０】
また、この場合において、画像の圧縮時にバンド単位でＬｏｓｓＬｅｓｓ圧縮処理を掛けることで画質を落さずにデータ転送レートを向上させることができる。
【００９１】
また、ＬｏｓｓＬｅｓｓ圧縮処理で最低圧縮率が得られないようなバンドにはＬｏｓｓＬｅｓｓフィルタリング処理を行ったのちにＬｏｓｓＬｅｓｓ圧縮処理を行うことにより、画質を落さずにデータ転送レートを向上させることができる。
【００９２】
更に、バンド単位でＬｏｓｓＬｅｓｓ圧縮処理を加えた結果、最低圧縮率が得られない場合は圧縮率を低下させる原因となる中間データにＬｏｓｓｙなフィルタリング処理を加え、イメージに展開することで処理速度を落さずに圧縮率を向上させることができる。
【００９３】
また、バンド単位ＬｏｓｓＬｅｓｓ圧縮を行っても最低圧縮率を得られない場合は、全バンドの解像度を落とすことでデータ量を減らすことができ、確実に全てのバンドに対してプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う出力データの転送が可能となり、プリンタは、１ページ分のページメモリを持たずに高精細な画像を出力することが可能となる。。
【００９４】
なお、以上の説明におけるバンド単位にＬｏｓｓＬｅｓｓ圧縮、ＬｏｓｓＬｅｓｓフィルタリング処理、圧縮率の悪いオブジェクトにＬｏｓｓｙな処理を加える、またはページ全体にＬｏｓｓｙな処理を行う、の各種処理を組み合わせても高精細に出力できるようにすることができる。
＜本発明に係る第２の発明の実施の形態例）
プリンタがモノクロプリンタである場合を例として説明したが、本発明は以上の例に限定されるものではなく、例えばカラープリンタにも適用可能なことは勿論である。本発明をカラープリンタに適用した本発明に係る第２の発明の実施の形態例を以下に説明する。以下の説明は、カラープリンタをＬＢＰカラープリンタと下例を説明する。
（カラーイメージデータを扱えるプリンタの処理）
本発明をカラープリンタに適用した本発明に係る第２の発明の実施の形態例が適用されるプリンタの例を図１４に示す。以下、第２の発明の実施の形態例で適用可能なカラーレーザビームプリンタのエンジンの１つの形態を図１４を参照して説明する。
【００９５】
第２の実施の形態例におけるカラープリンタは、カラートナー１２０１を４色分そなえ、一色ごとに１ページ分のイメージデータを転写ベルト１２０２に転写する。転写ベルト１２０２が１回転すると、カラートナー１２０１は１／４回転してトナーが切り替わる。
【００９６】
印刷が開始信号を受け取り、印刷処理が始まると、転写ベルト１２０２が回転すると共に、トナーは、イエロー（Ｙｅｌｌｏｗ）、マゼンタ（Ｍａｇｅｎｔａ）、シアン（Ｃｙａｎ）、黒（Ｂｌａｃｋ）の順に切り替わる。さらに転写ベルト１２０２より記録紙１２０３への転写が行われ、記録紙が搬送されて排紙が終了するまで一連の印刷処理が止らない（予め定められたタイムテーブルに従って順次印刷処理が実行される。）。
【００９７】
以上のカラープリンタエンジンを使って省メモリ・イメージプリンタを実現する本発明に係る第２の発明の実施の形態例における処理を図１５を参照して以下に説明する。図１５は第２の発明の実施の形態例における出力情報の処理の流れを説明するための図である。
【００９８】
以上の図１４に示すカラーＬＢＰプリンタでカラーイメージを実現するために、プリンタドライバは、イメージデータを１１００にで示すように色成分ごとのカラーイメージデータに分解して各色毎に別けられた１ページ分のデータを生成して一時保存する。そして、プリンタに対しては各色毎に４ページ分に分けてイメージデータを連続して転送するようにすれば良い。
【００９９】
しかし、データ転送を行いながら印刷を行うために、各色データは最低圧縮率以上に圧縮処理を加えることで、転送レートを上げる必要がある。
【０１００】
そこで、まずモノクロプリンタの場合と同様、各色のバンド単位でＬｏｓｓＬｅｓｓ圧縮処理を行い、１１０１に示す各色毎の圧縮データを生成する。この圧縮データの生成方法は上述したモノクロプリンタにおける１ページ分の圧縮処理と全く同様であり、第１の実施の形態例における圧縮方法を４色分行えば良い。
【０１０１】
以上の圧縮方法であっても必要な転送レートに必要な圧縮率が得られない場合にはＬｏｓｓｙなフィルタをかける。但し、Ｌｏｓｓｙ圧縮処理は、ページ単位ではなく、各色単位で行う。高解像度２値イメージデータのＬｏｓｓｙ圧縮方法は、モノクロプリンタと同様の方法を取るが、図１５に示す１１０２，１１０３のディザマトリックステーブルを用いることで、シアン、マゼンタ、イエローの各トナーと黒トナーの重なることによる印刷不良を削減する。
【０１０２】
以上説明した様にカラープリンタにおいても、プリンタへの印刷出力画質の劣化を最小限に抑えて、プリンタと自装置間のデータ転送時に、全てのバンドに対してプリンタへのデータ転送レートで転送した時におけるプリンタの排紙速度に間に合う出力データの転送が可能となり、プリンタは、１ページ分のページメモリを持たずに高精細な画像を出力することが可能となる。
【０１０３】
また、プリンタエンジンがカラーＬＢＰプリンタに対応している場合でプリンタがカラーデータに対応している場合、ＬｏｓｓＬｅｓｓ圧縮処理、ＬｏｓｓＬｅｓｓフィルタリング処理を加える処理、圧縮率を下げるオブジェクトにＬｏｓｓｙな処理を加えて描画を行う処理、ページ全体にＬｏｓｓｙな処理を行う処理なお各処理を色素単位で組み合わせ最も高精細に出力できる。
【０１０４】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【０１０５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１０６】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１０８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１０】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになるが、例えば、図４のメモリマップ例に示す各モジュールを記憶媒体に格納することで達成できる。
【発明の効果】
以上説明したように本発明によれば、少ないメモリ空間しか持たないプリンタをイメージプリンタとして使用することが可能となる。
【０１１１】
【図面の簡単な説明】
【図１】本発明の印刷装置として用いることが可能なインクジェットプリンタＩＪＲＡの構成の概要を示す外観斜視図である。
【図２】インクジェットプリンタＩＪＲＡの制御回路の構成を示すブロック図である。
【図３】本発明に係る一発明の実施の形態例における印刷出力システムの全体構成を示すブロック図である。
【図４】本実施の形態例における図３に示すプログラムＲＯＭに格納されているプログラムの例を示す図である。
【図５】本実施の形態例における印刷情報に対する基本処理を示す図である。
【図６】本実施の形態例におけるバイト幅単位のディザ法を用い一定濃度を２値化した場合２値化方法を説明するための図である。
【図７】本実施の形態例における圧縮率が規定値を越えたときの第１の対処法を説明するための図である。
【図８】図７に示すＬｏｓｓＬｅｓｓフィルタ（インタリーブ処理）の詳細を示す図である。
【図９】本実施の形態例における圧縮率が規定値を越えたときの第２の対処法を説明するための図である。
【図１０】第２の対処法における高解像度、多値イメージのエントロピーを落とす方法を説明するための図である。
【図１１】第２の対処法における２値イメージのエントロピーを落とす方法を説明するための図である。
【図１２】本実施の形態例における圧縮率が規定値を越えたときの第３の対処法における２値イメージのエントロピーを落とす方法を説明するための図である。
【図１３】本実施の形態例における圧縮率が規定値を越えたときの第１乃至第３の対処法を組み合わせた時の本実施の形態例におけるデータ圧縮制御の一例を示すフローチャートである。
【図１４】本発明をカラープリンタに適用した本発明に係る第２の発明の実施の形態例が適用されるプリンタの例を示す図である。
【図１５】第２の発明の実施の形態例における出力情報の処理の流れを説明するための図である。
【図１】
0003862363.tif 000002
【図２】
0003862363.tif 000003
【図３】
0003862363.tif 000004
【図４】
0003862363.tif 000005
【図５】
0003862363.tif 000006
【図６】
0003862363.tif 000007
【図７】
0003862363.tif 000008
【図８】
0003862363.tif 000009
【図９】
0003862363.tif 000010
【図１０】
0003862363.tif 000011
【図１１】
0003862363.tif 000012
【図１２】
0003862363.tif 000013
【図１３】
0003862363.tif 000014
【図１４】
0003862363.tif 000015
【図１５】
0003862363.tif 000016