(57)【要約】【課題】印刷システムに効果的なランレングス（ＲＬ）符号化されたデータストリームのハーフトーン処理を提供すること。【解決手段】本発明の一特徴は、ランレングス（ＲＬ）符号化されたデータストリーム内で第１パケットを特定する特定システムであって、前記第１パケットは第１ヘッダと前記第１ヘッダにより規定される第１ビットマップデータブロックとを有し、前記第１ビットマップデータブロックは連続トーンデータを有する、前記特定システムと、ＲＬ符号化されたデータをハーフトーンデータに変換するための変換値アレイを特定し、前記第１ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理し、前記第１パケットのＲＬ符号化された連続トーンデータを印刷エンジンのためのハーフトーンデータに変換するため、インデックスに基づき前記件版値アレイからハーフトーンデータを出力する制御システムとを有する印刷コントローラに関する。【選択図】図１
2013021692.tif 000002
【特許請求の範囲】
【請求項１】
ランレングス（ＲＬ）符号化されたデータストリーム内で第１パケットを特定する特定システムであって、前記第１パケットは第１ヘッダと前記第１ヘッダにより規定される第１ビットマップデータブロックとを有し、前記第１ビットマップデータブロックは連続トーンデータを有する、前記特定システムと、
ＲＬ符号化されたデータをハーフトーンデータに変換するための変換値アレイを特定し、前記第１ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理し、前記第１パケットのＲＬ符号化された連続トーンデータを印刷エンジンのためのハーフトーンデータに変換するため、インデックスに基づき前記変換値アレイからハーフトーンデータを出力する制御システムと、
を有する印刷コントローラ。
【請求項２】
前記制御システムはさらに、前記変換値アレイの値がハーフトーンデータの連続するペルを有することを決定し、
前記制御システムはさらに、前記第１ヘッダが前記第１パケットにおける繰り返しのビットマップデータブロックの個数（ｎ）を規定することを決定し、前記ビットマップデータブロックを用いて前記変換値アレイをインデックス化し、前記インデックスに基づき前記変換値アレイからｎ個のペルのハーフトーンデータを出力する、請求項１記載の印刷コントローラ。
【請求項３】
前記制御システムはさらに、前記変換値アレイのエントリがハーフトーンセルのペルデータのパックされたスキャンラインを符号化する符号化することを決定する、請求項２記載の印刷コントローラ。
【請求項４】
前記制御システムはさらに、前記ＲＬ符号化されたデータストリーム内で第２パケットを特定し、前記第２パケットは、前記第１パケットの後の第２ヘッダと、前記第２ヘッダにより規定される第２ビットマップデータブロックとを有し、
前記制御システムはさらに、前記第２ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理し、前記第２パケットの前記ＲＬ符号化された連続トーンデータをハーフトーンデータに変換するため、前記インデックスに基づき前記印刷エンジンのため前記変換値アレイからハーフトーンデータを出力する、請求項１記載の印刷コントローラ。
【請求項５】
前記制御システムはさらに、前記変換値アレイが前記ＲＬ符号化されたデータストリームをハーフトーン処理するため、ハーフトーンセルを規定する３次元変換値アレイであることを決定する、請求項１記載の印刷コントローラ。
【請求項６】
前記制御システムはさらに、前記変換値アレイが前記印刷エンジンの出力チャネルのための複数のハーフトーンペルを符号化するあるバイトのデータをインデックス処理することを決定する、請求項１記載の印刷コントローラ。
【請求項７】
前記特定システムはさらに、未圧縮データストリーム内の連続トーンデータの連続するリピートブロックの個数を特定し、前記リピートブロックの値を特定し、
前記制御システムはさらに、前記リピートブロックの個数と値とに基づき前記変換値アレイのインデックスを生成し、前記生成されたインデックスを用いて前記変換値アレイをインデックス処理し、連続トーンデータのリピートブロックを印刷エンジンのためのハーフトーンデータに変換するため、前記生成されたインデックスに基づき前記変換値アレイからハーフトーンデータを出力する、請求項１記載の印刷コントローラ。
【請求項８】
印刷コントローラ上で実行可能な方法であって、
ランレングス（ＲＬ）符号化されたデータストリーム内で第１パケットを特定するステップであって、前記第１パケットは第１ヘッダと前記第１ヘッダにより規定される第１ビットマップデータブロックとを有し、前記第１ビットマップデータブロックは連続トーンデータを有する、前記特定するステップと、
ＲＬ符号化されたデータをハーフトーンデータに変換するため、変換値アレイを特定するステップと、
前記第１ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理するステップと、
前記第１パケットのＲＬ符号化された連続トーンデータを印刷エンジンのためのハーフトーンデータに変換するため、前記インデックスに基づき前記変換値アレイからハーフトーンデータを出力するステップと、
を有する方法。
【請求項９】
前記第１ヘッダが前記第１パケットにおけるビットマップデータの繰り返しのブロックの個数（ｎ）を規定することを決定するステップであって、前記変換値アレイの値が連続するペルのハーフトーンデータを有する、前記決定するステップと、
前記ビットマップデータブロックを用いて前記変換値アレイをインデックス処理するステップと、
前記インデックスに基づき前記変換値アレイからｎ個の連続するペルのハーフトーンデータを出力するステップと、
を有する、請求項８記載の方法。
【請求項１０】
前記変換値アレイを特定するステップはさらに、ハーフトーンセルのためのペルデータのパックされたスキャンラインを規定するエントリを前記変換値アレイにおいて特定することを含む、請求項９記載の方法。
【請求項１１】
前記ＲＬ符号化されたデータストリーム内で第２パケットを特定するステップであって、前記第２パケットは前記第１パケットに続く第２ヘッダと、前記第２ヘッダにより規定される第２ビットマップデータブロックとを有する、前記特定するステップと、
前記第２ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理するステップと、
前記第２パケットのＲＬ符号化された連続トーンデータをハーフトーンデータに変換するため、前記インデックスに基づき前記印刷エンジンのために前記変換値アレイからハーフトーンデータを出力するステップと、
をさらに有する、請求項８記載の方法。
【請求項１２】
前記アレイを特定するステップはさらに、前記ＲＬ符号化されたデータストリームをハーフトーン処理するためにハーフトーンセルを規定する３次元変換値アレイを特定することを含む、請求項８記載の方法。
【請求項１３】
前記アレイを特定するステップはさらに、前記印刷エンジンの出力チャネルのための複数のハーフトーンペルを符号化する変換値アレイを特定することを含み、
ペル毎のビット数は、前記出力チャネルの幅に対応する、請求項１２記載の方法。
【請求項１４】
未圧縮データストリーム内で連続トーンデータの連続するリピートブロックの個数を特定するステップと、
前記連続トーンデータのリピートブロックの値を特定するステップと、
前記リピートブロックの個数と値とに基づき前記変換値アレイのインデックスを生成するステップと、
前記生成されたインデックスを用いて前記変換値アレイをインデックス処理するステップと、
前記連続トーンデータのリピートブロックを印刷エンジンのためのハーフトーンデータに変換するため、前記生成されたインデックスに基づき前記変換値アレイからハーフトーンデータを出力するステップと、
をさらに有する、請求項８記載の方法。
【請求項１５】
印刷コントローラのプロセッサによって実行されると、
ランレングス（ＲＬ）符号化されたデータストリーム内で第１パケットを特定するステップであって、前記第１パケットは第１ヘッダと前記第１ヘッダにより規定される第１ビットマップデータブロックとを有し、前記第１ビットマップデータブロックは連続トーンデータを有する、前記特定するステップと、
ＲＬ符号化されたデータをハーフトーンデータに変換するため、変換値アレイを特定するステップと、
前記第１ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理するステップと、
前記第１パケットのＲＬ符号化された連続トーンデータを印刷エンジンのためのハーフトーンデータに変換するため、前記インデックスに基づき前記変換値アレイからハーフトーンデータを出力するステップと、
を有する方法を実行するため実行可能なプログラムされた命令を実現する有形なコンピュータ可読媒体。
【請求項１６】
前記第１ヘッダが前記第１パケットにおけるビットマップデータの繰り返しのブロックの個数（ｎ）を規定することを決定するステップであって、前記変換値アレイの値が連続するペルのハーフトーンデータを有する、前記決定するステップと、
前記ビットマップデータブロックを用いて前記変換値アレイをインデックス処理するステップと、
前記インデックスに基づき前記変換値アレイからｎ個の連続するペルのハーフトーンデータを出力するステップと、
を有する、請求項１５記載の媒体。
【請求項１７】
前記変換値アレイを特定するステップはさらに、ハーフトーンセルのためのペルデータのパックされたスキャンラインを規定するエントリを前記変換値アレイにおいて特定することを含む、請求項１６記載の媒体。
【請求項１８】
前記ＲＬ符号化されたデータストリーム内で第２パケットを特定するステップであって、前記第２パケットは前記第１パケットに続く第２ヘッダと、前記第２ヘッダにより規定される第２ビットマップデータブロックとを有する、前記特定するステップと、
前記第２ビットマップデータブロックの１以上のバイトを用いて前記変換値アレイをインデックス処理するステップと、
前記第２パケットのＲＬ符号化された連続トーンデータをハーフトーンデータに変換するため、前記インデックスに基づき前記印刷エンジンのために前記変換値アレイからハーフトーンデータを出力するステップと、
をさらに有する、請求項１５記載の媒体。
【請求項１９】
前記アレイを特定するステップはさらに、前記ＲＬ符号化されたデータストリームをハーフトーン処理するためにハーフトーンセルを規定する３次元変換値アレイを特定することを含む、請求項１５記載の媒体。
【請求項２０】
前記アレイを特定するステップはさらに、前記印刷エンジンの出力チャネルのための複数のハーフトーンペルを符号化する変換値アレイを特定することを含み、
ペル毎のビット数は、前記出力チャネルの幅に対応する、請求項１９記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システムの分野に関し、特にランレングス（ＲＬ）符号化されたデータストリームのハーフトーン処理に関する。
【背景技術】
【０００２】
印刷システム内の各種プロセスの間で送信される印刷データは、印刷データを送信及び／又は格納するため利用される帯域幅を低減するため、ランレングス（ＲＬ）フォーマットにしばしば符号化される。ＲＬ符号化された印刷データの印刷前、印刷データは“ハーフトーン”処理を用いて復号化及び選別される。ハーフトーン処理は、サイズ及び／又はスペーシングについて可変的なドットを有する連続的なトーン画像をシミュレートする複写技術である。連続的なトーン画像が無限の範囲をカラー又はグレイを含む場合、印刷システムにより生成される典型的なハーフトーン画像は、ブラック、ＣＭＹＫ（Ｃｙａｎ，Ｍａｇｅｎｔａ，Ｙｅｌｌｏｗ，ａｎｄ  Ｋｅｙ  ｂｌａｃｋ）、又はＲＧＢ（Ｒｅｄ  Ｇｒｅｅｎ  Ｂｌｕｅ）などの限定的なカラーセットを有するバイナリ画像である。このタイプのバイナリな複写は、肉眼により観察されたとき、小さなドットがスムースな画像トーンを生成可能であり、連続するトーン画像となるよう観察者に表す視覚的錯覚に依拠する。
【０００３】
ハーフトーン処理は、高周波数／低周波数二分法を利用して、ハーフトーン画像から連続的なトーンの錯覚を生成する。ハーフトーン処理では、低周波数成分は、ハーフトーンセルとして指定された出力画像のローカルエリアである。各ハーフトーンセルは、連続トーンの入力画像の対応するエリア（サイズ及び位置）に関する。各ハーフトーンセル内では、高周波数成分は、インク又はトナーから構成される可変サイズのハーフトーンドットである。ハーフトーンセル内のインクエリアの非インクエリアに対するレシオは、連続トーン入力画像上の対応するエリアの明度を表す。ある距離から、肉眼はハーフトーンセル内のインクレシオに対応する高周波数成分と、ハーフトーンセルのサイズに対応する低周波数成分との双方を平均化する。
【０００４】
デジタルハーフトーン処理では、ラスタ画像プロセッサが、２次元ピクセルアレイ（ペル（ｐｅｌ）としても知られる）を有するラスタ画像又はビットマップを生成する。ハーフトーンセルをシミュレートするため、デジタルハーフトーンセルは、同じサイズのハーフトーンエリア内にモノクロ（ブラックなど）又は限定的なカラーピクセル（ＣＭＹＫなど）のグループを含む。デジタルハーフトーンセル内のモノクロ又は限定的カラーピクセルの位置及びサイズは、上述されたハーフトーン方法の高周波数／低周波数二分法を表す。
【０００５】
典型的なデジタル印刷システムでは、ＰｏｓｔＳｃｒｉｐｔデータ、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）データ、ＩＰＤＳ（Ｉｎｔｅｌｌｉｇｅｎｔ  Ｐｒｉｎｔｅｒ  Ｄａｔａ  Ｓｔｒｅａｍ）データ、ＡＦＰ（Ａｄｖａｎｃｅｄ  Ｆｕｎｃｔｉｏｎ  Ｐｒｅｓｅｎｔａｔｉｏｎ）データ、ＭＯＤＣＡ（Ｍｉｘｅｄ  Ｏｂｊｅｃｔ：Ｄｏｃｕｍｅｎｔ  Ｃｏｎｔｅｎｔ  Ａｒｃｈｉｔｅｃｔｕｒｅ）データ又は他のタイプのＰＤＬデータなどのＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データが、ラスタ化され、ビットマップに変換される。モノクロデータは単一の２次元ピクセルアレイにより表され、カラーデータは各カラーについて１つのピクセルアレイである複数の２次元ピクセルアレイにより表されてもよい。その後、ビットマップデータは、印刷システム内の各種のラスタ化後の処理を介しビットマップデータを送信するとき、データのサイズを低減するため符号化されてもよい。
【０００６】
データのサイズを低減するため印刷システムにより利用される１つのタイプのＲＬ符号化は、ＰａｃｋＢｉｔｓである。Ａｐｐｌｅ  Ｃｏｍｐｕｔｅｒ  Ｉｎｃ．は、Ｍａｃｉｎｔｏｓｈ（登録商標）コンピュータのリリースによりＰａｃｋＢｉｔｓを導入した。ＰａｃｋＢｉｔｓデータストリームは、１バイトのヘッダに１以上のデータバイトが後続するパケットを含む。ヘッダは、符号付きバイトであり、リテラルデータ又はリピートデータとして以降のデータバイトを規定する。ＰａｃｋＢｉｔｓのリテラルデータは、データを“そのまま”表す。ＰａｃｋＢｉｔｓのリピートデータは、同一の維持するデータのランを表す。ＰａｃｋＢｉｔｓのヘッダはまた、符号化されたリテラルデータ又は符号化されたリピートデータのバイト数を規定する。すなわち、ヘッダは、データのタイプ（リテラル又はリピート）と符号化されたデータ量（ヘッダの後のデータバイト数）とを符号化する。ラスタ化及び符号化の後、ビットマップデータは、印刷エンジンへの送信前にハーフトーンスクリーンを用いて復号化及びハーフトーン処理される。ビットマップデータへの適用時、ハーフトーンスクリーンは、最終的な出力画像を表すのに利用されるハーフトーンセルの特性を規定する。ハーフトーンセルは、閾値の２次元マトリクスを規定する。連続トーンデータがハーフトーンセルにより選別されるとき、連続トーンデータの各ピクセルは、ハーフトーンセルの要素の１つに対応する。ハーフトーン処理を実行するため、各ピクセルは、ハーフトーン出力値を決定するため、ハーフトーンセルの１以上の閾値と比較される。この処理は、計算量の大きなものであり、印刷エンジンの出力チャネルのビット幅が増加するに従って、より大きなものになる。一部の印刷エンジンは、マルチビット長のデータを受け入れるカラーチャネルを含む。ＣＭＹＫ印刷エンジンでは、例えば、イエローカラーチャネル（Ｙ）は、ペルを記述するため２ビットバイナリデータを受け入れてもよい（すなわち、媒体に印刷されたドット）。イエローカラーチャネルなどのハーフトーンデータを生成する際、各連続トーンピクセルは、００，０１，１０又は１１のバイナリ出力を生成するため、３つの閾値と比較される。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＰａｃｋＢｉｔｓなどのＲＬデータストリーム内のデータのハーフトーン処理による１つの問題点は、データがＲＬフォーマットによりカプセル化されることである。これは、ハーフトーンセルの閾値がハーフトーン処理中にデータストリームと比較可能になる前に、データストリームが復号化される必要があることを意味する。他の問題点は、マルチビット出力チャネルを利用する印刷エンジンのためにハーフトーン出力データを生成する際に必要となりうる多数の閾値比較である。マルチビット出力チャネルを利用する印刷エンジンは、特にピクセル毎に複数の閾値を利用することを伴い、これは、処理するための大きな計算リソースを伴う。
【０００８】
本発明の課題は、上述した問題点に鑑み、印刷システムに効果的なランレングス（ＲＬ）符号化されたデータストリームのハーフトーン処理を提供することである。
【課題を解決するための手段】
【０００９】
ここでの実施例は、変換値アレイを用いてランレングス（ＲＬ）符号化されたデータストリームのハーフトーン処理を開示する。ヘッダとビットマップデータとを有するシーケンシャルなＲＬパケットが、データストリームから特定される。ＲＬ符号化されたデータストリームをハーフトーンデータに変換するための変換値アレイが特定される。変換値アレイは、ＲＬ符号化されたデータによりインデックス処理されたハーフトーンデータを格納する。従って、アレイのインデックス処理は、仲介する復号化及び閾値ステップなしにＲＬ符号化データをハーフトーン出力に直接復号化する。開示される実施例では、パケットのビットマップデータは、ハーフトーンデータを出力するため、アレイへのインデックスとして用いられる。変換値アレイの使用は、ＲＬデータストリームの復号化と復号化されたデータに対する閾値ハーフトーン処理を実行することにより計算的により効率的である。
【００１０】
一実施例は、印刷システムの印刷コントローラを有する。印刷コントローラは、特定システムと制御システムとを有する。特定システムは、ランレングス（ＲＬ）符号化された印刷データストリーム内でパケットを特定する。パケットは、ヘッダと当該ヘッダにより規定されるビットマップデータブロックとを有する。また、ビットマップデータブロックは連続トーンデータを有する。制御システムは、ＲＬ符号化データをハーフトーンデータに変換するため変換値アレイを特定する。制御システムは、ビットマップデータブロックの１以上のバイトを用いてアレイをインデックス処理し、パケットのＲＬ符号化された連続トーンデータを印刷エンジンのハーフトーンデータに変換するため、インデックスに基づきアレイからハーフトーンデータを出力する。
【００１１】
他の実施例では、制御システムは、アレイの値がハーフトーンデータの連続するペルを有することを決定する。制御システムは、第１ヘッダが第１パケットのビットマップデータの繰り返しのブロックの個数（ｎ）を規定する。その後、制御システムは、ビットマップデータブロックを用いてアレイをインデックス処理し、インデックスに基づき変換アレイからハーフトーンデータのｎ個の連続するピクセルを出力する。
【００１２】
他の実施例が後述される。
【発明の効果】
【００１３】
本発明によると、印刷システムに効果的なランレングス（ＲＬ）符号化されたデータストリームのハーフトーン処理を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、一実施例のプリンタを示す。
【図２】図２は、一実施例の変換値アレイを利用したＲＬ符号化データストリームのハーフトーン処理方法を示すフローチャートである。
【図３】図３は、一実施例においてコンピュータ可読媒体が開示された方法を提供する計算装置を示す。
【発明を実施するための形態】
【００１５】
図面及び以下の説明は、本発明の特定の実施例を説明する。ここでは明示的には説明又は図示されないが、当業者が本発明の原理を実現し、本発明の範囲内に含まれる各種構成を考案可能であることが理解されるであろう。さらに、ここに説明された具体例は、本発明の原理を理解するのに役立てることを意図するものであり、具体的に記載された具体例と条件とに限定しないものとし解釈されるべきである。この結果、本発明は、後述される特定の実施例又は具体例に限定されず、請求項とそれらの均等によって限定される。
【００１６】
図１は、一実施例のプリンタ１０２のブロック図である。媒体１１８は、プリンタ１０２によるインプリントのため、矢印により示される方向に移動する。媒体１１８は、高速複写印刷システムにおける裁断された用紙媒体又は連続形式媒体を含むものであってもよい。
【００１７】
プリンタ１０２は、印刷コントローラ１０４と印刷エンジン１１４とを有する。プリンタ１０２では、印刷コントローラ１０４は、媒体１１８へのインプリントのため、印刷データストリーム１１６を受信する。印刷データストリーム１１６は、例えば、いくつかのビットマップフォーマットとＰＤＬフォーマットとによるデータを含むものであってもよい。ビットマップデータフォーマットの具体例は、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）、ＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）、ＧＩＦ（Ｇｒａｐｈｉｃｓ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ）などを含む。ＰＤＬデータフォーマットの具体例として、ＡＦＰ（Ａｄｖａｎｃｅｄ  Ｆｕｎｃｔｉｏｎ  Ｐｒｅｓｅｎｔａｔｉｏｎ）、ＩＰＤＳ（Ｉｎｔｅｌｌｉｇｅｎｔ  Ｐｒｉｎｔｅｒ  Ｄａｔａ  Ｓｔｒｅａｍ）、ＭＯＤＣＡ（Ｍｉｘｅｄ  Ｏｂｊｅｃｔ  Ｄｏｃｕｍｅｎｔ  Ｃｏｎｔｒｏｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）などがあげられる。印刷コントローラ１０４は、印刷ジョブの論理ページのラスタビットマップの生成、印刷コントローラ１０４内の他の印刷プロセスへの送信及び／又は格納のためのビットマップデータのＲＬ符号化フォーマットへの符号化など、印刷データストリーム１１６に対していくつかのデータ処理を実行する。印刷コントローラ１０４はまた、１以上の変換アレイ１１２を格納するメモリ１１０を含む。変換アレイ１１２は、ＲＬ符号化された連続トーンデータをハーフトーンデータに変換するための値のアレイを有する。典型的には、ＲＬ符号化されたビットマップデータは復号化され、１以上のハーフトーンセルが、ハーフトーンデータ出力を生成するため復号化されたデータに適用される。例えば、ページリッパ（ｐａｇｅ  ｒｉｐｐｅｒ）は、印刷ジョブの論理ページをＲＬ符号化されたビットマップデータに“リッピング”する。ＲＬ符号化されたビットマップデータは、その後にリップスプール（ハードディスクやハードディスク上のパーティションなど）にスプールされ、及び／又はリッピングされた論理ページから用紙側画像を構成するページアセンブリに送信されてもよい。用紙側画像は、媒体の用紙側のビットマップであり、ｎアップ印刷において複数の論理ページを含むものであってもよい。
【００１８】
印刷エンジン１１４がリッピングされたページに連続トーンデータを印刷可能になる前、連続トーンデータは、１以上のハーフトーンセルを用いてハーフトーン処理される。ハーフトーンセルは、復号化されたデータのピクセルと比較される１以上の閾値を有する。各ピクセルについて、ピクセル値と閾値との間の１以上の比較が行われ、ハーフトーンデータが生成される。しかしながら、ＲＬ符号化データの復号と閾値計算の実行とは、計算量の大きなものである。印刷コントローラ１０４は、１以上の変換値アレイ１１２を利用し、より効率的な方法によりＲＬ符号化データをハーフトーン処理する。システム１００の実行方法が、図２に関して説明される。
【００１９】
図２は、一実施例による変換値アレイ１１２を用いてＲＬ符号化データストリームを効率的にハーフトーン処理する方法２００を示すフローチャートである。方法２００のステップは、当業者が図示されない他のシステムにより方法２００が実行されてもよいことを当業者が認識しているが、図１のシステム１００を参照して説明される。さらに、フローチャートのステップは必ずしもすべてが含まれるものでなく、図示しない他のステップが含まれてもよい。さらに、これらのステップは他の順序により実行されてもよい。
【００２０】
（図示しないホストシステムなどからの）データストリーム１１６の受信後、印刷コントローラ１０４は、ラスタデータを生成するため、データストリーム１１６に対してラスタ化処理を実行する。データストリーム１１６のラスタデータは、その後に印刷コントローラ１０４上で実行される他の印刷処理への送信及び／又は格納のため、ＲＬフォーマットに符号化されてもよい。例えば、１以上の処理が、データストリーム１１６の論理ページのためのラスタデータを生成するようにしてもよい。印刷処理中、ラスタデータは、印刷エンジン１１４への送信前、ハードディスク（図示せず）上のリップスプールに一時的にスプールされるか、又は電子メモリに格納されるようにしてもよい。いくつかの論理ページが媒体の用紙側に構成されると、印刷コントローラ１０４内で実行される他の処理が用紙側画像への論理ページのためのラスタ画像を構成するようにしてもよい。ラスタデータを効率的に格納し、及び／又は印刷コントローラ１０４上のプロセス間でラスタデータを送信するため、ラスタデータはＲＬフォーマットに符号化される。これは、データのストレージサイズを低減する。
【００２１】
ＲＬ符号化された連続トーンデータの印刷前、ハーフトーン処理がＲＬ符号化されたデータに対して実行される。特定システムが、ＲＬデータ内でパケットを特定する（図２のステップ２０２）。パケットは、一般にヘッダと１以上のバイトのデータとを含むデータフレームを規定する。例えば、あるタイプのＲＬ符号化データであるＰａｃｋＢｉｔｓでは、パケットのヘッダは、リテラルデータブロック又はリピートデータブロックとして、以降のデータブロックを規定する。ヘッダはまた、リテラルデータブロックとリピートデータブロックとのブロック数を規定する。
【００２２】
ＰａｃｋＢｉｔｓの例に続いて、符号化されたデータは、１６バイトのリピートデータを規定するバイトヘッダを有してもよい。１６バイトのデータの送信及び／又は格納の代わりに、ＰａｃｋＢｉｔｓ符号化されたデータが、ちょうど２バイトまで、すなわち、１ヘッダバイトと１データバイトまで、データサイズを低減するようにしてもよい。ヘッダは、リピートデータとしてデータタイプを規定し、リピートの個数を規定する。従って、ＰａｃｋＢｉｔｓ符号化されたデータは、オリジナルデータよりはるかに小さい。他のタイプのＲＬ符号化データが複数バイトのヘッダと、ヘッダに後続するデータブロックとを有してもよく、ＲＬ符号化のタイプ及び方法は設計事項の選択であることを当業者は理解するであろう。
【００２３】
制御システム１０８（図１を参照）は、ＲＬ符号化データをハーフトーンデータに変換するための変換アレイ１１２を特定する（図２のステップ２０４）。変換アレイ１１２は、ｍ個の要素の３×３の要素など、ＲＬ符号化データをハーフトーン処理するため、マルチ次元のハーフトーンセルを規定してもよい。値のアレイとして、変換アレイ１１２は、データのバイト又はマルチバイトワードによりインデックス化されてもよい。本実施例では、変換アレイ１１２は、あるインデックスに対応するピクセル又はペル値のアレイとして、印刷エンジン１１４のためのハーフトーンデータを格納する。例えば、変換アレイ１１２は、３×３×２５６の値のアレイであってもよい。本例では、３×３はハーフトーンセルのサイズを表し、２５６はハーフトーンセルの各要素のエントリの個数を表す。
【００２４】
制御システム１０８は、パケットの１以上のバイトのビットマップデータを用いて、変換アレイ１１２をインデックス化する（図２のステップ２０６）。インデックス化変換アレイ１１２は、特定のインデックス化された位置に格納されているバイトへのアクセスを提供する。本実施例では、変換アレイ１１２に提供されるインデックス値は、ＲＬフォーマット化されたパケットにカプセル化されるＲＬ符号化されたデータブロックである。変換アレイ１１２の何れか特定のインデックスされた位置に格納されている値は、印刷エンジン１１４の１以上のハーフトーンペル値である。インデックスか変換アレイ１１２は、制御システム１０８がインデックスに基づき変換アレイ１１２からのハーフトーンデータを出力することを可能にする（図２のステップ２０８）。変換アレイ１１２は印刷エンジン１１４のための１以上のハーフトーンペル値を格納するため、計算量の大きな閾値比較が回避される。これは、ハーフトーン処理の効率を向上させる。方法２００のステップ２０２〜２０８は、ＲＬ符号化データのパケットが変換アレイ１１２を用いて特定及びハーフトーン処理されるとき繰り返されてもよい。
【００２５】
一部の実施例では、変換アレイ１１２は、同一のエントリ又はインデックスされた位置内に印刷エンジン１１４のための複数のハーフトーンピクセル出力を格納してもよい。例えば、印刷エンジン１１４のイエローカラーチャネルが２ビット長である場合、変換アレイ１１２のインデックスされた位置の１バイトのデータが、４ペルのハーフトーン出力を格納してもよい（イエローカラーチャネルのため、バイト毎に８ビット／ペル毎に２ビット）。従って、ビットマップデータのリピートブロックが変換アレイ１１２へのインデックスとして利用される場合、１回のインデックス処理を用いて複数のハーフトーン出力ペルを復号化する機会がある。また、同じエントリ又はインデックスされた位置は、１つのアレイエントリにハーフトーンセルのためのパックされたペルデータのスキャンラインを格納してもよい。スキャンラインは、媒体におけるペルのラインである。例えば、２ビットのハーフトーンセル２５６のピクセル長のパックされたスキャンラインは、６４バイトである。
【００２６】
変換アレイ１１２のあるインデックスに格納可能なデータのバイト数は設計事項の選択であることを、当業者は理解するであろう。６４ビットワード環境では、設計者は変換アレイ１１２の各エントリに８バイトのデータを実装することを所望するかもしれない。２ビットイエローカラーチャネルの例に続いて、これは、３２ペルのハーフトーンデータが１回のインデックス処理を用いて変換アレイ１１２から出力されることを可能にする。これは、３２ペルのハーフトーン出力を生成するため、入力される３２ピクセルデータに対して閾値処理を実行するのに対して有意な効果を提供する。
【００２７】
ＲＬ符号化データが複数ランのリピートデータを含むとき、これは、ハーフトーン処理の効率を向上させる。例えば、ＲＬデータパケットが３０バイトのリピートデータを符号化し、変換値アレイがインデックス毎に８バイトまでの出力データを格納可能である場合、これは、１バイトのＲＬリピートデータが３２までのハーフトーンペルを印刷エンジン１１４にフェッチ又は出力するのに用いられることを可能にする。これは、複数のハーフトーンピクセルが変換アレイ１１２に１回のインデックス処理で出力されてもよいため、ハーフトーン処理の計算複雑さを低減する。
【００２８】
他の実施例では、印刷コントローラ１０４は、変換アレイ１１２に対するインデックスバイトを生成するため、未圧縮ビットマップデータを処理してもよい。この他の実施例では、印刷コントローラ１０４は、未圧縮ビットマップデータにおいてリピートデータのランを特定し、ラン数とリピートデータの値とに基づきインデックス値を構成する。従って、印刷コントローラ１０４による変換アレイ１１２の利用は、ＲＬ符号化されたデータストリームと共に利用することに必ずしも限定されない。
【００２９】
本発明は、完全なハードウェアの実施例、完全なソフトウェアの実施例又はハードウェアとソフトウェア要素との双方を含む実施例の形態をとりうる。好適な実施例では、本発明は、限定することなく、ファームウェア、レジデントソフトウェア、マイクロコードなどを含むソフトウェアにより実現される。図３は、コンピュータ可読媒体３０６が一実施例に開示される方法２００を実行するための命令を提供可能な計算装置を示す。
【００３０】
さらに、本発明は、コンピュータ又は何れかの命令実行システムにより使用される又は関連するプログラムコードを提供するコンピュータ使用可能又はコンピュータ可読媒体３０６からアクセス可能なコンピュータプログラムプロダクトの形態をとりうる。図３は、コンピュータ可読媒体３０６が一実施例で開示される方法２００を実行するための命令を提供可能な計算装置を示す。
【００３１】
媒体３０６は、電子、磁気、光、電磁気、赤外線又は半導体システム（又は装置）とすることができる。コンピュータ可読媒体３０６の具体例として、半導体又はソリッドステートメモリ、磁気テープ、着脱可能なコンピュータディスケット、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、リジッド磁気ディスク及び光ディスクがあげられる。光ディスクの現在の具体例として、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ及びＤＶＤがあげられる。
【００３２】
プログラムコードを格納及び／又は実行するのに適したデータ処理システムは、システムバス３１０を介しメモり要素３０８に直接的又は間接的に結合される少なくとも１つのプロセッサ３０２を有する。メモリ要素３０８は、実行中にコードがバルクストレージから抽出される回数を低減するため、少なくとも一部のプログラムコードの一時的な格納を提供するプログラムコード、バルクストレージ及びキャッシュメモリの実際の実行中に使用されるローカルメモリを含むことが可能である。
【００３３】
入出力（Ｉ／Ｏ）装置３０４（限定することなく、キーボード、ディスプレイ、ポインティング装置などを含む）が、直接的に又は仲介するＩ／Ｏコントローラを介しシステムに結合可能である。
【００３４】
ネットワークアダプタはまた、データ処理システムが、ホストシステムインタフェース３１２を介して、又は印刷エンジンインタフェース３１４などの仲介するプライベート又はパブリックネットワークを介しリモートプリンタ若しくは記憶装置などの他のデータ処理システムに結合されることを可能にするため、システムに結合されてもよい。モデム、ケーブルモデム及びイーサネット（登録商標）カードは、現在利用可能なタイプのネットワークアダプタのいくつかである。
【００３５】
特定の実施例が説明されたが、本発明の範囲はこれら特定の実施例に限定されるものでない。本発明の範囲は、以下の請求項及びその均等により規定される。
【符号の説明】
【００３６】
１００  システム
１０２  プリンタ
１０４  印刷コントローラ
１０６  特定システム
１０８  制御システム
１１０  メモリ
１１２  変換アレイ
１１４  印刷エンジン
１１８  媒体
【図１】
2013021692.tif 000003
【図２】
2013021692.tif 000004
【図３】
2013021692.tif 000005