(57)【要約】【課題】印刷ジョブ圧縮のための効率的な方法を提供する。【解決手段】幾つかの実施の形態においては、特定のオブジェクトタイプに向けられた閾値中間調参照表は、検出された特定のオブジェクトによる画素データとの比較に用いられる。このような特定のオブジェクトによる画素データは、適当なオブジェクト‐特定の閾値中間調参照表を用いて、２個の多ビットの値の一つに符号化でき、繰り返し又は冗長な符号化データの頻度を増大し、データ繰り返し及び／又は冗長性を利用するアルゴリズムによる効率的な圧縮を可能にする。ここに記載する方法は、ラスタプリンタ及びＰＤＬプリンタを含む種々のプリンタに適用可能である。【選択図】図３
2008259197.tif 000002
【特許請求の範囲】
【請求項１】
第一のサイズの画素データを該第一のサイズ以下の第二のサイズの多ビット中間調符号化データに変換する方法であって、
複数のオブジェクトタイプの少なくとも一つを検出するステップと、
検出したオブジェクトタイプの一つに対する少なくとも一つの画素データ値を、該オブジェクトタイプのための少なくとも一つの閾値中間調参照表における対応する複数の閾値と比較するステップと、
前記少なくとも一つの画素データ値に対応する第二のサイズの少なくとも一つの中間調符号化データ値を生成するステップとを備え、
前記画素データ値が、前記閾値中間調参照表中の対応する複数の閾値以下である場合、前記少なくとも一つの中間調符号化データ値が零であり、
あるいは、さもなければ、前記中間調符号化データは、前記第二のサイズのデータで代表することのできる最大値であることを特徴とする。
【請求項２】
請求項１に記載の方法であって、前記オブジェクトタイプは、画像オブジェクト、テキストオブジェクト及びグラフィックスオブジェクトであることを特徴とする。
【請求項３】
請求項２に記載の方法であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、テキストオブジェクトのために用いられることを特徴とする。
【請求項４】
請求項２に記載の方法であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、グラフィックスオブジェクトのために用いられることを特徴とする。
【請求項５】
請求項２に記載の方法であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、テキストオブジェクト及びグラフィックスオブジェクトの双方のために用いられることを特徴とする。
【請求項６】
請求項２に記載の方法であって、一つの閾値中間調参照表がテキストオブジェクトのために用いられ、第二の閾値中間調参照表がグラフィックスオブジェクトのために用いられることを特徴とする。
【請求項７】
請求項１に記載の方法であって、そのオブジェクトタイプのために前記第二のビットサイズの少なくとも一つの中間調符号化データ値を生成するステップは、
該第二のビットサイズの中間調符号化データを用いて符号化プリンタファイルを生成するステップと、
該符号化プリンタファイルを圧縮するステップとを更に備えた事を特徴とする。
【請求項８】
請求項７に記載の方法であって、前記圧縮された符号化プリンタファイルを転送するステップを備えた事を特徴とする。
【請求項９】
請求項７に記載の方法であって、前記圧縮されたプリンタファイルをメモリに格納するステップを更に備えた事を特徴とする。
【請求項１０】
請求項９に記載の方法であって、前記圧縮されたプリンタファイルは、プリンタ内部のメモリ中に格納されることを特徴とする。
【請求項１１】
請求項１に記載の方法であって、該方法は、
プリンタに結合されたコンピュータと、
プリンタに結合されたプリントコントローラと、
プリンタと
の一つ又はそれ以上の上で行われることを特徴とする。
【請求項１２】
プリンタに結合されたコンピュータを備えたシステムで、該コンピュータとプリンタとが、第一のサイズの画素データを該第一のサイズ以下の第二のサイズの多ビット中間調符号化データに変換する方法を実行するシステムであって、該方法が、
複数のオブジェクトタイプの少なくとも一つを検出するステップと、
検出したオブジェクトタイプの一つに対する少なくとも一つの画素データ値を、該オブジェクトタイプのための少なくとも一つの閾値中間調参照表における対応する複数の閾値と比較するステップと、
前記少なくとも一つの画素データ値に対応する第二のサイズの少なくとも一つの中間調符号化データ値を生成するステップとを備え、
前記画素データ値が、前記閾値中間調参照表中の対応する複数の閾値以下である場合、前記少なくとも一つの中間調符号化データ値が零であり、
あるいは、さもなければ、前記中間調符号化データは、前記第二のサイズのデータで代表することのできる最大値であることを特徴とする。
【請求項１３】
請求項１２に記載のシステムであって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、テキストオブジェクトのために用いられることを特徴とする。
【請求項１４】
請求項１２に記載の方法であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、グラフィックスオブジェクトのために用いられることを特徴とする。
【請求項１５】
請求項１２に記載のシステムであって、前記第二のビットサイズの中間調符号化データを用いて符号化プリンタファイルを生成するステップと、
該符号化プリンタファイルを圧縮するステップとを更に備えた事を特徴とする。
【請求項１６】
コンピュータで読み取り可能な媒体で、プロセッサにより実行されたときに、第一のサイズの画素データを該第一のサイズ以下の第二のサイズの多ビット中間調符号化データに変換する方法におけるステップを実行する命令を格納する媒体であって、これらのステップには、
複数のオブジェクトタイプの少なくとも一つを検出するステップと、
検出したオブジェクトタイプの一つに対する少なくとも一つの画素データ値を、該オブジェクトタイプのための少なくとも一つの閾値中間調参照表における対応する複数の閾値と比較するステップと、
前記少なくとも一つの画素データ値に対応する第二のサイズの少なくとも一つの中間調符号化データ値を生成するステップとが含まれ、
前記画素データ値が、前記閾値中間調参照表中の対応する複数の閾値以下である場合、前記少なくとも一つの中間調符号化データ値が零であり、
あるいは、さもなければ、前記中間調符号化データは、前記第二のサイズのデータで代表することのできる最大値であることを特徴とする。
【請求項１７】
請求項１６に記載のコンピュータで読み取り可能な媒体であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、テキストオブジェクトのために用いられることを特徴とする。
【請求項１８】
請求項１６に記載のコンピュータで読み取り可能な媒体であって、オブジェクトタイプのための前記少なくとも一つの閾値中間調参照表は、グラフィックスオブジェクトのために用いられることを特徴とする。
【請求項１９】
請求項１６に記載のコンピュータで読み取り可能な媒体であって、そのオブジェクトタイプのために前記第二のビットサイズの少なくとも一つの中間調符号化データ値を生成するステップは、
該第二のビットサイズの中間調符号化データを用いて符号化プリンタファイルを生成するステップと、
該符号化プリンタファイルを圧縮するステップとを更に備えた事を特徴とする。
【請求項２０】
請求項１９に記載のコンピュータで読み取り可能な媒体であって、そのオブジェクトタイプのために前記第二のビットサイズの少なくとも一つの中間調符号化データ値を生成するステップは、
該第二のビットサイズの中間調符号化データを用いて符号化プリンタファイルを生成するステップと、
該符号化プリンタファイルを圧縮するステップとを更に備えた事を特徴とする。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷の分野に係り、特にプリントジョブサイズの圧縮のためのシステム及び方法に関する。
【背景技術】
【０００２】
プリンタファイルは、画像を描画するプリンタにとって必要なデータを提供する。ラスタプリンタにとって、これらのファイルは、ホスト中で生成され、ホストメモリからラスタプリンタに転送されてもよい。ページ記述言語（ＰＤＬ）ファイルを処理できるプリンタにとって、プリンタファイルはプリンタで生成され得、また一時的に内部メモリに格納できる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
大きなプリンタファイルは、ファイル転送のためにより大きなネットワーク帯域幅を取り、プリントジョブの処理時間を大きく増加し得る。また、大きなファイルは、利用可能なプリンタメモリ容量を著しく減少させ得、この事はまたプリントジョブ処理時間の増大を導き得る。従来のプリンタファイルサイズ減少方法は、画質を犠牲にしてファイルサイズの減少を達成するものと言ってよく、その理由は、プリンタファイルの圧縮は、プリンタファイル中に存在するオブジェクトの性質とは無関係に行われ得るものだからである。例えば、絵、写真及びその他の画像を圧縮すると、プリント出力の質の劣化が生じ得る。したがって、プリンタ出力の質を維持しつつ、プリンタファイルサイズを縮小するシステム及び方法に対する需要が存在する。
【課題を解決するための手段】
【０００４】
本発明によれば、圧縮を増やすことを容易にすることにより、プリンタファイルのサイズを縮小するシステム、方法及び装置が提示される。幾つかの実施の形態においては、第一のサイズの画素データを該第一のサイズ以下の第二のサイズの多ビット中間調符号化データに変換する方法は、複数のオブジェクトタイプの少なくとも一つを検出するステップと、検出したオブジェクトタイプの一つに対する少なくとも一つの画素データ値を、該オブジェクトタイプのための少なくとも一つの閾値中間調参照表における対応する閾値と比較するステップと、前記少なくとも一つの画素データ値に対応する第二のサイズの少なくとも一つの中間調符号化データ値を生成するステップとを備える。前記画素データ値が、前記閾値中間調参照表中の対応する閾値以下である場合、前記生成された中間調符号化データ値が零であり、あるいは、さもなければ、前記中間調符号化データは、前記第二のサイズのデータで代表することのできる最大値である。
【０００５】
前記オブジェクトタイプは、画像オブジェクト、テキストオブジェクト及びグラフィックスオブジェクトを含む。個々の閾値中間調参照表は、テキストオブジェクト及びグラフィックスオブジェクトのために用いられるか、一つの閾値中間調参照表が、テキストオブジェクト及びグラフィックスオブジェクトの双方のために用いられる。幾つかの実施の形態においては、第二のビットサイズの中間調符号化データを用いて符号化プリンタファイルが生成され、該符号化プリンタファイルは、圧縮され、かつプリンタに転送され、及び／又は格納される。
【０００６】
これら及びその他の実施の形態は、以下の図面に関して、以下に更に説明する。
【発明を実施するための最良の形態】
【０００７】
本発明によれば、プリンタファイルサイズ圧縮のためのシステム及び方法が提示される。幾つかの実施の形態においては、既存の圧縮プロトコル及び画像レンダリングが用いられ得る。
【０００８】
図１は、ジョブ画像圧縮のためのシステムの具体例としてのブロック図を示す。本発明に合致するコンピュータソフトウェアアプリケーションは、図１に示すように、一以上のネットワーク化されたコンピュータ又はプリンタ上に配置できる。これらのコンピュータ又はプリンタは、通信回線を介して接続され、従来の通信プロトコル及び／又はデータポートインタフェースを用いて情報交換が可能である。
【０００９】
図１に示すように、具体例としてのシステム１００は、コンピュータ装置１１０及びサーバ１３０。さらに、コンピュータ装置１１０及びサーバ１３０は、接続部１２０上で通信可能であり、この接続部１２０は、ある場合にはインターネットであり得るネットワーク１４０を通過できる。コンピュータ装置１１０は、コンピュータワークステーション、デスクトップコンピュータ、ラップトップコンピュータ又はその他のネットワーク化された環境で使うことのできるコンピュータ装置であってよい。サーバ１３０は、コンピュータ装置１１０と（図示しない）他の装置を接続することのできるプラットフォームでもあり得る。コンピュータ装置１１０及びサーバ１２０は、例示するプリンタ１６０−１及び１６０−２等のプリンタ１６０の制御および構成を可能とする（図示しない）ソフトウェアの実行を可能とするものであり得る。
【００１０】
コンピュータ装置１１０着脱自在なメディアドライブ１５０を含むことができる。着脱自在なメディアドライブ１５０は、例えば、３．５インチフロッピードライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ  ＲＯＭドライブ、ＣＤ±ＲＷ又はＤＶＤ±ＲＷドライブ、ＵＳＢフラッシュドライブ及び／又は本発明の実施の形態に合致するその他の着脱自在な媒体ドライブを含んでよい。ソフトウェアアプリケーションの一部は着脱自在な媒体上に存在することができ、着脱自在なメディアドライブ１５０を用いて、コンピュータ装置１１０により、読み出して実行できる。幾つかの実施の形態においては、アプリケーションにより生成される結果または報告も着脱自在な媒体上に格納可能である。
【００１１】
接続部１２０は、コンピュータ装置１１０、サーバ１３０及びプリンタ１６０−２を連結し、従来の通信プロトコル及び／又はデータポートインタフェースを用いて、有線又は無線の結線として実施される。一般に、接続部１２０は、装置間でデータを伝送することのできるどんなチャンネルにもなり得る。ある実施の形態においては、例えば、装置は、適当な接続部１２０を介してデータを伝送するためのＵＳＢポート、ＳＣＳＩポート、ＦＩＲＥＷＩＲＥポート、及び／又はＢＮＣポート等の従来のデータポートを備えることができる。通信リンクは、無線リンク若しくは優先リンク又はコンピュータ装置１１０、サーバ１３０及びプリンタ１６０−２間の通信を可能とするいかなる連係であってもよい。
【００１２】
ネットワーク１４０は、構内ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）又はインターネットを含み得る。本発明に合致する幾つかの実施の形態においては、ネットワーク１４０上で送信される情報は、伝送されるデータのセキュリティを保証するために、暗号化し得る。
【００１３】
具体例としてのプリンタ１６０−２は、ネットワークプリンタであってよく、接続部１２０を介してネットワーク１４０に接続できる。幾つかの実施の形態においては、具体例としてのプリンタ１６０−１等の印刷装置は、局所的又は専用のプリンタで、直接コンピュータ装置１１０及び／又はサーバ１２０及び／又は他の周辺装置に接続し得る。具体例としてのプリンタ１６０−２等の印刷装置は、図１に示すように、フラッシュドライブ、ＵＳＢドライブ又は他の記憶装置１８０を接続するためのポートも備えることができる。システム１００は、多数の印刷装置及び本発明の実施の形態に従ったその他の図示しない周辺装置を含むことができる。
【００１４】
プリンタ１６０は、ハードウェア、ファームウェア若しくはソフトウェア又はそれらの幾つかの組み合わせにより、制御できる。プリンタ１６０は、具体例としてのプリントコントローラ１７５−１及び１７５−２等の印刷装置１６０の動作を制御できる一以上のプリントコントローラ基板１７５を含むことができる。印刷装置１６０は、プリントコントローラ１７５のメモリ装置上に常駐するファームウェア又はソフトウェアにより制御できる。一般に、プリントコントローラ１７５は、プリンタ１６０に内蔵または外付けであってもよい。幾つかの実施の形態においては、プリンタ１６０は、コンピュータ装置１１０又はサーバ１２０上で実行されるソフトウェアにより部分的に制御してもよい。
【００１５】
具体例としてのプリンタ１６０−２及び１６０−１等のプリンタは、コンソール１９０−１及び１９０−２等のコンソール１９０、又は構成上のオプションの設定を可能にして、他のメッセージを表示できるようにする他のインターフェイスも有することができる。幾つかの実施の形態においては、ディスプレイ又はプリンタ１６０に接続されたコンピュータのモニタ上のユーザインターフェイスを用いて、一以上の構成上のオプションを設定できる。例えば、プリンタ１６０−１に一以上の構成上のオプションを設定するためのユーザインターフェイスを、コンピュータ１１０に結合されたモニタ１９０−３上に表示してもよい。プリンタ１６０−２上に構成上のオプションを設定するためのユーザインターフェイスも、サーバ１３０上で実行されるソフトウェアを用いて、モニタ１９０−３上に表示してもよい。
【００１６】
幾つかの実施の形態においては、印刷装置１７０に関する構成パラメータは、ユーザが構成できる。例えば、印字解像度、文書サイズ、カラーオプション他の構成パラメータをユーザが設定できる。ユーザは、入力トレイと、原稿のバッチ処理を可能にする自動原稿送り装置の使用も指定できるようにしてよい。ユーザは、プリンタ１６０にログインして、ソフトウェアとファームウェアとが種々の機能を実行させる管理機能を実行することができるようにしてもよい。幾つかの実施の形態においては、ログイン処理は、パスワード又はその他のユーザ認証機構を必要とすることができる。
【００１７】
本発明に合致するコンピュータソフトウェアアプリケーションは、図１に示すように、具体例としてのコンピュータ又はプリンタのどの上にも配置することができる。例えば、コンピュータ装置１１０は、プリンタ１６０−１の動作を制御及び／又はモニタできるソフトウェアを実行できる。独立したアプリケーションも、その構成に基づいてプリンタ１６０−２上で同時に実行できる。別の例においては、プリントコントローラ１７５−１上に常駐するアプリケーションは、コンピュータ１１０を用いるが、プリンタ１６０−１において実行されるように構成してもよい。一般に、アプリケーションは、システム中の一以上のコンピュータ、プリントコントローラ又はプリンタ上で全体的に又は部分的に実行できる。
【００１８】
図２は、典型的なプリンタドライバ中の構成要素の具体例としてのブロック図を示す。図２に示すように、具体例としてのアプリケーション１０により生成されたプリンタファイルは、オブジェクト検出モジュール５５により処理される。具体例としてのアプリケーション１０は、ワード等の文書処理アプリケーション、アドビ・アクロバット又は印刷可能な出力を生成できるその他のすべてのアプリケーションであり得る。プリンタファイルは、多数のオブジェクトファイルであり得、これらのオブジェクトファイルには、画像データ、グラフィックスデータ及びテキストデータが含まれる。オブジェクト検出モジュール５５は、コマンドレベルコード５７を生成でき、このコード５７は画像レンダリングモジュール６０により受信される。
【００１９】
幾つかの実施の形態においては、具体例としての画像レンダリングモジュール６０は、第一のサイズの画素データを生成し、この画素データは、閾値中間調参照表７０を用いて第二のサイズ符号化データに変換される。中間調化は、連続階調画像を、戦略的に配置された一連のドット用いて描画された画像に変換するために用いることができる。光又は色の階調をシミュレートするために、所定のセルサイズあたりのドットの相対密度、すなわち１インチ当たりのドット（「ｄｐｉ」）、を変化させる。高密度のドットは、暗い画像部分を生じる。標準的な中間調化の技術により、画像のファイルサイズを縮小できるが、印刷された画像の質が劣化し得る。例えば、８ビットの画素は、４ビットで符号化された中間調データに変換できる。ある中間調化方法は、画素値を、閾値中間調参照表中の対応する値の組と比較する。例えば、８ビットの画素データは、それを多数の閾値と比較して論理的結果を４ビットの二進数に変換することにより新しい４ビットの値を獲得できる。幾つかの実施の形態においては、二進検索アルゴリズム及びその他の周知の技術を用いて比較の回数を制限できる。中間調変換は１画素当たりのビットサイズを減少させることによりデータファイルのサイズを減少させ、プリンタ１６０により所望の画像を印刷するのに用いることのできる符号化プリンタファイルを生成する。
【００２０】
幾つかの実施の形態においては、符号化データは、その後の圧縮のために圧縮モジュール８０に出力できる。プリントファイルサイズの圧縮に標準的な圧縮技術を用いることができ、あるいは、そのアルゴリズムは、プリンタ製造者の専有であり得、又は標準的圧縮技術はモデルに固有なものであり得る。圧縮されたファイルがプリンタにより受信されると、対応する解凍アルゴリズムを用いて当該ファイルを解凍できる。幾つかの実施の形態において、具体例としてのジョブ情報モジュール９０は、圧縮されたプリンタファイルに追加情報を付け加えることができ、このプリンタファイルは、プリントコントローラ１７５に転送される。従来の圧縮方法は概して、これらの中間調符号化プリンタファイルを圧縮して、その後このプリンタファイルを別のモジュール又はプリンタに転送する。この段階での圧縮技術は概して、データの繰り返し／冗長性を利用する。繰り返し又は冗長性の圧縮技術は、ファイルサイズを更に縮小するために用いることができるが、画質を維持しなければならない場合には、反復又は冗長データの発生により制限され得る。例えば、周知の技術を一連の１又は０等の一連の同様のデータ値の圧縮に用いることができる。一以上の一連の同様のデータ値が大きな頻度で発生するファイルは、大きな程度で圧縮できる。
【００２１】
解析モジュール１１２は、受信したプリンタファイルを解析でき、解凍モジュール１１４は、このプリンタファイル中の情報を復号し、解凍できる。幾つかの実施の形態においては、解析及び復号／解凍はプリントコントローラ１７５中で行われ、印刷のために、印刷エンジン１６０に転送され得る。図３は、プリンタデータ処理のためのシステム中でのデータの流れを示す具体例としてのブロック図である。アプリケーション１０は、オブジェクトデータ２２０をプリンタドライバ５０に提供する。幾つかの実施の形態においては、具体例としてのオブジェクト検出モジュール２３０が、オブジェクトデータ２２０を用いてコマンドオブジェクトコード２４０を生成できる。画像レンダリングモジュール２４５は、コマンドオブジェクトコード２４０を受信し、第一のサイズの対応する多ビット画素データ２５０を生成する。多ビット画素データ２５０は、閾値中間調参照表２６０を用いて第二のより小さいサイズの符号化データ２７０に変換できる。符号化データ２７０は、多ビット画素データと比べてより小さなビット数であり得る。符号化データ２７０は符号化プリンタファイル２８０中に置くことができ、符号化プリンタファイル２８０は、ステップ２９０で圧縮され、その後ステップ２９９でファイル転送されるか、ファイル格納され得る。幾つかの実施の形態においては、ステップ２９０で達成される圧縮に、符号化プリンタファイル２８０におけるデータの繰り返し／冗長性を活用できる。
【００２２】
図４ａは、画素表４１０中の具体例としての画素データ４１５と具体例としての閾値中間調参照表４２０との関係を示す。図４ｂは、図４ａの具体例としての２ビット中間調参照表中のセルの拡大図を示す。図４ａに示すように、画素データは、座標値として添え字ｘ及びｙを用いて写像される。具体例としての閾値中間調参照表４２０は座標値として添え字ｉ及びｊを用いて写像される。この説明のために、画素値ｌｘ、ｙ４１５が、具体例としての閾値中間調参照表４２０中の一組の対応する値Ｈｉ、ｊに写像される。ここで、ｘ＝ｉ、ｙ＝ｊである。例えば、画素データｌ２、２４１５は、分り易くするために図４b中に４３０として拡大して示す、閾値中間調参照表４２０中の対応する複数の閾値Ｈ２、２、１、Ｈ２、２、２、Ｈ２、２、３と比較される。
【００２３】
複数の中間調閾値は、一連の３個のブロックとしての画素Ｉ２、２に対して示される。これらのブロックは具体例としての中間調参照表４２０の第３の次元として示し得る。図４ｂに示すように、３個の異なる複数の閾値Ｈｉ、ｊ、１、Ｈｉ、ｊ、２、Ｈｉ、ｊ、３が用いられる。画素値Ｉｘ、ｙ４１５及び中間調参照表４２０中の複数の閾値Ｈ２、２、１、Ｈ２、２、２、Ｈ２、２、３を用いた比較動作は、４個の可能な出力３、２、１、０中の１個を生じ得る。図４ｃは、画像データを符号化データに変換する具体例としての方法を例示する。画素値ｌｘ、ｙ４１５は対応する複数の閾値と比較される。ステップ４６０で画素値ｌｘ、ｙがＨｉ、ｊ、３より大きい場合、ｌｘ、ｙの符号化された値は３（二進数で「１１」又は［１１］2）に設定され得る。画素値Ｉｘ、ｙ４１５がＨi、j、3よりも大きくない場合、ステップ４６５で画素値をＨi、j、2と比較する。画素値ｌx、y４１５がＨi、j、2より大きい場合、ｌｘ、ｙの符号化された値は２（２進数の「１０」又は［１０］２）に設定できる。画素値Ｉｘ、y４１５がＨi、j、2より大きくない場合、ステップ４７０で画素値Ｉx、y４１５をＨi、j、1と比較する。画素値Ｉx、y４１５がＨi、j、1よりも大きい場合、符号化されたＩx、y４１５の値は１（二進数の「０１」又は［０１］2）に設定される。画素値がＨi、j、1より大きくない場合、符号化された値は０（二進数で「００」又は［００］2）に設定することができる。幾つかの実施の形態においては、二進検索又はその他の技術は、比較の回数を最小化するために使用できる。
【００２４】
図５ａは、具体例としての中間調参照表を用いた画素データ値の具体例としての２ビット中間調符号化を例示する。図５ａに示すように、３個の具体例としての８ビット入力画素ｌx、1５１０、ｌx、2５１２、ｌx、3５１４がそれぞれ値１２０、１５０、７８、を有する。具体例としての従来の２ビット閾値中間調参照表４２０は各画素に対する３個の閾値を有する。図５ａに例示した例では、ｌx、1５１０に対する３個の閾値Ｈi、j、3、Ｈi、j、2、Ｈi、j、1はそれぞれ１８０、１００、８０である。これらの複数の閾値は、８ビットの画素ｌx、1を２ビットに変換するために用い得る。
【００２５】
図５ｂは具体例としての８ビットの画素値を２ビットの中間調符号化データに変換する具体例としての方法を例示する。幾つかの実施の形態においては、図５ｂに例示した処理は、画素表４１０中の各画素ｌx、y４１５に対して反復できる。この処理は、画素ｌx、i５１０、ｌx、2５１２、ｌx、3５１４に対して以下に説明する。ステップ５６０において、ｌx、1５１０がＨi、j、3より大きい場合は、結果として生じた２ビットの符号化された値は３又は［１１］２に設定され得る。画素値ｌx、1５１０がＨi、j、3より大きくない場合、画素値はステップ５６５でＨi、j、2と比較される。ｌx、1５１０がＨi、j、2より大きい場合、符号化された値は２又は［１０］2に設定できる。画素値ｌx、i５１０がＨi、j、2より大きくない場合、画素値はステップ５７０でＨi、j、1と比較される。ｌx、1５１０がＨi、j、1より大きい場合、符号化された値は１又は［０１］2に設定できる。ステップ５５５でｌx、1５１０が３個の閾値の全てより小さいと判定され、その結果、符号化された２ビットの値０又は［００］2が生じる。上記処理はｌx、2５１２及びｌx、3５１４に対して繰り返される。その結果、値１２０を有する画素ｌx、1５１０は、値１００を有するＨi、j、2より大きい。したがって、画素ｌx、1５１０は２又は［１０］２として符号化される。同様に、比較動作により、符号化された値３又は［１１］２が画素ｌx、2５１２に対して生じ、符号化された値１又は（０ｌ）2が画素ｌx、3に対して生じる。
【００２６】
図６は、幾つかの実施の形態に従う、具体例としての中間調符号化のためのシステムにおける、データフローを示すブロック図である。印刷されたページには、典型的には、多数のオブジェクトが含まれる。プリンタファイルは、多数のオブジェクトデータを含み得、そのオブジェクトデータには、一以上の画像データ、グラフィックスデータ、テキストデータ、及び、プリントドライバ５０、プリントコントローラ１７５、及び／又はプリンタ１６０によりサポートされる他のタイプのデータが含まれる。図６に示すように、アプリケーション１０はオブジェクトデータ２２０をプリンタドライバ５０に提供できる。幾つかの実施の形態においては、オブジェクト検出モジュール２３０は、プリンタファイル中に存在する種々のオブジェクトタイプを検出し、対応する、テキストオブジェクト３４４、グラフィックスオブジェクト３６４及び／又は画像オブジェクト３８４に対するオブジェクトコマンドコードを生成できる。
【００２７】
図６に示す具体例としての実施の形態において、コマンドオブジェクトコードのレンダリングは各オブジェクトに対する８ビット画素データを生じることができる。図６に示す具体例としての実施の形態において、画素データＴはテキストデータ、画素データＧはグラフィックスデータ、画素データｌは画像データをそれぞれ示す。幾つかの実施の形態においては、画素データＴ３４８、画素データＧ３６８、及び画素データｌ３８８は、それらの閾値中間調参照表３５２、３７２、３９２とそれぞれ比較することができる。
【００２８】
画像画素データ３８８は、図５ａの表４２０と類似のものであり得る画像閾値中間調参照表３９２と比較し得る。幾つかの実施の形態においては、画像閾値中間調参照表３９２は大きさの降順で、又は分類順で複数の閾値を保持できる。図５ａ、５ｂに示すように、Ｈi、j、3、Ｈi、j、2、Ｈi、j、1は、大きさの降順で分類される。結果として生じる符号化データ３９６は、最小値、０、３の間で変動するであろう。一般に、ｎビットの符号化データに対する値は０及びｎビットのデータにより表現できる最大値である２ｎ−１の間で変動するものである。
【００２９】
図７は、テキスト閾値中間調参照表３５２の具体例としての実施の形態を示す。テキスト画素データ３４８は、テキスト閾値中間調参照表３５２中の値と比較する。テキスト閾値中間調参照表３５２の具体例としての実施の形態を図７に示す。３個の８ビットテキスト画素データ３４８の値１２１、１５１、７９が３個の異なるテキストオブジェクト画素Ｉx、4６１０、Ｉx、5６１２、Ｉx、6６１４に対してそれぞれ示される。各画素値は、テキスト閾値中間調参照表３５２中の対応する組の閾値中間調参照表の値と比較することができる。幾つかの実施の形態においては、テキスト閾値中間調参照表３５２の中の値は等しいことができ、一つの値に設定できる。このことにより、テキストオブジェクト画素値をそれらに対応する複数の中間調閾値と比較したときに、（適当な数のビットで表わされる）０又は１の符号化された出力値が生じる。図７において、テキストオブジェクト画素値をそれらに対応する複数の中間調閾値と比較すると、符号化された値［００］2又は［１１］2が生成される。
【００３０】
具体例としてのテキスト閾値中間調参照表３５２において、複数の閾値Ｈi、4、3、Ｈi、4、2、Ｈi、4、1は、互いに等しく、１００（１０進数）の値に設定される。したがって、画素ｌx、4６１０に対応する符号化された値は［１１］2である。同様に、画素ｌx、5６１２に対する３個の閾値Ｈi、5、3、Ｈi、5、2、Ｈi、5、1はたがいに等しく、９０の値に設定される。したがって、画素ｌx、5６１２に対応する符号化された値も［１１］2である。画素ｌx、6６１４に対する複数の閾値Ｈi、6、3、Ｈi、6、2、Ｈi、6、1も互いに等しく、１２０の値に設定される。これにより、画素ｌx、6６１４に対応する［００］２の符号化された出力値が生じる。幾つかの実施の形態においては、一組の同一の閾値を各画素に使用することができるが、画素毎に変化できる。他の実施の形態において、複数の閾値は全ての画素に亘って一定で、すべてのテキストオブジェクトに対して単一の値を用いることができる。
【００３１】
幾つかの実施の形態において、（適当な数のビット数を用いて表された）符号化された０又は１の出力を生じる閾値中間調参照表をグラフィックスオブジェクトに対して構成することができる。他の実施の形態においては、（適当な数のビット数を用いて表された）符号化された０又は１の出力を生じる閾値中間調参照表を他のタイプのオブジェクトに対して構成することができる。一般に、符号化された０又は１の出力を生じる閾値中間調参照表を、単一のビットの中間調方法を用いたオブジェクトの表現が印刷された出力の質に悪影響を及ぼさないことが判定された全てのオブジェクトに対して用いることができる。幾つかの実施の形態においては、（適当な数のビット数を用いて表された）符号化された０又は１の出力を生じる単一の閾値中間調参照表を、どのオブジェクトにも用いることができ、そのオブジェクトは、単一ビットの中間調化方法とともに用いられる参照表と同様な方法で表される。
【００３２】
図６に示す具体例としての実施の形態においては、３個の別々の閾値中間調参照表３５２、３７２、３９２を各オブジェクトタイプに用いる。他の実施の形態において、同一の閾値中間調参照表を、テキスト画素データに対する別々の閾値中間調参照表と共に画像画素データ及びグラフィックス画素データの双方に用いることができる。更に別の実施の形態において、一つの参照表をグラフィックス及びテキストの双方に用い、一方、別の従来の閾値中間調参照表を画像画素データに用いることができる。
【００３３】
符号化されたテキストデータ３５６、符号化されたグラフィックスデータ３７６及び符号化された画像データ３９６を、ステップ３９８で圧縮された符号化プリンタファイル３９７に置く。幾つかの実施の形態においては、データの繰り返し／冗長性を利用する圧縮方法を用いると、１及び０の列の効率的な圧縮を生じる。幾つかの実施の形態においては、このような圧縮は、（適当な数のビット数を用いて表された）０又は１として符号化されたテキスト及びグラフィックスオブジェクトの効率的な圧縮を許容する。幾つかの実施の形態においては、標準多ビットアルゴリズムが画像オブジェクトに適用されているので、絵、写真及び同様のオブジェクトに対して高品質の出力を生成できる。この圧縮されたプリンタファイルは、後で行われる解凍／復号及び印刷のために、ステップ３９９で格納又は転送できる。
【００３４】
さらに、本発明の実施の形態と一致する方法は、プログラムモジュール、ハードウェアモジュール、又はプログラムモジュールとハードウェアモジュールとの組み合わせを用いて都合よく実施できる。このようなモジュールは、実行されたときには、ここに開示したステップ及び特徴を実行し、これらのステップ及び特徴には、図に示した具体例としてのフローチャートを参照して開示したそれらのものが含まれる。上述し、添付の図面中に例示した動作、段階及び手順は、十分に開示されており、当業者の一人が本発明を実施できるようにしている。また、本発明の実施の形態を実行するのに用いることのできる多くのコンピュータ、オペレーティングシステム及びプリンタが存在する。
【００３５】
本発明の上述した特徴及び態様は種々の環境中で実現できる。このような環境及び関連するアプリケーションは、本発明の種々の処理及び動作を実行するために特に構成することができ、あるいは、それらは、機能性を提供するためのプログラムコードにより選択的にアクティブにされ、又は再構成された汎用コンピュータ又は計算プラットフォームを含むことができる。ここに開示した処理は、特定のコンピュータ及び印刷装置に本質的に関係するものではなく、これらの処理の態様は、ハードウェア、ソフトウェア及び／又はファームウェアの全ての適切な組み合わせにより実現できる。例えば、本発明の技術に従って書かれたプログラムと共に種々の汎用機を用いることができ、あるいは、必要な方法及び技術を実行する特定の印刷装置又は印刷システムを変更又は構築することはより便利であり得る。もう一つの例として、プリンタドライバ５０（図２，３，６）中に示された実際の要素は具体例に過ぎず、本発明の要旨に適合しながら変更可能である。例えば、データ圧縮の機能は、プリンタドライバモジュール中で実行される必要はない。
【００３６】
本発明の実施の形態は、また、本発明の実施の形態の方法及び処理に基づいて種々のコンピュータにより実施される動作を行うためのプログラム命令又はプログラムコードを含むコンピュータで読める媒体にも関する。プログラム命令は、本発明の目的で特別に設計され構築されたものであることができるか、又はコンピュータソフトウェア技術の当業者が周知で利用可能な種類のものであってよい。プログラム命令の例には、例えば、コンパイラで生成された機械コード及び解釈プログラムを用いてコンピュータにより実行できるハイレベルコードを含むファイルがある。
【００３７】
本発明の他の実施の形態は、ここに開示された本発明の実施の形態の仕様及びプラクティスに対する考察から当業者に明らかであろう。仕様及び例は具体例としてのみ考えられることを意図しており、本発明の真の範囲および精神は以下のクレームにより示唆される。そのようなものとして、本発明は以下のクレームのみにより制限される。
【図面の簡単な説明】
【００３８】
【図１】ジョブ画像圧縮のための具体例としてのシステムのブロック図である。
【図２】典型的なプリンタドライバ中の構成要素の具体例としてのブロック図である。
【図３】プリンタデータ処理のためのシステム中のデータフローを示す具体例としてのブロック図である。
【図４】図４ａは具体例としての画素データ及び具体例としての２ビットの閾値中間調参照表の関係を示す図、図４ｂは図５ａの具体例としての２ビット中間調参照表中のセルの拡大図、図４ｃは画像データを符号化データに変換するための具体例としての方法を例示する図である。
【図５】図５ａは具体例としての中間調参照表を用いた画素データ値の具体例としての２ビット中間調符号化を例示する図であり、図５ｂは具体例としての８ビット画素値を２ビットの中間調符号化データに変換するための具体例としての方法を例示する図である。
【図６】幾つかの説明した実施の形態に従う具体例としての中間調符号化のためのシステム中のデータフローを示す具体例としてのブロック図である。
【図７】テキスト閾値参照表の具体例としての実施の形態を示す図である。
【図１】
2008259197.tif 000003
【図２】
2008259197.tif 000004
【図３】
2008259197.tif 000005
【図４】
2008259197.tif 000006
【図５】
2008259197.tif 000007
【図６】
2008259197.tif 000008
【図７】
2008259197.tif 000009
【外国語明細書】
2008259197000001.pdf
2008259197000002.pdf
2008259197000003.pdf
2008259197000004.pdf