(57)【要約】【課題】  要求画質と印刷処理速度の双方のバランスを考慮したプリンタシステムを提供することを目的とする。【解決手段】  画像処理装置は、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードから所定の階調モードを選択する選択手段と、前記選択手段が選択した階調モードに従い、前記印刷対象データからイメージデータを生成する画像処理手段と、前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段と、を備える。【選択図】  図２
2005122653.tif 000002
【特許請求の範囲】
【請求項１】
階調モードを選択する選択手段と、
前記選択手段が選択した階調モードに従い、印刷対象データからイメージデータを生成する画像処理手段と、
前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記階調モードは、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードであることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記複数の階調モードは、各画素のビット長が一定値である第１の階調モードと、各画素のビット長が一定値ではない第２の階調モードを含むことを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記画像処理手段は、前記選択手段が選択した階調モードに従うビット長の構成で各画素の階調を表現することによりイメージデータを生成することを特徴とする請求項１乃至３いずれか１項に記載の画像処理装置。
【請求項５】
前記転送手段は、前記選択手段が選択した階調モードを示す階調識別情報を前記プリンタへ転送することを特徴とする請求項１乃至４いずれか１項に記載の画像処理装置。
【請求項６】
前記選択手段は、ユーザより入力される指示に従って前記階調モードを選択することを特徴とする請求項１乃至５いずれか１項に記載の画像処理装置。
【請求項７】
印刷対象データ上の入力階調値を印刷イメージ上の出力階調値に変換する複数の階調変換手段と、
前記複数の階調変換手段の中から所定の階調変換手段を選択する選択手段と、
前記選択手段が選択した所定の階調変換手段を用いて、印刷対象データからイメージデータを生成する画像処理手段と、
前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段と、
を備えることを特徴とするプリンタ制御装置。
【請求項８】
前記複数の階調変換手段は、前記出力階調値のビット長の構成がそれぞれ異なることを特徴とする請求項７記載のプリンタ制御装置。
【請求項９】
階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードを備えるプリンタ制御装置の制御方法であって、
前記複数の階調モードから所定の階調モードを選択する工程と、
印刷対象データに基づいて、前記選択手段が選択した階調モードに従ってイメージデータを生成する工程と、
前記画像処理手段が生成したイメージデータをプリンタへ転送する工程と、
を備えることを特徴とするプリンタ制御装置の制御方法。
【請求項１０】
印刷対象データ上の入力階調値を印刷イメージ上の出力階調値に変換する複数の階調変換手段と、
前記複数の階調変換手段の中から所定の階調変換手段を選択する選択手段と、
前記選択手段が選択した所定の階調変換手段を用いて、印刷対象データからイメージデータを生成する画像処理手段と、
前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段としてプリンタ制御装置を機能させるプログラム。
【請求項１１】
イメージデータと該イメージデータの階調モードを示す階調識別情報とを受信する受信手段と、
前記受信手段が受信した階調識別情報に従い、前記複数の階調モードの中から階調モードを選択する選択手段と、
イメージデータに基づいて印刷記録媒体に対する印刷を実行する印刷実行手段と、
前記受信手段が受信したイメージデータを前記選択手段が選択した階調モードに従って前記印刷実行手段に転送する転送手段と、
を備えることを特徴とするプリンタ装置。
【請求項１２】
前記転送手段は、前記選択手段が選択した階調モードに従い各画素のビット長を特定し、画素ごとの情報を前記印刷実行手段に供給することを特徴とする請求項１１記載のプリンタ装置。
【請求項１３】
階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードを備えるホスト装置と、該ホスト装置と通信可能に構成されたプリンタ装置と、を含んで構成されるプリンタシステムであって、
ホスト装置は、
前記複数の階調モードから所定の階調モードを選択する選択手段と、
印刷対象データに基づいて、前記選択手段が選択した階調モードに従ってイメージデータを生成する画像処理手段と、
前記画像処理手段が生成したイメージデータと該イメージデータの階調モードを示す階調識別情報とをプリンタへ転送する転送手段と、を備え、
プリンタ装置は、
イメージデータと該イメージデータの階調モードを示す階調識別情報とを受信する受信手段と、
前記受信手段が受信した階調識別情報に従い、前記複数の階調モードの中から階調モードを選択する選択手段と、
イメージデータに基づいて印刷記録媒体に対する印刷を実行する印刷実行手段と、
前記受信手段が受信したイメージデータを前記選択手段が選択した階調モードに従って前記印刷実行手段に転送する転送手段と、
を備えることを特徴とするプリンタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の階調モードを用いて画像処理を行うための技術に関する。
【背景技術】
【０００２】
従来、プリンタ装置の印刷品質を高めるために、様々な階調表現方法が提案されている。
【０００３】
例えば、特開２０００−３３５０１４号公報には、作業者が座標域、濃度域、色相域、空間周波数のうちからキーとなる属性を選択し、キーについて分割された複数の領域のそれぞれに適した２値網点およびそれより大きい多値点網からなる複数の網点種を組み合わせた網点グループを選択することにより、その領域に適した網点種で網点画像信号を出力する構成が開示されている（特許文献１）。
【０００４】
また、ネットワーク技術の発達に伴い、コンピュータとプリンタ装置とがネットワークを介して接続されたプリンタシステムが普及している。ユーザは、ホスト装置で作成した印刷データを、ネットワークを介してプリンタ装置に送信することで所望の印刷結果を得ることができる。
【特許文献１】特開２０００−３３５０１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、印刷対象を印刷イメージに展開する機能をホスト装置が備えるいわゆるホストプリントシステムにおいては、ホスト装置は、展開した印刷イメージを、ネットワーク等を介してプリンタに送信する必要がある。そして、展開した印刷イメージのデータ量は、画像処理時の階調表現に依存するため、階調が大きい場合にはデータ量も大きく、階調が小さい場合にはデータ量も小さいというのが一般的である。例えば、イメージの各画素に３ビットを割り当てれば８階調を表現することができるがデータ量も多くなる。一方、各画素につき１ビットを割り当てれば２階調しか表現できないがデータ量は少ない。
【０００６】
しかし、従来のホストプリントシステムでは、ホスト装置が、１つの階調モードしか保有していなかった。そのため、高画質つまり画像の階調を優先したい場合には、各画素のビット長が大きいモードを採用する必要があるため、高画質な画像を得ることができるものの、データ転送時間が長くなり印刷処理全体のスループットが低下するという問題が生じていた。一方、データ転送時間を優先したい場合には、各画素のビット長が小さいモードを採用する必要があるため、印刷イメージのデータ量は小さくなるものの、画質が悪くなるという問題が生じていた。
【０００７】
そこで、本発明は、要求画質と印刷処理速度の双方のバランスを考慮したプリンタシステムを提供することを目的とする。
【０００８】
また、本発明は、複数の階調表現をユーザが任意に選択することができるプリンタシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の画像処理装置は、階調モードを選択する選択手段と、前記選択手段が選択した階調モードに従い、印刷対象データからイメージデータを生成する画像処理手段と、前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段と、を備えることを特徴とする。
【００１０】
本発明の構成によれば、画像処理装置において、複数の階調モードの中から所定の階調モードを選択することが可能になる。
【００１１】
また、好適には、前記階調モードは、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードであることを特徴とする。
【００１２】
かかる構成によれば、画質を印刷処理速度よりも優先する場合には、階調表現に使用するビット長が大きい階調モードを選択することで高画質を得ることが可能になる。一方、印刷処理速度を画質よりも優先する場合には、階調表現に使用するビット長が小さい階調モードを選択することで印刷イメージのデータサイズを抑え印刷処理速度を早く維持できるようになる。
【００１３】
また、前記複数の階調モードは、各画素のビット長が一定値である第１の階調モードと、各画素のビット長が一定値ではない第２の階調モードを含むことを特徴とする。
【００１４】
また、前記画像処理手段は、前記選択手段が選択した階調モードに従うビット長の構成で各画素の階調を表現することによりイメージデータを生成することを特徴とする。
【００１５】
さらにまた、前記転送手段は、前記選択手段が選択した階調モードを示す階調識別情報を前記プリンタへ転送することを特徴とする。
【００１６】
また、前記選択手段は、ユーザより入力される指示に従って前記階調モードを選択することを特徴とする。
【００１７】
本発明のプリンタ制御装置は、印刷対象データ上の入力階調値を印刷イメージ上の出力階調値に変換する複数の階調変換手段と、前記複数の階調変換手段から所定の階調変換手段を選択する選択手段と、前記選択手段が選択した所定の階調変換手段を用いて、印刷対象データからイメージデータを生成する画像処理手段と、前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段と、を備えることを特徴とする。
【００１８】
また、前記複数の階調変換手段は、前記出力階調値のビット長の構成がそれぞれ異なることを特徴とする。
【００１９】
また、前記複数の階調変換手段は、各画素のビット長が一定値である第１の階調変換手段と、各画素のビット長が一定値ではない第２の階調変換手段を含むことが望ましい。
【００２０】
また、前記転送手段は、前記選択手段が選択した所定の階調変換手段を示す階調識別情報を前記プリンタへ転送することが望ましい。
【００２１】
さらにまた、前記選択手段は、ユーザより入力される指示に従って前記所定の階調変換手段を選択することが望ましい。
【００２２】
また、本発明のプリンタ制御装置の制御方法は、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードを備えるプリンタ制御装置の制御方法であって、前記複数の階調モードから所定の階調モードを選択する工程と、印刷対象データに基づいて、前記選択手段が選択した階調モードに従ってイメージデータを生成する工程と、前記画像処理手段が生成したイメージデータをプリンタへ転送する工程と、を備えることを特徴とする。
【００２３】
また、本発明のプログラムは、印刷対象データ上の入力階調値を印刷イメージ上の出力階調値に変換する複数の階調変換手段と、前記複数の階調変換手段から所定の階調変換手段を選択する選択手段と、前記選択手段が選択した所定の階調変換手段を用いて、印刷対象データからイメージデータを生成する画像処理手段と、前記画像処理手段が生成したイメージデータをプリンタへ転送する転送手段としてプリンタ制御装置を機能させるプログラムである。
【００２４】
本発明のプリンタ装置は、イメージデータと該イメージデータの階調モードを示す階調識別情報とを受信する受信手段と、前記受信手段が受信した階調識別情報に従い、前記複数の階調モードの中から階調モードを選択する選択手段と、イメージデータに基づいて印刷記録媒体に対する印刷を実行する印刷実行手段と、前記受信手段が受信したイメージデータを前記選択手段が選択した階調モードに従って前記印刷実行手段に転送する転送手段と、を備えることを特徴とする。
【００２５】
また、前記転送手段は、前記選択手段が選択した階調モードに従い各画素のビット長を特定し、画素ごとの情報を前記印刷実行手段に供給することを特徴とする。
【００２６】
本発明のプリンタシステムは、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モードを備えるホスト装置と、該ホスト装置と通信可能に構成されたプリンタ装置と、を含んで構成されるプリンタシステムであって、ホスト装置は、前記複数の階調モードから所定の階調モードを選択する選択手段と、印刷対象データに基づいて、前記選択手段が選択した階調モードに従ってイメージデータを生成する画像処理手段と、前記画像処理手段が生成したイメージデータと該イメージデータの階調モードを示す階調識別情報とをプリンタへ転送する転送手段と、を備え、プリンタ装置は、イメージデータと該イメージデータの階調モードを示す階調識別情報とを受信する受信手段と、前記受信手段が受信した階調識別情報に従い、前記複数の階調モードの中から階調モードを選択する選択手段と、イメージデータに基づいて印刷記録媒体に対する印刷を実行する印刷実行手段と、前記受信手段が受信したイメージデータを前記選択手段が選択した階調モードに従って前記印刷実行手段に転送する転送手段と、を備えることを特徴とする。
【００２７】
本発明の画像処理方法およびプリンタ装置の制御方法は、コンピュータにより実施することができるが、そのためのコンピュータプログラムは、ＣＤ−ＲＯＭ、磁気ディスク、半導体メモリ及び通信ネットワークなどの各種の媒体を通じてコンピュータにインストールまたはロードすることができる。また、コンピュータプログラムが、プリンタ用カードやプリンタ用オプションボードに記録されて流通する場合も含む。
【発明の効果】
【００２８】
本発明によれば、要求画質と印刷処理速度の双方のバランスを考慮したプリンタシステムを実現することができるようになる。
【発明を実施するための最良の形態】
【００２９】
（第１の実施形態）
第１の実施形態では、階調表現に使用するビット長の構成がそれぞれ異なる複数の階調モード（以下「ビット階調モード」という）の例として、各画素のビット長として１ビットを使用して２階調を表現する１ビット固定階調モードと、各画素のビット長として２ビットを使用して４階調を表現する２ビット固定階調モードの、２種類のビット階調モードを、採用する場合について説明する。
【００３０】
（プリンタシステムの構成）
まず、図１及び図２を用いて、本発明の実施形態のプリンタシステムの構成について説明する。図１は、本発明の実施形態のプリンタシステム１のハードウェア構成を示すブロック図である。図２は、本発明の実施形態のプリンタドライバ手段、プリンタコントローラの機能構成図を示すブロック図である。
【００３１】
図１に示すように、プリンタシステム１は、ホスト装置１０と、通信ネットワーク（ＬＡＮ、インターネット、専用線、パケット通信網、それらの組み合わせ等のいずれであってもよく、有線、無線の両方を含む）を介して該ホスト装置１０と通信可能に構成されるプリンタ装置（画像処理装置）２０とを含んでいる。
【００３２】
ホスト装置１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ユーザインタフェース、通信インタフェース等のハードウェアを備えている。また、ホスト装置１０は、プリンタ装置２０に印刷を実行させるため必要な通常の制御機能として、図２に示すプリンタドライバ手段１６を備えている。
【００３３】
プリンタドライバ手段１６は、通常のプリンタドライバと同様の機能構成であり、例えば、ホスト装置１０上で動作するアプリケーションプログラムからの印刷要求に応じて、ポストスクリプト等の所定のプリンタ制御言語により記述された印刷対象データに基づいてラスタイメージを生成するＲＩＰ手段１６０や、ＲＩＰ手段１６０が生成したラスタイメージに対して所定の画像処理（ハーフトーン処理など）を施して印刷イメージを生成する画像処理手段１６２、画像処理手段１６２が生成した印刷イメージを圧縮する圧縮制御手段１６３、および、圧縮制御手段１６３が圧縮した印刷イメージをプリンタ２０へ転送する転送手段１６５などを備える。
【００３４】
ただし、本実施形態のプリンタドライバ手段１６は、後述するように、ビット階調モードを選択する階調モード選択手段１６１を備えるとともに、画像処理手段１６２は、ラスタイメージ上の入力階調値を印刷イメージ上の出力階調値に変換する複数の階調変換手段（第１の階調変換手段、第２の階調変換手段）を備える。また、転送手段１６５は、圧縮された印刷イメージと、ビット階調モードを示す階調識別信号をプリンタ２０へ転送する点で、従来の構成と異なっている。画像処理手段１６２は、階調モード選択手段１６１にて選択したビット階調モードに対応する階調変換手段を選択し、選択した階調表現手段を用いて画素ごとに階調データを生成する。
【００３５】
ここで、階調変換手段について説明する。各階調変換手段は、ラスタイメージ上の入力階調値と印刷イメージ上の出力階調値との対応関係を格納したテーブル（以下、「階調変換テーブル」と呼ぶ。）をそれぞれ備えており、この階調変換テーブル（図示せず）を用いて、ラスタイメージ上の入力階調値を印刷イメージ上の出力階調値に変換する。
【００３６】
ここでは、第１の階調変換手段は、１ビット固定階調モードに対応し、第２の階調変換手段は、２ビット固定階調モードに対応している。例えば、１ビット固定階調モードが設定されている場合には、ラスタイメージ上の１画素の階調値は、第１の階調変換手段によって１ビットのビット長の階調値に変換される。この場合、印刷イメージは２段階の階調で表現されるので、画質は低いが、データサイズも小さく抑えられる。一方、２ビット固定階調モードが設定されている場合には、ラスタイメージ上の１画素の階調値は、第２の階調変換手段によって２ビットのビット長の階調値に変換される。この場合、印刷イメージは、４段階の階調で表現されるので、画質は高いが、データサイズも大きくなる。
【００３７】
なお、これらの各手段は、ホスト装置１０内のＲＯＭやＲＡＭ、外部の記憶媒体等に格納されるプログラムをＣＰＵが実行することにより機能的に実現される。
【００３８】
プリンタ装置２０は、動力機構部とプリンタコントローラ２６を備えている。
【００３９】
動力機構部は、用紙をプリンタ内に供給する給紙機構、印字を行う印刷エンジン、及び用紙をプリンタ機外に排出する排紙機構等により構成される。印刷エンジンは、例えば、インクジェットプリンタや熱転写プリンタのように１文字単位で印刷するシリアルプリンタ、１行単位で印刷するラインプリンタ、ページ単位で印刷するページプリンタ等に対応する各種印刷エンジンを用いることができる。
【００４０】
プリンタコントローラ２６は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ユーザインタフェース、通信インタフェース等を備えている。また、動力機構部が独立してＣＰＵを備えていてもよく、その場合は、動力機構部のＣＰＵが、パラレルインタフェース等を介して情報処理部のＣＰＵと通信を行い、印刷エンジンを制御して印刷動作を行わせることになる。
【００４１】
プリンタコントローラ２６は、通常のプリンタにおけるプリンタコントローラと同様の機能構成であり、図２に示すように、例えば、ホスト装置１０からコマンドやデータを受信して受信バッファに格納する受信手段２６０、動力機構部を制御して印刷を実行させるエンジン制御手段２６２、伸長処理を実行する伸長制御手段２６３、伸長処理結果を印刷に用いられる順序で印刷エンジンへ転送する転送手段２６５などを備える。
【００４２】
ただし、本実施形態のプリンタコントローラ２６は、ビット階調モードを選択する階調モード選択手段２６１を備え、転送手段２６５は、階調モード選択手段２６１により選択されたビット階調モードに従って伸長処理結果から所定のビット長のデータ（各画素の階調データ）を取り出して、印刷エンジンへ転送する点で、従来の構成と異なっている。
【００４３】
本実施形態の階調モード選択手段２６１は、受信手段２６０が受信したビット階調モードを示す階調識別信号に従って、ビット階調モードを選択する。転送手段２６５は、例えば、１ビット階調モードの場合には、伸張結果の先頭から１ビット長のデータを各画素の階調データとして取り出すとともに、２ビット階調モードの場合には、伸張結果の先頭から２ビット長のデータを各画素の階調データとして取り出すことができる。
【００４４】
なお、これらの各手段は、プリンタ装置２０内のＲＯＭやＲＡＭ、外部の記憶媒体等に格納されるプログラムをＣＰＵが実行することにより実現される。
【００４５】
（プリンタシステムにおける印刷処理）
以下、図３および図５に示すフローチャートと図４に示す画面構成図とを参照して、プリンタシステム１における印刷処理について説明する。なお、各工程（符号が付与されていない部分的な工程を含む）は処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
【００４６】
なお、本実施形態では、上述したように複数のビット階調モードの例として、１ビット固定階調モードと２ビット固定階調モードの２種類のビット階調モードを採用している。しかし、ビット階調モードはこれら２種類に限られず、仕様に応じて適宜追加または変更することができる。例えば、これらに代えて又は追加して、全ての画素について３ビット長の階調信号を持ち、これにより８段階の階調表現を行う階調モードを採用してもよい。
【００４７】
（ホスト装置１０における処理）
まず、図３を用いてホスト装置１０における処理を説明する。
【００４８】
図３は、ホスト装置における処理の流れを示すフローチャートである。ユーザは、ユーザインタフェースを介してビット階調モードを選択するための指示をホスト装置１０に入力する。階調モード選択手段１６１は、入力された指示に従いディスプレイ（表示装置）に図４に示すような階調選択画面を出力表示する（ＳＴＥＰ３００）。
【００４９】
図４は、ディスプレイに表示された階調選択画面の一例を示す図である。同図に示すように、階調選択画面４ａでは、複数のビット階調モード４ｂが表示されている。階調選択画面は、ユーザが所望のビット階調モードを指定するための機能を備える。例えば、ユーザは、各ビット階調モードに対応するボタンをクリックすることにより、所望のビット階調モードを指定することができる。以下、本実施形態では、図４に示すように、２ビット固定階調モードが指定されたものとする。
【００５０】
階調モード選択手段１６１は、ユーザより所定のビット階調モードが指定されると（ＳＴＥＰ３０１のＹｅｓ）、指定された内容に基づいて画像処理に適用するビット階調モードを設定する（ＳＴＥＰ３０２）。ビット階調モードの設定は、例えば、ビット階調モードが１ビット固定階調モードであるか２ビット固定階調モードであるかを示すビット階調フラグを用意して、該フラグに各モードを識別するための情報（１ビット固定階調モードは「１」、２ビット固定階調モードは「２」など）を格納することで行うことができる。本実施形態では、２ビット固定階調モードが指定されているので、ビット階調フラグには「２」が格納される。
【００５１】
次に、プリンタドライバ手段１６は、外部又はホスト装置１０上で動作しているアプリケーションプログラムから印刷要求を受け付けると（ＳＴＥＰ３０３のＹｅｓ）、プリンタ装置２０（プリンタコントローラ２６）に対して印刷指示コマンドを送信するとともに、ＲＩＰ手段１６０などに対して処理の開始を指示する。
【００５２】
ＲＩＰ手段１６０は、処理開始の指示を受け付けると、アプリケーションプログラムから受け取った、ポストスクリプト等の所定のプリンタ制御言語により記述された印刷対象データに基づいて、ラスタイメージを生成する（ＳＴＥＰ３０４）。なお、アプリケーションプログラム等からラスタイメージの形式で印刷対象データを受け取ることができる場合は、ＲＩＰ手段１６０による処理は省略できる。
【００５３】
画像処理手段１６２は、階調モード選択手段１６１より設定されたビット階調モードに従い、前記生成されたラスタイメージに対して所定の画像処理を施し、印刷イメージを生成して、ＲＡＭの所定領域に格納する（ＳＴＥＰ３０５）。
【００５４】
具体的には、画像処理手段１６２は、ビット階調モードに対応する階調変換手段を選択する。選択された階調変換手段は、自身に対応する階調変換テーブルを参照して、ラスタイメージ上の入力階調値を印刷イメージ上の出力階調値に変換し、各画素について所定のビット長の階調データを生成する。画像処理手段１６２は、生成した階調データをＲＡＭの所定の記憶領域に印刷イメージとして格納する。ここでは、ビット階調フラグには「２」が格納されているので、画像処理手段１６２は、第２の階調変換手段を選択する。第２の階調変換手段は、各画素について２ビット長の階調データを生成する。
【００５５】
次に、圧縮制御手段１６３は、ＲＡＭの所定領域から生成された印刷イメージを読み出して、この読み出した印刷イメージに対して所定の圧縮処理を実行して圧縮データを生成する（ステップＳ３０６）。なお、所定の圧縮処理としては、設計に応じて従来の種々の圧縮アルゴリズムを採用することができ、例えば印刷イメージが２値データの場合であれば、ＪＢＩＧ（Joint Bi−level Image Experts Group）のアルゴリズムを採用することが考えられる。
【００５６】
次に、転送手段１６５は、プリンタ装置２０（プリンタコントローラ２６）が圧縮データを受信可能である場合に、ビット階調モードを示す階調識別信号と圧縮データとをプリンタ装置２０（プリンタコントローラ２６）に転送する（ステップＳ３０７）。転送手段１６５は、前記生成された印刷イメージについて、全ての圧縮データを転送するまで、転送処理を実行する。
【００５７】
なお、階調識別信号は、プリンタ装置２０にてビット情報モードを検出するためのものであるから、圧縮データを転送するタイミングとは別のタイミングで転送するように構成してもよい。例えば、印刷要求を受け付けた後、プリンタ装置２０（プリンタコントローラ２６）に対して印刷指示コマンドを送信する際に転送しておくこともできる。また、プリンタ装置２０からの取得要求に応じて、転送するようにしてもよい。
【００５８】
かかる構成によれば、階調選択画面を介してユーザが所望の階調を指定することができるので、ホスト装置において、要求画質に応じた階調モードを実施することができるようになる。また、ユーザは、要求画質、印刷速度、ネットワークのトラフィック状態などを考慮して、階調モードを指定することができるようになるので、プリントシステムにおけるユーザの利便性を向上させることが可能になる。
【００５９】
（プリンタ装置２０における処理：図５）
次に、図５を用いてプリンタ装置２０における処理を説明する。
【００６０】
図５は、プリンタ装置２０における印刷処理の流れを示すフローチャートである。プリンタコントローラ２６は、受信手段２６０において受信したコマンドが印刷指示コマンドである場合（ＳＴＥＰ５００のＹｅｓ）、エンジン制御手段２６２により動力機構部を制御して印刷の準備を整える。また、受信手段２６０は、ホスト装置１０から転送される圧縮データ７や階調識別信号を受信すると、これを受信バッファに格納するとともに、階調モード選択手段２６１や伸長制御手段２６３等に対して処理の開始を指示する（ＳＴＥＰ５０１）。
【００６１】
階調モード選択手段２６１は、処理開始の指示を受け付けると、階調識別信号に基づいてビット階調モードを選択する（ＳＴＥＰ５０２）。ここでは、２ビット固定階調モードが選択される。
【００６２】
また、伸長制御手段２６３は、処理開始の指示を受け付けると、データ受信バッファに格納された圧縮データを読み出して（ステップＳ５０３）、この読み出した圧縮データに対して所定の伸長処理を実行する（ステップＳ５０４）。なお、伸長処理は、ホスト装置１０の圧縮制御手段１６３が採用した圧縮アルゴリズムに対応する伸長処理を採用する必要がある。
【００６３】
転送手段２６５は、階調モード選択手段２６１が選択したビット階調モードに従い、各画素のビット長を特定すると（ＳＴＥＰ５０５）、このビット長に従い、伸張結果の先頭から順にそのビット長のデータを取り出すことにより、画素毎の階調データを抽出する（ＳＴＥＰ５０６）。ここでは、２ビット階調モードが選択されているので、各画素につき２ビットの情報を階調データとして抽出する。
【００６４】
転送手段２６５は、１走査ライン分の画素についての階調データを抽出すると（ステップＳ５０７のＹｅｓ）、抽出した各画素の階調データを印刷エンジンへ転送する（ステップＳ５０８）。
【００６５】
かかる構成によれば、プリンタ装置では、階調識別信号に従って受信した印刷イメージのビット階調モードを判断しているので、ホスト装置１０から複数のビット階調モードに従う印刷イメージが転送される場合でも、その印刷イメージに対応するビット階調モードで各画素の階調データを抽出することができる。
【００６６】
また、以上の構成によれば、印刷対象データが特に階調を必要としない場合や、画質よりもデータ速度を優先したい場合などには、１ビット固定階調モードを選択することで、プリンタシステムにおけるデータ通信負荷を軽減させることができる。一方、印刷対象データが特に階調を必要とする場合や、データ速度のよりも画質を優先したい場合などには、２ビット固定階調モードを選択することで、高画質な印刷結果を得ることができるようになる。これにより、要求画質とデータ通信の双方を状況に応じて選択することができるプリンタシステムを実現することができるようになる。
【００６７】
（第２の実施形態）
第１の実施形態では、目的に応じて１ビット固定階調モードまたは２ビット固定階調モードを選択することにより、階調表現とデータ転送時間の双方のバランスを考慮したプリンタシステムを実現しているものの、高画質を維持しつつデータ転送時間も抑えたいというような場合には、いずれか一方の階調モードを選択することが容易ではない。
【００６８】
そこで、第２の実施形態では、画素単位でビット長を指定することができる可変階調モードを設けることで、高画質を維持しつつデータ転送時間も抑えたいというユーザの要求を満たすプリンタシステムを実現することを目的とする。
【００６９】
可変階調モードは、画素単位で複数種類のビット長のうちいずれかをとるように構成される点で、１ビット固定階調モードや２ビット固定階調モードのように全ての画素についてビット長が一定値である固定階調モードと異なる。本実施形態では、１ビット固定階調モードおよび２ビット固定階調モードに加えて、各画素が、１ビット長、２ビット長、または３ビット長うちいずれかを指定することができるように構成された可変階調モードを採用する。可変階調モードにおけるビット長の構成は、仕様に応じて適宜変更することができる。
【００７０】
（プリンタシステムの機能構成）
図６は、第２の実施形態のプリンタシステム１の機能構成を示すブロック図である。図２に示す機能に対応する機能実現手段については、同一の符号を付している。プリンタドライバ手段１６’は、可変階調モードに従って生成されたビット単位の印刷イメージをバイト単位にまとめる処理を実行するパック処理手段１６４、各画素のビット長の並びを特定するテーブル（以下、「ビット情報テーブル」と呼ぶ）を記憶するビット情報テーブル記憶手段１６６を備えている。また、画像処理手段１６２は、可変階調モードに対応する第３の階調変換手段を備える。
【００７１】
なお、これらの各手段は、ホスト装置１０内のＲＯＭやＲＡＭ、外部の記憶媒体等に格納されるプログラムをＣＰＵが実行することにより機能的に実現される。ビット情報テーブル記憶手段１６６は、ホスト装置１０内のＲＯＭやＲＡＭ、外部の記憶媒体等に構築される。
【００７２】
一方、プリントコントローラ２６’は、パック処理手段１６４によってバイト単位にまとめられた印刷イメージをビット単位に戻す（アンパック）処理を実行するアンパック処理手段１６４、アンパック処理手段１６４によりアンパックされたデータについて孤立ドットの位置を制御する位置制御手段２６７、およびビット情報テーブルを記憶するビット情報テーブル記憶手段２６６を備えている。
【００７３】
なお、これらの各手段は、プリンタ装置２０内のＲＯＭやＲＡＭ、外部の記憶媒体等に格納されるプログラムをＣＰＵが実行することにより実現される。ビット情報テーブル記憶手段２６６は、プリンタ装置２０内のＲＯＭやＲＡＭ、外部の記憶媒体等に構築することができる。
【００７４】
（ビット情報テーブル）
図７は、スクリーンテーブルとビット情報テーブルのデータ構成の一例を示す図である。スクリーンテーブルの例を図３（Ａ）に示し、ビット情報テーブルの例を図３（Ｂ）に示す。ビット情報テーブルは、スクリーンテーブル内の位置にビット長を対応づけたものである。ラスタイメージ上の１画素が印刷イメージ上の９×９画素に変換される場合に、印刷イメージ上の９×９画素のそれぞれの階調値は、スクリーンテーブル内の位置に対応するビット情報テーブル上のビット長の階調値に変換される。
【００７５】
可変階調モードは、２ビット階調を基本としつつ、少ない階調で十分な場所は１ビット階調で表現し、より多くの階調が必要な部分は３ビット階調で表現するように構成される。例えば、人間の眼は、低濃度の領域の濃度変化については敏感であるが、高濃度の領域の濃度変化については、鈍感であるといわれている。２ビット固定階調モードは、１ビット固定階調モードよりも滑らかな階調を表現できるので、中間調および高濃度の画像には適しているが、人の肌のような薄い部分についてはスムーズな階調表現を行うことが難しい。
【００７６】
以上のことから、本実施形態では、可変階調モードの場合は、スクリーンテーブルの大きいほうの値（例えば、２７や２４）を１ビット階調とし、小さいほうの値（例えば、６や３）を３ビット階調とすることで、印刷画像の濃い部分の階調を減らしつつ、薄い部分の階調を増やすように構成している。また、１ビット階調を割り当てる部分の画素数と、３ビット階調を割り当てる部分の画素数とを合わせることで、合計データ量が２ビット固定階調モードの場合と同じデータ量になるように構成している。
【００７７】
なお、ビット情報テーブルは、プリンタドライバ手段１６’からプリンタコントローラ２６’へ、また逆にプリンタコントローラ２６’からプリンタドライバ手段１６’へ転送可能に構成されている。これにより、プリンタドライバ、ターゲットエンジン、スクリーンテーブルなどに変更があった場合でも、ビット情報テーブルを容易に更新することができる。
【００７８】
（プリンタシステムにおける印刷処理）
以下、図８および図９に示すフローチャートを参照してプリンタシステム１における印刷処理について説明する。なお、各工程（符号が付与されていない部分的な工程を含む）は処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
【００７９】
図８は、ホスト装置における処理の流れを示すフローチャートである。ユーザによる階調モードの選択、処理開始の指示からラスタイメージを生成するまでの処理は基本的に図３における処理の流れと同じであるため説明を省略する。
【００８０】
なお、ユーザは、図４に示すような階調選択画面よりビット可変階調モードを選択したものとする。階調モード選択手段１６１は、ビット可変階調モードが指定されたので、当該モードを示す「３」をビット階調フラグに格納する。
【００８１】
ＲＩＰ手段１６０は、印刷対象データに基づいて、ラスタイメージを生成する（ＳＴＥＰ８００）。画像処理手段１６２は、ＲＩＰ手段１６０よりラスタデータが生成されると、設定されている階調モードが可変階調モードであるか否かを判断する（ＳＴＥＰ８０１）。
可変階調モードである場合には、画像処理手段１６２は、第３の階調変換手段を用いて、その可変階調モードに対応するビット情報テーブルをビット情報テーブル記憶手段１６６から読み出す（ＳＴＥＰ８０２）。一方、可変階調モードでない場合には、画像処理手段１６２は、指定されたビット階調モードに対応する階調変換手段を用いて印刷イメージを生成する（ＳＴＥＰ８０３）。
【００８２】
本実施形態では、可変階調モードが指定されているので、画像処理手段１６２（第３の階調変換手段）は、可変階調モードに対応するビット情報テーブルを読み出す。可変階調モードが複数存在する場合には、それぞれに対応するビット情報テーブルがビット情報テーブル記憶手段１６６に格納されているので、該当するビット情報テーブルを読み出す。
【００８３】
画像処理手段１６２は、対象となる画素のビット長を、ビット情報テーブルから取得する（ＳＴＥＰ８０４）。そして、対象となる画素についてそれぞれ取得したビット長に従い階調データを生成する（ＳＴＥＰ８０５）。画像処理手段１６２は、生成した階調データをパック処理手段１６４に受け渡す。
【００８４】
次に、パック処理手段１６４は、各画素の階調データをビット単位からバイト単位にまとめる処理を開始する（ＳＴＥＰ３０７）。具体的には、１ビット、２ビット、３ビットのデータをつなげて１バイト（８ビット）単位のデータとする（パック処理）。パック処理手段１６４は、バイト単位にパックしたデータを圧縮制御手段１６３に受け渡す。
【００８５】
圧縮制御手段１６３は、パックされたデータに対して所定の圧縮処理を実行して圧縮データを生成する（ステップＳ８０７）。そして、転送手段１６５は、プリンタ装置２０（プリンタコントローラ２６）が圧縮データを受信可能である場合に、ビット階調モードを示す階調識別信号と圧縮データとをプリンタ装置２０（プリンタコントローラ２６）に転送する（ステップＳ８０８）。
【００８６】
なお、転送手段１６５は、可変階調モードが指定されている場合に、プリンタ装置２０に同じビット情報テーブルが存在しないときは、ビット情報テーブルも一緒に転送する。なお、ビット情報テーブルを転送するタイミングは、このタイミングに限られない。例えば、印刷要求を受け付けた後、プリンタ装置２０（プリンタコントローラ２６）に対して印刷指示コマンドを送信する際に転送してもよいし、プリンタ装置２０からの取得要求に応じて転送するように構成してもよい。
【００８７】
次に、ホスト装置側の処理について説明する。
【００８８】
図９は、ホスト装置における処理の流れを示すフローチャートである。圧縮データを受信バッファに格納するまでの処理は基本的に図５における処理の流れと同じであるため説明を省略する。
【００８９】
伸張制御手段２６３は、受信バッファから圧縮データを読み出してこれを伸張処理する（ＳＴＥＰ９０１）。なお、伸長処理は、ホスト装置１０の圧縮制御手段１６３が採用した圧縮アルゴリズムに対応する伸長処理を採用する必要がある。次に、階調モード選択手段２６１は、ビット階調モードが可変階調であるか否かを判断する（ＳＴＥＰ９０２）。可変階調である場合には、アンパック処理手段２６４に処理開始を指示する。
【００９０】
アンパック処理手段２６４は、先頭位置に基づいてビット情報テーブルを参照し、対象画素のビット長を取得する（ＳＴＥＰ９０３）。アンパック処理において利用するビット情報テーブルは、ホスト装置１０のパック処理手段１６４が採用したビット長情報テーブルに対応するものを採用する必要がある。なお、本実施形態では、ビット情報テーブルは、プリンタ装置１０から転送されたものを利用する構成とするが、プリンタ装置２０内に予め格納されている構成としてもよい。アンパック処理手段２６４は、取得したビット長に従い、パックされたデータから各画素のデータを抽出する（ＳＴＥＰ９０４）。
【００９１】
次に、位置制御手段２６７は、孤立ドットの位置を制御する処理を実行する（ＳＴＥＰ９０５）。レーザプリンタの場合、１画素を主査方向に分割して得られる複数の部分ドットを用いて複数の階調を表現する。例えば、２ビット階調モードの場合には、１ドットを主査方向に４つの部分ドット（第１部分ドット、第２部分ドット、第３部分ドット、第４部分ドット、）に分割し、４段階に決められたパターンでこれら部分ドットにレーザを照射しトナーを載せる。
【００９２】
しかし、レーザが照射される部分ドットの前後に、レーザが照射されない部分ドットが複数存在するような場合（例えば、第３部分ドットにのみレーザを照射する場合には、第３部分ドット以外の部分ドットにはレーザが照射されない）には、対象となる部分ドットにはトナーがのりにくいという問題がある。このような部分ドットを、孤立ドットとよぶ。
【００９３】
そこで、本プリンタシステム１では、このような孤立ドットについては、主査方向または主査方向と逆方向のどちらかに寄せるように位置制御を行う構成としている。位置制御手段２６７は、孤立ドットを検出した場合には、主査方向または主査方向と逆方向のどちらに寄せるかの情報を付加する。
【００９４】
転送手段２６５は、１走査ライン分の画素の階調データが全て伸長された場合（可変階調モードの場合いは、さらに、アンパックされ位置制御がなされた場合）（ステップＳ９０６のＹｅｓ）、各画素の階調データを印刷エンジンへ転送する（ステップＳ９0０７）。
【００９５】
かかる構成によれば、本プリンタシステム１では、可変階調モードを採用しているので、画素単位で、段階の異なる階調表現を実現することが可能になる。
【００９６】
（その他の実施形態）
本発明は上記各実施形態に限定されることなく、種々に変形して適用することが可能である。例えば、本発明は、画像データに対して階調処理を行うシステムであれば、プリンタシステム以外に対しても適用することができる。
（１）また例えば、上記実施形態では、ビット階調モードとして、１ビット固定階調モード、２ビット固定階調モード、可変階調モードを採用する場合について説明したが、ビット階調モードは仕様に応じて適宜追加または変更することが可能である。例えば、３ビットのビット長を使用して８階調を表現する３ビット固定階調モードを追加しても良い。
（２）また例えば、上記実施形態では、プリンタドライバ手段１６の階調モード選択手段１６１が、画像処理に適用するビット階調モードを設定する構成としているが、本発明は必ずしもこのような構成に限られない。例えばプリンタコントローラ２６側でビット階調モードを設定する構成としてもよい。この場合には、ユーザは、プリンタ２０のユーザインタフェースを介して指定することができ、プリンタコントローラ２６は所定のタイミングでビット階調モードを示す階調識別信号をホスト装置１０に転送する。例えば、ホスト装置から印刷指示コマンドを受信したタイミングや、階調識別信号の取得要求を受信したタイミングで転送する。これによれば、プリンタ側のビット階調モードに、ホスト側の設定を合わせることができる。
（３）また、上記実施形態では、ユーザがビット階調モードを指定する構成としているが、本発明は必ずしもこのような構成に限られない。例えば、プリンタドライバ手段１６やプリントコントローラ２６が、所定の条件に従って、自動的にビット階調モードを指定するように構成するようにしてもよい。
（４）また、上記実施形態では、可変階調モードの場合に、パック／アンパック処理を行うともに位置制御処理を実施する構成としているが、本発明は必ずしもこのような構成に限られない。例えば、２ビット固定階調モードの場合にも、パック／アンパック処理や位置制御処理を実行する構成としてもよい。
【図面の簡単な説明】
【００９７】
【図１】第１の実施形態におけるプリンタシステム１のハードウェア構成を示すブロック図である。
【図２】第１の実施形態におけるプリンタドライバ手段１６、プリンタコントローラ２６の機能構成図を示すブロック図である。
【図３】第１の実施形態におけるプリンタドライバ手段１６の処理内容を示すフローチャートである。
【図４】第１の実施形態における階調選択画面の一例を示す図である。
【図５】第１の実施形態におけるプリンタコントローラ２６の処理内容を示すフローチャートである。
【図６】第２の実施形態におけるプリンタドライバ手段１６、プリンタコントローラ２６の機能構成図を示すブロック図である。
【図７】第２の実施形態におけるビット長情報テーブルのデータ構成の一例を示す図である。
【図８】第２の実施形態におけるプリンタドライバ手段１６の処理内容を示すフローチャートである。
【図９】第２の実施形態におけるプリンタコントローラ２６の処理内容を示すフローチャートである。
【符号の説明】
【００９８】
１  プリンタシステム、１０  ホスト装置、  １６  プリンタドライバ手段、  １６０  ＲＩＰ手段、  １６１  階調モード選択手段、  １６２  画像処理手段、１６３  圧縮制御手段、  １６４  パック処理手段、  １６５  転送手段、  １６６  ビット情報テーブル記憶手段、  ２０  プリンタ装置、  ２６０  受信手段、  ２６１  階調モード選択手段、  ２６２  エンジン制御手段、  ２６３  伸張制御手段、  ２６４  アンパック処理手段、  ２６５  転送手段、  ２６６  ビット情報テーブル記憶手段
【図１】
2005122653.tif 000003
【図２】
2005122653.tif 000004
【図３】
2005122653.tif 000005
【図４】
2005122653.tif 000006
【図５】
2005122653.tif 000007
【図６】
2005122653.tif 000008
【図７】
2005122653.tif 000009
【図８】
2005122653.tif 000010
【図９】
2005122653.tif 000011