(57)【要約】【課題】  画像をバンドごとに表す中間コードデータから印刷データを生成する処理時間を短くすることができるデータ処理装置、データ処理方法、データ処理プログラムおよびそのプログラムを記録した記録媒体を提供すること。【解決手段】  データ処理装置１００は、バンドが直接展開できるか否かを判定する展開処理判定部２０と、直接展開不可能と判定したバンドを、直接展開可能な領域のバンドと直接展開不可能な領域のバンドとに分割するバンド分割部２１と、直接展開可能な領域のバンドに従来の処理方法より処理時間が短い直接展開処理を行うことにより、バンドに対応する印刷データを生成する直接展開部２２と、直接展開不可能な領域のバンドに、従来の処理方法である非直接展開処理を行うことにより、バンドに対応する印刷データを生成する非直接展開部２３とを備えている。【選択図】      図１
2007021730.tif 000002
【特許請求の範囲】
【請求項１】
複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理装置であって、
前記描画オブジェクトをラスタデータに展開してから前記展開したラスタデータに対して行う処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、前記バンドデータのバンドに対応する印刷データを生成する第１のデータ処理部と、
前記第１のデータ処理部が行う処理に先立ち、前記描画オブジェクト間の重なりをラスタデータに表現するための描画命令に基づいて、前記描画オブジェクトごとに前記第１のデータ処理部により処理することが可能であるか否かを判定する判定部と、
前記判定部の判定結果に基づいて、前記バンドデータのバンドを、前記第１のデータ処理部により処理することが可能な領域および前記第１のデータ処理部により処理することが不可能な領域に分割する分割部と、を備え、
第１のデータ処理部により処理することが可能な領域については前記第１のデータ処理部が処理することを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
前記描画オブジェクトをラスタデータに展開し、前記展開したラスタデータをラスタデータ記憶部に書き込む処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、前記ラスタデータ記憶部に書き込まれたラスタデータに基づいて前記バンドデータのバンドに対応する印刷データを生成する第２のデータ処理部を、更に備え、
前記第１のデータ処理部により処理することが不可能な領域は前記第２のデータ処理部が処理することを特徴とするデータ処理装置。
【請求項３】
請求項２に記載のデータ処理装置において、
前記分割部は、前記判定部の判定結果に基づいて、前記バンドデータのバンドを、前記第１のデータ処理部により処理することが可能な描画オブジェクトのみを有する領域のバンド、および前記第１のデータ処理部により処理することが不可能な描画オブジェクトを有する領域のバンドに分割することを特徴とするデータ処理装置。
【請求項４】
請求項３に記載のデータ処理装置において、
前記分割部が分割した、前記第１のデータ処理部により処理することが可能なバンドについて生成した印刷データと、前記第１のデータ処理部により処理することが不可能なバンドについて生成した印刷データとを結合して、分割する前のバンドに対応する印刷データを復元する復元部を、更に備えることを特徴とするデータ処理装置。
【請求項５】
請求項１ないし４のいずれか一項に記載のデータ処理装置において、
前記判定部は、前記描画オブジェクトごとに行う判定結果に基づいて、前記バンドデータのバンドについて、前記第１のデータ処理部により処理することが可能か否かを更に判定し、
前記第１のデータ処理部により処理することが不可能と判定したバンドについては、前記分割部が分割する処理を行い、
前記第１のデータ処理部により処理することが可能と判定したバンドについては、前記第１のデータ処理部が処理を行うことを特徴とするデータ処理装置。
【請求項６】
請求項１ないし５のいずれか一項に記載のデータ処理装置において、
前記判定部は、前記描画オブジェクトをラスタデータに展開する処理において、既に展開されたラスタデータに影響を受けない描画命令を有する描画オブジェクトを、前記第１のデータ処理部により処理することが可能な描画オブジェクトと判定することを特徴とするデータ処理装置。
【請求項７】
請求項１ないし６のいずれか一項に記載のデータ処理装置において、
前記描画命令ごとに、既に展開されたラスタデータに影響を受けない条件を示したテーブルを有しており、
前記判定部は、前記テーブルの条件に基づいて、前記第１のデータ処理部による処理が可能な領域であるか否かを判定することを特徴とするデータ処理装置。
【請求項８】
請求項１ないし７のいずれか一項に記載のデータ処理装置において、
前記第１のデータ処理部は、前記描画オブジェクトをラスタデータに展開してから、前記展開したラスタデータを前記ドットに対応する色の色変換データに変換し、変換した色変換データを色変換データ記憶部に書き込む処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、前記色変換データ記憶部に書き込まれた色変換データに基づいて前記バンドデータのバンドに対応する印刷データを生成することを特徴とするデータ処理装置。
【請求項９】
請求項１ないし７のいずれか一項に記載のデータ処理装置において、
前記第１のデータ処理部は、前記描画オブジェクトをラスタデータに展開してから、前記展開したラスタデータを前記ドットに対応する色の色変換データに変換し、色変換データを前記ドットに対応する階調数の階調数変換データに変換し、変換した階調数変換データを階調数変換データ記憶部に書き込む処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、前記階調数変換データ記憶部に書き込まれた階調数変換データに基づいて前記バンドデータのバンドに対応する印刷データを生成することを特徴とするデータ処理装置。
【請求項１０】
複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理方法であって、
前記描画オブジェクトをラスタデータに展開してから前記展開したラスタデータに対して行う処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、前記バンドデータのバンドに対応する印刷データを生成する第１のデータ処理工程と、
前記第１のデータ処理工程における処理に先立ち、前記描画オブジェクト間の重なりをラスタデータに表現するための描画命令に基づいて、前記描画オブジェクトごとに前記第１のデータ処理工程において処理することが可能であるか否かを判定する判定工程と、
前記判定工程における判定結果に基づいて、前記バンドデータのバンドを、前記第１のデータ処理工程において処理することが可能な領域および前記第１のデータ処理工程において処理することが不可能な領域に分割する分割工程と、を備え、
第１のデータ処理工程において処理することが可能な領域については前記第１のデータ処理工程において処理することを特徴とするデータ処理方法。
【請求項１１】
複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理プログラムであって、
コンピュータを、
前記描画オブジェクトをラスタデータに展開してから前記展開したラスタデータに対して行う処理を、前記バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、前記バンドデータのバンドに対応する印刷データを生成する第１のデータ処理部、
前記第１のデータ処理部が行う処理に先立ち、前記バンドデータを記憶しているバンドデータ記憶部から、前記描画オブジェクト間の重なりをラスタデータに表現するための描画命令を読み出して、前記描画命令に基づいて、前記描画オブジェクトごとに前記第１のデータ処理部により処理することが可能であるか否かを判定する判定部、
前記判定部の判定結果に基づいて、前記バンドデータのバンドを、前記第１のデータ処理部により処理することが可能な領域および前記第１のデータ処理部により処理することが不可能な領域に分割する分割部、として機能させ、
第１のデータ処理部により処理することが可能な領域については前記第１のデータ処理部に処理させることを特徴とするデータ処理プログラム。
【請求項１２】
請求項１１に記載のデータ処理プログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
印刷対象の画像をバンドごとにラスタライズすることにより、印刷データを生成するデータ処理装置、データ処理方法、データ処理プログラムおよびそのプログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
従来、プリンタなどの画像形成装置では、ホストコンピュータなどから送信された印刷対象データから、ドットを形成して印刷を行うための印刷データを生成している。印刷データに従って印刷することにより、印刷対象データに対応する画像を印刷することができる。ここで、印刷対象データはＰＤＬなどのプリンタ制御言語で記述されているので、プリンタ内部ではラスタデータへの展開が容易な中間コードデータに変換して、処理を行っている。
【０００３】
中間コードデータをラスタデータに展開する際には、ＲＯＰ処理と呼ばれる演算を行うことによって、プリンタ制御言語で記述された描画オブジェクトの重なりを表現したラスタデータに変換している（例えば、特許文献１参照）。ＲＯＰ処理では、新たに書き込む画像Ｓ（Source：書き込み対象画像）、書き込もうとしているパターンＰと、既に書き込まれている画像Ｄ（Destination：元画像）の３つのオブジェクトを用いて演算するものであり、各オブジェクトに対して、処理の内容に応じた論理演算を行い、その結果を元画像Ｄに書き込むことにより、描画オブジェクトの重なりを表現することができる。ＲＯＰ処理を行うことにより、複数の描画オブジェクトが重なる領域に、オブジェクト間の上下関係に加えて、「透かし」や「反転」など種々の効果を与えることができる。
【０００４】
ここで、ある描画オブジェクトに対してＲＯＰ処理を行うためには、以前に処理したラスタデータをメモリから読み出し、当該ラスタデータを元画像ＤとしてＲＯＰ処理に用いる必要があった。そのため、ＲＯＰ処理して得られたラスタデータはメモリに書き込んで保存し、元画像Ｄとして用いることができるようにしておく必要もあった。
【０００５】
そこで、通常、ＲＯＰ処理を施す際には、下層に描かれるべき描画オブジェクトから上層に描かれるべき描画オブジェクトの順に、それぞれの描画オブジェクトに対応するＲＯＰ処理の内容に応じて論理演算し、得られた結果を順にメモリ上に上書きすることにより、全描画オブジェクトに対応するラスタデータに展開する。そして、全描画オブジェクトに対応するラスタデータから印刷データを生成している。なお、この手順に従って行う処理を、以下では、従来の処理方法と呼ぶ。
【０００６】
また、ラスタデータを展開する際には、ラスタデータを記憶しておくメモリ容量が多く必要となるので、１つの画像を高さ方向に所定の間隔（以下、バンド高さという）で分割したバンドと呼ばれる領域ごとに処理を行っている（例えば、特許文献２参照）。特に、特許文献２に記載の技術では、使用するメモリ容量が異なる２つの処理に合わせて、バンド高さを切り替えることにより、使用する容量を一定にしている。
【０００７】
【特許文献１】特開２００３−２７１９７８号公報
【特許文献２】特開２０００−３３５０２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、ラスタデータを展開する際には、各描画オブジェクトにＲＯＰ処理を行うごとに処理結果のラスタデータをメモリに上書き、さらに、ＲＯＰ処理を行うためにメモリから既に展開したラスタデータを元画像Ｄとして読み出す必要があるため、メモリへのアクセス回数が多くなってしまう。そのため、印刷データを生成するために要する処理時間が長くなってしまうという課題があった。
【０００９】
そこで、本発明は、画像をバンドごとに表す中間コードデータから印刷データを生成する処理時間を短くすることができるデータ処理装置、データ処理方法、データ処理プログラムおよびそのプログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明のデータ処理装置は、複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理装置であって、描画オブジェクトをラスタデータに展開してから展開したラスタデータに対して行う処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、バンドデータのバンドに対応する印刷データを生成する第１のデータ処理部と、第１のデータ処理部が行う処理に先立ち、描画オブジェクト間の重なりをラスタデータに表現するための描画命令に基づいて、描画オブジェクトごとに第１のデータ処理部により処理することが可能であるか否かを判定する判定部と、判定部の判定結果に基づいて、バンドデータのバンドを、第１のデータ処理部により処理することが可能な領域および第１のデータ処理部により処理することが不可能な領域に分割する分割部と、を備え、第１のデータ処理部により処理することが可能な領域については第１のデータ処理部が処理することを特徴とする。
【００１１】
この構成によれば、バンドに含まれる複数の描画オブジェクトについて、描画オブジェクト間の重なりをラスタデータに表現するための描画命令に基づいて、描画オブジェクトごとに第１のデータ処理部により処理することが可能か否かを判定する。そして、判定結果に基づき、分割部は、第１のデータ処理部により処理することが可能な領域および第１のデータ処理部により処理することが不可能な領域に分割する。ここで、第１のデータ処理部は、描画オブジェクトをラスタデータに展開してから展開したラスタデータに対して行う処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、バンドデータのバンドに対応する印刷データを生成しているので、展開したラスタデータを描画オブジェクトごとにメモリに書き込む処理を行っていない。第１のデータ処理部によれば、従来の処理方法に比べて、メモリへの書き込みやメモリからの読み出す処理の回数が少なくなるので、より高速に処理することができる。バンドを分割して得られた、第１のデータ処理部により処理することが可能な領域については、処理が高速な第１のデータ処理部が処理するので、印刷データを生成するための処理時間を短くすることができる。
【００１２】
ここで、描画オブジェクトをラスタデータに展開し、展開したラスタデータをラスタデータ記憶部に書き込む処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、ラスタデータ記憶部に書き込まれたラスタデータに基づいてバンドデータのバンドに対応する印刷データを生成する第２のデータ処理部を、更に備え、第１のデータ処理部により処理することが不可能な領域は第２のデータ処理部が処理することが好ましい。
【００１３】
このようにすれば、第２のデータ処理部は、描画オブジェクトをラスタデータに展開し、展開したラスタデータをラスタデータ記憶部に書き込む処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、ラスタデータ記憶部に書き込まれたラスタデータに基づいてバンドデータのバンドに対応する印刷データを生成する、従来の処理方法を行う。第２のデータ処理部によれば、既に展開された描画オブジェクトのラスタデータが記憶されているので、描画命令に関わらず描画オブジェクト間の重なりを表現したラスタデータを展開することができる。したがって、第２のデータ処理部は、第１のデータ処理部により処理することが不可能な描画オブジェクトでも処理することができる。また、データ処理装置としては、描画オブジェクトの判定結果に関わらず、全描画オブジェクトに対応する印刷データを生成することができる。
【００１４】
ここで、分割部は、判定部の判定結果に基づいて、バンドデータのバンドを、第１のデータ処理部により処理することが可能な描画オブジェクトのみを有する領域のバンド、および第１のデータ処理部により処理することが不可能な描画オブジェクトを有する領域のバンドに分割することが好ましい。
【００１５】
このようにすれば、第１のデータ処理部は、第１のデータ処理部により処理することが可能と判定された描画オブジェクトのみを有する領域のバンドを処理するので、第１のデータ処理部による処理を確実に行うことができる。
【００１６】
ここで、分割部が分割した、第１のデータ処理部により処理することが可能なバンドについて生成した印刷データと、第１のデータ処理部により処理することが不可能なバンドについて生成した印刷データとを結合して、分割する前のバンドに対応する印刷データを復元する復元部を、更に備えることが好ましい。
【００１７】
このようにすれば、互いに分割されたバンドに対応する印刷データを結合することによって、分割する前の所定の高さを有したバンドに対応する印刷データを得ることができる。分割したことによりバンドの高さが変化することに応じて、印刷データからドットを形成する処理を変更する必要がなくなるので、より簡単に処理することができるようになる。
【００１８】
ここで、判定部は、描画オブジェクトごとに行う判定結果に基づいて、バンドデータのバンドについて、第１のデータ処理部により処理することが可能か否かを更に判定し、第１のデータ処理部により処理することが不可能と判定したバンドについては、分割部が分割する処理を行い、第１のデータ処理部により処理することが可能と判定したバンドについては、第１のデータ処理部が処理を行うことが好ましい。
【００１９】
このようにすれば、第１のデータ処理部により処理することが不可能と判定されたバンドについては分割する処理を行い、第１のデータ処理部により処理することが可能と判定されたバンドについては、第１のデータ処理部が処理を行う。判定結果に基づき、第１のデータ処理部により処理することが可能なバンドについては分割する処理を行うことなく、第１のデータ処理部が処理するので、処理時間をより短くすることができる。
【００２０】
ここで、判定部は、描画オブジェクトをラスタデータに展開する処理において、既に展開されたラスタデータに影響を受けない描画命令を有する描画オブジェクトを、第１のデータ処理部により処理することが可能な描画オブジェクトと判定することが好ましい。
【００２１】
このようにすれば、既に展開されたラスタデータに影響を受けない描画命令を有する描画オブジェクトを、第１のデータ処理部により処理することが可能な描画オブジェクトと判定する。既に展開されたラスタデータに影響を受けない描画オブジェクトについては、既に展開されたラスタデータを参照する必要がないので、展開したラスタデータをメモリに記憶する処理を行わない第１のデータ処理部でも処理することができる。したがって、第１のデータ処理部により処理することが可能な描画オブジェクトを適切に判定することができる。
【００２２】
ここで、描画命令ごとに、既に展開されたラスタデータに影響を受けない条件を示したテーブルを有しており、判定部は、テーブルの条件に基づいて、第１のデータ処理部による処理が可能な領域であるか否かを判定することが好ましい。
【００２３】
このようにすれば、テーブルの条件に基づいて判定することにより、描画オブジェクトが第１のデータ処理部による処理が可能であるか否かを容易に判定することができる。
【００２４】
ここで、第１のデータ処理部は、描画オブジェクトをラスタデータに展開してから、展開したラスタデータをドットに対応する色の色変換データに変換し、変換した色変換データを色変換データ記憶部に書き込む処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、色変換データ記憶部に書き込まれた色変換データに基づいてバンドデータのバンドに対応する印刷データを生成することが好ましい。
【００２５】
このようにすれば、描画オブジェクトごとにラスタデータをメモリに書き出すことがなく印刷データを生成するので、従来の処理方法に比べて、より高速に処理を行うことができる。
【００２６】
ここで、第１のデータ処理部は、描画オブジェクトをラスタデータに展開してから、展開したラスタデータをドットに対応する色の色変換データに変換し、色変換データをドットに対応する階調数の階調数変換データに変換し、変換した階調数変換データを階調数変換データ記憶部に書き込む処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行い、階調数変換データ記憶部に書き込まれた階調数変換データに基づいてバンドデータのバンドに対応する印刷データを生成することが好ましい。
【００２７】
このようにすれば、描画オブジェクトごとにラスタデータをメモリに書き出すことがなく印刷データを生成するので、従来の処理方法に比べて、より高速に処理を行うことができる。また、描画オブジェクトごとに色変換データをメモリに書き出すことがなく印刷データを生成するので、さらに高速に処理を行うことができる。
【００２８】
また、本発明は、方法の発明とすることもできる。すなわち、本発明のデータ処理方法は、複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理方法であって、描画オブジェクトをラスタデータに展開してから展開したラスタデータに対して行う処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、バンドデータのバンドに対応する印刷データを生成する第１のデータ処理工程と、第１のデータ処理工程における処理に先立ち、描画オブジェクト間の重なりをラスタデータに表現するための描画命令に基づいて、描画オブジェクトごとに第１のデータ処理工程において処理することが可能であるか否かを判定する判定工程と、判定工程における判定結果に基づいて、バンドデータのバンドを、第１のデータ処理工程において処理することが可能な領域および第１のデータ処理工程において処理することが不可能な領域に分割する分割工程と、を備え、第１のデータ処理工程において処理することが可能な領域については第１のデータ処理工程において処理することを特徴とする。
【００２９】
さらに、本発明は、プログラムまたはそのプログラムを記憶した記録媒体とすることもできる。すなわち、本発明のデータ処理プログラムは、複数の描画オブジェクトにより表現した画像を、所定の方向に分割した複数のバンドごとに表すバンドデータに基づいて、ドットを形成するための印刷データを生成するデータ処理プログラムであって、コンピュータを、描画オブジェクトをラスタデータに展開してから展開したラスタデータに対して行う処理を、バンドデータのバンドに含まれる複数の描画オブジェクトごとに順次行うことにより、バンドデータのバンドに対応する印刷データを生成する第１のデータ処理部、第１のデータ処理部が行う処理に先立ち、バンドデータを記憶しているバンドデータ記憶部から、描画オブジェクト間の重なりをラスタデータに表現するための描画命令を読み出して、描画命令に基づいて、描画オブジェクトごとに第１のデータ処理部により処理することが可能であるか否かを判定する判定部、判定部の判定結果に基づいて、バンドデータのバンドを、第１のデータ処理部により処理することが可能な領域および第１のデータ処理部により処理することが不可能な領域に分割する分割部、として機能させ、第１のデータ処理部により処理することが可能な領域については第１のデータ処理部に処理させることを特徴とする。また、このプログラムを記録した記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、ＩＣカード、パンチカードなど、コンピュータが読み取り可能な種々の媒体を利用することができる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明に係る一実施形態について図面を参照して説明する。
【００３１】
図１は、本実施形態に係る印刷システムの構成を示した図である。ホストコンピュータ１は、ＰＤＬなどの所定のプリンタ制御言語で記述された印刷対象データを含む印刷ジョブデータをプリンタ２に送信する。印刷ジョブデータを送信するホストコンピュータ１としては、パーソナルコンピュータの他、デジタルスチルカメラ、携帯情報端末、携帯電話など様々な装置を挙げることができる。
【００３２】
プリンタ２は、いわゆるプリンタページモードで印刷することができるカラーレーザプリンタである。プリンタ２は、データ処理装置１００と、プリントエンジン２００とを備えている。データ処理装置１００は、印刷ジョブデータに含まれる印刷対象データを、印刷可能なＣＭＹＫ（シアン、マゼンタ、イエロー、ブラック）の各色ドットを形成するための印刷データに変換し、プリントエンジン２００に供給する。プリントエンジン２００は、印刷データに従ってドットを形成することにより、印刷対象データが表す画像（以下、印刷対象画像という）を印刷する。
【００３３】
データ処理装置１００は、言語解釈部１０と、中間コード登録部１１と、中間コードデータメモリ１２と、描画処理部１３とを備えている。
【００３４】
言語解釈部１０は、ホストコンピュータ１から送信された印刷ジョブデータを解釈して、印刷ジョブデータに含まれる印刷対象データを取得する。
【００３５】
中間コード登録部１１は、印刷対象データを解釈することにより、印刷対象画像のどこの領域にどのような図形、文字、イメージを印刷すべきかを検出する。そして、１ページ分の印刷対象画像を高さ方向に所定の間隔（以下、バンド高さという）を有するバンドに分割して、バンドごとに印刷すべき図形、文字、イメージに対応する中間コードデータ（バンドデータ）を生成する。なお、本実施形態では、バンド高さを６４ドット（１ドットは印刷の最小単位）としている。バンドごとの処理結果は中間コードデータとして、中間コードデータメモリ１２に登録する。
【００３６】
また、中間コード登録部１１は、印刷対象画像に含まれている複数の描画オブジェクトについて、重ね合わせの最下層の描画オブジェクトから上層側の描画オブジェクトを順番に処理して中間コードデータを生成している。
【００３７】
図２は、印刷対象データが表す印刷対象画像の一例を示した図である。図２では、描画オブジェクトＢＯ１を網点の領域、描画オブジェクトＢＯ２を縦線のハッチング領域、描画オブジェクトＢＯ３を斜線のハッチング領域で示し、印刷対象画像は、３つの描画オブジェクトＢＯ１〜ＢＯ３を下層側から上層側へ順番に重ね合わせた画像となっている。また、描画オブジェクトＢＯ１および描画オブジェクトＢＯ２の重なり領域には、縦線のハッチングで示す描画オブジェクトＢＯ２のみが表示されているように、描画オブジェクトＢＯ２は、描画オブジェクトＢＯ１に対して単に上書きした図形である。一方、描画オブジェクトＢＯ２および描画オブジェクトＢＯ３の重なり領域には、描画オブジェクトＢＯ２の縦線、および描画オブジェクトＢＯ３の斜め線によるハッチングが両方とも表示されている。すなわち、描画オブジェクトＢＯ３の図形は、下層側の描画オブジェクトＢＯ２の影響を受けている。
【００３８】
また、図２ではバンドに分割する領域を破線で示している。図２に示すように、印刷対象画像は４つのバンド０〜３に分割される。もっとも、１つの印刷対象画像ごとのバンド数はこれに限られるものではない。
【００３９】
描画処理部１３は、中間コードデータメモリ１２に書き込まれている中間コードデータを順番に読み出して、読み出した中間コードデータから印刷データを生成する処理を行う。生成した印刷データは、プリントエンジン２００に供給する。
【００４０】
図３は、データ処理装置１００の具体的ハードウェア構成を示した図である。データ処理装置１００は、入力インターフェース（以下、入力Ｉ／Ｆ）５０、ＣＰＵ５１、ＲＯＭ５２、ハードディスク５３、ＲＡＭ５４、メモリカードスロット５５および出力インターフェース（以下、出力Ｉ／Ｆ）５６を備えており、それらはバスを介して互いに接続されている。
【００４１】
入力Ｉ／Ｆ５０は、ホストコンピュータ１とプリンタ２とのインターフェースである。すなわち、ホストコンピュータ１からプリンタ２に伝送された印刷ジョブデータは、入力Ｉ／Ｆ５０に入力される。
【００４２】
ＲＡＭ５４は、汎用のワーキングメモリとして機能する。なお、後述する中間コードデータメモリ１２、ＲＧＢデータメモリ４１、ＣＭＹＫデータメモリ４３、階調数変換データメモリ３３，４５および印刷データメモリ２４は、実際にはＲＡＭ５４の記憶領域上に確保される。
【００４３】
ＣＰＵ５１は、ハードディスク５３またはＲＯＭ５２に格納されたデータ処理プログラムを読み出して、実行することによりデータ処理装置１００としての各種の画像処理を行う。すなわち、ＣＰＵ５１がデータ処理プログラムを実行することにより、データ処理装置１００の各構成が機能するようにしている。このデータ処理プログラムは、予めハードディスク５３やＲＯＭ５２に格納されていることとしてもよいし、例えば、メモリカード５７などのコンピュータが読み取り可能な記録媒体によって外部から供給され、メモリカードスロット５５を介してプリンタ２に備えられたＲＯＭ５２やハードディスク５３に格納されるものとしてもよい。もっとも、インターネットなどのネットワーク手段を介して、プログラムを供給するサーバー等にアクセスし、データをダウンロードすることによって格納されるものとしてもよい。
【００４４】
出力Ｉ／Ｆ５６は、データ処理装置１００とプリントエンジン２００とのインターフェースである。データ処理装置１００が各種の画像処理を施したデータは、出力Ｉ／Ｆ５６を介してプリントエンジン２００に出力される。
【００４５】
プリントエンジン２００は、データ処理装置１００より供給された印刷データに従って、印刷用紙などの記録媒体にＣＭＹＫ各色のドットを形成することによってカラー画像を印刷する。
【００４６】
次に、描画処理部１３の構成について説明する。描画処理部１３は、展開処理判定部２０と、バンド分割部２１と、直接展開処理を行う直接展開部２２と、非直接展開処理を行う非直接展開部２３と、印刷データメモリ２４と、バンド復元部２５と、印刷データ出力部２６とを備えている。
【００４７】
展開処理判定部（判定部）２０は、中間コードデータメモリ１２から順番に読み出される中間コードデータに含まれる描画オブジェクトごとに、直接展開処理が可能であるか否かを判定する。さらに、展開処理判定部２０は、描画オブジェクトごとに判定した結果に基づき、バンドごとに直接展開処理が可能であるか否かを判定する。
【００４８】
バンド分割部（分割部）２１は、展開処理判定部２０が直接展開不可能と判断した描画オブジェクトを含むバンドを、直接展開可能な領域（以下、直接展開可能領域という）と直接展開不可能な領域（以下、直接展開不可能領域という）とに分割する。そして、直接展開可能領域のみを含むバンドの中間コードデータ、および直接展開不可能領域を含むバンドの中間コードデータを生成する。バンド分割部２１は、直接展開可能な中間コードデータを直接展開部２２に受け渡し、直接展開不可能な中間コードデータを非直接展開部２３に受け渡す。
【００４９】
直接展開部（第１のデータ処理部）２２または非直接展開部（第２のデータ処理部）２３は、受け取った中間コードデータを処理して印刷データを生成し、印刷データメモリ２４に書き込む。
【００５０】
印刷データメモリ２４に書き込まれた印刷データは、バンド復元部（復元部）２５が、印刷データメモリ２４から読み出した印刷データを順番に読み出して、分割したバンド同士を結合するようにして、分割前のバンド高さを有するバンドに対応する印刷データに復元する。復元した印刷データを印刷データ出力部２６に受け渡す。
【００５１】
印刷データ出力部２６は、バンド復元部２５から受け取った印刷データをプリンタ２に出力して、プリントエンジン２００に印刷データを供給する。
【００５２】
次に直接展開処理について説明する。直接展開部２２は、中間コードデータにＲＯＰ処理を行ってＲＧＢデータを生成するＲＯＰ処理部３０と、ＲＧＢデータをＣＭＹＫデータに変換する色変換部３１と、ＣＭＹＫデータをプリントエンジン２００に対応する階調数に変換した階調数変換データに変換する階調数変換部３２と、階調数変換データを記憶する階調数変換データメモリ３３と、階調数変換データを圧縮した印刷データを生成する圧縮部３４と、を有している。非直接展開部２３は、ＲＯＰ処理部４０と、ＲＧＢデータメモリ４１と、色変換部４２と、ＣＭＹＫデータメモリ４３と、階調数変換部４４と、階調数変換データメモリ４５と、圧縮部４６とを有している。
【００５３】
直接展開処理では、バンド内の描画オブジェクトＢＯをラスタライズしたＲＧＢ形式のラスタデータであるＲＧＢデータに色変換処理および階調数変換を施し、描画オブジェクトごとの階調数変換データを、階調数変換データメモリ３３に次々に書き出すことによって、バンドに対応する階調数変換データを生成する。そして、階調数変換データを圧縮することにより、バンドに対応する印刷データを生成する。
【００５４】
図４は、直接展開処理の具体例について示した図である。図４では、図２の印刷対象画像のバンド０について直接展開処理を行う場合を例に示している。図４に示すように、バンド０には、下層側から上層側の順番に描画オブジェクトＢＯ１，ＢＯ２が含まれており、直接展開部２２はこの順番に処理を行う。
【００５５】
まず、描画オブジェクトＢＯ１のデータが直接展開部２２に供給されると、図４（ａ）に示すように、ＲＯＰ処理部３０は描画オブジェクトＢＯ１のデータをＲＧＢデータＢＯ１（ＲＧＢ）に展開し、次に色変換部３１がＲＧＢデータをＣＭＹＫデータに変換する。次に、階調数変換部３２が、ＣＭＹＫデータＢＯ１（ＣＭＹＫ）に階調数変換を行い、階調数変換データＢＯ１（ＣＭＹＫｄ）を階調数変換データメモリ３３の対応するバンド領域の位置に書き込む。描画オブジェクトＢＯ１の階調数変換データを書き込むと、次に、図４（ｂ）に示すように、描画オブジェクトＢＯ２について、ＲＧＢデータＢＯ２（ＲＧＢ）への変換、ＣＭＹＫデータＢＯ２（ＣＭＹＫ）への変換、階調数変換データＢＯ２（ＣＭＹＫｄ）への変換を行い、変換した階調数変換データＢＯ２（ＣＭＹＫｄ）を階調数変換データメモリ３３上の対応するバンド領域の位置に上書きする。このように、描画オブジェクトＢＯごとに変換した階調数変換データを次々に階調数変換データメモリ３３に書き込むことによって、全描画オブジェクトＢＯを含んだバンドに対応する階調数変換データを生成する。そして、バンドに対応する階調数変換データが得られると、階調数変換データを圧縮した印刷データを印刷データメモリ２４に書き込む。
【００５６】
次に非直接展開処理について説明する。非直接展開処理では、バンド内の描画オブジェクトＢＯをラスタライズしたＲＧＢデータを、ＲＧＢデータメモリ４１に描画オブジェクトＢＯごとに順次書き出すようにして、全描画オブジェクトＢＯを含んだバンドに対応するＲＧＢデータを生成する。そして、ＲＧＢデータに色変換処理、階調数変換処理を施すことによって印刷データを生成する。この非直接展開処理は、従来より行われている処理方法である。
【００５７】
図５は、非直接展開処理の具体例について示した図である。図５は、図２の印刷対象画像のうちバンド０について非直接展開処理する場合を例に示している。非直接展開部２３は、下層側から上層側に描画オブジェクトＢＯ１，ＢＯ２の順番に処理を行う。
【００５８】
まず、描画オブジェクトＢＯ１が非直接展開部２３に供給されると、図５（ａ）に示すように、ＲＯＰ処理部４０が描画オブジェクトＢＯ１をＲＧＢデータＢＯ１（ＲＧＢ）に変換し、ＲＧＢデータメモリ４１上の対応するバンド領域の位置に書き込む。次に、描画オブジェクトＢＯ２が非直接展開部２３に供給されると、図５（ｂ）に示すように、ＲＯＰ処理部４０は描画オブジェクトＢＯ２をＲＧＢデータＢＯ２（ＲＧＢ）に変換し、ＲＧＢデータメモリ４１上の対応するバンド領域の位置に書き込む。このようにして、全描画オブジェクトＢＯのＲＧＢデータを次々にＲＧＢデータメモリ４１に書き出すようにして、全描画オブジェクトＢＯを含んだバンドに対応するＲＧＢデータを生成する。次に、色変換部４２は、ＲＧＢデータメモリ４１に書き込まれているＲＧＢデータを読み出して変換したＣＭＹＫデータをＣＭＹＫデータメモリ４３に書き込む。階調数変換部４４は、ＣＭＹＫデータメモリ４３からＣＭＹＫデータを読み出して全描画オブジェクトＢＯに対応する階調数変換データを生成する。
【００５９】
このように、非直接展開処理では、ＲＯＰ処理においてＲＧＢデータメモリ４１に描画オブジェクトＢＯごとにＲＧＢデータをＲＧＢデータメモリ４１に書き出すようにして中間コードデータを展開している。一方、直接展開処理では、ＲＯＰ処理においてＲＧＢデータメモリ４１にデータを書き出すことなく展開しているので、非直接展開処理に比べてより高速に処理を行うことができる。
【００６０】
ここで、ＲＯＰ処理において、例えば「透かし」などの効果を与える場合には、描画オブジェクトＢＯをラスタライズする際に、処理しようとする描画オブジェクトＢＯに加えて既に処理された描画オブジェクトを合成する必要がある。例えば、図２の描画オブジェクトＢＯ２および描画オブジェクトＢＯ３が重なっている領域については、描画オブジェクトＢＯ３が透けているので、描画オブジェクトＢＯ３を書き込む際には描画オブジェクトＢＯ２のデータを参照する必要がある。すなわち、既に処理された描画オブジェクトＢＯのＲＧＢデータが必要となる。
【００６１】
以上のことから、直接展開処理を行う際には、直接展開処理を行うことが可能な描画オブジェクトと、直接展開処理を行うことが不可能な描画オブジェクトとを、別々に処理する必要が生じる。そこで、展開処理判定部２０は、バンドごとに行う描画処理において、当該バンドに、直接展開処理を行うことが可能な描画オブジェクトのみを有している場合に、直接展開可能であると判定する。直接展開処理を行うことが不可能な描画オブジェクトを１つでも有しているバンドを直接展開不可能であると判定する。そして、判定結果に応じて、直接展開処理、非直接展開処理を使い分けている。
【００６２】
しかしながら、１つでも直接展開不可能な描画オブジェクトが含まれているバンドについては非直接展開処理を施すとすると、非直接展開処理に割り当てる領域が拡大してしまい、処理時間が長くなってしまう。そこで、本発明では、バンド分割部２１が、直接展開不可能と判断されたバンドデータについて、バンド領域をさらに直接展開可能な領域と直接展開不可能な領域に分割し、分割した直接展開可能な領域については直接展開処理を行うことを特徴としている。
【００６３】
図６に本実施形態のデータ処理装置１００が行う処理の流れを示したフローチャートを示す。以下、フローチャートに従って、詳細に説明する。
【００６４】
ＣＰＵ５１がデータ処理プログラムを実行し、ホストコンピュータ１からプリンタ２に印刷ジョブデータが送信されると、図６の処理を開始して、まず、ステップＳ１０において、言語解釈部１０は、入力Ｉ／Ｆ５０を介して受け取った印刷ジョブデータの言語を解釈して印刷対象データを取得する。取得した印刷対象データは、中間コード登録部１１に受け渡す。
【００６５】
次に、ステップＳ２０では、中間コード登録部１１は、印刷対象データをバンドごとの中間コードデータに変換する。変換した中間コードデータは中間コードデータメモリ１２に書き込む。
【００６６】
図７は、中間コードデータの構造例を示した図である。バンドごとに分割された印刷対象データは、それぞれバンドごとの中間コードデータとして中間コードデータメモリ１２に書き込まれている。図７に示すように、中間コードデータは、ヘッダ部分と中間コードデータ部分とで構成される。ヘッダ部分には、バンド番号、バンド高さ、当該バンドが直接展開できるかを示したバンド展開可能フラグなどが含まれる。バンド展開可能フラグには、バンドが展開可能であることを示す「０」または展開不可能であることを示す「１」を設定することができ、初期値としては「０」が設定されている。
【００６７】
中間コードデータ部分には、そのバンドに含まれる描画オブジェクトのオブジェクトデータが描画オブジェクトごとに区分されて含まれる。１つのオブジェクトデータには、例えば、後述する描画処理で利用されるＲＯＰの種別を示す情報（ＲＯＰ種別情報：ＲＯＰ番号）、描画オブジェクトの種別を示す情報（オブジェクト種別情報：矩形等の図形情報）、座標、サイズ、色、オブジェクト展開可能フラグ、パターンＰ等の種々の情報が含まれる。オブジェクト展開可能フラグには、当該描画オブジェクトＢＯが直接展開可能であることを示す「０」または直接展開不可能であることを示す「１」を設定することができる。なお、中間コードデータ部分に含まれる描画オブジェクトＢＯとしては、矩形などの図形を表すオブジェクトに限られることなく、テキスト、イメージなどを表すオブジェクトであってもよい。
【００６８】
図８は、オブジェクトデータのパラメータを説明するための図である。図８では、図２に示したバンド０の描画オブジェクトを示している。描画オブジェクトの座標は、バンドの左上を原点として、原点から右向きをｘ方向、下向きにｙ方向を定めた座標系に従って決められている。したがって、図８では、描画オブジェクトＢＯ１の左上の座標（ｘ１，ｙ１）を描画オブジェクトＢＯ１の座標としている。描画オブジェクトＢＯ１のサイズとしては、図８に示すように、横方向の幅ｗ１、縦方向の高さｈ１が記録される。そして、描画オブジェクトＢＯ１の座標（ｘ１，ｙ１）、サイズ（ｗ１，ｈ１）の値が中間コードデータのオブジェクトデータとして記録される（図７参照）。同様に、描画オブジェクトＢＯ２についても、座標（ｘ２，ｙ２）およびサイズ（ｗ２，ｈ２）が記録される。
【００６９】
次に、ステップＳ３０では、展開処理判定部２０は、注目するバンドについて直接展開可能な領域を判定する直接展開判定処理を行う。
【００７０】
ここで、直接展開判定処理における判定方法について説明するため、まずＲＯＰ処理について説明する。図９は、直接展開処理または非直接展開処理において実行されるＲＯＰ処理に用いるＲＯＰ関数（描画命令）の関数テーブルを示した図である。図９に示すように、関数テーブルＴＦにはＲＯＰ処理のために予め２５６種類のＲＯＰ関数が用意されている。これらのＲＯＰ関数は、逆ポーランド方式で記述され、Ｓは新たに書き込もうとする画像（ソース：書き込み対象画像）、Ｐは書き込もうとしている画像のパターン、Ｄは既に書き込まれている画像（デスト：元画像）を意味している。それぞれの画像は、上位８ビットのＲの色情報、次の８ビットのＧの色情報、さらに次の８ビットのＢの色情報、および、下位８ビットのコントロール情報の３２ビットで表される。コントロール情報は本実施形態の処理においては特に必要ではない。また、図９のＲＯＰ関数の欄に示した、「ｏ」は論理和（ｏｒ）、「ｎ」は否定（ｎｏｔ）、「ａ」は論理積（ａｎｄ）を意味している。したがって、ＲＯＰ番号「０ｘＥ０」で定義されているＲＯＰ関数「ＰＤＳｏａ」は論理演算「Ｐ ａｎｄ（Ｄ ｏｒ Ｓ）」を行うことを示している。
【００７１】
図１０は、ＲＯＰ関数の一例を示した図であり、ＲＯＰ番号が「０ｘＥ０」のＲＯＰ関数「ＰＤＳｏａ」による処理について示している。ＲＯＰ関数「ＰＤＳｏａ」は、論理演算「Ｐ ａｎｄ（Ｓ ｏｒ Ｄ）」を意味しており、図１０に示すように、処理結果では網点で示した領域に元画像Ｄの影響を受けている。このように、元画像Ｄが処理結果に影響を与える場合には、基本的に元画像Ｄの情報が必要となる。このとき、元画像Ｄ、すなわち既に書き込まれた描画オブジェクトに対応するＲＧＢデータ、を参照する必要があるので、ＲＧＢデータをメモリに書き込まない直接展開処理ではＲＯＰ処理を正しく行うことができない。
【００７２】
以上のことから、印刷対象データを印刷データに変換処理する際の描画処理として直接展開処理が可能な場合の条件は、「ＲＯＰ処理の結果が元画像Ｄの影響を受けないこと」である。この条件に該当する条件としては次に示す２つの条件が考えられる。
【００７３】
１つの条件は、ＲＯＰ関数のパラメータに、元画像Ｄが含まれていないことである（以下、条件（１）という）。もうひとつの条件は、書き込み対象画像ＳまたはパターンＰが特定の条件を満たすことによって、ＲＯＰ処理の結果が元画像Ｄの影響を受けないことである（以下、条件（２）という）。上記条件（１）については当然の条件であるのでその説明を省略し、以下に、上記条件（２）について説明することにする。
【００７４】
条件（２）としては、書き込み対象画像ＳまたはパターンＰが、以下で説明する３つのいずれかの条件に当てはまる場合に、処理の結果が元画像Ｄの影響を受けなくなり、直接展開可能であると判断する。
【００７５】
図１１（ａ）は、ＲＯＰ関数「ＰＤＳｏａ」による処理において、処理結果が元画像Ｄの影響を受けない条件（２）の１つ目の条件を示している。図１１（ａ）に示すように、書き込み対象画像Ｓの値が単色で「０ｘｆｆｆｆｆｆｆｆ」、すなわち、Ｒ、Ｇ、Ｂ全ての値が「０ｘｆｆ」である白画像の場合には、「（Ｓ ｏｒ Ｄ）」の処理結果は元画像Ｄに関わらず「０ｘｆｆｆｆｆｆｆｆ」となる。したがって、論理演算「Ｐ ａｎｄ（Ｓ ｏｒ Ｄ）」の処理結果は必ずパターンＰと等しくなる。つまり、書き込み対象画像Ｓの値が単色で「０ｘｆｆｆｆｆｆｆｆ」である場合、処理結果が元画像Ｄの影響を受けないため、直接展開可能であると判断できる。
【００７６】
図１１（ｂ）は、ＲＯＰ関数「ＰＤＳｏａ」による処理において、処理結果が元画像Ｄの影響を受けない条件（２）の２つ目の条件を示している。図１１（ｂ）に示すように、パターンＰの値が単色で「０ｘ００００００００」、すなわち、Ｒ、Ｇ、Ｂ全ての値が「０ｘ００」である黒画像の場合、論理演算「Ｓ ｏｒ Ｄ」の結果に関わらず、論理演算「Ｐ ａｎｄ（Ｓ ｏｒ Ｄ）」の結果は必ず「０ｘ００００００００」となる。すなわち、Ｒ、Ｇ、Ｂ全ての値が「０ｘ００」である黒画像となり、結果としてパターンＰと等しくなる。このように、パターンＰの値が単色で「０ｘ００００００００」の場合も、処理結果が元画像Ｄの影響を受けないため、直接展開可能であると判断できる。
【００７７】
図１１（ｃ）は、ＲＯＰ関数「ＰＤＳｏａ」による処理において、処理結果が元画像Ｄの影響を受けない条件（２）の３つ目の条件を示している。図１１（ｃ）に示すように「Ｐ＝Ｓ」、例えば、パターンＰおよび書き込み対象画像Ｓが単色で共に「０ｘｆｆ００ｆｆ００」の画像の場合、論理演算「Ｓ ｏｒ Ｄ」の結果に関わらず、論理演算「Ｐ ａｎｄ（Ｓ ｏｒ Ｄ）」の結果は必ず「０ｘｆｆ００ｆｆ００」となる。すなわち、パターンＰと等しくなる。つまり、パターンＰおよび書き込み対象画像Ｓの値が等しい場合も、処理結果が元画像Ｄの影響を受けないため、直接展開可能であると判断できる。
【００７８】
図１１（ａ）〜（ｃ）を用いて説明した３つの条件は、ＲＯＰ関数「ＰＤＳｏａ」において、直接展開が可能な場合の条件であり、２５６種類のＲＯＰ関数（図９参照）のそれぞれには、それぞれのＲＯＰ関数に対応して書き込み対象画像ＳおよびパターンＰの条件が存在する。このため、図９に示した関数テーブルには、ＲＯＰ関数ごとに、直接展開可能な書き込み対象画像ＳおよびパターンＰの条件に対応する条件番号が示されている。図９に示すように２５６種類のＲＯＰ関数それぞれの条件は、条件番号「０」〜「１９」の２０種類に分類される。
【００７９】
また、図１１（ａ）〜（ｃ）に示した３つの条件は、パターンＰおよび書き込み対象画像Ｓが単色でない場合においても成立する。しかし、単色でない場合には全ての画素について３つの条件に当てはまるか否かを判定しなければならないので、判定に時間を要することになる。そこで、本実施形態では、パターンＰおよび書き込み対象画像Ｓが単色である場合にのみ、パターンＰおよび書き込み対象画像Ｓの値が該当するか否かを判定することにする。もっとも、全ての画素について判定するとすることもできる。
【００８０】
図１２は、条件番号に対応する直接展開が可能となる書き込み対象画像ＳおよびパターンＰの条件を示した条件テーブルを示した図である。条件テーブルＴＣを参照して、ＲＯＰ関数に対応する条件番号に対応する条件を読み出すことにより、直接展開可能な条件が定まる。例えば、図９の関数テーブルＴＦにおいて、ＲＯＰ番号「Ｅ０」のＲＯＰ関数「ＰＤＳｏａ」には、条件番号「１３」が示されている。条件テーブルＴＣを参照して条件番号「１３」に対応する条件を読み出すと、図１１（ａ）〜（ｃ）に示した３つの条件に相当する「（Ｓ＝１）ｏｒ（Ｐ＝０）ｏｒ（Ｓ＝Ｐ）」の条件が得られる。なお、条件テーブルＴＣにおいて、条件番号「０」は、上述した条件（１）に相当し、無条件で直接展開可能であることを示している。条件番号「１９」は、直接展開可能なパターンＰおよび書き込み対象画像Ｓの条件に関わらず、常に直接展開不可能であることを示している。
【００８１】
以上のことから、直接展開が可能であるか否かの判定は、図９に示した関数テーブルＴＦを参照して、判定対象のオブジェクトデータに含まれているＲＯＰ番号に対応するＲＯＰ関数、およびＲＯＰ関数ごとに付与された条件番号を求めてから、図１２に示した条件テーブルＴＣを参照して、その条件番号に対応する条件に従って行う。以下、直接展開判定処理について、図１３のフローチャートに従って説明する。
【００８２】
直接展開判定処理では、まず、ステップＳ３００では、展開処理判定部２０は、注目しているバンドにおいて判定対象とする描画オブジェクトＢＯを書き込み対象画像Ｓに設定する。
【００８３】
次に、ステップＳ３０１では、展開処理判定部２０は、中間コードデータメモリ１２の中間コードデータから、判定対象の描画オブジェクトのＲＯＰ関数、およびパターンＰを取得し、ＲＡＭ５４に格納する。
【００８４】
次に、ステップＳ３０２では、展開処理判定部２０は、書き込み対象画像Ｓに用いるＲＯＰ関数のパラメータとして元画像Ｄが含まれるか否か、すなわち、上述した条件（１）について判断する。具体的には、中間コードデータから取得した判定対象の描画オブジェクトのＲＯＰ番号と、関数テーブルＴＦとを参照して、利用されるＲＯＰ関数の条件番号が「０」ならばＲＯＰ関数のパラメータとして元画像Ｄが含まれないとして判断している。ＲＯＰ関数のパラメータとして元画像Ｄが含まれる場合（Ｙｅｓ）、ステップＳ３０３に進む。元画像Ｄが含まれない場合（Ｎｏ）、ステップＳ３０６に進み、当該書き込み対象画像Ｓは直接展開可能と判断する。
【００８５】
ステップＳ３０３では、展開処理判定部２０は、書き込み対象画像Ｓが単色であるか否かを判断する。書き込み対象画像Ｓが単色でない場合（Ｎｏ）にはステップＳ３０７に進み、当該書き込み対象画像Ｓは直接展開不可能と判定する。単色である場合（Ｙｅｓ）にはステップＳ３０４に進む。
【００８６】
ステップＳ３０４では、展開処理判定部２０は、中間コードデータから読み出した当該書き込み対象画像Ｓ（すなわち、描画オブジェクトＢＯ）のパターンＰが単色であるか否かを判断する。パターンＰが単色でない場合（Ｎｏ）にはステップＳ３０７に進み、当該書き込み対象画像Ｓは直接展開不可能と判定する。単色である場合（Ｙｅｓ）にはステップＳ３０５に進む。
【００８７】
ステップＳ３０５では、展開処理判定部２０は、書き込み対象画像ＳおよびパターンＰの値が所定の条件に当てはまるか否か、すなわち、上述した条件（２）について判断する。具体的には、ＣＰＵ５１がＲＡＭ５４に記憶された関数テーブルＴＦを参照して、書き込み対象画像ＳのＲＯＰ関数に対応する条件番号を求めてから、ＲＡＭ５４に記憶された条件テーブルＴＣを参照して、その条件番号に対応する条件を読み出す。そして、書き込み対象画像ＳおよびパターンＰの値が、読み出した条件に当てはまるか否かを判断する。書き込み対象画像ＳおよびパターンＰの値が得られた条件に当てはまる場合（Ｙｅｓ）にはステップＳ３０６に進み、当該書き込み対象画像ＳおよびパターンＰが直接展開可能と判定する。所定の条件に当てはまらない場合（Ｎｏ）、ステップＳ３０７に進み、書き込み対象画像Ｓは直接展開不可能と判定する。
【００８８】
ステップＳ３０６では、展開処理判定部２０は、書き込み対象画像Ｓとした描画オブジェクトは直接展開可能であると判定して、中間コードデータメモリ１２の中間コードデータに当該描画オブジェクトのオブジェクト展開可能フラグ「０」を書き込む。
【００８９】
ステップＳ３０７では、展開処理判定部２０は、書き込み対象画像Ｓとした描画オブジェクトは直接展開不可能であると判定する。また、直接展開不可能な描画オブジェクトを含む当該バンドについても直接展開不可能であると判定して、中間コードデータメモリ１２の中間コードデータに当該描画オブジェクトを含むバンドのバンド展開可能フラグ「１」、および当該描画オブジェクトのオブジェクト展開可能フラグ「１」を書き込む。
【００９０】
ステップＳ３０６において直接展開可能と判定、またはステップＳ３０７において直接展開不可能と判定すると、次に、ステップＳ３０８では、展開処理判定部２０は、バンド内の全描画オブジェクトＢＯについて処理を終了したか否かを判断する。全描画オブジェクトＢＯについて、処理を終えていなかった場合（Ｎｏ）、バンド内で１つ上層の次の描画オブジェクトＢＯを判定対象として、ステップＳ３００の処理へ戻る。全描画オブジェクトについて処理を終えると、ステップＳ３０９に進む。
【００９１】
ステップＳ３０９では、展開処理判定部２０は、中間コードデータの全バンドについて処理を終了したか否かを判断する。全バンドについて処理を終えていなかった場合（Ｎｏ）、次のバンドに注目して、ステップＳ３００へ戻る。全バンドについて処理を終えた場合（Ｙｅｓ）、直接展開判定処理を終えて、ステップＳ４０に進む。
【００９２】
なお、直接展開判定処理は、バンドに分割する前の印刷対象画像について行うものとしてもよい。すなわち、印刷対象データには、描画オブジェクトごとにＲＯＰ番号などの描画オブジェクトを描画するためのデータが含まれており、直接展開判定処理では、印刷対象画像に含まれる描画オブジェクトごとに、直接展開処理を行うことができるか否かを判定する。次に、印刷対象画像をバンドに分割する処理において、分割した描画オブジェクトは、分割前の描画オブジェクトの判定結果を受け継ぐようにして、図７に示した中間コードデータを登録する。
【００９３】
図６のフローチャートに戻り、次に、ステップＳ４０では、バンド分割部２１がバンド分割処理を行う。図１４はバンド分割処理の処理の流れを示したフローチャートである。バンド分割処理を開始すると、まず、ステップＳ４００では、バンド分割部２１は、注目するバンドが、直接展開不可能なバンドであるか否かを判断する。ここでは、中間コードデータのバンド展開可能フラグを参照して、バンド展開可能フラグが「０」、すなわち直接展開可能なバンドであれば（Ｎｏ）、当該バンドに対してはバンドを分割することなく、ステップＳ４０３に進む。バンド展開可能フラグが「１」、すなわち直接展開不可能なバンドであれば（Ｙｅｓ）、ステップＳ４０１に進む。
【００９４】
ステップＳ４０１では、バンド分割部２１は、直接展開不可能なバンドについて、中間コードデータメモリ１２の中間コードデータを参照して、直接展開不可能な描画オブジェクトの範囲に基づいて直接展開不可能領域の範囲を特定する。
【００９５】
図１５は、直接展開可能領域および直接展開不可能領域を示した図である。まず、図１５に示すバンド０については、描画オブジェクトＢＯ２を書き込む際に元画像Ｄに影響を受けない。バンド３については重なり領域がないので、元画像Ｄに影響を受けない。したがって、バンド０およびバンド３についてはバンド展開可能フラグは「０」となり、その全領域が直接展開可能領域となる。
【００９６】
バンド１については、描画オブジェクトＢＯ２と描画オブジェクトＢＯ３との重なり領域に「透かし」の効果があり、描画オブジェクトＢＯ３を書き込む際に元画像Ｄの影響を受けるため、描画オブジェクトＢＯ３のオブジェクト展開可能フラグは「１」となり、描画オブジェクトＢＯ３は直接展開不可能である。このとき、バンド展開可能フラグも「１」となり、当該バンドは直接展開不可能となる。ここで、中間コードデータのオブジェクトデータより、バンド１において描画オブジェクトＢＯ３のｙ座標の範囲が「ｙ３〜６４」であることから、ｙ座標「ｙ３〜６４」の領域を直接展開不可能領域としている。一方、ｙ座標「０〜ｙ３」については、直接展開不可能な描画オブジェクトＢＯ３が含まれないので、直接展開可能領域となる。同様に、バンド２について、描画オブジェクトＢＯ３のｙ座標の範囲が「０〜６４」であることから、ｙ座標「０〜６４」の領域が直接展開不可能領域となる。
【００９７】
このように、展開処理判定部２０は、直接展開不可能と判定された描画オブジェクトＢＯを含む範囲を直接展開不可能領域の範囲と判定している。
【００９８】
次に、ステップＳ４０２では、バンド分割部２１は、当該注目しているバンドの直接展開不可能な領域と直接展開可能な領域とを分割することにより、直接展開不可能なバンドおよび直接展開可能なバンドを生成する。図１６は、バンドを分割した処理を示した図である。ここで、図１５において説明したように、バンド１には、直接展開不可能な領域および直接展開可能な領域が含まれていた。そこで、図１６に示すように、バンド１を直接展開可能な領域のバンド１−１と直接展開不可能な領域のバンド１−２とに分割して、バンド１−１およびバンド１−２について、それぞれ中間コードデータを生成する。例えば、バンド１―１については、バンド高さ「ｘ３」、バンド展開可能フラグ「０」の中間コードデータを生成する。バンド１―２については、バンド高さ「６４−ｘ３」、バンド展開可能フラグ「１」の中間コードデータを生成する。生成した中間コードデータは、中間コードデータメモリ１２に書き込んで、ステップＳ４０３に進む。
【００９９】
ステップＳ４０３では、バンド分割部２１は、全バンドについて処理を終えたか否かを判断する。全バンドについて処理を終えていなかった場合（Ｎｏ）、ステップＳ４００に戻り、他のバンドに注目して処理を行う。全バンドについて処理を行っていた場合（Ｙｅｓ）、バンド分割処理を終了し、ステップＳ５０に進む。
【０１００】
図６のフローチャートに戻り、ステップＳ５０〜Ｓ８０では、バンド分割処理後のバンドごとに直接展開処理または非直接展開処理を行う。そのため、まず、ステップＳ５０では、ＣＰＵ５１は中間コードデータに含まれているバンド展開可能フラグを参照して、注目するバンドが直接展開可能であるか否かを判断する。バンド展開可能フラグが「０」であり直接展開可能なバンドであれば（Ｙｅｓ）、バンドの中間コードデータを直接展開部２２に受け渡し、ステップＳ６０の直接展開処理に進む。バンド展開可能フラグが「１」であり直接展開不可能なバンドであれば（Ｎｏ）、バンドの中間コードデータを非直接展開部２３に受け渡し、ステップＳ７０の非直接展開処理に進む。
【０１０１】
ステップＳ６０では、直接展開部２２は、受け渡された中間コードデータに対して直接展開処理を実行する。図１７は、直接展開部２２における直接展開処理の処理の流れを示すフローチャートである。直接展開処理では、まず、ステップＳ６００において、受け取った中間コードデータの描画オブジェクトに対して、ＲＯＰ処理部３０がＲＯＰ条件に対応するＲＯＰ処理を実行してＲＧＢ形式で表されるＲＧＢデータ（ラスタデータ）に変換する。
【０１０２】
次に、ステップＳ６０１において、色変換部３１は、ＲＯＰ処理部３０からＲＧＢデータを受け取り、ＣＭＹＫ形式で表されるＣＭＹＫデータ（色変換データ）に色変換する。
【０１０３】
次に、ステップＳ６０２において、階調数変換部３２は、色変換部３１からＣＭＹＫデータを受け取り、ＣＭＹＫそれぞれの色の階調数を変換する階調数変換を行うことにより、印刷可能な各色ドットの形成有無により表現された２値データである階調数変換データを生成する。生成した階調数変換データは階調数変換データメモリ３３に記録する。もっとも、階調数変換データとしては２値のデータに限ることなく、印刷可能な各色ドットの階調に対応した多値データであってもよい。
【０１０４】
次に、ステップＳ６０３では、バンドの中間コードデータに含まれる全ての描画オブジェクトについて処理を行ったか否かを判断して、未処理の描画オブジェクトがあれば（Ｎｏ）、１つ上層の描画オブジェクトに注目してステップＳ６００に戻り、全ての描画オブジェクトについて処理を行うまで、ステップＳ６００〜Ｓ６０２の処理を繰り返す。全ての描画オブジェクトについて処理を行った場合（Ｙｅｓ）、階調数変換データメモリ３３には注目しているバンドの全描画オブジェクトＢＯに対応するＣＭＹＫデータが記録されているので、ステップＳ６０４に進む。
【０１０５】
ステップＳ６０４では、圧縮部３４は、階調数変換データメモリ３３から階調数変換データを読み出し、階調数変換データのデータ量を圧縮することにより、印刷データを生成する。生成した印刷データは、印刷データメモリ２４に記憶する。ステップＳ６０４の処理を終えると、当該バンドへの直接展開処理を終了し、ステップＳ８０に進む。
【０１０６】
一方、ステップＳ５０からステップＳ７０に進むと、非直接展開部２３は、受け渡された中間コードデータに対して非直接展開処理を実行する。
【０１０７】
図１８は、非直接展開処理の処理の流れを示すフローチャートである。非直接展開処理では、まず、ステップＳ７００において、ＲＯＰ処理部４０は、受け取った中間コードデータの描画オブジェクトにＲＯＰ処理を実行してＲＧＢ形式で表されるＲＧＢデータ（ラスタデータ）に変換する。変換したＲＧＢデータはＲＧＢデータメモリ４１に格納する。
【０１０８】
次に、ステップＳ７０１では、非直接展開部２３は、当該バンドの全ての描画オブジェクトについて処理を行ったか否かを判断して、未処理の描画オブジェクトがあれば（Ｎｏ）、１つ上層の描画オブジェクトＢＯに注目してステップＳ７００に戻り、全ての描画オブジェクトＢＯについて処理を行うまで処理を繰り返す。全ての描画オブジェクトＢＯについて処理を行うと（Ｙｅｓ）、バンド内の全描画オブジェクトＢＯについてＲＯＰ処理を行っているので、ＲＧＢデータメモリ４１には、注目しているバンド全体のＲＧＢデータが記憶された状態で、ステップＳ７０２に進む。
【０１０９】
ステップＳ７０２では、色変換部４２は、ＲＧＢデータメモリ４１に書き込まれているＲＧＢデータを読み出してＣＭＹＫデータに色変換し、変換したＣＭＹＫデータをＣＭＹＫデータメモリ４３に格納する。
【０１１０】
次に、ステップＳ７０３では、階調数変換部４４は、ＲＧＢデータメモリ４１に書き込まれているＣＭＹＫデータを読み出して、ＣＭＹＫそれぞれの色の階調数を変換することにより階調数変換データに階調数変換し、変換した階調数変換データを階調数変換データメモリ４５に書き込む。
【０１１１】
次に、ステップＳ７０４では、圧縮部４６は、階調数変換データメモリ４５から階調数変換データを読み出し、階調数変換データのデータ量を圧縮する処理を行うことにより印刷データを生成する。生成した印刷データは、印刷データメモリ２４に記憶する。ステップＳ７０４の処理を終えると、当該バンドへの非直接展開処理を終了し、ステップＳ８０に進む。
【０１１２】
注目したバンドの全描画オブジェクトについて直接展開処理または非直接展開処理を終えると、図６のフローチャートのステップＳ８０に進んで、ＣＰＵ５１は中間コードデータの全バンドについて処理を行ったか否かを判断する。未処理のバンドがあれば（Ｎｏ）、次のバンドに注目してステップＳ５０に戻り、全てのバンドについて処理を行うまでステップＳ５０〜Ｓ７０の処理を繰り返す。全てのバンドについて処理を行うと（Ｙｅｓ）、ステップＳ９０に進む。
【０１１３】
ステップＳ９０では、バンド復元部２５がバンド復元処理を行う。ここでは、印刷データメモリ２４に書き込まれている印刷データをバンドごとに順番に読み出して、ステップＳ４０にて分割したバンドの印刷データを結合して、所定のバンド高さ（本実施形態では、６４ドット）の印刷データに戻している。具体的には、中間コードデータのバンド高さ情報を参照して、バンド高さが「６４」より小さいバンドについては、バンド高さが「６４」となるまで次のバンド、すなわち分割されたもう一方のバンドの印刷データと結合するようにして、バンド幅が「６４」のバンドに対応する印刷データに復元する。復元した印刷データは印刷データ出力部２６に受け渡す。
【０１１４】
次に、ステップＳ１００では、印刷データ出力部２６は、バンド復元部２５から受け取った印刷データにパルス幅変調を行ってプリントエンジン２００に対応するパルス幅信号に変換する。そして、変換したパルス幅信号をＣＭＹＫ各色について順番にプリントエンジン２００に出力する。プリントエンジン２００は、印刷データ出力部２６から入力されたパルス幅信号に従って、各色の画像を順番に印刷することにより、カラー印刷を実行する。ステップＳ１００の処理を終えると、図６のフローチャートに示した処理を終了する。
【０１１５】
なお、ステップＳ３０が判定工程、ステップＳ４０が分割工程、ステップＳ６０が第１のデータ処理工程、ステップＳ７０が第２のデータ処理工程、ステップＳ９０が復元工程に相当する。
【０１１６】
以下、本実施形態における効果を記載する。
【０１１７】
（１）直接展開処理では、従来の処理方法である非直接展開処理に比べると、描画オブジェクトＢＯごとにＲＧＢデータをメモリに記憶する処理を行っていないので、より高速に処理を行うことができる。また、描画オブジェクトＢＯごとにＣＭＹＫデータをメモリに記憶する処理も行っていないので、さらに高速に処理することができる。
【０１１８】
（２）直接展開不可能なバンドについて、バンドから直接展開可能な描画オブジェクトのみを含む直接展開可能領域を分割して、直接展開処理に割り当てているので、従来の処理方法より高速に処理することができる直接展開処理に割り当てる領域が拡大する。したがって、より高速に処理を行うことができる。
【０１１９】
（３）直接展開判定処理によって、直接展開可能な描画オブジェクトのみを有するバンドだけを直接展開処理に割り当てることができる。したがって、直接展開処理を適切に行うことができる。
【０１２０】
（４）関数テーブルＴＦおよび条件テーブルＴＣを参照することによって、中間コードデータのＲＯＰ番号から直接展開可能な条件を取得しているので、簡単な処理で直接展開可能な描画オブジェクトを適切に判定することができる。
【０１２１】
以上、本発明の一実施形態について説明したが、本発明はこれに限られることなく、様々な形態とすることもできる。以下、本発明の変形例について説明する。
【０１２２】
（変形例１）前記実施形態では、バンドを直接展開可能な領域のバンドと直接展開不可能な領域のバンドとに分割することにより、直接展開可能な領域に直接展開処理、直接展開不可能な領域に非直接展開処理を行った。第１の変形例として、直接展開可能なバンドと直接展開不可能なバンドの高さを変更して、直接展開可能な領域に直接展開処理、直接展開不可能な領域に非直接展開処理を行うようにしてもよい。例えば、図１６に示したバンド１−１およびバンド１−２の領域を分割する際に、図１９に示すように、バンド０およびバンド１−１の領域を有するバンド０’、バンド１−１およびバンド２の領域を有するバンド１’のように、バンド高さを変更したバンドごとに直接展開処理または非直接展開処理を行う。このようにしても、直接展開可能な領域が拡大するので、処理時間をより短くすることができる。また、特許文献２に記載の技術と比べると、処理時間を短くすることができるという特有の効果を有している。
【０１２３】
（変形例２）前記実施形態では、描画オブジェクトＢＯごとに判定を行って、直接展開不可能な描画オブジェクトＢＯのｙ座標の全範囲を、直接展開不可能領域とした。第２の変形例では、直接展開できないと判定された描画オブジェクトＢＯについて、当該描画オブジェクトＢＯが重なりあっている領域の範囲のみを直接展開不可能領域とする。例えば、図２０のバンド２に着目して、描画オブジェクトＢＯ３が直接展開不可能なオブジェクトであれば、描画オブジェクトＢＯ３と描画オブジェクトＢＯ２が重なる領域だけを直接展開不可能領域とする。このときの重なり領域の範囲は、中間コードデータから描画オブジェクトＢＯ２およびＢＯ３の座標、サイズから求めることができる。例えば、バンド２についてはｙ座標「０〜ｈ２」の範囲が重なり領域となるので、ｙ座標「０〜ｈ２」の範囲を直接展開不可能領域、ｙ座標「ｈ２〜６４」の範囲を直接展開可能領域と判定する。このようにすれば、図１５の例に比べて直接展開可能な領域がさらに拡大するので、直接展開処理に割り当てる領域が拡大し、処理時間をより短くすることができる。
【０１２４】
（変形例３）前記実施形態の直接展開処理では、描画オブジェクトごとにＲＯＰ処理、色変換処理、階調数変換処理を順次行うことにより、全描画オブジェクトを含んだバンドに対応する階調数変換データを生成した。ここで、プリントエンジン２００が、ＣＭＹＫデータの階調数に対応するドットを形成することが可能な場合、直接展開処理では、描画オブジェクトごとにＲＯＰ処理、色変換処理、を順次行うことにより、全描画オブジェクトを含んだバンドに対応するＣＭＹＫデータを生成し、当該ＣＭＹＫデータを圧縮して印刷データとする。例えば、図２１（ａ）に示すように、描画オブジェクトＢＯ１について、ＲＯＰ処理、色変換処理を行ったデータＢＯ１（ＣＭＹＫ）を、ＣＭＹＫデータメモリに書き込む。次に、図２１（ｂ）に示すように、描画オブジェクトＢＯ２について、ＲＯＰ処理、色変換処理を行ったデータＢＯ２（ＣＭＹＫ）を、ＣＭＹＫデータメモリに書き込む。こうして、全描画オブジェクトＢＯに対応するＣＭＹＫデータを生成すると、ＣＭＹＫデータを圧縮した印刷データを印刷データメモリ２４に書き込むことにより直接展開処理を行う。
【０１２５】
（変形例４）前記実施形態では、プリンタ２がカラー印刷を行う場合に、カラーデータを扱う処理の例について説明した。本発明は、モノクロデータを扱うモノクロ印刷を行う場合にも適用することもできる。
【０１２６】
（変形例５）前記実施形態では、ＣＰＵ５１がデータ処理プログラムを実行することにより、データ処理装置１００としての機能を実現する例について説明した。第５の変形例として、上述したデータ処理装置１００の機能を、ＡＳＩＣなどのハードウェア回路により実現するとしてもよい。もちろん、一部の機能をハードウェア回路にもたせて、ハードウェア回路がもたない機能をソフトウェアによって実現するようにしてもよい。
【０１２７】
（変形例６）第６の変形例としては、分割したバンドデータを並列に処理するようにしてもよい。例えば、直接展開部２２および非直接展開部２３としての処理を別々に実行することができる２つのＣＰＵ５１、またはハードウェア回路を備えたデータ処理装置１００の構成であれば、１つのバンドに対する処理を、直接展開可能な領域と不可能な領域とに分けて並列処理することができるので、処理時間をさらに短くすることができる。
【０１２８】
（変形例７）前記実施形態では、バンドをバンドの高さ方向に分割した。第７の変形例としては、図２２（ａ）に示すように、バンドの幅方向に分割して、直接展開処理することが可能な領域のバンドおよび不可能な領域のバンドを生成してもよい。また、図２２（ｂ）に示すように、バンドの高さ方向および幅方向に分割してもよい。
【０１２９】
（変形例８）前記実施形態では、レーザプリンタに適用したデータ処理装置１００の一例について説明した。本発明のデータ処理装置は、インクジェットプリンタ、複写機、ファックスなど様々な装置に適用することもできる。
【図面の簡単な説明】
【０１３０】
【図１】本発明に係る印刷システムの構成を示した図。
【図２】印刷対象データが表す印刷対象画像の一例を示した図。
【図３】データ処理装置の具体的ハードウェア構成を示した図。
【図４】直接展開処理の具体例について示した図。（ａ）、（ｂ）は各描画オブジェクトに対する処理を示した図。
【図５】非直接展開処理の具体例について示した図。（ａ）、（ｂ）は各描画オブジェクトに対する処理を示した図。
【図６】データ処理装置が行う処理の流れを示したフローチャート。
【図７】中間コードデータの構造例を示した図。
【図８】オブジェクトデータのパラメータを説明するための図。
【図９】関数テーブルを示した図。
【図１０】ＲＯＰ関数の一例を示した図。
【図１１】ＲＯＰ関数「ＰＤＳｏａ」による処理において、処理結果が元画像の影響を受けない条件を示した図。（ａ）〜（ｃ）は各条件を示した図。
【図１２】条件テーブルを示した図。
【図１３】直接展開判定処理の処理の流れを示すフローチャート。
【図１４】バンド分割処理の処理の流れを示したフローチャート。
【図１５】直接展開可能領域および直接展開不可能領域を示した図。
【図１６】分割したバンドを示した図。
【図１７】直接展開処理の処理の流れを示したフローチャート。
【図１８】非直接展開処理の処理の流れを示したフローチャート。
【図１９】変形例１を説明する図。
【図２０】変形例２を説明する図。
【図２１】変形例３を説明する図。（ａ）、（ｂ）は各描画オブジェクトに対する処理を示した図。
【図２２】変形例７を説明する図。（ａ）はバンドの幅方向に分割した例を示した図、（ｂ）はバンドの高さ方向および幅方向に分割した例を示した図。
【符号の説明】
【０１３１】
１…ホストコンピュータ、２…プリンタ、１０…言語解釈部、１１…中間コード登録部、１２…バンドデータ記憶部としての中間コードデータメモリ、１３…描画処理部、２０…判定部としての展開処理判定部、２１…分割部としてのバンド分割部、２２…第１のデータ処理部としての直接展開部、２３…第２のデータ処理部としての非直接展開部、２４…印刷データメモリ、２５…復元部としてのバンド復元部、２６…印刷データ出力部、３０…ＲＯＰ処理部、３１…色変換部、３２…階調数変換部、３３…階調数変換データメモリ、４０…ＲＯＰ処理部、４１…ラスタデータ記憶部としてのＲＧＢデータメモリ、４２…色変換部、４３…色変換データ記憶部としてのＣＭＹＫデータメモリ、４４…階調数変換部、４５…階調数変換データ記憶部としての階調数変換データメモリ、４６…圧縮部、５０…入力インターフェース、５１…ＣＰＵ、５２…ＲＯＭ、５３…ハードディスク、５４…ＲＡＭ、５５…メモリカードスロット、５６…出力インターフェース、５７…メモリカード、１００…データ処理装置、２００…プリントエンジン、ＢＯ…描画オブジェクト、Ｐ…パターン、Ｓ…書き込み対象画像、Ｄ…元画像、ＴＦ…関数テーブル、ＴＣ…テーブルとしての条件テーブル。
【図１】
2007021730.tif 000003
【図２】
2007021730.tif 000004
【図３】
2007021730.tif 000005
【図４】
2007021730.tif 000006
【図５】
2007021730.tif 000007
【図６】
2007021730.tif 000008
【図７】
2007021730.tif 000009
【図８】
2007021730.tif 000010
【図９】
2007021730.tif 000011
【図１０】
2007021730.tif 000012
【図１１】
2007021730.tif 000013
【図１２】
2007021730.tif 000014
【図１３】
2007021730.tif 000015
【図１４】
2007021730.tif 000016
【図１５】
2007021730.tif 000017
【図１６】
2007021730.tif 000018
【図１７】
2007021730.tif 000019
【図１８】
2007021730.tif 000020
【図１９】
2007021730.tif 000021
【図２０】
2007021730.tif 000022
【図２１】
2007021730.tif 000023
【図２２】
2007021730.tif 000024