(57)【特許請求の範囲】
【請求項１】
第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置であって、
前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較手段と、
前記比較手段による比較結果に基づいて、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、の差分が所定の範囲内の値であるか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて、前記画素における前記第１のオブジェクトの前記画素値と、前記画素における前記第２のオブジェクトの前記画素値と、の差分が所定の範囲内の値の場合、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定手段と
を有することを特徴とする情報処理装置。
【請求項２】
第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置であって、
前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較手段と、
前記比較手段による比較結果に基づいて、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、が共通するか否かを判定する判定手段と、
前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通すると判定された場合に、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定手段と
を有し、
前記判定手段は、前記第２のオブジェクトに対し、変倍処理が設定されている場合に、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通しないと判定することを特徴とする情報処理装置。
【請求項３】
第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置であって、
前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較手段と、
前記比較手段による比較結果に基づいて、前記第２のオブジェクトに対し、変倍処理が設定されている場合に、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記変倍処理の後の前記第２のオブジェクトの画素値と、の比較結果に基づいて、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通するか否かを判定する判定手段と、
前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通すると判定された場合に、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定手段と
を有することを特徴とする情報処理装置。
【請求項４】
前記設定手段は、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通しない場合には、前記画素の属性を、前記第２のオブジェクトの属性に設定することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置が実行する情報処理方法であって、
前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較ステップと、
前記比較ステップにおける比較結果に基づいて、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、の差分が所定の範囲内の値であるか否かを判定する判定ステップと、
前記判定ステップにおける判定結果に基づいて、前記画素における前記第１のオブジェクトの前記画素値と、前記画素における前記第２のオブジェクトの前記画素値と、の差分が所定の範囲内の値の場合、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定ステップと
を含むことを特徴とする情報処理方法。
【請求項６】
第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置のコンピュータを、
前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較手段と、
前記比較手段による比較結果に基づいて、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、の差分が所定の範囲内の値であるか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて、前記画素における前記第１のオブジェクトの前記画素値と、前記画素における前記第２のオブジェクトの前記画素値と、の差分が所定の範囲内の値の場合、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定手段と
して機能させるためのプログラム。
【請求項７】
第１のオブジェクトに重畳された第２のオブジェクトの一部の画素の属性を設定する画像処理装置であって、
前記第１のオブジェクトの画素の画素値と、前記第２のオブジェクトの前記画素の画素値とを比較して、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通するかを判定する判定手段と、
前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通すると判定された場合に、前記第１のオブジェクトの属性の前記画素の属性を設定し、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通しないと判定された場合に、前記第２のオブジェクトの属性の前記画素の属性を設定する設定手段とを有し、
前記判定手段は、前記第１のオブジェクトの前記画素の前記画素値と前記第２のオブジェクトの前記画素の前記画素値との差が所定の範囲内である場合に、前記第２のオブジェクトの前記画素が共通すると判定することを特徴とする画像処理装置。
【請求項８】
第１のオブジェクトに重畳された第２のオブジェクトの一部の画素の属性を設定する画像処理装置であって、
前記第１のオブジェクトの画素の画素値と、前記第２のオブジェクトの前記画素の画素値とを比較して、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通するかを判定する判定手段と、
前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通すると判定された場合に、前記第１のオブジェクトの属性の前記画素の属性を設定し、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通しないと判定された場合に、前記第２のオブジェクトの属性の前記画素の属性を設定する設定手段とを有し、
前記判定手段は、前記第２のオブジェクトに対し変倍処理が設定されている場合に、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通しないと判定することを特徴とする画像処理装置。
【請求項９】
第１のオブジェクトに重畳された第２のオブジェクトの一部の画素の属性を設定する画像処理装置であって、
前記第２のオブジェクトに対し変倍処理が設定されている場合に、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記変倍処理の後の前記第２のオブジェクトの画素値と、の比較結果に基づいて、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通するか否かを判定する判定手段と、
前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通すると判定された場合に、前記第１のオブジェクトの属性の前記画素の属性を設定し、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通しないと判定された場合に、前記第２のオブジェクトの属性の前記画素の属性を設定する設定手段とを有し、
前記第２のオブジェクトに対し変倍処理が設定されている場合に、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記変倍処理の後の前記第２のオブジェクトの画素値と、の比較結果に基づいて、前記第１のオブジェクトの前記画素値と前記第２のオブジェクトの前記画素値が共通するか否かを判定することを特徴とする画像処理装置。
【請求項１０】
第１のオブジェクトに重畳された第２のオブジェクトの一部の画素の属性を設定する画像処理装置が実行する画像処理方法であって、
前記第１のオブジェクトの前記画素の画素値と、前記第２のオブジェクトの前記画素の画素値とを比較して、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通するかを判定する判定ステップと、
前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通すると判定された場合に、前記第１のオブジェクトの属性の前記画素の属性を設定し、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通しないと判定された場合に、前記第２のオブジェクトの属性の前記画素の属性を設定する設定ステップと
を含み、
前記判定ステップにおいては、前記第１のオブジェクトの前記画素の前記画素値と前記第２のオブジェクトの前記画素の前記画素値との差が所定の範囲内である場合に、前記第２のオブジェクトの前記画素が共通すると判定することを特徴とする画像処理方法。
【請求項１１】
第１のオブジェクトに重畳された第２のオブジェクトの一部の画素の属性を設定する画像処理装置に含まれるコンピュータを、
前記第１のオブジェクトの前記画素の画素値と、前記第２のオブジェクトの前記画素の画素値とを比較して、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通するかを判定する判定手段と、
前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通すると判定された場合に、前記第１のオブジェクトの属性の前記画素の属性を設定し、前記第１のオブジェクトの前記画素と、前記第２のオブジェクトの前記画素が共通しないと判定された場合に、前記第２のオブジェクトの属性の前記画素の属性を設定する設定手段
として機能させ、
前記判定手段は、前記第１のオブジェクトの前記画素の前記画素値と前記第２のオブジェクトの前記画素の前記画素値との差が所定の範囲内である場合に、前記第２のオブジェクトの前記画素が共通すると判定することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、アプリケーションソフトウエアから印刷を行う場合、プリンタドライバが、アプリケーションソフトウエアからの描画データを出力プリンタで処理可能な描画形式の描画データに変換し、当該変換後の描画データをプリンタに送る。より高品位な印刷を行うために、プリンタドライバはアプリケーションソフトウエアからの描画データを文字や図形やイメージといった描画属性に分類し、属性毎に最適な画像生成処理を用いた変換処理を行っている。また、プリンタ内でも同様な変換処理を行っている。例えば、文字に対しては解像度、彩度を優先し、図形に対しては、階調を優先し、イメージに対しては階調を優先した画像処理を行う。これにより、文字はよりくっきりと、図形やイメージはより滑らかに印刷することができる。
【０００３】
アプリケーションソフトウエアによっては、図形の一部領域を矩形イメージ化してプリンタドライバやプリンタに、上書きイメージとして印刷指示をする場合がある。また、プリンタがサポートしない高度な描画指示をドライバが受けた時、その描画を包含する領域内に含まれる全ての図形をビットマップ形式に展開し、矩形イメージとして上書き指示でプリンタに送ることがある。これらの場合、矩形イメージ化された部分とされていない部分の描画属性が異なることとなり、描画属性に合わせた最適な画像処理を行うと、描画データでは同じ色にも関わらずプリンタの出力では境目に段差が発生してしまう。
【０００４】
図１２（ａ）は、アプリケーションソフトウエアからプリンタドライバやプリンタに入力される描画データの一例を示す図である。図１２（ａ）に示す描画データ１２００は、ＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）形式で記述されている。なお、アプリケーションソフトウエアからの描画データ形式は、マイクロソフト社が定義するＧＤＩ形式等他の描画データ形式でも同様である。第１データ１２０１は、矩形図形を「濃いグレー」色で描画することが記述されたデータである。第２データ１２０２は、第１データに記述された矩形図形の内側の位置に文字列「ＡＢＣ」を「薄いグレー」色で描画することが記述されたデータである。第３データ１２０３は、第１データ１２０１の矩形図形や第２データ１２０２の文字列に一部重なる位置にＰＮＧ形式のイメージを上書き描画することが記述されたデータである。
【０００５】
図１２（ｂ）は、図１２（ａ）の描画データ１２００における記述順に沿って第１データ１２０１、第２データ１２０２、第３データ１２０３に従い実行された描画処理の処理結果を示す画像を示す図である。画像１２１０は、第１データ１２０１に対応する描画処理が行われた時点で得られる画像である。画像１２１０には、矩形図形１２１１が描画されている。画像１２２０は、さらに第２データ１２０１に対応する描画処理が行われた時点で得られる画像である。画像１２１０における矩形図形１２１１にさらに、「ＡＢＣ」の文字１２２１が重畳して描画されている。さらに、第３データ１２０３に対応する描画処理が行われると、第３データ１２０３の「１．ＰＮＧ」のイメージ１２４０が画像１２３０上の領域１２３１に重畳して描画される。画像１２５０は、第３データ１２０３に対応する描画処理後に得られる画像である。
【０００６】
画像１２５０において、矩形図形１２５１上にイメージ１２５２が重畳して描画されている。イメージ１２５２とその前に描画されていた矩形図形１２１１や文字１２２１とは、同じ画素において、色に違いが出ていることを示している。このように、同じ色指定であっても属性が異なると、描画結果の色味が異なることがある。
【０００７】
また、特許文献１には、背景の図形の濃度とその上に描画される文字の濃度が同じ場合、文字の属性を図形に合わせ、背景と同じ二値化パターンで出力する技術が開示されている。これにより、ディスプレイ上では背景と同一濃度なため隠れて見えなかった文字が、印刷時に浮き上がって見えてしまうのを防ぐことができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１２９３４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述のように、同じ色指定でも属性が異なると、描画結果の色味が異なる場合がある。これに起因して、イメージ属性の領域とイメージ以外の属性の領域の境界に段差が発生してしまうという問題があった。
【００１０】
本発明はこのような問題点に鑑みなされたもので、２つのオブジェクトが重なって描画される場合においても、高品質な印刷結果が得られるように、重なる部分の画素の属性を適切に設定することを目的とする。
【課題を解決するための手段】
【００１１】
そこで、本発明は、第１のオブジェクトの上に重なる第２のオブジェクトの部分の画素の属性を設定する情報処理装置であって、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、を比較する比較手段と、前記比較手段による比較結果に基づいて、前記画素における前記第１のオブジェクトの画素値と、前記画素における前記第２のオブジェクトの画素値と、の差分が所定の範囲内の値であるか否かを判定する判定手段と、記判定手段による判定結果に基づいて、前記画素における前記第１のオブジェクトの前記画素値と、前記画素における前記第２のオブジェクトの前記画素値と、の差分が所定の範囲内の値の場合、前記画素の属性を、前記第１のオブジェクトの属性に設定する設定手段とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、オブジェクトどうしが重なる部分の画素に適切な属性を設定することができる。
【図面の簡単な説明】
【００１３】
【図１】印刷システムのハードウエアの構成例を示す図である。
【図２】印刷システムのソフトウェア構成を示す図である。
【図３】描画データの属性と画像処理の関係を示す図である。
【図４】属性情報の説明図である。
【図５】描画データから印刷データに変換する処理の説明図である。
【図６】データ変換処理を示すフローチャートである。
【図７】一致性確認処理における詳細な処理を示すフローチャートである。
【図８】後処理の説明図である。
【図９】後処理を示すフローチャートである。
【図１０】一致性確認処理の変更例を示すフローチャートである。
【図１１】後処理の変更例を示す図である。
【図１２】従来例の説明図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面に基づいて説明する。
図１は、本実施形態の印刷システムのハードウエアの構成例を示す図である。本実施形態の印刷システムは、アプリケーションソフトウエアからの描画データをプリンタ用のデータに変換し、印刷を実行するシステムである。印刷システムは、クライアント装置１１０と、プリンタ１２０とを有している。ここで、クライアント装置１１０は、情報処理装置の一例であり、例えばＰＣ等である。クライアント装置１１０とプリンタ１２０は、ネットワーク１０１により接続されている。ネットワーク１０１は、例えば、ＬＡＮ、ＷＡＮ等である。ＬＡＮは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略称である。ＷＡＮは、Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略称である。
【００１５】
クライアント装置１１０は、ＣＰＵ１１１、メモリユニット１１２、記憶装置１１３、入力装置１１４、ディスプレイ装置１１５及びネットワークインターフェイス１１６を備える。ＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称である。ＣＰＵ１１１は、クライアント装置１１０全体を制御する。ネットワークインターフェイス１１６は、クライアント装置１１０をネットワーク１０１を介してプリンタ１２０やシステムの他の装置につなげることができる。メモリユニット１１２は、例えば、半導体のランダムアクセスメモリ（ＲＡＭ）やリードオンリーメモリ（ＲＯＭ）から構成される。ＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。ＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略称である。
【００１６】
また、記憶装置１１３は、典型的にハードディスクドライブやフラッシュメモリを含んでおり、ＯＳやプログラム及びデータの格納に使用する。ＯＳは、Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍの略称である。なお、後述するクライアント装置１１０の機能や処理は、ＣＰＵ１１１が記憶装置１１３等に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１７】
また、クライアント装置１１０は、キーボードやマウスといった入力装置１１４、表示を行うためのディスプレイ装置１１５を含んでいる。クライアント装置１１０は、ＬＩＮＵＸやマイクロソフトウィンドウズ（登録商標）のようなオペレーションシステムや相互接続バス１１７を介して通信を行うクライアント装置１１０のコンポーネント１１１から１１６を利用する。
【００１８】
プリンタ１２０は、ＣＰＵ１２１、メモリユニット１２２、記憶装置１２３、入力装置１２４、ディスプレイ装置１２５、印刷装置１２６及びネットワークインターフェイス１２７を備える。ＣＰＵ１２１は、プリンタ１２０全体を制御する。ネットワークインターフェイス１２７は、プリンタ１２０をネットワーク１０１を介してクライアント装置１１０やシステムの他の装置につなげることができる。メモリユニット１２２は、例えば、半導体のランダムアクセスメモリ（ＲＡＭ）やリードオンリーメモリ（ＲＯＭ）から構成される。記憶装置１２３は、典型的にハードディスクドライブやフラッシュメモリを含んでおり、ＯＳやプログラム及びデータの格納に使用する。なお、後述するクライアント装置１１０の機能や処理は、ＣＰＵ１１１が記憶装置１１３等に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１９】
また、プリンタ１２０は、タッチパネルやボタンといった入力装置１２４、表示を行うためのディスプレイ装置１２５、紙に印刷出力を行うための印刷装置１２６を含んでいる。プリンタ１２０は機器組み込み型オペレーションシステムや相互接続バス１２８を介して通信を行うプリンタ１２０のコンポーネント１２１から１２７を利用する。
【００２０】
図２は、印刷システムのソフトウェア構成を示す図である。印刷システムにおいては、クライアント装置１１０が印刷指示を受けた描画データからプリンタ１２０に合わせた印刷データ（例えばＰＤＬデータ）を生成し、生成した印刷データをプリンタ１２０に送信する。そして、プリンタ１２０が印刷出力を行う。
【００２１】
クライアント装置１１０は、表示部２１１、通信部２１２、入力部２１３、データ取得部２１４、データ変換部２１５及びデータ保存部２１６を備える。表示部２１１は、各種データの表示を行う。通信部２１２は、ネットワーク１０１に接続し他の機器とネットワーク通信を行う。入力部２１３は、ユーザの操作にしたがって、アプリケーションソフトウエアへの指示や印刷指示を入力する。
【００２２】
データ取得部２１４は、後述するデータ保存部２１６から、アプリケーションソフトウエアのデータを取得する。データ取得部２１４はまた、印刷時にＯＳが生成する描画データ（例えばＸＰＳやＧＤＩ形式のデータ）を取得する。データ取得部２１４はまた、データ変換処理中に生成する印刷データ（例えば中間形式のデータ）を取得する。データ変換部２１５は、描画データを出力するプリンタ１２０に合わせた印刷データ（例えばＰＤＬデータ）に変換する、描画データ変換処理を行う。
【００２３】
データ保存部２１６は、アプリケーションソフトウエアのデータを保存する。データ保存部２１６はまた、アプリケーションソフトウエアから印刷を行う際にＯＳが生成する描画データ（例えばＸＰＳやＧＤＩ形式のデータ）や、印刷データ変換処理中の印刷データ（例えば中間形式のデータ）等を保存する。本実施形態においては、ＯＳが生成する描画データの一例として、ＸＰＳ形式の描画データについて説明する。また、データ変換処理中のデータとして詳細は後述するが、データ保存部２１６は、取得した描画データ、データ変換途中の一時データ（例えばビットマップや属性情報）、描画データから生成した印刷データ（例えば中間形式のデータ）等を保存する。
【００２４】
プリンタ１２０は、印刷データ（例えばＰＤＬデータ）を出力する。プリンタ１２０は、通信部２２１、表示部２２２、入力部２２３、印刷部２２４及びデータ変換部２２５を備える。通信部２２１は、ネットワーク１０１に接続し他の機器とネットワーク通信を行う。表示部２２２は、プリンタ１２０に表示を行う。入力部２２３は、ユーザの操作にしたがって、データや指示を入力する。印刷部２２４は、印刷データを紙に印刷し出力する。データ変換部２２５は、印刷データを印刷部のデータに変換する、描画データ変換処理を行う。データ保存部２２６は、印刷データ変換処理中の印刷データ（例えば中間形式のデータ）等を保存する。また、データ変換処理中のデータとして詳細は後述するが、データ保存部２２６は、取得した描画データ、データ変換途中の一時データ（例えばビットマップや属性情報）、描画データから生成した印刷データ（例えば中間形式のデータ）等を保存する。
【００２５】
続いて、印刷システムによる処理の概略について説明する。まずクライアント装置１１０が、アプリケーションソフトウエアにより印刷指示を受けると、記憶装置１１３に記憶されたデータ変換処理モジュールが、ＣＰＵ１１１によりメモリユニット１１２にロードされ実行される。これにより、ＣＰＵ１１１が、メモリユニット１１２、記憶装置１１３、入力装置１１４、ディスプレイ装置１１５、ネットワークインターフェイス１１６を制御することにより、後述するデータ変換処理を行う。
【００２６】
クライアント装置１１０は、生成した印刷データ（例えばＰＤＬデータ）をプリンタ１２０に送信する。プリンタ１２０においては、ＣＰＵ１２１が、受信した印刷データを印刷装置１２６から印刷出力するよう制御する。ＣＰＵ１２１は、この際メモリユニット１２２、記憶装置１２３、入力装置１２４、ディスプレイ装置１２５、印刷装置１２６、ネットワークインターフェイス１２７を制御する。
【００２７】
図３は、描画データの属性と画像処理の関係を示す図である。クライアント装置１１０は、描画データの属性に基づいて、最適な画像処理を行う。クライアント装置１１０は、図３に示すように、属性と、画像処理の種類としてのディザの種類と、レンダリングインテントと、を対応付けた対応テーブルを記憶している。
【００２８】
属性３０１、ディザの種類（ディザ種）３０２、レンダリングインテント３０３は、文字３０４に対し、解像度優先、彩度優先を、図形３０５に対し、階調優先、全体圧縮を、イメージ３０６に対し、階調優先、全体圧縮を指定している。クライアント装置１１０は、対応テーブルを参照して、属性に応じた画像処理を施すことにより、文字はよりくっきりと、図形やイメージはよりなめらかに印刷されるような印刷データを生成することができる。
【００２９】
なお、一般的なアプリケーションソフトウエアからの描画データ（オブジェクト）には、文字であればフォント情報と文字コード、図形であれば図形形状を表すパス座標値及び描画方法、イメージであればサイズ及び各画素の色情報で記述されている。したがって、クライアント装置１１０は、この記述形式に基づいて描画データの属性を判定することができる。
【００３０】
図４は、印刷システムにおいて印刷データを生成する際に用いられるビットマップの各画素の属性情報の説明図である。ビットマップの各画素には、描画された画像データの属性を示すフラグが設定される。なお、本実施形態においては、フラグは、２進数の値であるものとする。何も描画が行われていない初期状態では、全ての画素に対し、未描画を示す「００００」が設定される。グラフィック（あるいは図形と呼ぶ）描画が行われた場合には、グラフィック描画が行われた画素に対し、描画データの属性がグラフィックであることを示す「０００１」が設定される。文字描画が行なわれた場合には、文字描画が行われた画素に対し、描画データの属性が文字であることを示す「００１０」が設定される。イメージ描画が行なわれた場合には、イメージ描画が行われた画素に対し、描画データの属性がイメージであることを示す「０１００」が設定される。
【００３１】
また、同一の画素に対し、重ねて描画が行われる場合には、既に描画済みの描画データの属性を継続することを示す下地属性を示す「１ＸＸＸ」が設定される。「１ＸＸＸ」は、「Ｘ」の位については、既に描画済みの属性データに対応するフラグの値のままとし、最上位ビットを「１」に設定することを示している。画素毎に、このフラグを参照することで、描画済みの描画データの属性を採用したものか否かを判別することができる。
【００３２】
図５は、描画データから印刷データに変換する処理の説明図である。画像５００は、図１２（ａ）の第１データ１２０１に対応する描画処理が行われた時点で得られる画像である。画像５１０は、画像５００の状態から、さらに図１２（ｂ）の第２のデータ１２０２に対応する描画処理が行われた時点で得られる画像である。図１２（ｃ）は、画像５１０の状態から、さらに図１２（ｃ）の第３のデータ１２０３に対応する描画処理が行われた時点で得られる画像である。
【００３３】
ビットマップ５３０、５４０、５５０は、それぞれ画像５００、５１０、５２０に対応する。ビットマップ５３０、５４０、５５０には、それぞれ、対応する画像の属性情報が割り当てられている。図５に示す属性情報「１」は、図４において説明した属性フラグ「０００１」のグラフィック属性を意味する。属性情報「２」は、属性フラグ「００１０」の文字属性を意味する。属性情報「４」は、属性フラグ「０１００」のイメージ属性を意味する。属性情報「９」は、下地属性を継続したイメージ属性「０００１」を意味する。すなわち、属性情報「９」は、一の画素に対し、下地として既に描画済みの第１の描画データ上に、第２の描画データを重ねる場合において、第１の描画データに設定されていたイメージ属性を引き継いで、この画素に描画の属性として割り当てることを意味する。属性情報「ａ」は、下地属性を継続した文字属性「００１０」を意味する。属性情報「ｃ」は、下地属性を継続した図形属性「０１００」を意味する。
【００３４】
画像５００には、矩形図形が描画されており、ビットマップ５３０のうち、矩形図形に対応する領域５３１の各画素には、矩形図形の属性情報「１」が割り当てられている。なお、領域５３１以外の領域の各画素には、未描画の属性情報「０」が割り当てられている。画像５１０においては、矩形図形上に文字が描画されている。これに対応し、ビットマップ５４０のうち文字に対応する領域５４１の所定の画素に対し文字の属性情報「２」が割り当てられている。画像５２０においては、文字の上にイメージが描画されている。ビットマップ５５０の領域５５１はイメージに対応する領域である。領域５５１の画素のうち、イメージ属性の画素にはイメージの属性情報「４」が割り当てられている。また、イメージの描画に関わらず下地の属性が継続して設定された画素には、下地属性を継続したことを示す属性情報「９」又は「ａ」が割り当てられている。クライアント装置１１０は、描画処理を行う過程において、領域５５１の各画素の属性情報を参照することで、高品質な印刷が可能となるような印刷データを生成することができる。
【００３５】
図６は、クライアント装置１１０によるデータ変換処理を示すフローチャートである。データ変換処理は、アプリケーションソフトウエアからの描画データをプリンタ１２０用の印刷データ（例えばビットマップ形式のＰＤＬデータ）に変換する処理である。Ｓ６０１において、データ変換部２１５は、データ変換部２１５の処理の初期化を行う。次に、Ｓ６０２において、データ変換部２１５は、データ取得部２１４を介してデータ保存部２１６に保存された、印刷時にＯＳが生成する描画データを取得する。本実施形態においては、図１２に示すようなＸＰＳ形式の描画データを取得する。
【００３６】
次に、Ｓ６０３において、データ変換部２１５において、未処理の描画データがあるか否かを判定する。データ変換部２１５は、未処理の描画データが存在する場合には（Ｓ６０３でＹＥＳ）、処理をＳ６０５へ進める。データ変換部２１５は、未処理の描画データが存在しない場合には（Ｓ６０３でＮＯ）、処理をＳ６０４へ進める。Ｓ６０４において、データ変換部２１５は、データ保存部２１６に生成保存されたビットマップ情報及び属性情報を、通信部２１２を介してプリンタ１２０に送信し、データ変換処理を終了する。
【００３７】
一方、Ｓ６０５において、データ変換部２１５は、未処理の描画データから１つの描画単位の描画データを取り出す。以下、Ｓ６０５において取り出した１つの描画単位の描画データを対象描画データと称する。データ変換部２１５は、対象描画データに対して設定されている描画の属性を確認する。データ変換部２１５は、文字描画の属性が設定されている場合には（Ｓ６０５でＹＥＳ）、処理をＳ６０６へ進める。データ変換部２１５は、図形（グラフィック）描画の属性が設定されている場合には（Ｓ６０５でＮＯ、Ｓ６０８でＹＥＳ）、処理をＳ６０９へ進める。データ変換部２１５は、イメージ描画の属性が設定されている場合には（Ｓ６０５でＮＯ、Ｓ６０８でＮＯ、Ｓ６１１でＹＥＳ）、処理をＳ６１３へ進める。データ変換部２１５は、これら以外の設定の場合には（Ｓ６０５でＮＯ、Ｓ６０８でＮＯ、Ｓ６１１でＮＯ）、処理をＳ６１２へ進める。
【００３８】
文字属性か否かについては、図１２の第２データ１２０２に示すように「Ｇｌｙｐｈｓ  Ｆｉｌｌ」で指定されているか否かで判定することができる。図形属性か否かについては、図１２の第１データ１２０１に示すように「Ｐａｔｈ  Ｄａｔａ」で指定されているか否かで判定することができる。イメージ描画か否かについては、図１２の第３データ１２０３に示すように「ＩｍａｇｅＢｒｕｓｈ」で指定されているか否かで判定することができる。
【００３９】
Ｓ６０６において、データ変換部２１５は、対象描画データを参照し、ビットマップの対応する領域に文字描画処理を行う。次に、Ｓ６０７において、データ変換部２１５は、対象描画データに対応する各画素の属性情報の属性フラグに文字属性を設定し、下地属性を採用したことを示す下地属性フラグをクリアし、その後処理をＳ６０３へ進める。
【００４０】
Ｓ６０９において、データ変換部２１５は、対象画像データを参照し、ビットマップの対応する領域に図形描画処理を行う。次に、Ｓ６１０において、データ変換部２１５は、対象描画データに対応する各画素の属性情報の属性フラグにグラフィック属性を設定し、下地属性を採用したことを示す下地属性フラグをクリアし、その後処理をＳ６０３へ進める。Ｓ６１２において、データ変換部２１５は、その他のデータ処理を行い、その後処理をＳ６０３へ進める。
【００４１】
Ｓ６１３において、データ変換部２１５は、対象描画データであるイメージデータから、順次１画素分のデータを取り出す。以下、Ｓ６１３において取り出したデータを対象画素データと称する。データ変換部２１５は、描画データが圧縮されている場合には、一旦伸張してから取り出しを行う。データ変換部２１５は、描画データがカラーイメージの場合には、カラー形式の１画素相当分のデータを取り出し、ＲＧＢ形式でなければＲＧＢ形式に変換する。なお、描画データのデータ形式は、ＲＧＢ形式に限定されるものではなく、後段でビットマップへ変換する際の形式と同じ形式であればよく。モノクロイメージが入力された場合も同様で、データ変換部２１５は、後段でビットマップへ変換する際の形式と同じに変換する。例えば、ビットマップがＲＧＢのカラー形式であれば、データ変換部２１５は、モノクロイメージをＲＧＢカラーに変換する。
【００４２】
次に、Ｓ６１４において、データ変換部２１５は、イメージ属性の描画データ（例えば、図５に示す領域５５１）のうち、参照画素に割り当てられた属性情報を確認する。ここで、参照画素は、予め定められた位置の複数個の画素である。参照画素は、例えば、描画データにより描画される画像の左端から右に所定個分の画素であるものとする。また、他の例としては、描画データにより描画される画像の右端から左に所定個分の画素であってもよい。また、他の例としては、下端の所定個分の画素であってもよい。データ変換部２１５は、参照画素のすべてに下地属性を採用する下地属性フラグが立てられている場合には（Ｓ６１４でＹＥＳ）、処理をＳ６１５へ進める。データ変換部２１５は、下地属性フラグが立てられていない画素が存在する場合には（Ｓ６１４でＮＯ）、処理をＳ６１９へ進める。
【００４３】
Ｓ６１５において、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値と、の一致性の判定を行う。一致性判定処理（Ｓ６１５）については、図７を参照しつつ後述する。Ｓ６１６において、データ変換部２１５は、一致性判定処理の結果を確認する。データ変換部２１５は、一致性ありと判定した場合には（Ｓ６１６でＹＥＳ）、処理をＳ６１７へ進める。データ変換部２１５は、一致性なしと判定した場合には（Ｓ６１６でＮＯ）、処理をＳ６１９へ進める。
【００４４】
Ｓ６１７において、データ変換部２１５は、対象画素データに基づいて、ビットマップの対応画素へのイメージ描画処理を行う。次に、Ｓ６１８において、データ変換部２１５は、ビットマップの対応画素の属性情報を参照する。そして、データ変換部２１５は、イメージ属性でなければ、下地属性を採用したことを示す下地属性フラグを立てる。データ変換部２１５は、その後処理をＳ６２１へ進める。Ｓ６１８の処理は、対象画素データに対応するビットマップ上の画素に、既に描画済みの描画データの属性を設定する設定処理の一例である。
【００４５】
一方、Ｓ６１９において、データ変換部２１５は、対象画素データに基づいて、ビットマップの対応する画素へのイメージ描画処理を行う。次に、Ｓ６２０において、データ変換部２１５は、ビットマップの対応する画素の属性情報にイメージ属性を設定し、下地属性フラグをクリアする。データ変換部２１５は、その後処理をＳ６２１へ進める。Ｓ６２０の処理は、対象画素データに対応するビットマップ上の画素に、イメージデータの属性を設定する設定処理の一例である。
【００４６】
Ｓ６２１において、データ変換部２１５は、対象描画データに未処理の画素データが存在するか否かを確認する。データ変換部２１５は、未処理の画素データ（次の画素データ）が存在する場合には（Ｓ６２１でＹＥＳ）、処理をＳ６１３へ進める。データ変換部２１５は、未処理の画素データが存在しない場合には（Ｓ６２１でＮＯ）、処理をＳ６２２へ進める。Ｓ６２２において、データ変換部２１５は、後処理を行う。後処理（Ｓ６２２）については、図８、図９を参照しつつ後述する。
【００４７】
図７は、図６を参照しつつ説明した一致性確認処理（Ｓ６１５）における詳細な処理を示すフローチャートである。Ｓ７０１において、データ変換部２１５は、対象描画データとしてのイメージデータに対し変倍処理が設定されているか否かを確認する。ここで、変倍処理は、拡大又は縮小のいずれかである。データ変換部２１５は、変倍処理が設定されている場合には（Ｓ７０１でＹＥＳ）、処理をＳ７０５へ進める。データ変換部２１５は、変倍処理が設定されていない場合には（Ｓ７０１でＮＯ）、処理をＳ７０２へ進める。
【００４８】
Ｓ７０２において、データ変換部２１５は、Ｓ６１３において取り出した対象画素データを描画すべき、ビットマップ上の画素位置を算出する。次に、Ｓ７０３において、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値とを比較する。データ変換部２１５は、両画素値が同じ値である場合には（Ｓ７０３でＹＥＳ）、処理をＳ７０４へ進め、対象画素データの画素値と、対応するビットマップの位置の画素値と、に一致性があると判定する。以上で、一致性確認処理が終了する。データ変換部２１５は、両画素値が同じ値でない場合には（Ｓ７０３でＮＯ）、処理をＳ７０５へ進め、対象画素データの画素値と、対応するビットマップの位置の画素値と、に一致性がないと判定する。以上で、一致性確認処理が終了する。
【００４９】
図８は、図６を参照しつつ説明した後処理（Ｓ６２２）の説明図である。画像８００は、図１２（ａ）に示す描画データ１２００に対応してＳ６２１までの処理により得られた画像である。ここで、図形８０１には文字が重畳され、さらに、図形８０１と一部重なる位置にイメージ８０３が重畳されている。ここで、領域８０２と、領域８０４の画素が同じ値を示すものとする。また、ビットマップ８１０は、画像８００に対応する。ビットマップ８１０の領域８１１は、イメージ８０３に対応する。また、ビットマップ８２０は、後処理後のビットマップである。ビットマップ８１０の領域８１２、８１３のように、イメージデータにおいて同じ画素値を示す画素であって、かつ下地属性が設定されている画素がある。このような画素に対しては、データ変換部２１５は、後処理において、下地属性を採用することなく、周囲の画素と同様に、８２２、８２３に示すように、イメージ属性を設定する。
【００５０】
図９は、後処理（Ｓ６２２）における詳細な処理を示すフローチャートである。Ｓ９０１において、データ変換部２１５は、イメージの描画対象のビットマップの属性情報の中から、未処理の１画素分の属性情報を取り出す。以下、Ｓ９０１において取り出した属性情報を、対象属性情報と称する。Ｓ９０２において、データ変換部２１５は、Ｓ９０１で未処理の属性情報を取り出せたか否かを確認する。データ変換部２１５は、属性情報を取り出せなかった場合には（Ｓ９０２でＮＯ）、後処理を終了する。データ変換部２１５は、属性情報を取り出せた場合には（Ｓ９０２でＹＥＳ）、処理をＳ９０３へ進める。
【００５１】
Ｓ９０３において、データ変換部２１５は、対象属性情報が下地属性を示すものか否かを確認する。データ変換部２１５は、下地属性の場合には（Ｓ９０３でＹＥＳ）、処理をＳ９０４へ進める。データ変換部２１５は、下地属性でない場合には（Ｓ９０３でＮＯ）、処理をＳ９０１へ進める。この場合、データ変換部２１５は、Ｓ９０１において、新たに、未処理の１画素分の属性情報と取り出し、Ｓ９０２以降の処理を行う。Ｓ９０４において、データ変換部２１５は、下地属性が設定された画素に対応するビットマップの画素値を取り出す。すなわち、Ｓ９０４において取り出す画素値は、Ｓ９０１において取り出された属性情報に対応する画素の画素値である。
【００５２】
次に、Ｓ９０５において、データ変換部２１５は、ビットマップの次の画素値を取り出す。ここで、次の画素値とは、Ｓ９０４において取り出した画素値に対応する画素に隣接する画素の画素値である。次に、Ｓ９０６において、データ変換部２１５は、Ｓ９０５で次の画素値を取り出せたか否かを確認する。なお、次の画素値が取り出せない場合とは、Ｓ９０４において取り出した画素値に対応する画素に隣接する画素が存在しない場合である。データ変換部２１５は、次の画素値を取り出した場合には（Ｓ９０６でＹＥＳ）、処理をＳ９０８へ進める。データ変換部２１５は、次の画素を取り出せなかった場合には（Ｓ９０６でＮＯ）、処理をＳ９０７へ進める。Ｓ９０７において、データ変換部２１５は、Ｓ９０４で取り出した画素値に対応する画素に割り当てられている下地属性フラグをクリアする。その後、処理をＳ９０１へ進める。Ｓ９０１において、データ変換部２１５は、未処理の１画素分の属性値取り出し、Ｓ９０２以降の処理を継続する。
【００５３】
また、Ｓ９０８において、データ変換部２１５は、Ｓ９０４で取り出した画素値と、Ｓ９０５で取り出した画素値が、同じ値か否かを確認する。データ変換部２１５は、両画素値が同じ値の場合には（Ｓ９０８でＹＥＳ）、処理をＳ９０９へ進める。データ変換部２１５は、両画素値が同じ値でない場合には（Ｓ９０８でＮＯ）、処理をＳ９０５へ進める。この場合、Ｓ９０５において、前回Ｓ９０５を実行した際に取り出した画素値の次の画素値を取り出し、Ｓ９０６以降の処理を継続する。
【００５４】
Ｓ９０９において、データ変換部２１５は、下地属性フラグ以外のフラグがイメージ属性フラグか否かを確認する。データ変換部２１５は、イメージ属性の場合には（Ｓ９０９でＹＥＳ）、処理をＳ９１０へ進める。データ変換部２１５は、イメージ属性でない場合には（Ｓ９０９でＮＯ）、処理をＳ９０５へ進める。Ｓ９１０において、データ変換部２１５は、描画対象のすべてのビットマップに対し、Ｓ９０４で取り出した画素値と同じ画素値の画素で、かつ下地属性フラグが立っている画素の属性をイメージ属性に変更する。具体的には、データ変換部２１５は、Ｓ９０４で取り出した画素値と同じ画素値の画素で、かつ下地属性フラグが立っている画素に対し、イメージ属性のフラグを立てる。さらに、データ変換部２１５は、下地属性フラグをクリアする。データ変換部２１５は、その後処理をＳ９０１へ進める。
【００５５】
このように、描画済みの画素値に対応する属性が設定された画素の画素値と同じ画素値でかつイメージデータの属性以外の属性が設定されている画素が存在したとする。このような場合には、データ変換部２１５は、描画済みの画素値に対応する属性が設定された画素の属性を、イメージデータの属性に変更する。このＳ９１０の処理は、変更処理の一例である。
【００５６】
以上のように、本実施形態に係るクライアント装置１１０は、既に描画済みの描画データ上にイメージデータを重畳して描画する場合に、重畳される画素に適切な属性を設定することができる。したがって、クライアント装置１１０は、高品質な印刷結果が得られるような印刷データを生成することができる。また、異なる描画形式で入力された描画データであっても、同じ画像処理を施すことが可能となり、色味や濃度などが異なって見えてしまうというのを防ぐことができる。
【００５７】
第１の変更例としては、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値と、の比較結果に基づいて、一致性の有無を判定すればよく、そのための具体的な条件は、実施形態に限定されるものではない。他の例としては、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値と、の差分が所定の範囲内の値である場合に、一致性があると判定してもよい。また、他の例としては、対象画素データの画素値と、対応するビットマップ位置を基準とした所定範囲内の画素の画素値と、の比較結果に基づいて、一致性の有無を判定してもよい。
【００５８】
図１０は、一致性確認処理の変更例を示すフローチャートである。Ｓ１００１において、データ変換部２１５は、対象描画データとしてのイメージデータに対し、変倍処理が設定されているか否かを確認する。データ変換部２１５は、変倍処理が設定されている場合には（Ｓ１００１でＹＥＳ）、処理をＳ１００２へ進める。データ変換部２１５は、変倍処理が設定されていない場合には（Ｓ１００１でＮＯ）、処理をＳ１００６へ進める。
【００５９】
Ｓ１００２において、データ変換部２１５は、変倍処理の設定が拡大であるか縮小であるかを確認する。データ変換部２１５は、拡大の場合には（Ｓ１００２でＹＥＳ）、処理をＳ１００３へ進める。データ変換部２１５は、縮小の場合には（Ｓ１００２でＮＯ）、処理をＳ１００４へ進める。Ｓ１００３において、データ変換部２１５は、対象描画データとしてのイメージデータに対し、拡大処理を行う。すなわち、データ変換部２１５は、拡大率に応じて、イメージデータと、ビットマップの複数の画素とを合わせる。データ変換部２１５は、その後処理をＳ１００６へ進める。例えば、縦横各２倍拡大する場合には、対象画素データに対応するビットマップの画素は４画素分となる。
【００６０】
一方、Ｓ１００４において、データ変換部２１５は、対象描画データとしてのイメージデータに対し、縮小処理を行う。すなわち、データ変換部２１５は、縮小率に応じて、イメージデータの１画素と、ビットマップの複数の画素とを合わせる。データ変換部２１５は、その後処理をＳ１００５へ進める。
【００６１】
Ｓ１００５において、データ変換部２１５は、対象画素データが、縮小の結果描画すべき画素か否かを判定する。データ変換部２１５は、描画すべき画素と判定した場合には（Ｓ１００５でＹＥＳ）、処理をＳ１００６へ進める。データ変換部２１５は、描画すべき画素ではないと判定した場合には（Ｓ１００５でＮＯ）、処理をＳ１０１１へ進める。なお、イメージデータを縮小描画する際に間引き処理の対象になった場合に、描画すべき画素ではないと判定され、間引き処理の対象にならなかった場合に、描画すべき画素と判定される。Ｓ１０１１において、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値と、に一致性がないと判定する。以上で、一致性確認処理が終了する。
【００６２】
Ｓ１００６において、データ変換部２１５は、Ｓ６１３において取り出した対象画素データを描画すべき、ビットマップ上の画素位置を算出する。次に、Ｓ１００７において、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの位置の画素値を比較する。データ変換部２１５は、両画素値が同じ値である場合には（Ｓ１００７でＹＥＳ）、処理をＳ１０１０へ進め、対象画素データの画素値と、対応するビットマップの位置の画素値と、に一致性があると判定する。以上で、一致性確認処理が終了する。データ変換部２１５は、データ変換部２１５は、両画素値が同じ値でない場合には（Ｓ１００７でＮＯ）、処理をＳ１００８へ進める。
【００６３】
なお、Ｓ１００３において、複数の対象画素データがビットマップ上の複数画素に対応付けられた場合には、データ変換部２１５は、Ｓ１００６において、複数画素それぞれの位置を算出する。また、データ変換部２１５は、Ｓ１００７において、対象画素データの画素値と、対応するビットマップの複数の画素位置それぞれの画素値とを比較する。そして、データ変換部２１５は、対象画素データの画素値と、対応するビットマップの複数の画素位置それぞれの画素値と、の比較において、すべての組み合わせにおいて、両画素値が同じ値であった場合に、一致性があると判定する。なお、他の例としては、データ変換部２１５は、一定数以上の組み合わせにおいて、両画素値が同じ値であった場合に、一致性があると判定してもよい。このように、データ変換部２１５は、イメージデータに変倍処理が設定されている場合には、変倍後の対象画素データの画素値と、ビットマップの画素値と、の比較を行う。
【００６４】
Ｓ１００８において、データ変換部２１５は、対象画素データに対応するビットマップの位置を基準とした周辺領域内の画素を比較対象として、対象画素データと同じ画素値の画素が存在するか否かを確認する。なお、Ｓ１００８の処理は、入力イメージ生成時の描画アルゴリズムと本システムによる描画アルゴリズムの違いによる描画位置のズレを考慮したものである。ここで、周辺領域は、対象画素データに対応するビットマップの位置を基準位置とし、基準位置から所定距離内の領域であるものとする。周辺領域は、例えば基準画素から上下左右斜めにそれぞれ１から２画素分の領域である。なお、周辺領域は、対象画素データに対応するビットマップの位置を基準として予め設定された領域であればよく、基準位置から所定距離内の領域に限定されるものではない。ここで、周辺領域内の画素は、対象画素データに対応する対象画素に対応する対応画素の一例である。
【００６５】
データ変換部２１５は、対象画素データと同じ画素が少なくとも１つ存在する場合には（Ｓ１００８でＹＥＳ）、処理をＳ１０１０へ進める。データ変換部２１５は、対象画素データと同じ画素が１つも存在しない場合には（Ｓ１００８でＮＯ）、処理をＳ１００９へ進める。Ｓ１００９において、データ変換部２１５は、対象画素データと比較対象の画素の画素値の差分を算出する。そして、データ変換部２１５は、差分が所定の範囲内の値か否かを判定する。所定値は、クライアント装置１１０に予め設定されているものとする。データ変換部２１５は、差分が所定の範囲内の値である場合には（Ｓ１００９でＹＥＳ）、処理をＳ１０１０へ進める。データ変換部２１５は、差分が所定の範囲内でない場合には（Ｓ１００９でＮＯ）、処理をＳ１０１１へ進める。
【００６６】
第２の変更例としては、後処理は、実施形態に限定されるものではない。図１１は、後処理の変更例を示す図である。データ変換部２１５は、図９を参照しつつ説明した後処理に替えて、又は図９を参照しつつ説明した後処理に加えて、図１１に示す後処理を実行してもよい。また、データ変換部２１５は、後処理を省略してもよい。すなわち、データ変換部２１５は、図６のＳ６２１でデータ変換処理を終了してもよい。図１１に示す変更例においては、Ｓ１１０１〜Ｓ１１０３の処理は、図９を参照しつつ説明したＳ９０１〜Ｓ９０３の処理と同様である。Ｓ１１０３において、データ変換部２１５は、Ｓ１１０１において取り出した属性情報、すなわち対象属性情報が下地属性の場合には（Ｓ１１０３でＹＥＳ）、処理をＳ１１０４へ進める。
【００６７】
Ｓ１１０４において、データ変換部２１５は、Ｓ１１０１において取り出された属性情報に対応する画素の周辺領域の画素に割り当てられている属性情報を取り出す。Ｓ９０１において取り出された属性情報に対応する画素が、以下の処理の処理対象となる。以下、本画素を、対象画素と称する。また、周辺領域とは、対象画素の位置を基準位置とし、基準位置から所定距離内の領域であるものとする。周辺領域は、例えば、基準画素から上下左右斜めにそれぞれ１から２画素分の領域である。なお、周辺領域は、対象画素の位置を基準として予め設定された領域であればよく、基準位置から所定距離内の領域に限定されるものではない。なお、データ変換部２１５は、イメージデータの描画領域から外れる画素については、周辺領域に含めないものとする。
【００６８】
次に、Ｓ１１０５において、データ変換部２１５は、周辺領域の属性情報を取り出せたか否かを確認する。データ変換部２１５は、周辺領域の属性情報を取り出せた場合には（Ｓ１１０５でＹＥＳ）、処理をＳ１１０６へ進める。データ変換部２１５は、周辺領域の属性情報を取り出せなかった場合には（Ｓ１１０５でＮＯ）、処理をＳ１１０７へ進める。Ｓ１１０６において、データ変換部２１５は、周辺領域の画素の属性がイメージ属性以外でかつ下地属性以外であるという条件を満たすか否かを確認する。データ変換部２１５は、条件を満たす場合には（Ｓ１１０６でＹＥＳ）、処理をＳ１１０１へ進める。この場合、データ変換部２１５は、Ｓ１１０１において、未処理の１画素分の属性情報を取り出し、Ｓ１１０２以降の処理を行う。データ変換部２１５は、条件を満たさない場合には（Ｓ１１０６でＮＯ）、処理をＳ１１０４へ進める。
【００６９】
一方、Ｓ１１０７において、データ変換部２１５は、Ｓ１１０１において取り出した属性情報に対応する対象画素の属性をイメージ属性に変更する。具体的には、データ変換部２１５は、イメージ属性のフラグを立て、下地属性フラグをクリアする。データ変換部２１５は、その後処理をＳ１１０１へ進める。
【００７０】
また、第３の変更例としては、本実施形態に係るデータ変換処理は、クライアント装置１１０に替えて、プリンタ１２０が行ってもよい。また、他の例としては、クライアント装置１１０及びプリンタ１２０の両方が行ってもよい。
【００７１】
また、第４の変更例としては、クライアント装置１１０は、データ変換処理において、ビットマップを生成するのに替えて、ビットマップに変換可能な中間コードへの変換を行うこととしてもよい。
【００７２】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００７３】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７４】
１１０  クライアント装置
１２０  プリンタ
２１５  データ変換部
【図１】
0006700953.tif 000002
【図２】
0006700953.tif 000003
【図３】
0006700953.tif 000004
【図４】
0006700953.tif 000005
【図５】
0006700953.tif 000006
【図６】
0006700953.tif 000007
【図７】
0006700953.tif 000008
【図８】
0006700953.tif 000009
【図９】
0006700953.tif 000010
【図１０】
0006700953.tif 000011
【図１１】
0006700953.tif 000012
【図１２】
0006700953.tif 000013