(57)【要約】【課題】ネットワーク接続を通してプリントデバイスへ画像データを転送するためのシステムと方法が提供される。【解決手段】  画像データは第１ページと関連付けられた少なくとも一つの画像ブロックを含み、ここで、画像ブロックが複数のカラーブロックを含み、それぞれのカラーブロックが別個のカラープレーンと関連付けられている。いくつかの実施の形態では、第１ページの直後にある第２プリントページの転送のために、転送遅延が計算される。カラープレーンがプリント装置上で処理される順序および画像ブロック内のデータのボリュームに関連して、連続するカラープレーン間の物理的なオフセットに基づいて転送遅延が計算される。さらに、第２プリントページと関連付けられた画像データのスケジュールされた転送は、計算された遷移遅延だけ遅らせられる。【選択図】図２
2009245417.tif 000002
【特許請求の範囲】
【請求項１】
第１プリントページと関連付けられた少なくとも一つの画像ブロックを含む画像データを、ネットワーク接続を通してプリント装置へ転送する方法であって、ここで、前記画像ブロックは複数のカラーブロックを含み、それぞれの前記カラーブロックが別個のカラープレーンと関連付けられており、
前記カラープレーンが前記プリント装置上で処理される順序と前記画像ブロック内のデータのボリュームとの関連で、連続するカラープレーン間の物理的オフセットの関数に基づいて、第１ページ直後の第２プリントページの転送の遷移遅延を計算するステップと、
第２プリントページに関連付けられる前記画像データのスケジュールされた転送を、計算された前記遷移遅延だけ遅れさせるステップと、
を含む画像データ転送方法。
【請求項２】
遷移遅延を計算するステップは、
２枚のプリントページ内の少なくとも一つのエリアの指定を受信するステップと、
第２ページのスケジュールされた転送の時間と、第１ページの特定されたエリアと関連付けられた全てのカラーブロックの転送が完了する時間に相当する計算された時間との、時間差に対応する第１の時間幅を、前記第２ページの転送を遅延するために決定するステップと、
前記第２ページの前記指定されたエリアと関連付けられた前記カラーブロックのスケジュールされた転送の時間と前記第１ページの全ての前記カラーブロックの転送が完了する時間に相当する計算された時間との時間差に対応する第２の時間幅を、前記第２ページの遷移を遅延するために決定するステップと、
前記第１時間幅および前記第２時間幅より大きい値として前記遷移遅延を設定するステップと、
を含む請求項１記載の画像データ転送方法。
【請求項３】
遷移遅延を計算するステップは、
第２ページのスケジュールされた転送の時間と、第１ページの少なくとも一つの特定のカラープレーンと関連付けられた全てのカラーブロックの転送が完了する時間に相当する計算された時間との、時間差に対応する第１の時間幅を、前記第２ページの転送を遅延するために決定するステップと、
前記第２ページの少なくとも一つの特定のカラープレーンと関連づけられた前記カラーブロックのスケジュールされた転送の時間と前記第１ページの全ての前記カラーブロックの転送が完了する時間に相当する計算された時間との時間差に対応する第２の時間幅を、前記第２ページの遷移を遅延するために決定するステップと、
前記第１時間幅と前記第２時間幅より大きい値として前記遷移遅延を設定するステップと、
を含む請求項１記載の画像データ転送方法。
【請求項４】
遷移遅延を計算するステップは、前記第１ページの前記画像データが前記ネットワーク接続を通してある時間幅内に転送されることを可能とする最大遷移遅延を計算するステップを含む、請求項１〜３のいずれか一項に記載の画像データ転送方法。
【請求項５】
前記時間幅が、前記ネットワーク接続の使用可能なバンド幅、および前記プリント装置の印刷速度に基づいて決定される、請求項４に記載の画像データ転送方法。
【請求項６】
前記最大遷移遅延が、計算された前記最大遷移遅延およびユーザによって指定された遷移遅延よりも低く設定される、請求項４または５に記載の画像データ転送方法。
【請求項７】
計算された遷移遅延に基づいて少なくとも一つのカラーブロックを使う転送フレームを形成するステップと、
転送フレームのサイズが閾値を超える場合、前記転送フレーム内の少なくとも一つの前記カラーブロックにタグを付けるステップと、
タグが付けられた少なくとも一つのカラーブロックの解像度を減少するステップと、
をさらに含む請求項１〜６のいずれか一項に記載の画像データ転送方法。
【請求項８】
前記ネットワーク接続の前記使用可能なバンド幅および前記プリント装置の印刷速度に基づいて閾値が決められる、請求項７に記載の画像データ転送方法。
【請求項９】
前記カラーブロックの解像度を減少するステップは、
前記カラーブロックのための、より低解像度の画像とデルタ画像を得るステップと、
前記デルタ画像を除去するステップと、
を含む請求項７に記載の画像データ転送方法。
【請求項１０】
計算された遷移遅延に基づいて、少なくとも一つのカラーブロックを使う転送フレームを構築するステップと、
転送フレームのサイズが閾値を超える場合、前記転送フレーム内の少なくとも一つの前記カラーブロックにタグを付けるステップと、
少なくとも一つのカラーブロックの解像度を減少させるステップと、
をさらにさらに含む請求項１〜６のいずれか一項に記載の画像データ転送方法。
【請求項１１】
第１プリントページと関連付けられた少なくとも一つの画像ブロックを含む画像データを、ネットワーク接続を通してプリント装置へ転送する方法を実行するために、プロセッサによって実行されるコンピュータプログラムであって、ここで、前記画像ブロックは複数のカラーブロックを含み、それぞれの前記カラーブロックが別個のカラープレーンと関連付けられており、
前記方法は、
前記カラープレーンが前記プリント装置上で処理される順序と前記画像ブロック内のデータのボリュームとの関連で、連続するカラープレーン間の物理的オフセットの関数に基づいて、第１ページ直後の第２プリントページの転送の遷移遅延を、計算するステップと、
第２プリントページに関連付けられる前記画像データのスケジュールされた転送を、計算された前記遷移遅延だけ遅れさせるステップと、
を含むコンピュータプログラム。
【請求項１２】
遷移遅延を計算するステップは、
２枚のプリントページ内の少なくとも一つのエリアの指定を受信するステップと、
第２ページのスケジュールされた転送の時間と、第１ページの指定されたエリアと関連付けられた全てのカラーブロックの転送が完了する時間に相当する計算された時間との、時間差に対応する第１の時間幅を、前記第２ページの転送を遅延するために決定するステップと、
前記第２ページの前記指定されたエリアと関連づけられた前記カラーブロックのスケジュールされた転送の時間と前記第１ページの全ての前記カラーブロックの転送が完了する時間に相当する計算された時間との時間差に対応する第２の時間幅を、前記第２ページの遷移を遅延するために決定するステップと、
前記第１時間幅および前記第２時間幅より大きい値として前記遷移遅延を設定するステップと、
を含む請求項１１記載のコンピュータプログラム。
【請求項１３】
遷移遅延を計算するステップは、
第２ページのスケジュールされた転送の時間と、第１ページの少なくとも一つの特定のカラープレーンと関連付けられた全てのカラーブロックの転送が完了する時間に相当する計算された時間との、時間差に対応する第１の時間幅を、前記第２ページの転送を遅延するために決定するステップと、
前記第２ページの少なくとも一つの特定のカラープレーンと関連づけられた前記カラーブロックのスケジュールされた転送の時間と前記第１ページの全ての前記カラーブロックの転送が完了する時間に相当する計算された時間との時間差に対応する第２の時間幅を、前記第２ページの遷移を遅延するために決定するステップと、
前記第１時間幅と前記第２時間幅より大きい値として前記遷移遅延を設定するステップと、
を含む請求項１１記載のコンピュータプログラム。
【請求項１４】
遷移遅延を計算するステップは、前記第１ページの前記画像データが前記ネットワーク接続を通してある時間幅内に転送されることを可能とする最大遷移遅延を計算するステップを含む、請求項１１〜１３のいずれか一項に記載のコンピュータプログラム。
【請求項１５】
前記時間幅が、前記ネットワーク接続の使用可能なバンド幅、および前記プリント装置の印刷速度に基づいて決定される、請求項１４に記載のコンピュータプログラム。
【請求項１６】
前記最大遷移遅延が、計算された前記最大遷移遅延およびユーザによって指定された遷移遅延よりも低く選択される、請求項１４または１５に記載のコンピュータプログラム。
【請求項１７】
計算された遷移遅延に基づいて少なくとも一つのカラーブロックを使う転送フレームを形成するステップと、
転送フレームのサイズが閾値を超える場合、前記転送フレーム内の少なくとも一つの前記カラーブロックにタグを付けるステップと、
タグが付けられた少なくとも一つのカラーブロックの解像度を減少するステップと、
をさらに含む請求項１４〜１６のいずれか一項に記載のコンピュータプログラム。
【請求項１８】
前記ネットワーク接続の前記使用可能なバンド幅および前記プリント装置の印刷速度に基づいて閾値が決められる、請求項１７に記載のコンピュータプログラム。
【請求項１９】
第１プリントページと関連付けられた少なくとも一つの画像ブロックを含む画像データを、ネットワーク接続を通してプリント装置へ転送するシステムであって、ここで、前記画像ブロックは複数のカラーブロックを含み、それぞれの前記カラーブロックが別個のカラープレーンと関連付けられており、
前記カラープレーンが前記プリント装置上で処理される順序と前記画像ブロック内のデータのボリュームとの関連で、連続するカラープレーン間の物理的オフセットの関数に基づいて、第１ページ直後の第２プリントページの転送の遷移遅延を、計算するように構成されたバンド幅限界インスペクタと、
第２プリントページに関連付けられる前記画像データのスケジュールされた転送を、計算された前記遷移遅延だけ遅れさせるように構成されたフォーマッタと、
を含む画像データ転送システム。
【請求項２０】
前記バンド幅限界インスペクタは、計算された転送遅延に基づいて、少なくとも一つのカラーブロックを使う転送フレームを形成し、転送フレームのサイズが閾値を超える場合、転送フレーム内の少なくとも一つのカラーブロックにタグを付けるようにさらに構成され、
前記フォーマッタは、前記少なくとも一つのカラーブロックの解像度をさらに減少させ
るようにさらに構成される請求項１９記載の画像データ転送システム。
【請求項２１】
請求項１１〜１８記載のコンピュータプログラムが保存されたコンピュータ読み込み可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリントシステムのためのデータ圧縮、特にレーザプリンタのカラーデータ圧縮のためのシステムと方法に関する。
【背景技術】
【０００２】
典型的なプリントシステムは、あらかじめ決められた印刷速度でページ上にデータをプリントするよう構成された、様々な機械的および電気的部品を制御するプリントエンジンを含む。プリントエンジンは、印刷プロセスに関連したタイミングとその他のパラメータを連係させるため、通常プリントデータ入力装置（たとえば、パソコン）およびプリントエンジンと通信するプリントコントローラによって制御される。プリントコントローラは、データ転送インターフェースを介して適切な速度で入力装置から画像データをプリントのために受信し、ラスタライズされた画像を生成し、そしてその画像を印刷のためにプリントエンジンに送信する。
【０００３】
一度プリントジョブが開始されると、中断されることなく同一の速度でプリントエンジンへのデータ転送ができるように、レーザプリンタシステムのようないくつかのプリントシステムには、厳格なリアルタイムの要請がある。たとえば、ページプリンタの一種であるレーザプリントシステムにおいて、それぞれのページのためのデータは、中断されることなく適切なスピードでプリントエンジンに転送される。しかし、データ転送インターフェースのバンド幅は、時に印刷速度を維持するのに十分ではない。たとえば、高解像度の画像を含むページは、画像圧縮の後でさえ大きなデータサイズを持っていることがある。そのようなページがある印刷速度でプリンタからプリントコントローラへ転送されている時、画像データはある時間中バンド幅を超えることがある。その結果、プリント用のページが、物理的なプリントの開始の前にプリントコントローラとプリントエンジンに完全に転送されず、データ・アンダーラン（ｄａｔａ  ｕｎｄｅｒ−ｒｕｎ）を引き起こす可能性がある。結果として、ページは適切にプリントされない。よってプリントシステムの性能は大幅に妥協されることとなる。
【０００４】
従来のプリンタコントローラは、プリントが開始される前に全ページをバッファすることができるページバッファを持っていることもある。これは、プリントデータがプリンタからプリンタコントローラにどのように転送されるかについて、多少の柔軟性がある。たとえば、高解像度の画像を含むプリントデータの全ページを保存するためには、プリントコントローラはコードとデータ保存の両方のために大量の追加メモリを使うだろう。これはプリントシステムへの大幅なコスト増となる。さらに、一般的に多くの既存のプリンタへはメモリ増設はできないので、増設メモリを使う方法は市場に既にあるプリンタには適用できない。ゆえに、既存のプリンタに実装できて、プリントエンジンのメモリ要求を低減する、信頼性あるプリント解決策を提供するシステムと方法への必要性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ネットワーク接続を通してプリントデバイスへ画像データを転送するためのシステムと方法が提供される。
【課題を解決するための手段】
【０００６】
画像ブロックが複数のカラーブロックを含み、各々のカラーブロックが別個のカラープレーンと関連付けられている場合において、画像データは第１プリントページと関連付けられた少なくとも一つの画像ブロックを含む。いくつかの実施形態においては、遷移遅延
は、第１ページ直後に継続して第２プリントページの転送のために算出されうる。カラープレーンがプリントデバイスで処理される順序に関連する一連のカラープレーン間の物理的なオフセットの関数と、画像ブロック内のデータ容量に基づいて、遷移遅延が計算される。さらに、第２プリントページと関連付けられた画像データのスケジュールされた転送は、計算された遷移遅延によって遅延される。
【０００７】
開示される実施の形態は、ソフトウエア、ファームウエア、および読み取り可能な媒体、またはコンピュータによって読み取り可能なメモリを使うプロセッサによって生成、保存、アクセス、変更されるプログラム命令に関連する。記述される方法はコンピュータおよび／またはプリントデバイスでも実行されうる。
【０００８】
さらなる目的と利点は続く記述中に部分的に述べられ、部分的には記述から明らかであり、または実践によって習得されうる。目的および利点は、添付のクレームに特に指摘される要素と組み合わせにより、理解され達成されるだろう。これまで述べられた一般的な記述および以下の詳細な記述は、典型的で説明的であるのみで、限定的に解釈されるべきではない。これらと他の実施の形態は、次の図に関連付けられてさらに以下に説明する。
【図面の簡単な説明】
【０００９】
【図１】図１は、典型的なプリンタのブロック図を示す。
【図２】図２ａは、連続する２枚のプリントページ間に遷移遅延がない場合の典型的なコンピュータから典型的なプリンタへ転送される、連続する２枚のプリントページを示す。図２ｂは、連続する２枚のプリントページ間に遷移遅延がある場合の典型的なコンピュータから典型的なプリンタへ転送される、連続する２枚のプリントページを示す。
【図３】図３は、カラーデータ圧縮のための典型的なコンピュータと典型的なプリンタ間の、典型的なデータフローを示すブロック図を示す。
【図４】図４は、典型的なカラーデータ圧縮動作プロセスのフローチャートを示す。
【図５】図５は、典型的なカラーデータ圧縮動作プロセスのフローチャートを示す。
【図６】図６は、典型的なカラーデータ圧縮動作プロセスのフローチャートを示す。
【発明を実施するための形態】
【００１０】
付随する図に示される様々な実施の形態の参照が、ここに詳細にされる。可能な限り、同一参照番号が同一か同様の部品を参照するよう、全ての図面を通して使用される。
【００１１】
図１は、典型的なコンピュータ２００に接続された典型的なプリンタ１００のブロック図である。いくつかの実施形態においては、プリンタ１００は、レーザプリンタ、ＬＥＤプリンタ、またはその他本発明の原理と整合性のあるどのようなプリンタでもよい。接続１２０はコンピュータ２００とプリンタ１００に連結し、従来の通信プロトコルおよび／またはデータポートインターフェースを使用する有線、無線通信として実装されうる。一般的に、接続１２０は、デバイス間のデータ転送を可能とするいかなる通信チャネルであってもよい。いくつかの実施形態においては、デバイスとしては従来のデータポート、たとえばＵＳＢ、ＦＩＲＥＷＩＲＥ（登録商標）、および／または適切な接続１２０を通してのデータ転送のためのシリアルまたはパラレルのポートが提供されうる。通信リンクは、無線リンク、有線リンク、またはコンピュータデバイス２００とプリンタ１００との間の通信を可能とする本発明の実施の形態と整合性のあるいかなる組み合わせの通信でもよい。
【００１２】
いくつかの実施形態においては、接続１２０はあらかじめ決められたデータ転送周波数で動作でき、または限られたバンド幅を有する。たとえば、接続１２０は、４８０ＭＨｚの周波数で動作でき、対応する最大生バンド幅（ｍａｘｉｍｕｍ  ｒａｗ  ｂａｎｄｗｉｄｔｈ）は毎秒６０Ｍバイトでもよい。いくつかの実施形態においては、生データの最大
転送速度は、エンコーディングとオーバーヘッドに起因して最大バンド幅より低いかもしれない。いくつかの典型的なプロトコルでは、一定量のバンド幅が保存されるようにまたは対応する転送速度でのデータ配送が保証されるように、転送のアイソクロナスモードがサポートされる。たとえば、一定量のバンド幅がＣ／Ｍ／Ｙ／Ｋ画像のために保存され、対応する転送速度でのデータ転送が保障されうる。プリンタ１００でデータ・アンダーランが発生しないことを確証するために、保障された転送速度は、プリントエンジンが画像データを破壊しない速度および／またはプリンタ１００の印刷速度をサポートするよう設計できる。
【００１３】
いくつかの実施形態においては、カラー画像のようなマルチ要素画像がプリントされる時、多重カラープレーンの画像データは、接続１２０が使用可能なバンド幅を共有する。たとえば、シアン（「Ｃ」）、マゼンタ（「Ｍ」）、イエロー（「Ｙ」）、ブラック（「Ｂ」）の調色剤や現像材料を使うＣＭＹＫカラープリンタにとっては、プリントカラーデータは４つのプレーンを持ち、接続１２０を通して同じ時間枠内で転送される。
【００１４】
いくつかの実施形態においては、接続１２０は複数のサブチャネルに分けられる。サブチャネルは接続１２０上の使用可能なバンド幅の一部でもよく、カラープレーンに関連付けられた画像データの転送用に割り付けられる。バンド幅のある一定量は各々のチャネル用に保存されてもよく、対応する転送速度でのデータ配送が各々のチャネルで使用可能である。データは複数のサブチャネルを介して並列に転送されてもよい。いくつかの実施形態においては、同じバンド幅が各々のチャネル用に確保される。いくつかの実施形態においては、違うバンド幅が違うサブチャネル用に確保される。
【００１５】
いくつかの実施形態においては、ＵＳＢインターフェース１０２は、シリアルパイプを介してデータを受信するためのインターフェースとして使用される。たとえば、ＦＩＲＥＷＩＲＥ（登録商標）や無線のような他種の接続１２０を介して、他のインターフェースがデータを受信するために使用されることが考えられる。プリンタ１００内のロジックによって決められるように、ＵＳＢインターフェース１０２によって受信されたデータは、プリンタ１００の様々な内部機能モジュールへ、データバスのような内部データパスまたはデータ・制御信号パスに沿って内部的に送られる。いくつかの実施形態においては、コンピュータ２００によってプリンタ１００に転送されたデータはまた、ルーティングを容易にするために目的アドレスおよび／またはコマンドを含みうる。
【００１６】
いくつかの実施形態においては、ＣＰＵ１０３、メモリ１０４、コントロールブロック１０５、ＲＡＭが増設された伸張モジュール１０６、ＰＷＭ論理モジュール１０７、およびドライバ回路１０８は、データバスを使用して連結される。本発明のいくつかの実施形態においては、ＵＳＢインターフェース１０２によって受信されたデータは、ＣＰＵ１０３の制御下でメモリ１０４に記憶される。伸張モジュール１０６および増設ＲＡＭはまた、ＰＷＭ論理モジュール１０７に連結される。いくつかの実施形態においては、伸張モジュール１０６は、圧縮された画像データを受信し、受信された画像データを伸張し、ＲＡＭに伸張されたデータを保存し、そしてＰＷＭ論理モジュール１０７にデータを送信する。
【００１７】
様々なデータおよびコントロール信号パスが、ＰＷＭ論理モジュール１０７、ドライバ回路１０８、プリントヘッド１０９、機械的コントローラ１２３、ビーム検知センサ１１２、および転写ベルト位置センサ１２５へ連結される。いくつかの実施形態においては、プリントヘッド１０９はレーザプリントヘッドである。いくつかの実施形態においては、ビーム検知センサ１１２は、画像中の各々の走査ラインまたは走査ラインのセットへの走査開始（ＳＯＳ）または「ｈｓｙｎｃ」信号を生成し、生成された信号を機械的コントローラ１２３へ送信する。そして、その信号を機械的コントローラ１２３がＰＷＭ論理モジ
ュール１０７へ送信する。
【００１８】
ドライバ回路１０８は、通信のためにＰＷＭ論理モジュール１０７とプリントヘッド１０９へ連結されうる。いくつかの実施形態においては、走査ミラー１１０は、走査ミラー１１０を回転するために使用される走査モータ１１１へ機械的にまたは電磁気的に連結される。プリントヘッド１０９からの各々のレーザビームは走査ミラー１１０へ転写され、走査ミラー１１０は時間差をもってそのビームをビーム検知センサ１１２と光学システム１１３へ反射できる。光学システム１１３はシリンドリカルレンズ、ｆ−θレンズ、ガイドレンズ等からなる。光学システム１１３は、走査ミラー１１０から感光体ドラム１１４へレーザビームをガイドする。ドラムチャージャ１１６は、感光体ドラム１１４を帯電するために使用される。走査ミラー１１０、走査ミラー１１１、ビーム検知センサ１１２を含む１セットのみが図１に示されているが、４セットの走査ミラー１１０、走査ミラー１１１、ビーム検知センサ１１２、および光学システム１１３があり、４つのレーザビームのそれぞれに対して１セットがそれぞれ提供されてもよい。この場合、各々のビーム検知センサ１１２はＳＯＳ信号を生成する。
【００１９】
いくつかの実施形態においては、感光ドラム１１４上に生成された潜像は、用紙１７５へ転写される前に現像ステーション１１５でトナーによって現像される。用紙１７５は、用紙入力トレイ１２６から転写ロール１２４を通して転写ベルト１１７へ渡される。その転写ベルト１１７では、現像ステーション１１５で現像され、転写ベルト１１７上に蓄積されたトナー画像は、用紙１７５へ転写される。画像が転写された後、用紙１７５は、転写ロール１２４と定着器１１９を過ぎてガイドローラ１２１を使ってパス１１８上を通り、そして用紙出力トレイ１２２へと移動する。いくつかの実施形態においては、定着器１１９は転写された画像の用紙１７５への定着を促す。
【００２０】
典型的な実施形態においては、プリンタ１００はプリンタコントローラ１８０とプリンタエンジン１９０を含む。接続１２０を介してコンピュータ２００から受信された画像データを処理し、そしてプリントのためにプリントエンジン１９０へ処理されたデータを送信するように、プリンタコントローラ１８０が構成される。プリンタ１００のプリンタコントローラ１８０は、とりわけ、ＵＳＢインターフェース１０２、ＣＰＵ１０３、メモリ１０４、制御ブロック１０５、ランダムアクセスメモリ（「ＲＡＭ」）が増設された少なくとも一つの伸張モジュール１０６、少なくとも一つのパルス幅変調（「ＰＷＭ」）論理モジュール１０７、および少なくとも一つのドライバ回路１０８を含む。プリンタ１００の典型的なプリントエンジン１９０は、ビーム検知センサ１１２、光学システム１１３、現像ステーション１１５、感光体ドラム１１４、ドラムチャージャ１１６、走査ミラー１１０、走査モータ１１１、およびプリントヘッド１０９を含む。上述の様々なモジュールとサブシステムは、ハードウエア、ソフトウエア、ファームウエア、またはその様々な組み合わせで実装される。
【００２１】
いくつかの実施形態においては、コンピュータ２００は接続１２０を介して画像データをプリンタコントローラ１８０へ送信する。コンピュータ２００から送信された画像データは、圧縮される。いくつかの実施形態においては、圧縮された画像データは行順圧縮フォーマット（ｌｉｎｅ−ｓｅｑｕｅｎｔｉａｌ  ｃｏｍｐｒｅｓｓｅｄ  ｆｏｒｍａｔ）である。ＵＳＢインターフェース１０２によって画像データが受信された後、画像データはＣＰＵ１０３の制御下メモリ１０４へ保存される。いくつかの実施形態においては、ページのある部分の画像データがメモリ１０４に保存された時、プリントシーケンスが開始する。いくつかの実施形態においては、機械的コントローラ１２３は、適切なデータおよび／または制御信号を通して、走査モータ１１０、感光ドラム１１４、および転写ベルト１１７の動作を開始できる。
【００２２】
ビーム検知センサ１１２はレーザビームの位置を検知し、プリンタコントローラ１８０へ送信されるパルス（ＳＯＳシグナル）を生成できる。これは、プリント画像内で画像データが適切に行から行へ並べられるようにするためである。いくつかの実施形態においては、画像の各々の行の走査の始めにおいて、プリントヘッド１０９からの光は走査ミラー１１０によってビーム検知センサ１１２上へ反射される。ビーム検知センサ１１２は機械的コントローラ１２３へ信号を送信し、そのコントローラ１２３が、それをうけてＰＷＭ論理モジュール１０７へＳＯＳシグナルを送信する。いくつかの実施形態においては、通常、データトップ（ＴＯＤ）または「ｖｓｙｎｃ」と呼ばれる別信号が、転写ベルト位置センサ１２５から受信された情報を基に、機械的コントローラ１２３によって生成される。ＴＯＤまたは「ｖｓｙｎｃ」信号は、いつ画像データ転送が用紙１７５用に始められるかを示す。たとえば、いくつかの実施形態においては、ＴＯＤ信号は機械的コントローラ１２３を介してＰＷＭ論理モジュール１０７へ送信される。一度ＴＯＤ信号が受信されると、ＣＰＵ１０３は伸張モジュール１０６へメモリ１０４からの転送を開始する。いくつかの実施形態においては、伸張モジュール１０６は画像データを伸張し、その結果生じた生画像データをＰＷＭ論理モジュール１０７へ渡すことができる。その結果生じるＰＷＭ論理モジュール１０７からのＰＷＭパルスは、それからドライバ回路１０８へ流され、そしてプリントヘッド１０９へＰＷＭパルスを伝播する。
【００２３】
いくつかの実施形態においては、プリントヘッド１０９からのレーザビームは変調され走査ミラー１１０と光学システム１１３へ反射される。このため、帯電されて放電される領域の潜像画像が感光体ドラム１１４上に蓄積される。いくつかの実施形態においては、トナーは現像ステーション１１５でこの潜像を現像し、トナー画像が転写ベルト１１７へ転写される。カラー画像などマルチ要素を含む画像には、潜像確立（ｌａｔｅｎｔ  ｉｍａｇｅ  ｂｕｉｌｄｉｎｇ  ｐｒｏｃｅｓｓ）プロセスがそれぞれの要素について繰り返される。たとえば、ＣＭＹＫカラープリンタでは、感光体ドラム１１４上の潜像確立プロセスはそれぞれの色Ｃ、Ｍ、Ｙ、およびＫについて繰り返される。完全なトナー画像が転写ローラ１２４でページへ転写される前に、全４色トナー画像は、転写ベルト１１７に蓄積されうる。
【００２４】
いくつかの実施形態においては、感光体ドラム１１４上のそれぞれのカラープレーン用の潜像確立プロセスは、他のカラープレーンとの間でオフセット補正する。たとえば、ＣＭＹＫカラープリンタ上で、どの隣接する２色プレーン間の物理的オフセットも７０ｍｍとされうる。そしてＹプレーンの画像データの７０ｍｍの同等量は、Ｍプレーンへの画像データ転送が始まる前に転送される。一つ以上のカラープレーンのデータは他のカラープレーンのデータから物理的にオフセット補正されうるので、一つ以上のカラープレーンのデータは、他のカラープレーンのデータと相対的な一時的なオフセットと共に転送されうる。よって、一つの実施の形態では、カラープレーン間の物理的なオフセットが７０ｍｍである場合、一つのカラープレーンの物理的なオフセットデータの７０ｍｍと同等量が、直後に続くカラープレーンの転送が始まる前に転送される。このように、同じプリント領域に関連した個別のカラープレーンデータ転送間に一時的なオフセットがある。
【００２５】
いくつかの実施形態においては、全ての要素が転写ベルト１１７上に集められるタイミングと同期して、用紙入力トレイ１２６から転写ロール１２４へ用紙１７５が転送され、転写ロール１２４からさらに画像が用紙１７５へ転写される。定着器１１９はそれからトナーを用紙１７５へ定着させ、そしてその用紙がガイドローラ１２１を使って用紙出力トレイ１２２へ送られる。いくつかの実施形態においては、用紙１７５へ画像が送られる速度（すなわち印刷速度）は、転写ベルト１１７の回転速度によって決定される。たとえば、一度回転速度が転写ベルト１１７に設定されると、印刷速度は一定となり、プリントエンジン１９０への画像データ転送のいかなる遅れもビデオアンダー・ラン（ｖｉｄｅｏ  ｕｎｄｅｒ−ｒｕｎ）を引き起こす。よってページが適切にプリントされないことがある
。
【００２６】
ピクセル生成モジュール（非表示）は、クリスタル発振機、プログラム可能なクロック発振機、またはその他適切なクロック生成デバイスでもよい。いくつかの実施形態においては、「マルチパス」プリンタ１００のような、順にそれぞれのカラー用のビデオデータを送信するプリンタでは、ピクセルクロック生成モジュールによって生成されるクロックの周波数はプリンタのそれぞれのパス間で固定されている。マルチパスプリンタ１００の例では、ピクセルクロック生成モジュールはクリスタル発振機でもよい。いくつかの実施形態においては、たとえば、プリントヘッド１０９と現像ステーション１１５の複数のセットを使用するプリンタ１００は、時に集合的に「タンデムエンジン」と呼ばれる。この装置では、それぞれのカラー要素に対応するピクセルクロック間で周波数が違う場合、それぞれのチャネルの周波数が較正（ｃａｌｉｂｒａｔｅ）される。いくつかの実施形態においては、一つ以上のプログラム可能なクロック発振機が較正を可能とするために使用される。
【００２７】
プリンタ１００の典型的な実施形態はプリントエンジン１９０を駆動するドライバ回路１０８を含み、ドライバ回路１０８は複数のプリントヘッド１０９へ接続される。いくつかの実施形態においては、プリントヘッド１０９は全てレーザプリントヘッドである。プリンタコントローラ１８０の個々のモジュールは、複数個あってもよい。たとえば、一つの伸張モジュール１０６は、複数のＰＷＭ論理モジュール１０７と接続される。ここでＰＷＭ論理モジュール１０７は一つ以上のピクセル生成モジュールおよび一つ以上のドライバ回路１０８を含む。伸張モジュール１０６と増設ＲＡＭは各ＰＷＭ論理モジュール１０７画像の一つ以上のカラー要素を提供する。そして、そのカラー要素は、プリントエンジン１９０への前進転送のため複数のドライバ回路１０８へ送信される。
【００２８】
その他の実施の形態では、複数の伸張モジュールが複数のＰＷＭ論理モジュール１０７へと連結される。それぞれの伸張モジュール１０６は、画像の伸張された要素を伴うＰＷＭ論理モジュール１０７を提供する。たとえば、シアン（「Ｃ」）、マゼンタ（「Ｍ」）、イエロー（「Ｙ」）、ブラック（「Ｋ」）の画像要素を含むＣＭＹＫ色空間にある、マルチ要素画像用に、それぞれの画像要素は各々の伸張モジュール１０６で処理され、そして各々の対応するＰＷＭ論理モジュール１０７へ並列に送信される。
【００２９】
いくつかの実施形態においては、プリンタ１００はプリンタヘッド１０９毎に複数のレーザを持つ。いくつかの実施形態においては、プリントヘッド１０９はドライバ回路１０８から複数行のデータを受信し、走査ミラー１１０へ複数行のデータを投影する。走査ミラー１１０は、それから、ビーム検知センサ１１２と光学システム１１３へ複数行のデータを反射し、そこから複数行のデータを感光ドラム１１４へ反射する。いくつかの実施形態においては、ビーム検知センサ１１２は走査ミラー１１０から反射されるレーザ信号のような信号を検知し、または走査ミラー１１０から反射された複合信号の検知もできる。
【００３０】
上述のプリンタ１００の論理的または機能的モジュールの各々は、複数のモジュールを含む。モジュールは別個に実装されるか、またはそれらの機能は他のモジュールの機能と組み合わせられる。さらに、モジュールの各々は個別の要素上に実装され、またはモジュールは要素の組み合わせとして実装される。
【００３１】
典型的なコンピュータ２００は、コンピュータワークステーション、テスクトップコンピュータ、ラップトップコンピュータ、またはプリンタ１００と使用されうるその他の計算機器である。いくつかの実施形態においては、典型的なコンピュータ２００は、とりわけ、プロセッサ２８０、メモリ２８１、典型的なＵＳＢインターフェース２８２のようなデータ転送インターフェース、およびユーザ入力インターフェース２８３を含む。プロセ
ッサ２８０は、中央演算処理装置（「ＣＰＵ」）である。コンピュータ２００のタイプによっては、プロセッサ２８０は一つ以上のプリント回路基板および／またはマイクロプロセッサチップを含む。プロセッサ２８０は、プリントデータプロセスおよび圧縮の処理を含む様々な処理を行うために、一連のコンピュータプログラム指令を実行する。コンピュータプログラム指令は、アクセスされ、メモリ２８１からまたはその他のいかなる適切なメモリ箇所から読み取られ、そしてプロセッサ２４０によって実行される。メモリ２８１は、ダイナミックランダムアクセスメモリ（「ＤＲＡＭ」）であり、たとえばＳＤＲＡＭまたはＲＤＲＡＭだが、これに限られない。
【００３２】
ある実施の形態では、コンピュータ２００はシリアルパイプを介して送受信可能なＵＳＢインターフェース２８２を含む。たとえば、ＵＳＢインターフェース２８２は、印刷されるデータを受信するためにプロセッサ２８０へ連結され、接続１２０を介してプリンタ１００へデータを送信する。その他のインターフェースもまた、その他のタイプの接続１２０を通じてデータを送信するために使用することが考えられる。たとえば、インターフェースはパラレルポート、ＦＩＲＥＷＩＲＥ（登録商標）、および／または無線インターフェースを含む。
【００３３】
プリンタ１００の印刷速度より速い速度で、コンピュータ２００からプリンタ１００へ画像データの全ページを転送することでデータ・アンダーランが防がれる。一つの実施形態では、カラーデータ解像度切替アプリケーションのような、カラーデータ圧縮アプリケーションがコンピュータ２００に含まれる。そのアプリケーションは、適切にカラー画像データのサイズを縮小して接続１２０の使用可能なバンド幅を超えないように画像データの送信を許可する。いくつかの実施形態においては、解像度切り替えアプリケーションはコンピュータ２００上でも作動する。解像度切替アプリケーションは、ハードディスク、コンピュータディスク、ＣＤ−ＲＯＭ、ＤＶＤ  ＲＯＭ、ＣＤ±ＤＷ、またはＤＶＤ±ＲＷ、ＵＳＢフラッシュドライブ、メモリスティック、またはその他適切な媒体のような、リムーバブルでありコンピュータで読み込み可能な媒体上に保存されうる。
【００３４】
いくつかの実施形態においては、画像データは画像ブロックと呼ばれるブロックに分けられ、このブロックサイズは画像の個々の行サイズでもよい。カラー画像は通常、要素カラープレーンを含むＣＭＹＫのような色素空間に表現される。カラー画像データ用として、画像ブロックはカラー画像の構成要素となるカラー要素に対応するカラーブロックを含む。開示された実施形態と整合して、プリントフレームとは、画像の同じ領域に対応するカラーブロックのセットのことである。プリント処理中、プリントフレーム内のカラーブロックのトナー画像は、プリント媒体上の同じ領域に印刷される。たとえば、ＣＭＹＫプリンタでは、各々のプリントフレームは、Ｃ、Ｍ、Ｙ、Ｋ要素カラープレーンに相当するカラーブロックを含む。一方、転送フレームとは、一緒に転送されたカラーブロックのセットのことである。いくつかの実施形態においては、これらのカラーブロックは接続１２０によって決まる使用可能なバンド幅の一部を共有する。
【００３５】
いくつかの実施形態においては、一つのプリントフレームの構成要素であるカラープレーンに対応するカラーブロックは、それらが転送されるときは、互いに物理的にオフセットされる。よって、プリントフレーム内の一つのカラープレーンのカラーブロックは、同じプリントフレーム内の他のカラープレーンのカラーブロックへの一時的なオフセットと共に転送される。たとえば、二つの隣接するカラープレーン間の物理的オフセットは、７０ｍｍである。これは、Ｙプレーン１０の画像データの７０ｍｍに相当する量が、Ｍプレーン２０の画像データの転送が始まる前に転送されるようにするためである。同様に、同じプリントフレームに関連する個々のカラープレーンデータの転送の間に、一時的なオフセットがある。結果として、プリント処理間の様々な時点で、比例するより高いバンド幅が各々のカラープレーンに使用可能となるように、転送フレームはカラープレーンの全セ
ットよりも少ない情報を含む。
【００３６】
ユーザ３００がコンピュータ２００へ情報および／または制御指令を入力するためにユーザ入力インターフェース２８３が提供され、ユーザ入力インターフェース２８３には、たとえばキーボード、マウス、および／または光学か無線コンピュータ入力デバイスが含まれる。たとえば、ユーザ３００は、ユーザ入力インターフェース２８３を通してプリンタタスクを開始または停止できる。いくつかの実施形態においては、ユーザは、ユーザインターフェース２８３から、ドキュメント内の一つ以上のプリント領域について高画質プリントを指定できる。いくつかの実施形態においては、高画質プリント用の領域は、ドキュメント内にマーカをつけることで、または他の様々な方法によって特定される。
【００３７】
図２ａは、典型的なコンピュータ２００から典型的なプリンタ１００へ転送された連続する２枚のプリントページを示す。図２ａに示されるように、シアン（「Ｃ」）、マゼンタ（「Ｍ」）、イエロー（「Ｙ」）、ブラック（「Ｂ」）を使用する典型的なＣＭＹＫカラープリンタでは、Ｙプレーン１０のカラーイメージデータの転送がまず始まり、次にＭプレーン２０、Ｃプレーン３０、Ｋプレーン４０と順に画像データを転送する。たとえば、別々の２つのカラープレーンからのプリントフレームデータの転送の間に、一時的なオフセットがあってもよい。たとえば、物理的オフセットと関連付けられた時間幅に基づいて、Ｙプレーンのデータ転送が始まってもよい。プレーンの間の物理的オフセットが７０ｍｍである場合、Ｙプレーン１０の画像データの７０ｍｍという物理的なオフセットに等しいデータ量が、Ｍプレーン２０の画像データの転送が始まる前に転送される。
【００３８】
たとえば、図２ａは、典型的な例として、ページ１のようなページのはじめの部分の典型的なプリントフレーム１５がＹプレーン１０のカラーブロック１１、Ｍプレーン２０のカラーブロック１２、Ｃプレーン３０のカラーブロック１３、およびＫプレーン４０のカラーブロック１４を含むことができることを示す。カラーブロック１１〜１４はプリントページの同じ領域に相当するが、転送の間はブロック同士がオフセットされる。図２ａおよび図２ｂにおける、典型的なページ１および２は続けてプリントされるいかなる連続的なページでもよく、ページ識別子１および２は記述的目的のためにのみ使われている。
【００３９】
複数枚のプリントページが転送されるとき、カラープレーンの間の一時的なオフセットによって、連続した２ページ間の遷移領域の転送フレームは、両ページに関連付けられたカラーブロックを含むことができる。遷移領域は、前ページの最終プリントフレーム内の第１カラーブロックの転送フレームが転送を完了した時から、直後のページ内の第１プリントフレームの最終カラーブロックの転送フレームが転送を開始するときまでの、（従来データ転送中の）連続した２ページ間の領域として定義される。
【００４０】
図２ａに見られるように、典型的な転送フレーム２５はページ１とページ２の間の遷移領域にあり、同じ時間間隔中に転送されるカラーブロック２１から２４を含む。転送フレーム２５は、共にページ２からの、Ｙプレーン１０のカラーブロック２１およびＭプレーン２０のカラーブロック２２と、共にページ１からの、Ｃプレーン３０のカラーブロック２３およびＫプレーン４０のカラーブロック２４とを含む。Ｙプレーン１０とＭプレーン２０のデータは他の２色カラープレーンのデータの前に転送され、同じ転送フレーム内の他のプレーンのページ１からの画像データがまだ転送されている間に、カラーブロック２１と２２がページ２からの画像データを含む。
【００４１】
たとえばＣＭＹＫカラープリンタ中のＹプレーンのカラー画像データは、転送を最初に開始し、その後Ｍプレーン、Ｃプレーン、Ｋプレーンが順に転送される。ゆえに、第１プリントページと関連付けられたＹプレーンカラー画像の転送は最初に完了される。第１ページの底部マージンと第二のページの上部マージンへ相当する空白領域により、第２ペー
ジと関連付けられたＹプレーンカラー画像データの転送の前に待ち時間があるかもしれない。ゆえに、転送フレームはページ遷移待ち時間中はＹプレーンを含まない。
【００４２】
いくつかの実施形態においては、第１ページと第２ページの間の遷移領域が十分に大きい場合（たとえば、第１ページの底部マージンおよび／または第２ページの上部マージンが十分に大きい場合）、ある転送フレームは全４カラープレーンより少ないカラープレーンからの画像カラーデータを含む。たとえば、図２ａに示されているように、典型的な転送フレーム２６は、Ｙプレーン１０、Ｍプレーン２０、Ｋプレーン４０、からのカラーブロックを含むが、Ｃプレーン３０からのカラーブロックを含まなくできる。その結果、比例するさらに高いバンド幅が、これらの転送フレーム内の他のカラープレーンデータに使用可能となる。いくつかの実施形態においては、ページ遷移待ち時間中に転送されたカラープレーンデータに使用可能となる増加したバンド幅は、より高い解像度のカラーブロックが転送されることを可能とする。たとえば、転送フレーム２６を構成する３つのカラーブロックは、ある一定時間中は接続１２０の全バンド幅を使用することもできる。
【００４３】
いくつかの実施形態においては、遷移領域は、二つの連続したプリントページ間のスペースを増加することで効果的に拡張される。それによって、ページ遷移待ち時間または遷移遅延を延ばせる。たとえば、実際のＴＯＤ信号はプリントコントローラ１８０からの指示に基づいてプリントエンジン１９０によって遅らせられ、同様に、「擬似」上部マージンが第２ページに作られる。いくつかの実施形態においては、直前のページの全てのカラープレーンのカラー画像データが転送された後、ページへのデータ転送が開始する。たとえば、（カラープレーンデータ転送が相互にオフセットされ、Ｙ−Ｍ−Ｃ−Ｋ順で転送される）ＣＭＹＫカラープリンタでは、直前のページと関連付けられたＫプレーンカラー画像データの転送の後、プリントページと関連付けられたＹプレーンカラー画像データの転送が始められる。同様に、拡張された遷移領域内の転送フレームと関連付けられた圧縮されたカラーブロックの解像度は、接続１２０の使用可能なバンド幅を超えることなく増加される。
【００４４】
たとえば、図２ｂは、典型的なコンピュータ２００から典型的なプリンタ１００へ転送された連続する２プリントページを図示する。ここでは、ページ１とページ２の間に増加した転送遅延を伴う。増加された転送遅延の結果、典型的な転送フレーム２５は、この時点でＣプレーン３０のカラーブロック２３およびＫプレーン４０のカラーブロック２４を含むが、Ｙプレーン１０またはＭプレーン２０のカラーブロックは含まない。図２ｂに示されるように、Ｙプレーン１０のカラーブロック２１およびＭプレーン２０カラーブロック２２は、この時点で転送フレーム３５を含む。示される例にあるように、増加した遅延により、どの転送フレームもページ１とページ２の両方からのカラーブロックを含むことはない。
【００４５】
増加した遷移遅延の結果ゆえに、図２ｂの例では、転送フレーム２５と転送フレーム３５がコンピュータ２００からプリンタ１００へ転送される時、接続１２０の使用可能なバンド幅が、４つではなくただ２つのカラーブロックによって共有される。つまり、図２ｂに示される転送フレーム２５と転送フレーム３５内のそれぞれのカラーブロックは、図２ａに示されるように、転送フレーム２５中のそれぞれのカラーブロックに使用可能な量の２倍となる。同様に、図２ｂに示される実施の形態のように、カラーブロック２１〜２４のより高解像度の画像データが潜在的には転送されうる。
【００４６】
いくつかの実施形態においては、遷移遅延は調整でき、画質および印刷速度への要求間の設計上のトレードオフを可能とする。いくつかの実施形態においては、ページ遷移待ち時間または遷移遅延は、プリントドライバと関連付けられた適切なユーザアプリケーションを通してユーザが特定可能である。たとえば、より高画質が現在のプリントタスクに要
求されるならば、ページ遷移待ち時間は増加されうる。
【００４７】
いくつかの実施形態においては、連続する２ページ間のスペースはユーザ選択か仕様に基づいて増加される。たとえば、第２ページへの転送データ前の増加した遷移遅延は、ユーザ入力インターフェース２８３を介してユーザ３００によって特定されうる。いくつかの実施形態においては、ユーザ３００はより高画質を好むかもしれないし、ページ間の遷移遅延を増加するよう指定したいかもしれない。いくつかの実施形態においては、遷移遅延はユーザ選択およびシステムパラメータに基づいてコンピュータ２００によって自動的に決定される。いくつかの実施形態においては、遷移遅延はユーザ入力インターフェース２８３を介してユーザ３００によって調節される。
【００４８】
いくつかの実施形態においては、ユーザ３００は一つ以上のカラープレーンを最高画質で印刷できるよう選択できる。たとえば、ユーザ３００はユーザ入力インターフェース２８３を使って、コンピュータ２００のスクリーン上のＧＵＩディスプレイを使い一つ以上のカラープレーを選択できる。ＣＭＹＫカラープリンタでは、ユーザ３００はバンド幅の増加が可能である場合、Ｋプレーンデータがより高解像度で印刷されるよう設定できる。同様に、いくつかの実施形態においては、（典型的なページ１中の）特定のカラープレーンの画像データがより高い解像度で転送されうるように、連続するプリントページ（たとえば典型的なページ２）が遅延される。
【００４９】
図３はカラーデータ圧縮用の典型的なプリンタと典型的なコンピュータ間の典型的なデータフローを示す図である。典型的な実施の形態においては、プリントジョブはコンピュータ２００上で稼動するアプリケーション２０１によって開始される。たとえば、アプリケーション２０１は、プリントジョブの記述を生成するグラフィックデバイスインターフェース（「ＧＤＩ」）とプリンタドライバ２０２を使用できる。記述は、文字や絵のような印刷される画像データ、および画像データを適切に印刷されたページへ形成するフォーマットおよびプリント指令を含む。いくつかの実施形態においては、アプリケーション２０１は、メタデータの形式の記述をフォーマットするためにＧＤＩとプリントドライバ２０２を使用し、プリントスプールファイル２１０を生成する。
【００５０】
画像データのサイズは、データに関連付けられたカラープレーンの数と画像の解像度によって変えられる。いくつかの実施形態においては、画像データは複数のカラープレーンに関連付けられた複数の要素を含む。たとえば、ＣＭＹＫ画像内の要素は処理され、および／または順次か並列に転送される。いくつかの実施形態においては、フォーマットおよびプリント指令は、プリントスプールファイル２１０のヘッダファイルとして生成され保存される。ヘッダファイルのサイズは様々なプリントジョブ間で相対的に一定である。
【００５１】
いくつかの実施形態においては、生成されたスプールファイル２１０は、コンピュータ２００上のプリンタプロッセサ２０３へ送信される。プリンタプロセッサ２０３は、スプールファイル２１０が再生のために再生モジュール２０４へ送信される前に、スプールファイル２１０上で照合などのタスクを実行する。いくつかの実施形態においては、再生モジュール２０４は、プリントスプールファイル２１０内のＧＤＩ記述に基づいて、ラスタライザ２０５によってラスタライズされうる単純なオブジェクトのリストを生成する。
【００５２】
プリントスプールファイル２１０は、それからラスタライザ２０５へ送信される。ラスタライザ２０５はプリントスプールファイル２１０内の画像データをビットマップデータへ変換するよう構成されうる。ラスタライザ２０５はさらに、ラスタライズされたビットマップデータを含むフレームバッファを含む。いくつかの実施形態においては、ラスタライザ２０５は、画像データのサイズが相対的に大きくなると、画像データの部分の変換をする。いくつかの実施形態においては、コンピュータ２００は、複数のビットマップへカ
ラーデータをラスタライズするよう構成された複数のラスタライザを含む。たとえば、図３に示されるように、ラスタライザ２０５はＣプレーンカラーデータ２２０、Ｍプレーンカラーデータ２３０、Ｙプレーンカラーデータ２４０、Ｋプレーンカラーデータ２５０を並列にラスタライズできる。いくつかの実施形態においては、ラスタライザ２０５は、個々のカラープレーンと対応するサブラスタライザモジュールを含む。それぞれのサブラスタライザはその関連するカラープレーン内のデータ上で動作する。
【００５３】
この公開の一つの実施の形態と整合性して、ラスタライザ２０５はさらに、それぞれのカラープレーンの画像データの低解像度化された画像およびデルタ画像を計算するよう構成される。たとえば、スプールファイル２０１内の元の画像データは解像度６００ｄｐｉである。ラスタライザ２０５は、解像度４８０ｄｐｉである低解像度化された画像、および元の画像データと低解像度化画像の差情報であるデルタ画像を計算する。いくつかの実施形態においては、デルタ画像は元の高解像度画像データの部分を含む。いくつかの実施形態においては、デルタ画像は低解像度化画像と共に使用される場合は、元のより高解像度の画像を復旧するために使用される。デルタ画像を計算するために使われる計算式は、低解像度化画像とデルタ画像から元の画像を再構築するために、数学的に逆算して使用される。
【００５４】
いくつかの実施形態においては、解像度は一つの物理的な次元方向にのみ減少される。たとえば、画像データ転送速度が印刷速度についていけるように、解像度は一つの主走査方向のみに（すなわち、用紙がプリンタに供給される方向と垂直に）減少されうる。たとえば、用紙がプリンタにその長辺に沿って（つまり垂直に）供給される場合、解像度は水平方向に減少される。いくつかの実施形態においては、解像度は両次元方向（水平および垂直）に減少される。たとえばローパスフィルタとハイパスフィルタを元の画像に適用するというように、様々なアルゴリズムが、低解像度画像を計算するために使われる。
【００５５】
ラスタライズされた画像データ（ビットマップ）がコンプレッサ２０６によって圧縮される。圧縮は画像データのサイズを減少し、ゆえに画像データを転送するバンド幅を抑える。いくつかの実施形態においては、コンプレッサ２０６は、たとえばＪＢＩＧやＧＩＦ圧縮のような可逆圧縮法を使う。これは、伸張モジュール１０６での伸張による画質の損失がないように画像を構築するためである。いくつかの実施形態においては、コンプレッサ２０６は、たとえばＪＰＥＧとウェーブレット圧縮のような非可逆圧縮を使用する。いくつかの実施形態においては、コンプレッサ２０６はまた、様々な圧縮アルゴリズムの組み合わせを使用するよう構成される。
【００５６】
いくつかの実施形態においては、コンピュータ２００はカラープレーン内のカラーデータを圧縮するよう構成された複数のコンプレッサを含む。たとえば、図３に示されるように、コンプレッサ２０６は、Ｃプレーンカラーデータ２２０、Ｍプレーンカラーデータ２３０、Ｙプレーンカラーデータ２４０、およびＫプレーンカラーデータ２５０を並列に圧縮するための４つのサブコンプレッサを含む。いくつかの実施形態においては、同じ圧縮アルゴリズムとパラメータが全てのカラープレーン内のカラーデータへ適用される。
【００５７】
圧縮されたカラーデータは、コンプレッサ２０６からバンド幅限界インスペクタ２０７へ渡される。バンド幅限界インスペクタ２０７は、ビットマップ画像が接続１２０のバンド幅を超えずに接続１２０を通して送信されるかどうかを決定するよう構成される。いくつかの実施形態においては、プリンタコントローラ１８０内のバッファサイズおよび／または解像度切り替えスキームの粒度に依存して、バンド幅限界インスペクタ２０７は転送フレーム毎に転送フレームの決定をする。たとえば、最も小さい粒度では、転送フレームはビットマップ画像の一行である。それぞれの転送フレームは、複数の圧縮されたカラーブロックを含む。
【００５８】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７はユーザ入力２６０を受信する。たとえば、ユーザ入力２６０はユーザ３００によってユーザ入力インターフェース２８３を介して入力されうる。ユーザ入力２６０は、連続する２枚のプリントページ間のスペースの増加を指定する選択を含みうる。いくつかの実施形態においては、ユーザ入力２６０はまた、できるだけ高画質で印刷されるようプリントページ上の一つ以上のエリアの指定も含む。それぞれの指定されたエリアは一つ以上のプリントフレームを含む。たとえば、ユーザ３００は高画質で印刷されるようプリントページ上のカラー画像を特定できる。カラー画像は一つ以上のプリントフレームを含み、それぞれのプリントフレームは複数のカラーブロックを含む。これらのカラーブロックの元の解像度が接続１２０を介しての転送中維持されるよう、バンド幅限界インスペクタ２０７は遷移遅延を決定する。
【００５９】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７は指定されたエリアの位置に基づいて遷移遅延を決定する。たとえば、指定エリアが第１プリントページの底部分近くであれば、バンド幅限界インスペクタ２０７は１ページ目の終わりと２ページ目の始まりの間の遷移遅延を増加する。こうすることで、２ページ目の最初のカラープレーンの画像データの転送は、指定エリアの画像データが転送されるまで始まらない。更なる例として、指定エリアが２ページ目の上部近くであれば、１ページ目の最後のカラープレーンの画像データが指定エリアの画像データ転送の開始より前に転送されるように、バンド幅限界インスペクタ２０７は、２ページ目の開始を遅らせられる。
【００６０】
いくつかの実施形態においては、ユーザ入力２６０はさらに、なるべく高画質で印刷されるよう一つ以上のカラープレーンの指定を含む。たとえば、指定されたカラープレーンは、高解像度画像データまたは重要な画像情報と関連付けられる。ゆえに、これらの指定されたカラープレーンと関連付けられたカラーブロックがなるべく高解像度で印刷されることが望ましい。いくつかの実施形態においては、バンド幅限界インスペクタ２０７は、カラープレーンの転送順序に基づいて転送遅延を決定する。たとえば、ＣＭＹＫカラープリンタでは、Ｋプレーンデータがユーザ３００によってより高解像度データとして指定される場合、バンド幅限界インスペクタ２０７は２ページ目の開始を遅らせる。こうすることで、１ページ目のＫプレーン画像データが転送されるまで、２ページ目のＹプレーン画像データの転送が開始しないようにできる。
【００６１】
いくつかの実施形態においては、転送遅延が決定された後、バンド幅限界インスペクタ２０７はカラープレーン間および／または連続する２枚のプリントページ間の遷移遅延の一時的なオフセットに基づいて、転送フレームを構成するカラーブロックを決定する。
【００６２】
それぞれの転送フレームでは、バンド幅限界インスペクタ２０７は、特に転送フレームに関わるカラープレーンの転送順を決定する。たとえば、ＣＭＹＫカラープリンタでは、画像データ転送はＹプレーン１０から始まり、Ｍプレーン２０、Ｃプレーン３０、そしてＫプレーン４０と続く。単一のプリントフレーム内のそれぞれのカラーブロックは物理的かつ一時的にオフセットされていることに注意されたい。たとえば、連続するカラープレーン間のオフセットは、印刷されたページデータの７０ｍｍに相当する。ゆえに、時間０で始まり最初の７０ｍｍオフセットの持続中、接続１２０を介して転送されたカラーブロック画像データは、Ｙプレーンデータに相当する。次の７０ｍｍオフセット（７０ｍｍから１４０ｍｍの間）の持続中、転送されたカラーブロック画像データはＹプレーンおよびＭプレーンデータの両方に相当する。次の７０ｍｍオフセット（１４０ｍｍから２１０ｍｍの間）に関する間隔中では、転送されたカラーブロック画像データは、Ｙプレーン、Ｍプレーン、およびＣプレーンデータに相当する。時間０（またはＹプレーンカラーブロックデータ転送の開始）から２１０ｍｍオフセットに相当する時間間隔の後は、転送フレー
ムは全４カラープレーンの画像データを含む。
【００６３】
連続する２枚のプリントページ間の遷移領域内の転送フレームでは、バンド幅限界インスペクタ２０７は従来どおりカラーブロックデータを処理するか、または、遷移待ち時間を増やす。遷移待ち時間が増えた場合、２ページ目の第１プリントフレームのカラーブロックの処理は、処理中であれば、従来の場合より遅い時点で発生する。たとえば、ＣＭＹＫプリンタでは、１ページ目の最後のプリントフレームのＫプレーン画像データのカラーブロック転送が完了した後、２ページ目が遅延される。これは、２ページ目中の最初のプリントフレームのＹプレーン画像データのカラーブロック転送が始まるまで遅延される。
【００６４】
ゆえに、プリントフレームのカラーブロックが物理的に７０ｍｍオフセットされている場合、１ページ目の最後の７０ｍｍの間隔中は、接続１２０を介して転送される画像データはＫプレーンデータに相当する。上記第１プリントページのＫプレーンデータ直前の７０ｍｍ相当の時間間隔では、転送される画像データはＣプレーンとＫプレーンデータの両方に相当する。同様に、上記第１プリントページのＣおよびＫプレーンデータ直前の７０ｍｍ相当の時間間隔では、転送された画像データはＭプレーン、Ｃプレーンデータ、およびＫプレーンに相当する。上記１ページ目のＭプレーン、Ｃプレーンデータ、およびＫプレーンデータ転送直前の時間間隔では、転送フレームは4つ全てのカラープレーンからの
画像データを含む。
【００６５】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７はまた、転送フレーム内にある圧縮されたカラーブロックを決定する。たとえば、バンド幅限界インスペクタ２０７はまた、典型的な転送フレーム２５の一部であるＫプレーンカラーブロック２４およびＣプレーンカラーブロック２３が両方圧縮される、ということを決定できる。
【００６６】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７は転送フレームを検査し、転送フレーム内の全ての圧縮されたカラーブロックの累積サイズを測定する。バンド幅限界インスペクタ２０７はそれからデータサイズ閾値と累積データサイズを比較する。１の実施の形態では、データサイズ閾値は、プリンタ１００の印刷速度および接続１２０の使用可能なバンド幅を基に決定される。いくつかの実施形態においては、転送フレーム２５がデータサイズ閾値より大きいデータサイズを持つ場合に、バンド幅限界インスペクタ２０７は更なる解像度減少のために、転送フレーム２５内の一つ以上の圧縮されたカラーブロックにタグをつける。いくつかの実施形態においては、タグをつけられたカラーブロックの更なる解像度減少がフォーマッタ２０８により実行される。
【００６７】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７は、サブチャネルデータサイズ閾値とそれぞれのカラープレーン内の圧縮されたブロックのデータサイズを比較する。様々なカラープレーンのサブチャネルバンド幅振り分けは、使用可能なバンド幅のパーセンテージや割合として特定される。いくつかの実施形態においては、カラープレーンのサブチャネルデータサイズ閾値が、プリンタ１００の印刷速度およびカラープレーンに振り分けられたサブチャネルバンド幅に基づいて決定される。あるサブチャネルに使用可能なバンド幅は、転送フレーム内のカラーブロックの数と反比例する。たとえば、接続１２０が毎秒６０Ｍバイトのバンド幅である場合、転送フレームが４つのカラーブロックを含むとすると、毎秒１５Ｍバイトのバンド幅がそれぞれのカラープレーンサブチャネルに振り分けられる。他方で、転送フレームが２つのカラーブロックを含む場合、カラープレーンサブチャネルバンド幅は毎秒３０Ｍバイトでもよい。
【００６８】
いくつかの実施形態においては、圧縮されたブロックに相対するデータサイズがサブチャネルデータサイズ閾値より大きい場合、バンド幅限界インスペクタ２０７は解像度減少のために転送フレーム内の圧縮されたブロックのデータサイズにタグをつける。いくつか
の実施形態においては、ページ遷移遅延がユーザ、システム、および／または設計によって特定される最大値まで増加された後でさえ、圧縮ブロックのデータサイズがサブチャネルデータサイズ閾値より大きい場合、バンド幅限界インスペクタ２０７は解像度減少のために転送フレーム内の圧縮されたブロックのデータサイズにタグをつける。
【００６９】
いくつかの実施形態においては、連続する２枚のプリントページ毎の間隔でユーザ３００が転送遅延を指定する替わりに、バンド幅限界インスペクタ２０７は画像データに基づいて転送遅延を自動的に決定する。たとえば、連続する２枚のプリントページ間の標準的な遷移遅延を増加することなく、バンド幅限界インスペクタ２０７は、遷移領域内の転送フレームの構成要素である圧縮されたカラーブロックを最初に決定する。バンド幅限界インスペクタ２０７はそれから、転送フレーム内の圧縮されたブロックの全データサイズをデータサイズ閾値と比べる。転送フレームの全データサイズがデータサイズ閾値より大きい場合、バンド幅限界インスペクタ２０７は、２ページ目の増加した遷移遅延を計算する。
【００７０】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７は、使用可能なバンド幅を伴う転送中のフレームの時間幅と、システムパラメータまたはユーザによって特定される最大遅延とを比較する。時間幅が最大遅延を超える場合、フレーム内の一つ以上のブロックはデータ・アンダーランを回避できるように、さらに圧縮されるか解像度を減少される。計算された時間幅が特定のパラメータ下での転送を許すなら、遷移遅延は適切に増加される。
【００７１】
いくつかの実施形態においては、バンド幅限界インスペクタ２０７は次のいずれかの最初に起こる条件によって、反復して２ページ目の転送遅延を増やす。（ｉ）処理されている転送フレームが接続１２０を通して使用可能なバンド幅を超えない。（ｉｉ）増加された遷移遅延が最大遷移遅延閾値を超える。
【００７２】
圧縮されたカラー画像データは、さらにさらにバンド幅限界インスペクタ２０７からフォーマッタ２０８へ渡される。フォーマッタ２０８は、一つのフル画像をＵＳＢインターフェース２８２へ渡してプリンタ１００へ転送する前に、メモリ内に蓄積する。公開の実施の形態と整合して、バンド幅限界インスペクタ２０７から受信されたカラーブロックがタグを付けられるかを、フォーマッタ２０８がさらにさらに検査するよう構成できる。カラーブロックがタグを付けられる場合、フォーマッタ２０８は、タグを付けられたカラーブロックと関連するデルタ画像ブロックを除去する。
【００７３】
いくつかの実施形態においては、プリントフレーム内のどれか一つのカラープレーンと対応するカラーブロックにタグが付けられる場合、フォーマッタ２０８はそのプリントフレーム内の全てのカラープレーンのデルタ画像ブロックを除去する。たとえば、ＣＭＹＫカラープリンタでは、フォーマッタ２０８は、Ｙ、Ｍ、Ｃ、Ｋプレーンの順で対応する構成要素であるカラーブロック１１〜１４を含むプリントフレーム１５を検査する。フレーム１５の構成要素であるカラーブロックのひとつにタグが付けられると、プリントフレーム１５はタグが付けられたと考えられ、フォーマッタ２０８はＹ、Ｍ、Ｃ、Ｋプレーン全てのデルタ画像ブロックを削除する。
【００７４】
タグが付けられていないカラーブロックには、フォーマッタ２０８は、圧縮された低解像度化画像および圧縮されたデルタ画像に対応する部分に基づいてカラーブロックを再構成する。フォーマッタ２０８はそれからメモリ内の１フル画像をバッファする。バッファされた画像は減少された解像度のカラーブロックおよび元の解像度のカラーブロックを含むことができる。フォーマッタ２０８は、ＵＳＢインターフェース１０２および２８２を使って接続１２０を通してバッファされた画像を転送する。
【００７５】
いくつかの実施形態においては、圧縮された画像データは、伸張アルゴリズムを使う伸張モジュールによって伸張される。いくつかの実施形態においては、伸張モジュール１０６はＰＷＭ論理モジュール１０７へ伸張された画像データを渡す。ＰＷＭ論理モジュール１０７からの結果物たるＰＷＭパルスは、ドライバ回路１０８へストリームされ、それからプリントヘッド１０９へＰＷＭパルスを転送する。したがって、いくつかの実施形態においては、ＰＷＭ論理モジュール１０７は、カラーブロック毎に高解像度モード（６００ｄｐｉドライブ）か低解像度（４８０ｄｐｉドライブ）へ動的に切り替えることができると解される。いかような従来の方法またはメカニズムが、ＰＷＭ論理モジュールの動作モード切替えに使われる。その結果、画像はカラーブロック毎に伸張され、異なる解像度を持つ。たとえば、一つのカラーブロックは解像度６００ｄｐｉを持つ一方、他のカラーブロックは４８０ｄｐｉのカラーブロックを持つ。
【００７６】
図４〜６は、公開の実施の形態に従う、典型的な解像度切替動作処理３０のフローチャートを示す。図４〜６に記述されるアルゴリズムはまた、デバイスに特有の適切な変形を伴い、ここに開示された実施形態と整合性ある態様で、たとえばコピー機およびマルチ機能デバイスのような様々な他のタイプの印刷システムにも応用される。図４〜６に記述のアルゴリズムは、さらに、解像度切替を実行するための様々なソフトウエアアプリケーションと連携して使用される。
【００７７】
ステップ３０１では、画像データが受信される。たとえば、アプリケーション２０１は、プリント画像データとプリント指令を含むプリントスプールファイル２１０を生成し、プリントスプールファイル２１０はアプリケーション２０１からプリンタプロセッサ２０３により受信される。いくつかの実施形態においては、画像データは多重カラープレーンに関連する複数の要素を含む。いくつかの実施形態においては、画像データは複数のプリントページに関連する。
【００７８】
プロセス３０の圧縮ステージ３１はステップ３０２〜３０８を含む。ステップ３０２では、第１またはその次のカラープレーンの画像データが圧縮される。ステップ３０３では、現カラープレーンの画像がカラーブロックに分離される。いくつかの実施形態においては、カラーブロックの粒度は、現カラープレーンの画像の各々の行程度に小さい。
【００７９】
それぞれのカラーブロック内の画像データに基づいて、より低解像度のカラーブロックが、ステップ３０４において計算され、対応するデルタカラーブロックはステップ３０５において計算される。たとえば、解像度４８０ｄｐｉである低解像度化されたカラーブロックが、解像度６００ｄｐｉである元のカラーブロックから計算される。対応するデルタカラーブロック（減少された解像度である１２０ｄｐｉに相当する情報を持つ）が、同じく同時に計算される。デルタカラーブロックは、元のカラーブロックと低解像度化されたカラーブロック間の差情報である。デルタカラーブロックの計算では、元のカラーブロックを低解像度化画像とデルタ画像から再構築するために数学的に逆算される。
【００８０】
低解像度化されたカラーブロックとデルタカラーブロックがステップ３０４と３０５で計算された後、両画像がステップ３０６と３０７で圧縮される。たとえば、画像はコンプレッサ２０６によって圧縮される。ステップ３０８では、全てのカラープレーンがコンピュータによって処理されたかを決定する。プリント画像の少なくとも一つのカラープレーンが依然未処理で残されている場合、アルゴリズムはステップ３０２へ戻り、次のカラープレーンの処理をする。アルゴリズムは、全てのカラープレーンが圧縮されるまでステップ３０２〜３０８を繰り返し、その後圧縮ステージ３１で終了する。
【００８１】
いくつかの実施形態においては、バンド幅限界検査ステージ３２は画像が圧縮された後
開始される。バンド幅限界検査ステージ３２では、転送フレームが接続１２０の使用可能なバンド幅を超えることなく接続１２０を通して受信されるかが決定される。いくつかの実施形態においては、プリント画質を保つというユーザの志向に基づいて、連続する２枚以上のプリントページ間で遷移遅延が増加される。同様に、バンド幅限界検査ステージ３２は遅延量を決定する。
【００８２】
プリントタスクが複数のプリントページを含む場合、「仮想の」ページが、連続するプリントページをスタック（ｓｔａｃｋ）することで形成される。本願の開示と整合して、２枚のプリントページを「スタック」するとは、第１プリントページの直後に第２プリントページを配置することを指す。これは、第２ページの上部が第１プリントページの底部の直後になるようにするものである。いくつかの実施形態においては、複数のページが仮想ページを形成するようにスタックされ、単一のページ用の上記の同様の方法が、仮想ページの転送フレーム内の圧縮されたカラーブロックを決定するために使用される。
【００８３】
ステップ３０９では、最初か次のプリントページが処理される。ステップ３１０では、現ページ（Ｄ１）の遷移遅延が決定される。遷移遅延Ｄ１は、現在のプリントページのもともとスケジュールされた転送時間と、現在のプリントページが転送されるために計算された時間または実際に転送される時間との間の時間差を指す。いくつかの実施形態においては、ユーザ３００は、プリントページ上に、できるだけ高画質で印刷される一つ以上のエリアを指定できる。したがって、ステップ３１０では、現在のプリントページと前のプリントページ間の遷移領域内にそのような高画質指定されたエリアがあるかが決定される。
【００８４】
少なくとも一つの指定されたエリアが遷移領域内にある場合、遷移遅延Ｄ１が指定されたエリアの位置に基づいて決定される。いくつかの実施形態においては、遷移遅延Ｄ１は、Ｄ１’およびＤ１’’より大きくなるよう計算される。Ｄ１’およびＤ１’’は遷移遅延を計算する二つの方法を表す。現在のページに対応するカラーブロックの転送が、直前のページの（遷移領域内の）指定されたエリアと関連付けられた全てのカラーブロックの転送が完了するまで遅延されるという状況に備えて、転送遅延を計算することにより、Ｄ１’が計算されうる。現在のページの（遷移領域内の）指定されたエリアに関連付けられたカラーブロックの転送が、直前の全てのカラーブロックの転送が完了するまで遅延されるという状況に備えて、転送遅延を計算することにより、Ｄ１’’が計算されうる。
【００８５】
いくつかの実施形態においては、ユーザ３００はできるだけ高画質で印刷されるように一つ以上のカラープレーンを指定する。同様に、現在のページに対応するカラーブロックの転送が、直前のページの指定されたカラープレーンに関連付けられたカラーブロックの全ての転送が完了するまで遅延されるという状況に備えて、遷移遅延を計算することにより、Ｄ１’が演算されうる。現在のページの指定されたカラープレーンと関連付けられたカラーブロックの転送が、直前のページのすべてのカラーブロックの転送が完了するように遅延される状況に備えて、遷移遅延を計算することにより、Ｄ１’’が演算されうる。
【００８６】
たとえば、最初にＹプレーン、次にＭプレーン、Ｃプレーン、Ｋプレーンが順次転送するＣＭＹＫカラープリンタ上では、ユーザ３００はＫプレーンができるだけ高画質で印刷されるよう指定できる。同様に、現在のプリントページのＹプレーン画像データが直前のページ内のＫプレーン画像データの転送が完了するまで始まらないように、現在のページの転送が遷移遅延Ｄ１によって遅延される。
【００８７】
いくつかの実施形態においては、計算された遷移遅延Ｄ１は最大遷移遅延と比較される。Ｄ１が最大遷移遅延を超える場合、Ｄ１は最大遷移遅延としてリセットされ、使用可能な時間幅内で使用可能なバンド幅を使用してデータが転送されうることを保障するために
、カラーブロックの更なる圧縮が実行される。最大遷移遅延はシステムパラメータによって、または、プリンタ１００の物理的パラメータと接続１２０の使用可能なバンド幅に基づいてユーザによって指定される。または、連続するカラープレーン間の一時的なオフセットか、プリントページの上部および底部によってでも最大遷移遅延が決定される。
たとえば、最大遷移遅延は、次の計算式に従って決定される。
最大遷移遅延＝（Ｎ×連続するカラープレーン間の物理的オフセットに相当する時間幅）−上部マージン−底部マージン
ここでＮはカラープレーンの数である。
【００８８】
ステップ３１１では、現在のプリントページの転送は、直前のページの転送と関連して、もともとスケジュールされた転送時間に比べてＤ１だけ遅らせられる。つまり、現在のプリントページの全てのカラープレーンに関連付けられた全てのカラーブロックの転送が、同じ時間間隔Ｄ１だけ遅らせられる。ステップ３１３では、直後のプリントページ（Ｄ２）の転送遅延が決定される。ユーザ３００ができるだけ高画質で印刷されるようにプリントページ上の一つ以上のエリアを指定するステップ３１０と同様に、ステップ３１２では、現在のプリントページと直後のプリントページ間の遷移領域にそれらのエリアがあるかどうかが決定される。
【００８９】
少なくとも１つの指定されたエリアが遷移領域にある場合、遷移遅延Ｄ２は指定されたエリアの位置に基づいて決定される。いくつかの実施形態においては、遷移遅延Ｄ２は、Ｄ２’およびＤ２’’より大きくなるよう計算される。ここで、Ｄ２’とＤ２’’は上記Ｄ１’とＤ１’’と同様の方法で決定される。Ｄ２が最大遷移遅延を超える場合、決定されたＤ２もまた最大遷移遅延へリセットされる。ステップ３１３では、直後のプリントページの転送は、現在のページの転送に関しては、もともとスケジュールされた転送と比べてＤ２だけ遅らせられる。つまり、現在のプリントページの全てのカラープレーンに関連付けられた全てのカラーブロックの転送が、同じＤ２時間間隔だけ遅らせられる。
【００９０】
ステップ３１４では、最初または次の転送フレームが検査される。いくつかの実施形態においては、ステップ３１５では、現在の転送フレーム内の全色の圧縮されたカラーブロックが決定される。いくつかの実施形態においては、バンド幅限界インスペクタ２０７は、現在の転送フレーム内の全てのカラープレーンの圧縮されたカラーブロックを決定する。たとえば、バンド幅限界インスペクタ２０７は、現在の転送フレームに関与するカラープレーンをまず決定し、それから、これらカラープレーンに関連付けられた圧縮されたどのカラーブロックが転送フレーム内に含まれているかを決定する。
【００９１】
いくつかの実施形態においては、ステップ３１６では、現在の転送フレーム内の圧縮されたカラーブロックの累積サイズが決定される。たとえば、それぞれの低解像度な画像ブロックとデルタ画像ブロックを含む、圧縮されたカラーブロックの全ピクセル数は、バンド幅限界インスペクタ２０７によって決定される。ステップ３１７では、全データサイズはいくつかの事前に決められた閾値と比べられる。一つの実施の形態では、閾値はプリンタ１００の印刷速度および接続１２０のバンド幅に基づいて決定される。
【００９２】
ステップ３１７では、全データサイズが閾値を超える場合、現在の転送フレーム内の一つ以上の圧縮されたカラーブロックは、ステップ３１８にてデルタ除去フラグのタグがつけられる。いくつかの実施の形態では、デルタ除去フラグは、圧縮されたタグを付けられたカラーブロックに対応するデルタ画像ブロックが除去されるべきことを示す。
【００９３】
いくつかの実施の形態では、もう一つのアルゴリズムが、図５にあるようにステップ３１６〜３１８の間で使用される。たとえば、バンド幅限界インスペクタ２０７は、ステップ３１６で現在の転送フレーム内のそれぞれの圧縮されたカラーブロックのデータサイズ
を決定できる。バンド幅限界インスペクタ２０７はそれから、ステップ３１７において、そのカラープレーンのサブチャネル閾値に相当するそれぞれの圧縮されたカラーブロックのデータサイズを比較する。ステップ３１８では、転送フレーム内の圧縮されたカラーブロックは、圧縮されたカラーブロックのそれぞれのデータサイズがサブチャネル閾値より大きい場合、デルタ除去フラグのタグを付ける。
【００９４】
ステップ３１７では、全データサイズが閾値を超えない場合、ステップ３１８はスキップされ、プロセス３０は直接ステップ３１９へ進む。ステップ３１９では、現在のプリントページと関連付けられた全ての転送フレームが検査されたかどうかが決定される。少なくとも一つの転送フレームが検査されずに残されている場合、アルゴリズムはステップ３１４へ戻り、次の転送フレームを検査する。アルゴリズムはステップ３１４〜３１９を、全ての転送フレームが検査されるまで繰り返す。たとえば、バンド幅限界インスペクタ２０７は、画像内のそれぞれの転送フレームをくまなく調べる。
【００９５】
ステップ３２０では、全てのプリントページが処理されたかを決定する。少なくとも一つのプリントページが未検査でまだ残されている場合、アルゴリズムはステップ３０９へ戻り、次のプリントページを処理する。アルゴリズムは、全ての転送フレームが検査されるまで、ステップ３０９〜３２０を繰り返す。
【００９６】
画像内の全ての転送フレームが検査され、適正にタグを付けられた後、フォーマットステージ３３が始まる。たとえば、フォーマットステージ３３は、画像がプリント装置へ送信される前に、全画像を累積する。いくつかの実施の形態では、フォーマットは、カラーブロック毎にも行われる。ステップ３２１では、第１のまたは次のプリントフレームが処理される。ステップ３２２では、現在のプリントフレーム内の全てのカラーの圧縮されたカラーブロックが決定される。図２ａおよび図２ｂに示される例では、バンド幅限界インスペクタ２０７は、プリントフレーム１５がカラーブロック１１〜１４を含むことを決定できる。ステップ３２２では、デルタ除去フラグは、現在のプリントフレームのどの圧縮されたブロックとも関連付けられるかを決定する。
【００９７】
ステップ３２３では、現在のプリントフレームのどのカラープレーンともデルタ除去フラグが設定されていない場合、解像度減少は実行されない。したがって、ステップ３２４では、低解像度化された画像およびデルタ画像の対応する部分に基づいて、圧縮されたカラーブロックが再構築される。ステップ３２３でデルタ除去フラグが現在のプリントフレーム内の少なくとも一つのカラープレーンに設定される場合、全てのカラープレーンに対して解像度が減少されるべきかどうかの決定がステップ３２５でされる。いくつかの実施の形態では、画像の画質が劣化しないように、現在のプリントフレームの全てのカラーブロック内での解像度の減少が望まれる。たとえば、膨大な細部を含むフルカラー写真が存在する領域にプリントフレームがある場合、全てのカラーブロック内での解像度の減少が望まれる。もう一つの例では、プリントフレームが白いスペース（空白）か単一色を含む領域内にある場合、解像度の減少はタグを付けられたカラーブロックに限られる。
【００９８】
全てのカラーブロックの解像度が現在のプリントフレーム内で減少される場合、全ての圧縮されたブロックに対応するデルタ画像ブロックがステップ３２６で除去される。さもなければ、タグが付けられたカラーブロックのみの解像度が減少される場合、タグが付けられたカラーブロックに対応するデルタ画像ブロックは、ステップ３２７で除去される。
【００９９】
ステップ３２４、３２６、または３２７の後、全てのプリントフレームがステップ３２８でフォーマットされたかを決定する。少なくとも画像の一つのプリントフレームがいまだフォーマットされず残されている場合、アルゴリズムはステップ３２１へ戻り、次のプリントフレームをフォーマットする。アルゴリズムは、全てのプリントフレームがフォー
マットされるまで、ステップ３２１〜３２８を繰り返す。ステップ３２９では、処理されたプリントページの画像データが、それぞれのプリントページに関連付けられた個々の時間幅Ｄ１とＤ２を伴ってコンピュータ２００からプリンタ１００へ転送される。その後、典型的なプロセス３０は終了する。
【０１００】
本発明の他の実施の形態は、ここに公開される発明の特定の考慮と実施から、当業者には明らかであろう。特定と例は例示のみであり、本発明の本来の範囲と思想は、次の特許請求の範囲によって示される。
【図１】
2009245417.tif 000003
【図２】
2009245417.tif 000004
【図３】
2009245417.tif 000005
【図４】
2009245417.tif 000006
【図５】
2009245417.tif 000007
【図６】
2009245417.tif 000008
【外国語明細書】
2009245417000001.pdf
2009245417000002.pdf
2009245417000003.pdf
2009245417000004.pdf