(57)【要約】  【課題】印刷データを中間コードに変換する画像処理方式に最小限の追加処理でバンド毎の色空間を判断する高速の画像処理装置を提供することにある。  【解決手段】  印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に中間コードに変換する際に，印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断し，当該バンドがカラー色空間の場合は前記中間コードから複数カラーのビットマップ画像データを前記ビットマップメモリに展開し，モノクロの場合は前記中間コードからモノクロのビットマップ画像データを前記ビットマップメモリに展開する。印刷ページ内の印刷データのコマンド列を順に中間コードに変換する時にバンド毎にバンド内のオブジェクトにカラーを含むか否かを判断するので，最小限の追加処理によってバンドの色空間がカラーかモノクロかを判断でき，それぞれのバンドの色空間に応じた効率的なビットマップ画像データの展開が可能になる。【選択図】    図２
2006352755.tif 000002
【特許請求の範囲】
【請求項１】
印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に中間コードに変換し，前記中間コードに基づいてバンド毎のビットマップ画像データを展開する画像処理装置において，
前記ビットマップ画像データが展開されるビットマップメモリと，
前記印刷データの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換手段と，
前記判断結果に基づき，当該バンドがカラー色空間の場合は前記中間コードから複数カラーのビットマップ画像データを前記ビットマップメモリに展開し，モノクロの場合は前記中間コードからモノクロのビットマップ画像データを前記ビットマップメモリに展開する展開手段とを有する画像処理装置。
【請求項２】
請求項１において，
前記変換手段は，各バンドの色空間変数をモノクロに初期設定し，
前記画像オブジェクトがカラー画像に対応する場合に対応するバンドの前記色空間変数をカラーに変更し，
前記印刷プレーンの全ての印刷コマンドの中間コードへの変換が終了した時に，前記色空間変数に応じて各バンドがカラー色空間かモノクロ色空間かを判断することを特徴とする画像処理装置。
【請求項３】
請求項２において，
前記画像オブジェクトは，少なくとも文字，図形，イメージを有し，
前記変換手段は，前記文字，図形の場合はその色設定コマンドに基づいてカラー画像か否かを判断し，前記イメージの場合はそのビットマップデータに基づいてカラー画像か否かを判断することを特徴とする画像処理装置。
【請求項４】
請求項２において，
前記画像オブジェクトは，少なくとも文字，図形，イメージを有し，
前記変換手段は，前記文字，図形の場合はその色設定コマンドに基づいてカラー画像か否かを判断し，前記イメージの場合はカラー画像と判断することを特徴とする画像処理装置。
【請求項５】
印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に中間コードに変換し，前記中間コードに基づいてバンド毎のビットマップ画像データを展開する画像処理プログラムにおいて，
前記印刷データの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換工程と，
前記判断結果に基づき，当該バンドがカラー色空間の場合は前記中間コードから複数カラーのビットマップ画像データをメモリに展開し，モノクロの場合は前記中間コードからモノクロのビットマップ画像データをメモリに展開する展開工程とをコンピュータに実行させる画像処理プログラム。
【請求項６】
印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に，当該バンドがモノクロ色空間の場合はモノクロのビットマップ画像データを，カラー色空間の場合は複数カラーのビットマップ画像データを展開するための中間コードに変換し，当該中間コードを画像処理装置に出力する画像処理プログラムにおいて，
前記印刷データの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換工程と，
前記判断結果及び当該バンドの中間コードを前記画像処理装置に出力する出力工程とをコンピュータに実行させる画像処理プログラム。
【請求項７】
請求項５または請求項６において，
前記変換工程は，各バンドの色空間変数をモノクロに初期設定し，
前記画像オブジェクトがカラー画像に対応する場合に対応するバンドの前記色空間変数をカラーに変更し，
前記印刷プレーンの全ての印刷コマンドの中間コードへの変換が終了した時に，前記色空間変数に応じて各バンドがカラー色空間かモノクロ色空間かを判断する工程をコンピュータに実行させる画像処理プログラム。
【請求項８】
請求項５または請求項６において，
前記画像オブジェクトは，少なくとも文字，図形，イメージを有し，
前記変換手段は，前記文字，図形の場合はその色設定コマンドに基づいてカラー画像か否かを判断し，前記イメージの場合はそのビットマップデータに基づいてカラー画像か否かを判断する工程をコンピュータに実行させる画像処理プログラム。
【請求項９】
請求項５または請求項６において，
前記画像オブジェクトは，少なくとも文字，図形，イメージを有し，
前記変換手段は，前記文字，図形の場合はその色設定コマンドに基づいてカラー画像か否かを判断し，前記イメージの場合はカラーと判断する工程をコンピュータに実行させる画像処理プログラム。
【請求項１０】
印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に中間コードに変換し，前記中間コードに基づいてバンド毎のビットマップ画像データを展開する画像処理方法において，
前記印刷データの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換工程と，
前記判断結果に基づき，当該バンドがカラー色空間の場合は前記中間コードから複数カラーのビットマップ画像データをビットマップメモリに展開し，モノクロの場合は前記中間コードからモノクロのビットマップデータを前記ビットマップメモリに展開する展開工程とを有する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，バンド単位に画像を展開する画像処理装置及び画像処理プログラムに関し，特に，バンド毎にカラーかモノクロかを判断する画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
プリンタなどの画像形成装置は，印刷データを処理する画像処理装置と，画像処理装置により生成された画像データに基づいて所望の画像を形成する印刷エンジンとを有する。画像処理装置は，ページ記述言語（ＰＤＬ）で記述された印刷データをホストコンピュータから受け取り，画像データへの展開が容易な中間コードに変換し，中間コードに基づき複数色で多階調のビットマップ画像データをメモリ上に展開する。そして，画像処理装置は，必要に応じて二値化などの処理を行った後，当該ビットマップ画像データを画像再生信号として印刷エンジンに出力する。
【０００３】
画像処理装置がビットマップ画像データを展開する時には，多くのメモリ資源が必要となる。ビットマップ画像データは画素に対応した複数色の多階調データであるため，カラー画像を含む印刷ページのビットマップ画像データは，例えばＣ（シアン），Ｍ（マゼンダ），Ｙ（イエロー），Ｋ（ブラック）の４プレーン（１プレーンは印刷エンジンが１回の印刷処理で同時に印刷できる単位）分展開されることになるからである。そこで，１プレーンをバンド単位に分け，バンド毎に中間コードからビットマップ画像データへ展開することで処理の効率化を図る方法が採られている。
【０００４】
次にバンド毎にバンド内に含まれる画像の色に着目すると，カラー画像を含むカラーバンドと，モノクロ画像のみを含むモノクロバンドに分けることができる。すると，モノクロバンドについてカラーバンドと同じ様に４プレーンの展開処理を行うと，無駄なメモリ資源を費やすことになる。すなわち，カラーバンドの印刷にはＣ，Ｍ，Ｙ，Ｋ４つのビットマップ画像データが必要になるが，モノクロバンドの印刷にはＫのみで展開されたビットマップ画像データを用いればよい。にもかかわらず，モノクロバンドについてＣ，Ｍ，Ｙ，Ｋのビットマップ画像データを展開すれば，Ｃ，Ｍ，Ｙの分はメモリ資源の浪費ということになる。
【０００５】
そこで，こうした無駄を無くすために，バンド単位でカラーとモノクロを区別し，ビットマップ画像データを展開する際にはモノクロのバンドについては単色のデータだけで展開するという方法が提案されている（特許文献１）。特許文献１に開示された方法では，ホストコンピュータから入力されるＰＤＬによる印刷データがバンド単位に分割されており，バンド毎に，カラーであればＣ，Ｍ，Ｙ，Ｋの４つのＰＤＬ印刷データが，モノクロであればＫのみのＰＤＬ印刷データがプリンタの画像処理装置に供給される。そして，画像処理装置は，バンド毎にＰＤＬ印刷データを記憶し，それぞれのバンドの色をプレーンに対応するビットマップ画像データを展開する。
【特許文献１】特開２００１−１３８５７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら，上記従来例では，供給されるＰＤＬの印刷データが，バンド毎に分けられており，且つカラーならＣ，Ｍ，Ｙ，Ｋに分離され，モノクロならＫのみのＰＤＬデータにされているので，ページ単位の印刷コマンドリストからなる印刷データをバンド毎の中間コードに変換し，その中間コードをビットマップ画像データに展開する画像処理方式に適用することは困難である。
【０００７】
そこで，本発明の目的は，上記画像処理方式に最小限の追加処理でバンド毎の色空間を判断する高速の画像処理装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために，本発明の第１の側面によれば，印刷プレーン毎に画像オブジェクトの印刷コマンドを有する印刷データを，印刷プレーンを複数に分割したバンド領域毎に中間コードに変換し，前記中間コードに基づいてバンド毎のビットマップ画像データを展開する画像処理装置において，前記ビットマップ画像データが展開されるビットマップメモリと，前記印刷データの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換手段と，前記判断結果に基づき，当該バンドがカラー色空間の場合は前記中間コードから複数カラーのビットマップ画像データを前記ビットマップメモリに展開し，モノクロの場合は前記中間コードからモノクロのビットマップ画像データをビットマップメモリ上に展開する展開手段とを有することを特徴とする。
【０００９】
上記第１の側面によれば，印刷ページ内の印刷データのコマンド列を順に中間コードに変換する時にバンド毎にバンド内のオブジェクトにカラーを含むか否かを判断する。よって，印刷プレーン毎の印刷データをバンド毎の中間コードに変換する過程で，最小限の追加処理によってバンドの色空間がカラーかモノクロかを判断でき，それぞれのバンドの色空間に応じた効率的なビットマップ画像データの展開が可能になる。
【００１０】
上記第1の側面において好ましい実施例によれば，前記変換手段は，各バンドの色空間変数をモノクロに初期設定し，前記画像オブジェクトがカラー画像に対応する場合に対応するバンドの前記色空間変数をカラーに変更し，前記印刷プレーンの全ての印刷コマンドの中間コードへの変換が終了した時に，前記色空間変数に応じて各バンドがカラー色空間かモノクロ色空間かを判断することを特徴とする。すなわち，印刷データのコマンド列をバンド毎の中間コードに変換する時には前記色空間変数を書き換えるだけであるので，バンド色空間判断処理の高速化が可能となる。
【００１１】
上記第1の側面においてより好ましい実施例によれば，前記画像オブジェクトは，少なくとも文字，図形，イメージを有し，前記変換手段は，前記文字，図形の場合はその色設定コマンドに基づいてカラー画像か否かを判断し，前記イメージの場合はそのビットマップデータに基づいてカラー画像か否かを判断することを特徴とする。
【００１２】
文字，画像オブジェクトは，予め生成されてメモリやＲＯＭに格納されている文字・図形のビットマップ画像データをソース画像データとして利用するので，改めてホストコンピュータからソース画像データの供給を受ける必要がない。このため，画像オブジェクトがカラー画像か否かを判断するには，色設定コマンドを見て判断すればよい。一方，イメージの画像オブジェクトはホストコンピュータから供給されるビットマップ画像データをソース画像データとして利用する。そのため，イメージがカラーか否かを判断するためには，そのビットマップデータの各ピクセルの色についてカラーか否かの判断をすることになる。
【００１３】
上記第１の側面においてさらに好ましい実施例によれば，前記画像オブジェクトがイメージの場合は，ピクセル毎の判断を行うことなく，カラー画像と判断することを特徴とする。上述したように，イメージがカラー画像かモノクロ画像かを判断するためにはピクセル単位で判断する必要があるが，処理負担の増大を招く。そこで，イメージは無条件にカラー画像として処理することにより，かかる処理負担を減少させることができる。すなわち，仮にモノクロのイメージをカラーとして処理し複数カラーのビットマップ画像データを展開したとしても，ピクセル毎にカラーか否かを判断した場合と比べれば，全体的な処理効率は向上させることができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面にしたがって本発明の実施の形態について説明する。但し，発明の技術的範囲はこれらの実施の形態に限定されず，特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１５】
図１は，印刷プレーンをバンドに分割した場合の，画像オブジェクト例とバンドとの関係を説明する図である。印刷プレーン１内の画像オブジェクトは，黒色（モノクロ）の文字２「Ｔｅｘｔ」と，カラーのイメージ３と，青色（カラー）の図形４と，グレー（モノクロ）の図形５と，グレー（モノクロ）の文字６「文字」とで構成されている。それぞれの括弧内は各画像オブジェクトのＲＧＢ色空間における色を，各色８ビットの１６進数表記で表わしている。この１つの印刷プレーンを４つのバンド第１バンド〜第４バンドに分割すると，第１バンドＢＮＤ１は文字２を，第２バンドＢＮＤ２は文字２，イメージ３，図形４を，第３バンドＢＮＤ３はイメージ３，図形４，図形５を，第４バンドＢＮＤ４は図形５と文字６を含んでいることになる。
【００１６】
図２は，印刷プレーン１（図２（Ａ））を，バンド毎にビットマップ画像データに展開した状態（図２（Ｂ））を説明する図である。印刷データをビットマップ画像データに展開する場合，カラーで印刷される画像データは、ＲＧＢ色空間のビットマップデータに展開後、印刷エンジンの色空間であるＣ，Ｍ，Ｙ，Ｋの４プレーン分のビットマップ画像データに展開（色変換）する必要があるが，モノクロ色空間の画像データは、単一の色空間のビットマップデータに展開後、Ｋのみの１プレーンのビットマップ画像データを展開すればよい。バンド単位で見てみると，第１バンドＢＮＤ１はモノクロの文字２のみが存在するので，第１バンドの色空間はモノクロ色空間である。同様に第４バンドＢＮＤ４にはモノクロの図形５と文字６のみ存在するので，モノクロ色空間である。よって，第１バンドと第４バンドはＫのみのビットマップデータで展開できる。第２バンドＢＮＤ２，第３バンドＢＮＤ３はカラーのイメージ３，カラーの図形４という画像オブジェクトを含んでいるので，第２バンド，第３バンドともにカラー色空間である。よって，第２バンドと第３バンドについては，Ｃ，Ｍ，Ｙ，Ｋの４つのビットマップ画像データが展開される必要がある。
【００１７】
図２（Ｂ）は，上記のようにして図２（Ａ）の印刷プレーン１をバンド毎にビットマップ画像データとして展開した場合に消費されるメモリ資源を網掛けにより表している。つまり，モノクロ色空間である第１バンドＢＮＤ１と第４バンドＢＮＤ４については，Ｋのみのビットマップ画像データを展開すればよい。本実施の形態によれば，各バンドの色空間を判断し，モノクロ色空間である第１バンドと第４バンドについてはＲＧＢビットマップ画像データに展開せず、最終的にＣＭＹのビットマップ画像データに展開しないことにより，リソース資源の無駄を省くことが可能となる。この様に展開されたビットマップ画像データは，１〜４プレーンのＰＬＮ１〜４の順に印刷エンジンに供給されて，画像形成が行われる。
【００１８】
図３は，本実施の形態における画像処理装置の概略構成図である。図３（Ａ）では，ホストコンピュータＨＯＳＴからページ記述言語の印刷データＰＤＬが，画像形成装置の一例であるプリンタ１０のコントローラ１２に供給される。コントローラ１２は印刷データＰＤＬを中間コードに変換し，中間コードからビットマップ画像データをバンドメモリ領域Ｂ−ＢＵＦ内に展開し，展開されたビットマップ画像データから生成した画像再生信号１６を印刷エンジン２４に供給する。この場合，コントローラ１２が画像処理装置に対応する。
【００１９】
図３（Ｂ）では，ホストコンピュータＨＯＳＴ内のプリンタドライバＰ−ＤＲが，印刷データＰＤＬからバンド領域ごとの中間コードＩＣを生成し，その中間コードＩＣをプリンタ１０のコントローラ１２に供給する。コントローラ１２は，供給された中間コードＩＣに基づいてビットマップ画像データをバンドメモリ領域Ｂ−ＢＵＦに展開し，展開されたビットマップ画像データから生成した画像再生信号１６を印刷エンジン２６に供給する。この場合は，プリンタドライバＰ−ＤＲが実行する工程とコントローラ１２が実行する工程とが画像処理方法に対応する。
【００２０】
さらに，図３（Ｃ）では，ホストコンピュータＨＯＳＴ内のプリンタドライバＰ−ＤＲが，印刷データからバンド領域内の中間コードを生成し，その中間コードに基づいてビットマップ画像データをバンドメモリＢ−ＢＵＦ内に展開し，必要に応じて色変換，圧縮をして，圧縮されたビットマップ画像データＢＭをプリンタ１０内のコントローラ１２に出力する。コントローラ１２は，必要に応じて色変換，二値化処理を行い，画像再生信号１６を印刷エンジン２６に出力する。この場合は，プログラムであるプリンタドライバＰ−ＤＲが画像処理プログラムに対応する。
【００２１】
図４は，本実施の形態におけるプリンタの構成図である。図４のプリンタ１０は，図３（Ａ）のプリンタ１０に対応する。プリンタ１０は，画像処理装置に対応するコントローラ１２と，印刷エンジン２６とで構成される。コントローラ１２は，ホストコンピュータから印刷プレーン毎に画像描画コマンドの列から成る印刷データＰＤＬを受信するインターフェースＩＦと，印刷データをバンド領域ごとの中間コードＩＣに変換する中央処理ユニットＣＰＵと，中間コードに基づいてＲＧＢビットマップ画像データを展開する展開ユニット１８と，ＲＧＢからＣＭＹＫの色変換を行い、ＲＧＢビットマップ画像データをＣＭＹＫビットマップ画像データに変換する色変換ユニット２０と，ビットマップ画像データを圧縮・解凍する圧縮・解凍ユニット２２と，ビットマップ画像データを二値化する二値化ユニット２４と，二値化されたデータを画像再生信号であるパルス信号に変換するパルス幅変調ユニットＰＷＭとを有し，パルス幅変調ユニットにより生成される画像処理信号１６が印刷エンジン２６に供給される。さらに，コントローラ１２は，メモリユニット１４を有し，メモリユニット１４には，中間コードが格納される中間コードバッファＩＣ−ＢＵＦと，ビットマップ画像データが格納されるバンドメモリ領域（以下バンドバッファ）Ｂ−ＢＵＦとが確保される。
【００２２】
図４のプリンタ１０が，図３（Ｂ）のプリンタ１０に対応する場合は，コントローラ１２のインターフェースＩＦがホストコンピュータから中間コードＩＣを受信し，中間コードバッファＩＣ−ＢＵＦに格納する。そして，コントローラ１２は，展開ユニット１８により中間コードに基づいてバンドメモリ領域Ｂ−ＢＵＦ内にビットマップ画像データを展開する。
【００２３】
図４のプリンタ１０が，図３（Ｃ）のプリンタ１０に対応する場合は，コントローラ１２には，展開ユニット１８，色変換ユニット２０などは設けられておらず，受信したビットマップ画像データを二値化して，画像再生信号１６を印刷エンジンに出力するだけである。
【００２４】
図５は，本実施の形態における印刷データのＰＤＬで記述されたコマンド列の一例を説明する図である。このコマンド列は図１の印刷プレーン１の画像に対応し，コマンドＣ０１〜Ｃ０４は文字２に，コマンドＣ０５，Ｃ０６はイメージ３に，コマンドＣ０７，Ｃ０８は図形４に，コマンドＣ０９，Ｃ１０は図形５に，コマンドＣ１１〜Ｃ１５は文字６にそれぞれ対応する。このコマンド列は，次に記すようにコマンドＣ０１から順にＣＰＵに解析される。なお，図５のコマンド列は具体的なコマンドコードではなく，コマンドの機能で記述されている。
【００２５】
まず文字２「Ｔｅｘｔ」に対し，フォント選択（Ｃ０１），文字サイズ設定（Ｃ０２），テキスト描画位置指定（Ｃ０３），そして文字列“Ｔｅｘｔ”の描画（Ｃ０５）という一連のコマンドが順に解析される。文字色は初期設定の「黒」のままであるため文字色設定コマンドは記述されていない。初期値を用いることにより，色設定を省略できる。イメージ３に対しては，描画位置の指定（Ｃ０５），描画コマンド（Ｃ０６）の順に解析される。イメージの色はビットマップ画像データのピクセル毎に設定される。図形４に対しては，図形色を「青色」に設定する色設定コマンド（Ｃ０７），矩形塗りつぶしを実行する描画コマンド（Ｃ０８）が順に解析される。なお，ＰＤＬにおいて図形色はＲＧＢ形式の１色８ビットで指定されており，青色は（#0000ff）である。図形５に対しては，図形色を「４０％グレイ（＃999999）」に設定する色設定コマンド（Ｃ０９），矩形塗りつぶしを実行する描画コマンド（Ｃ１０）が順に解析される。文字６「文字」に対しては，まず文字色を「８０％グレイ（＃333333）」に設定する色設定コマンド（Ｃ１１），次にフォント選択（Ｃ１２），文字サイズ設定（Ｃ１３），テキスト描画位置指定（Ｃ１４），文字列“文字”の描画（Ｃ１５）という一連の描画コマンドが解析される。
【００２６】
図６は，本実施の形態における，１印刷プレーンの印刷手順のフローチャート図（Ａ）及び各種の色変数を説明する図（Ｂ）である。この色変数は、各バンドがカラーバンドであるか、モノクロバンドであるかを判断するために使われる変数であり、後述する図６（Ａ）のフローチャートで説明されるように、設定された初期値が適宜上書きされて変更される。まず，色変数について説明する。
【００２７】
文字色（Ｂ０１），図形色（Ｂ０２）の各変数は，印刷プレーン内の文字，図形の各画像オブジェクトについて，ＰＤＬの色設定コマンドにより設定される画像オブジェクトの色を格納する。そして，当該オブジェクトの中間コードをバンド毎の中間コードバッファＩＣ−ＢＵＦに登録する時に，各バンドでの文字色（Ｂ０３），図形色（Ｂ０４）と比較するために参照される。バンド文字色（Ｂ０３）とバンド図形色（Ｂ０４）の各変数は，各バンド毎に用意され、そのバンドで最後に中間コード登録がされた文字・図形の画像オブジェクトの色を格納する。そして，当該バンド内の新たな文字・図形の画像オブジェクトに対する中間コードをＩＣ−ＢＵＦへ登録する時に参照され，バンド文字色（Ｂ０３）・バンド図形色（Ｂ０４）と，当該バンド内で新たに登録すべき文字色・図形色が異なっていれば，ＩＣ−ＢＵＦに色設定中間コード登録を行った後に，最後に登録されたバンド文字色・バンド図形色を当該文字色・図形色に変更する。また，バンド色空間（Ｂ０５）の色変数は，ＣＰＵが判断した当該バンドの色空間を格納し，バンド色空間をＩＣ−ＢＵＦへ登録する時に参照するための変数である。
【００２８】
次に，図６（Ａ）の印刷手順について説明する。この手順は図３のいずれのタイプにも適用することができるが，一例として図３（Ａ）に適用した場合に基づいて説明する。
【００２９】
まず，コントローラ１２は，メモリユニット１４上で印刷プレーンの文字色（Ｂ０１）及び図形色（Ｂ０２）の各変数に「黒色（#000000）」（Ｓ１１）を初期値設定し，続いて，各バンドについて，バンド文字色（Ｂ０３）とバンド図形色（Ｂ０４）の色変数に「黒色（#000000）」を，バンド色空間（Ｂ０５）の色変数に「モノクロ」を初期値設定する（Ｓ１２）。次に，コントローラ１２のＣＰＵは，画像オブジェクトについてのコマンド列である印刷データを読み込みながら（Ｓ１３），当該画像オブジェクトの色設定コマンドを中間コマンドに変換し（Ｓ１６），当該画像オブジェクトの描画コマンドを解析する時に（Ｓ１４），当該画像オブジェクトに対する中間コードを中間コードバッファ（ＩＣ−ＢＵＦ）に登録する（Ｓ１７）。最後に，コントローラ１２は，プレーン内の全てのコマンドの処理を終了した時点で（Ｓ１５のＹＥＳ），当該プレーンのビットマップ画像データをビットマップバッファＢ−ＢＵＦに展開，必要に応じて色空間の変換（例えば，ＲＧＢ色空間をＣＭＹＫ色空間に変換するなど），圧縮・解凍処理を行い（Ｓ１８），印刷エンジンに出力する（Ｓ１９）。
【００３０】
図６（Ａ）の印刷手順を図５の例に当てはめてみる。文字色（Ｂ０１）等の初期値設定Ｓ１１，Ｓ１２）の後，印刷プレーン１のＰＤＬ印刷データにおいて，文字２「Ｔｅｘｔ」についてのコマンドＣ０１〜Ｃ０４，イメージ３についてＣ０５，Ｃ０６，図形４についてＣ０７，Ｃ０８，図形５についてＣ９，Ｃ１０，文字６についてＣ１１〜Ｃ１５の描画コマンドが，改ページコマンド（Ｃ１６）に至るまで順次中間コードに変換されて，各種色設定（Ｓ１６）と中間コード登録（Ｓ１７），が行われる。
【００３１】
画像オブジェクトの例では，例えば文字２については，フォント選択（Ｃ０１），文字サイズ設定（Ｃ０２），テキスト描画位置指定（Ｃ０３）の順に解析され中間コードに変換される。そして文字列“Ｔｅｘｔ”の描画（Ｃ０５）のコマンドが解析，中間コード変換が行われた時点で（Ｓ１４），中間コード登録（Ｓ１７）が行われる。なお，文字２の色は「黒色」なので，文字色（Ｂ０１）の初期値が適用できるから，文字６におけるＣ１１のような文字色設定コマンドは記述されていない。多くの場合，文字色は黒色であるので，初期値を用いることにより文字の画像オブジェクト毎に色設定を行うという無駄な処理を省くことができる。
【００３２】
色設定が行われる例として，図形４については，図形色を青色に設定する図形色設定コマンド（Ｃ０７）が解析，中間コード変換が行われ，図形色の色変数（Ｂ０１）の値が「青色」に変更される。矩形塗りつぶしを実行する描画コマンド（Ｃ０８）を解析，中間コード変換が行われた時点で，図形４についての中間コード登録（Ｓ１７）が行われる。以上のようにして，文字６の描画コマンド（Ｃ１５）まで解析，変換がされ，改ページコマンド（Ｃ１６）が来た時，印刷プレーン１の中間コードは画像展開，色変換，圧縮・解凍処理（Ｓ１８），エンジン出力（Ｓ１９）が行われる。
【００３３】
図７は，本実施の形態における，バンド毎に変換され中間コードバッファＩＣ−ＢＵＦに登録された中間コードの例を示す図である。バンド色空間は，当該バンドの印刷データをＲＧＢビットマップ画像データに展開する場合に用いる色空間を示している。バンド色空間にはモノクロ初期値が設定されるので，後述するバンド色空間の判断（図９〜図１２）においてはこれら変数の値が初期値から変更されていればカラー色空間であると判断できる。例えば，印刷プレーン１の第１バンドには，モノクロの文字２「Ｔｅｘｔ」の上部が描画されているので，「Ｔ」，「ｅ」，「ｘ」，「ｔ」の上部を生成する中間コードが登録されている。文字色は黒であるので，色の設定は初期値のままであり，バンド色空間はモノクロ初期値のままである。
【００３４】
図８は，本実施の形態における，各画像オブジェクトの色設定のフローチャート図である。図６の工程Ｓ１６に対応する。コントローラ１２は，１プレーン分の印刷データのコマンド列（Ｃ０１〜Ｃ１５）を順に解析しながら，各画像オブジェクトについての描画コマンドが解析されるまでの間に当該画像オブジェクト毎の色を設定する。画像オブジェクトについて文字色設定コマンドがあれば，文字色の色変数Ｂ０１は当該設定色に変更される（Ｓ６０２）。文字色設定コマンドではなく図形色設定コマンドの場合（Ｓ６０３）は，図形色の色変数Ｂ０２が当該設定色に変更される（Ｓ６０４）。
【００３５】
例えば，文字２についてのコマンドＣ０１〜Ｃ０４を順に見てゆくと，Ｃ０１〜Ｃ０３は描画コマンドではなく（Ｓ１４），改ページコマンドでもない（Ｓ１５）。また，文字２についての色設定は行われない（Ｓ１６）。ただし，文字２の色は「黒色」であるので，色設定コマンドが記述されていなくても，文字色（Ｂ０１）の初期値が適用される。よって，文字２については，文字色（Ｂ０１）は初期値「黒色」として，中間コード登録が行われる（Ｓ１７）。
【００３６】
また，文字６についてコマンドＣ１１〜Ｃ１５を順に見てみると，色設定コマンド（Ｃ１１）が記述されている。よって，描画コマンドでもなく（Ｓ１４），改ページコマンドでもなく（Ｓ１５），文字色設定コマンドであるので（Ｓ６０１のＹＥＳ），文字色（Ｂ０１）が当該設定色「８０％グレー（＃333333）」に変更される。以上の２例に示すように，文字色（Ｂ０１）は，コマンド解析中の文字オブジェクトの色を示す変数であり，後述する中間コード登録の手順（Ｓ１７）において参照される。
【００３７】
なお，図形色（Ｂ０２）も同様に，コマンド解析中の図形オブジェクトの色を示す色変数であり，中間コード登録時に参照される。
【００３８】
図９は本実施の形態における，中間コード登録のフローチャート図である。図６の工程Ｓ１７に対応する。コントローラ１２は，印刷データのコマンドが画像オブジェクトの描画コマンドである場合（Ｓ１４），まず当該画像オブジェクトが文字であるかを判断し（Ｓ２１），文字であれば中間コードバッファＩＣ−ＢＵＦに，印刷データのコマンドから変換された文字中間コード登録を行う（Ｓ２２）。次に，文字でない場合，図形であるかを判断し（Ｓ２３），図形であれば図形中間コード登録を行う（Ｓ２４）。最後に，文字でも図形でもない場合は，当該オブジェクトをイメージと判断し，イメージ中間コード登録を行う（Ｓ２５）。
【００３９】
例えば，印刷プレーン１のコマンドＣ０１〜Ｃ０４については，コマンドＣ０４が文字「Ｔｅｘｔ」の描画コマンドであって，画像オブジェクトは文字であるので（Ｓ２１のＹＥＳ），コマンドＣ０１〜Ｃ０４から変換された文字中間コードの登録が行われる（Ｓ２２）。また，コマンドＣ０５，Ｃ０６については，Ｃ０６はイメージ３の描画コマンドであって，画像オブジェクトは文字でもなく（Ｓ２１のＮＯ）図形でもない（Ｓ２３のＮＯ）ので，コマンドＣ０５，Ｃ０６から変換されたイメージ中間コードの登録が行われる（Ｓ２５）。さらに，Ｃ０７，Ｃ０８については，Ｃ０８は図形４の描画コマンドであって，画像オブジェクトは文字ではない（Ｓ２１のＮＯ）が図形である（Ｓ２３のＹＥＳ）ので，Ｃ０７，Ｃ０８から変換された図形中間コードの登録が行われる（Ｓ２４）。
【００４０】
図１０は，本実施の形態における，文字中間コード登録のフローチャート図である。図９の工程Ｓ２２に対応する。まず，コントローラ１２のＣＰＵは，文字中間コードが登録されるべき登録先頭バンド番号と登録最終バンド番号を算出する（Ｓ３０１）。次に，登録先頭バンドから登録最終バンドについて順番に，当該バンドのバンド文字色（Ｂ０３）の判断（Ｓ３０４〜Ｓ３０８）と中間コードバッファＩＣ−ＢＵＦへの文字中間コードの登録（Ｓ３０９）を行う（Ｓ３０３〜Ｓ３１０）。
【００４１】
すなわち，ＣＰＵは，まず登録先頭バンドについて，当該バンド内の文字の画像オブジェクトについて文字色（Ｂ０１）変数に格納された色をバンド文字色（Ｂ０３）の色と比較する（Ｓ３０４）。ここで，両者が異なれば，当該バンドに当該文字の画像オブジェクトの色を設定する文字色設定中間コードを登録し（Ｓ３０５），バンド文字色（Ｂ０３）を当該文字色（Ｂ０１）に設定された色に変更する（Ｓ３０６）。そして変更されたバンド文字色（Ｂ０３）の色が「『白』，『黒』，『グレー』のいずれ」でもでもなければバンド色空間（Ｂ０５）をカラー色空間に変更し（Ｓ３０８），当該バンドに対応する中間コードバッファＩＣ−ＢＵＦ内に変換した文字中間コードを登録する（Ｓ３０９）。反対に，両者が一致していれば，当該文字の画像オブジェクトの色は変更する必要がないので，文字色設定中間コードは登録されずに文字中間コード登録がされ（Ｓ３０９），バンド文字色（Ｂ０３）も変更されないまま維持される。
【００４２】
図１０に示す手順を，印刷プレーン１の文字の画像オブジェクトの例に当てはめてみる。例えば，文字２「Ｔｅｘｔ」については，第１バンドと第２バンドに位置するので，文字中間コード登録先頭バンド番号「１」（第１バンド），登録最終バンド番号「２」（第２バンド）が算出される（Ｓ３０１）。そして，登録先頭バンド番号は「１」であるから，Ｓ３０２で登録先頭バンド番号としてi＝１が設定され（Ｓ３０２），ｉ＝１が登録最終バンド番号であるかどうかの判断がされる（Ｓ３０３）。ここでは、バンド１は登録最終バンドではないので、Ｓ３０４に進む。
【００４３】
次に，第１バンドのバンド文字色（Ｂ０３）と，文字２「Ｔｅｘｔ」についての文字色とが比較される（Ｓ３０４）。ここで，文字２については色設定コマンドが記述されていないので，文字色（Ｂ０１）はＳ１１で設定した初期値のまま「黒色」である。また，バンド文字色（Ｂ０１）もＳ１２で「黒色」に初期値設定されている。すると当該第１バンドのバンド文字色（Ｂ０３）と文字２についての文字色（Ｂ０１）はいずれも「黒色」で等しいので，当該文字色（Ｂ０１）のままＩＣ−ＢＵＦの第１バンド領域に文字２の文字中間コードが登録され（Ｓ３０９），当該バンド文字色（Ｂ０３）も「黒色」のまま維持される。よって，当該バンドのバンド色空間（Ｂ０５）はＳ１２で設定した初期値「モノクロ」のまま維持される。そして，第１バンドと同じ処理が登録最終バンド番号「２」に対応する第２バンドについても，実行される（Ｓ３１０，Ｓ３０３）。
【００４４】
文字６については，Ｓ３０１で登録先頭バンド番号＝登録最終バンド番号＝「４」が算出される。第４バンドのバンド文字色（Ｂ０３）と，文字６についての文字色（Ｂ０１）とが比較される（Ｓ３０４）が、文字６については，Ｃ１１の文字色設定コマンドにより文字色変数のＢ０１が「８０％グレイ（#333333）」に設定されており，一方，第４バンドのバンド文字色（Ｂ０３）は、第４バンドで文字６の前に文字の描画コマンドがないため初期値「黒色」であるので，文字色（Ｂ０１）と第４バンドのバンド文字色（Ｂ０３）は異なることになる（Ｓ３０４のＮＯ）。そうすると，第４バンドのＩＣ−ＢＵＦには「８０％グレイ（#333333）」の文字色設定中間コードが登録され（Ｓ３０５），また，当該バンドのバンド文字色（Ｂ０３）も「８０％グレイ（#333333）」に変更される（Ｓ３０６）。すると当該バンド文字色（Ｂ０３）は，「『白』，『黒』『グレー』のいずれか」であるので（Ｓ３０７），当該バンドのバンド色空間（Ｂ０５）については，「カラー」に変更する処理（Ｓ３０８）は行われず，第４バンドのバンド色空間は初期値「モノクロ」のまま保持される（Ｓ３０７）。
【００４５】
図１１は，本実施の形態における，図形中間コード登録のフローチャート図である。図９の工程Ｓ２４に対応する。まず，コントローラ１２のＣＰＵは，図形中間コードが登録されるべき登録先頭バンド番号と登録最終バンド番号を算出する（Ｓ４０１）。次に，登録先頭バンドから登録最終バンドについて，当該バンドのバンド図形色（Ｂ０４）の判断（Ｓ４０４〜Ｓ４０８）と中間コードバッファＩＣ−ＢＵＦへの図形中間コードの登録（Ｓ４０９）を行う（Ｓ４０３〜Ｓ４１０）。
【００４６】
すなわち，ＣＰＵは，まず登録先頭バンドについて，当該バンド内の図形の画像オブジェクトについて図形色（Ｂ０２）変数に格納された色をバンド図形色（Ｂ０４）の色と比較する（Ｓ４０４）。ここで，両者が異なれば，当該バンドに当該図形の画像オブジェクトの色を設定する図形色設定中間コードを登録し（Ｓ４０５），バンド図形色（Ｂ０４）を当該図形色（Ｂ０２）に設定された色に変更する（Ｓ４０６）。そして変更されたバンド図形色（Ｂ０４）の色が「『白』，『黒』，『グレー』のいずれ」でもなければバンド色空間（Ｂ０５）をカラー色空間に変更し（Ｓ４０８），当該バンドに対応する中間コードバッファＩＣ−ＢＵＦ内に変換した図形中間コードを登録する（Ｓ４０９）。反対に，両者が一致していれば当該図形の画像オブジェクトの色は初期値「黒色」のまま図形中間コード登録がされ（Ｓ４０９），バンド図形色（Ｂ０４）は初期設定された「黒色」のまま維持される。
【００４７】
図１１に示す手順を，印刷プレーン１の図形の画像オブジェクトの例に当てはめてみる。例えば，図形４については，第２バンドと第３バンドに位置するから，登録先頭バンド番号「２」（第２バンド），登録最終バンド番号「３」（第３バンド）が算出される。そして，登録先頭バンド番号は「２」であるから，第２バンドのバンド図形色（Ｂ０４）と図形４についての図形色（Ｂ０２）とが比較される（Ｓ４０４）。ここで，バンド図形色は「黒」に初期値設定されている（Ｓ１２）ので，バンド図形色は「黒」である。一方，図形４についての図形色（Ｂ０２）は図形色設定コマンドで「青色（#0000ff）」に設定されているので，バンド図形色（Ｂ０４）「黒色」とは異なる（Ｓ４０４のＮＯ）。よって，当該バンドのＩＣ−ＢＵＦには「青色（#0000ff）」の図形４を描画する中間コードの登録が行われ（Ｓ４０５），第２バンドのバンド図形色（Ｂ０４）は「青色」に変更される（Ｓ４０６）。すると，登録した図形色（Ｂ０４）「青色」は，「『白』，『黒』，『グレー』のいずれ」でもないので（Ｓ４０７のＮＯ），第２バンドのバンド色空間（Ｂ０５）は「カラー」に変更される（Ｓ４０８）。さらに第２バンドと同じ処理が登録最終バンド番号「３」に対応する第３バンドについても，実行される（Ｓ３１０，Ｓ３０３）。
【００４８】
次に，図形５については，第３バンドと第４バンドに位置するから，登録先頭バンド番号「３」（第３バンド），登録最終バンド番号「４」（第４バンド）が算出される。そして，登録先頭バンド番号は「３」であるから，第３バンドのバンド図形色（Ｂ０４）と図形５についての図形色（Ｂ０２）とが比較される（Ｓ４０４）。ここで，バンド３のバンド図形色は，図形３の処理において「青色（#0000ff）」に変更されている。一方，図形５についての図形色（Ｂ０２）は図形色設定コマンドで「４０％グレイ（#999999）」に設定されているので，当該バンド図形色（Ｂ０３）「青色（#0000ff）」とは異なる（Ｓ４０４のＮＯ）。よって，当該バンドのＩＣ−ＢＵＦには「４０％グレイ（#999999）」の図形５に対応する中間コードの登録が行われ（Ｓ４０５），第３バンドのバンド図形色（Ｂ０３）は最後に登録された「４０％グレイ（#999999）」に変更される（Ｓ４０６）。なお，当該バンドに最後に登録した図形色（Ｂ０３）は，「４０％グレイ（#999999）」であって，「『白』，『黒』，『グレー』のいずれか」であるので（Ｓ４０７のＹＥＳ），第３バンドのバンド色空間（Ｂ０５）を「カラー」に変更する（Ｓ４０８）処理は行われない。しかし，図４の処理において，当該バンド色空間（Ｂ０５）は「カラー」に設定されているので，結局第３バンドはカラー色空間ということになる。
【００４９】
図１２は，本実施の形態における，イメージ中間コード登録のフローチャート図である。図９の工程Ｓ２５に対応する。まず，コントローラ１２のＣＰＵは，イメージ中間コードが登録されるべき登録先頭バンド番号と登録最終バンド番号を算出する（Ｓ５０１）。次に，登録先頭バンドから登録最終バンドについて順番に，当該バンドのバンドイメージ色（Ｂ０４）の判断（Ｓ５０４，Ｓ５０５）と中間コードバッファＩＣ−ＢＵＦへのイメージ中間コードの登録（Ｓ５０６）を行う（Ｓ５０３〜Ｓ５０６）。
【００５０】
すなわち，ＣＰＵは，まず登録先頭バンドについて，当該バンド内のイメージの画像オブジェクトについて，ホストコンピュータから提供されるソース画像データのビットマップをピクセル毎に解析し，当該イメージの画像オブジェクトが「『白』，『黒』，『グレー』のいずれ」でもなければ（Ｓ５０４のＮＯ）当該バンドのバンド色空間（Ｂ０５）をカラー色空間に変更し（Ｓ５０５），当該バンドに対応する中間コードバッファＩＣ−ＢＵＦ内に変換したイメージ中間コードを登録する（Ｓ５０６）。反対に，当該イメージの画像オブジェクトが「『白』，『黒』，『グレー』のいずれ」かであれば，当該バンドのバンド色空間（Ｂ０５）は初期値「モノクロ」が維持される。
【００５１】
図１２に示す手順を，印刷プレーン１の図形の画像オブジェクトの例に当てはめてみる。例えば，イメージ３については，第２バンドと第３バンドに位置するから，登録先頭バンド番号「２」（第２バンド），登録最終バンド番号「３」（第３バンド）が算出される。そして，登録先頭バンド番号は「２」であるから，第２バンドにおける処理がまず行われる。イメージ３はカラーイメージであるので，ピクセル単位に解析されると，「『白』，『黒』，『グレー』のいずれ」でもない（Ｓ５０４のＮＯ）。よって，第２バンドのバンド色空間（Ｂ０５）は「カラー」に設定され，第２バンドに対応するＩＣ−ＢＵＦにカラーのイメージ中間コードが登録される（Ｓ５０６）。
さらに，同様の処理がバンド３についても実行される（Ｓ５０７）。
【００５２】
図１０〜図１２に示す手順は，印刷プレーンの画像オブジェクトの印刷コマンドをバンド毎の中間コードに変換しながら各バンドがカラー色空間かモノクロ色空間かを判断する変換手段又は変換工程に対応している。よって，印刷プレーン毎の印刷データをバンド毎の中間コードに変換する過程で，最小限の追加処理によってバンドの色空間がカラーかモノクロかを判断でき，それぞれのバンドの色空間に応じた効率的なビットマップ画像データの展開が可能になる。
【００５３】
また図１０〜図１２に示す手順によれば，印刷データをバンド毎の中間コードに変換する時に，バンドの色空間が「カラー」の場合は，当該バンドの色空間変数（Ｂ０５）に設定された初期値「モノクロ」を書き換えるだけであるので，バンド色空間判断の高速化が可能になる。すなわち，全バンドのバンド色空間は初期値として「モノクロ」に設定され，ＰＤＬデータのコマンド列を中間コードに変換する過程で，イメージ３に対するコマンドＣ０５，Ｃ０６の処理で第２バンド，第３バンドのバンド色空間変数が「カラー」に変換される。その結果，全てのコマンド列の変換処理が終了した時点で，図７の最終的なバンド色空間になる。
【００５４】
なお，図１２におけるイメージ中間コード登録の場合の変形例は，次のとおりである。イメージ中間コード登録の場合は，文字中間コード登録の場合（図１０）や，図形中間コード登録の場合（図１１）と異なる処理が可能となる。すなわち，イメージの画像オブジェクトの色の判断は，上述したように画像オブジェクトを形成するピクセル単位で行う必要があるが，処理負担の増大を招く。そこで，処理負担を軽減するために，ピクセル単位で色を解析して「『白』，『黒』，『グレー』のいずれか」という判断（Ｓ５０４）を行うことを省略し，イメージが存在するバンド色空間は一律「カラー」とする（Ｓ５０４）ことが有効な手段となる。つまり，図１２の判断工程Ｓ５０４を省略する。たしかに，バンド色空間がカラーの場合は，当該バンドのビットマップ画像データはＣ，Ｍ，Ｙ，Ｋの４プレーン分展開されることになるが（図２），前記ピクセル単位の色空間の判断を行う場合に比べると，全体的な処理効率は優れているからである。
【００５５】
図１３は，本実施の形態における，ビットマップ画像展開のフローチャート図である。図６の工程Ｓ１８に対応する。コントローラ１２は，印刷プレーン内のすべてのバンドについて中間コードを順次ビットマップ画像データに展開し，バンド毎にビットマップバッファＢ−ＢＵＦに登録する。まず，展開ユニット１８は，バンド色空間がカラーかモノクロかを判断し（Ｓ７０２），カラーの場合はＲＧＢカラーバンドバッファをメモリユニット１４上に確保・初期化し（Ｓ７０８），モノクロの場合はモノクロバンドバッファを確保・初期化する（Ｓ７０４）。次に，展開ユニット１８は，ＲＧＢカラーバンドバッファへＩＣ−ＢＵＦに登録されたカラー色空間のオブジェクト画像の中間コードをＲＧＢビットマップデータに展開（変換）する（Ｓ７０９）。さらに，色変換ユニット２０がＲＧＢビットマップデータをＣＭＹＫビットマップデータに色変換し（Ｓ７１０），圧縮・解凍ユニット２２がＣＭＹＫプレーン画像を圧縮する（Ｓ７１１）。モノクロバンドの場合は，展開ユニット１８がモノクロバンドバッファへの中間コードをＲＧＢ色空間のグレーのビットマップ画像データに展開し（Ｓ７０５），色変換ユニット２０がＣＭＹＫ色空間におけるＫプレーンに変換し（Ｓ７０６），圧縮・展開ユニット１８がＫプレーンのビットマップ画像データを圧縮する（Ｓ７０７）。
【００５６】
例えば，印刷プレーン１の例では，第１バンドのバンド色空間はモノクロであるのでモノクロバンドバッファが確保され，初期化された後にＲＧＢ色空間におけるビットマップ画像データが展開され，ＣＭＹＫ色空間におけるＫプレーンのビットマップ画像データに変換された後，展開，圧縮される。次に，第２バンドについてはバンド色空間はカラーであるので，ＲＧＢカラーバンドバッファが確保され，初期化された後にＲＧＢビットマップ画像データが展開される。そして，ＲＧＢ色空間からＣＭＹＫ色空間へ色空間変換がされた後に，ＣＭＹＫビットマップデータとして圧縮される。第３バンドはカラー色空間であるので，第２バンドと同じ処理が行われ，第４バンドはモノクロ色空間であるので第１バンドと同じ処理が行われる。
【００５７】
以上，図６〜図１３の手順を，各図に即して説明した。ここで，再度，バンド毎の色空間の判断について，印刷プレーン１の例で全体の処理の流れを説明する。まず，文字色（Ｂ０１），図形色（Ｂ０２），バンド文字色（Ｂ０３），バンド図形色（Ｂ０４），及びバンド色空間（Ｂ０５）の各変数が初期設定される（Ｓ１１，Ｓ１２）。印刷データＰＤＬが読み込まれ（Ｓ１３），Ｃ０１〜Ｃ１５のＰＤＬコマンドが順に解析される。
【００５８】
文字２については，第１バンド，第２バンドに対して順番に，次の処理が行われる。すなわち，第１バンドに対しては，Ｃ０１〜Ｃ０４が解析されて文字中間コードに変換されつつ，文字色（Ｂ０１）は初期値「黒色」が維持され，ＩＣ−ＢＵＦに文字中間コードが登録される（Ｓ３０９）。第１バンドのバンド色空間は初期値「モノクロ」のまま維持される（Ｓ３０７，Ｓ３０８）。第２バンドに対しては，Ｃ０１〜Ｃ０４が解析されて文字中間コードに変換されつつ，文字色（Ｂ０１）は初期値「黒色」が維持され，ＩＣ−ＢＵＦに文字中間コードが登録される（Ｓ３０９）。第２バンドのバンド色空間は初期値「モノクロ」のまま維持される（Ｓ３０７，Ｓ３０８）。
【００５９】
次に，イメージ３については，第２バンド，第３バンドに対して順番に，次の処理が行われる。すなわち，第２バンドに対しては，Ｃ０５，Ｃ０６が解析されてイメージ中間コードに変換されながらピクセル毎に画像オブジェクトの色が判断される。すると，当該オブジェクトはカラーであるので第２バンドのバンド色空間はカラーに変更され（Ｓ５０５），ＩＣ−ＢＵＦにイメージ中間コードが登録される（Ｓ５０６）。第３バンドに対しては，Ｃ０５，Ｃ０６が解析されてイメージ中間コードに変換されながらピクセル毎に画像オブジェクトの色が判断される。すると，当該オブジェクトはカラーであるので第３バンドのバンド色空間はカラーに変更され（Ｓ５０５），ＩＣ−ＢＵＦにイメージ中間コードが登録される（Ｓ５０６）。
【００６０】
また，図形４については，第２バンド，第３バンドに対して順番に，次の処理が行われる。すなわち，第２バンドに対しては，Ｃ０７，Ｃ０８が解析されて図形中間コードに変換されつつ，図形色（Ｂ０２）は「青色」に変更され（Ｓ４０６），ＩＣ−ＢＵＦに図形中間コードが登録される（Ｓ４０９）。そして，第２バンドのバンド色空間は，イメージ３の処理において「カラー」に変更されているので，そのまま維持される（Ｓ４０８）。第３バンドに対しては，Ｃ０７，Ｃ０８が解析されて図形中間コードに変換されつつ，図形色（Ｂ０２）は「青色」に変更され（Ｓ４０６），ＩＣ−ＢＵＦに図形中間コードが登録される（Ｓ４０９）。そして，第３バンドのバンド色空間は，イメージ３の処理において変更された「カラー」のまま維持される（Ｓ４０８）。
【００６１】
さらに，図形５については，第３バンド，第４バンドに対して順番に，次の処理が行われる。すなわち，第３バンドに対しては，Ｃ０９，Ｃ１０が解析されて図形中間コードに変換されつつ，図形色（Ｂ０２）は「グレー」に変更され（Ｓ４０６），ＩＣ−ＢＵＦに図形中間コードが登録される（Ｓ４０９）。そして第３バンドのバンド色空間は図形４の処理の段階で「カラー」に変更されており（Ｓ４０８），そのまま維持される（Ｓ４０７）。第４バンドに対しては，Ｃ０９，Ｃ１０が解析されて図形中間コードに変換されつつ，図形色（Ｂ０２）は「グレー」に変更され（Ｓ４０６），ＩＣ−ＢＵＦに図形中間コードが登録される（Ｓ４０９）。そして第４バンドのバンド色空間は初期値「モノクロ」のまま維持される（Ｓ４０７，Ｓ４０８）。
【００６２】
最後に，文字６については，第４バンドに対して，次の処理が行われる。すなわち，Ｃ１１〜Ｃ１５が解析されて文字中間コードに変換されつつ，文字色（Ｂ０１）は「グレー」に変更され（Ｓ３０６），ＩＣ−ＢＵＦに文字中間コードが登録される（Ｓ３０９）。なお，バンド色空間は初期値「モノクロ」のまま維持される（Ｓ３０７，Ｓ３０８）。
【００６３】
以上の図６〜図１３に示す手順は，図３（Ａ）の構成について説明したが，図３（Ｂ），（Ｃ）についても適用できる。図３（Ｂ）に示したプリンタの構成では，ホストコンピュータＨＯＳＴ内のプリンタドライバＰ−ＤＲが，印刷データＰＤＬからバンド毎の中間コードＩＣを生成し，その中間コードＩＣをプリンタのコントローラ１２に供給する。その場合は，プリンタドライバＰ−ＤＲが中間コードを生成しながら各バンド毎の色空間がカラーかモノクロかを判断し，コントローラ１２に供給する。コントローラ１２は，その与えられた色空間の値に基づいてバンドバッファ内にモノクロバンドバッファまたはＲＧＢカラーバンドバッファに必要な領域を確保し，そのバンドメモリ内にＫプレーンのビットマップ画像データ，またはＲＧＢビットマップ画像データから変換されたＣＭＹＫビットマップ画像データが展開される。
【００６４】
図３（Ｃ）に示したプリンタの構成では，ホストコンピュータＨＯＳＴ内のプリンタドライバＰ−ＤＲが，中間コードの生成，バンド色空間の判断，ビットマップ画像データの展開処理，色変換処理，圧縮処理を行い，圧縮されたビットマップ画像データＢＭをコントローラ１２に出力する。この場合は，図８〜図１２の処理がプリンタドライバＰ−ＤＲにより行われ，図１３の処理がコントローラにより行われる。この場合は，プリンタドライバＰ−ＲＲが，バンドメモリの容量を，バンド毎に展開されたプレーンのビットマップ画像データに従って確保し，画像処理を行うので，処理すべきデータ量を軽減することができる。
【００６５】
以上のように，いずれのプリンタ構成であっても，本実施の形態を適用することができる。いずれの場合であっても，印刷プレーン１のようなカラー色空間とモノクロ色空間が混在するような印刷プレーンにあっては，バンド毎に効率的なビットマップデータの展開が可能となる。
【図面の簡単な説明】
【００６６】
【図１】印刷プレーンをバンドに分割した場合の，画像オブジェクト例とバンドとの関係を説明する図である。
【図２】印刷プレーン１（Ａ）をバンド毎にビットマップ画像データに展開した状態を説明する図（Ｂ）である。
【図３】本実施の形態における画像処理装置の概略構成図（（Ａ）〜（Ｃ））である。
【図４】本実施の形態におけるプリンタの構成図である。
【図５】本実施の形態における印刷データのＰＤＬで記述されたコマンド列の一例を説明する図である。
【図６】本実施の形態における，１印刷プレーンの印刷手順のフローチャート図（Ａ）及び中間コードへの変換に用いる変数を説明する図（Ｂ）である。
【図７】本実施の形態における，バンド毎に変換され中間コードバッファＩＣ−ＢＵＦに登録された中間コードの例を示す図である。
【図８】本実施の形態における，各画像オブジェクトの色設定のフローチャート図である。
【図９】本実施の形態における，中間コード登録のフローチャート図である。
【図１０】本実施の形態における，文字中間コード登録のフローチャート図である。
【図１１】本実施の形態における，図形中間コード登録のフローチャート図である。
【図１２】本実施の形態における，イメージ中間コード登録のフローチャート図である。
【図１３】本実施の形態における，ビットマップ画像データ展開のフローチャート図である。
【符号の説明】
【００６７】
１：  印刷プレーン          ２：文字（画像オブジェクト）
ＢＮＤ１：バンド領域        １２：コントローラ（画像処理装置）
Ｂ０５：バンド色空間
【図１】
2006352755.tif 000003
【図２】
2006352755.tif 000004
【図３】
2006352755.tif 000005
【図４】
2006352755.tif 000006
【図５】
2006352755.tif 000007
【図６】
2006352755.tif 000008
【図７】
2006352755.tif 000009
【図８】
2006352755.tif 000010
【図９】
2006352755.tif 000011
【図１０】
2006352755.tif 000012
【図１１】
2006352755.tif 000013
【図１２】
2006352755.tif 000014
【図１３】
2006352755.tif 000015