(57)【要約】【課題】透過率が設定されている複数のオブジェクトが重なり合って描画されている領域に中間調処理を施す場合に、最も上に描画されているオブジェクトの種類に応じた中間調処理を施す場合に比べてより適切な中間調処理を施すこと。【解決手段】多値画像上において複数のオブジェクトが重なって描画されている重なり領域を特定する領域特定処理と、領域特定処理によって特定された重なり領域に描画されているオブジェクトのうち最も濃く表れるオブジェクトをオブジェクトに設定されている透過率に基づいて特定し（Ｓ３０５）、特定したオブジェクトの種類に応じた中間調処理を選択する選択処理（Ｓ３０６）と、選択処理によって選択された中間調処理を重なり領域に施すことによって二値化する二値化処理（Ｓ３０７）と、を情報処理装置に実行させる画像処理プログラム。【選択図】図９
2014036307.tif 000002
【特許請求の範囲】
【請求項１】
多値画像上において複数のオブジェクトが重なって描画されている重なり領域を特定する領域特定処理と、
前記領域特定処理によって特定された前記重なり領域に描画されている前記オブジェクトのうち最も濃く表れるオブジェクトを前記オブジェクトに設定されている透過率に基づいて特定し、特定した前記オブジェクトの種類に応じた中間調処理を選択する選択処理と、
前記選択処理によって選択された中間調処理を前記重なり領域に施すことによって二値化する二値化処理と、
を情報処理装置に実行させる画像処理プログラム。
【請求項２】
請求項１に記載の画像処理プログラムであって、
前記領域特定処理において、各前記オブジェクトが描画されている領域を示す領域情報に基づいて前記重なり領域を特定する、画像処理プログラム。
【請求項３】
請求項１又は請求項２に記載の画像処理プログラムであって、
前記選択処理において、前記重なり領域に重なって描画されている全ての前記オブジェクトの種類が同じである場合は、最も濃く表れる前記オブジェクトの特定は行わず、当該種類に応じた中間調処理を選択する、画像処理プログラム。
【請求項４】
請求項１乃至請求項３のいずれか一項に記載の画像処理プログラムであって、
前記選択処理は、
重ね合わせる順序が最も上の前記オブジェクトに設定されている透過率（０≦透過率≦１）を１から減算した値を当該オブジェクトの非透過率とする処理と、当該オブジェクトの前記透過率を当該オブジェクトよりも前記順序が下の前記オブジェクト全体に適用する処理とを再帰的に繰り返すことによって各前記オブジェクトの非透過率を算出する非透過率算出処理と、
前記重なり領域に描画されている各前記オブジェクトについて、当該オブジェクトを構成している画素のうち前記重なり領域に含まれている画素の濃度と当該オブジェクトの非透過率とを乗算した値を合計する合計処理と、
最も濃く表れる前記オブジェクトを前記合計処理によって合計された値に基づいて特定する特定処理と、
を含む、画像処理プログラム。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の画像処理プログラムであって、
前記選択処理において、前記重なり領域の面積を判断し、判断した面積が基準値より大きい場合は最も濃く表れる前記オブジェクトを特定し、特定した前記オブジェクトの種類に応じた中間調処理を選択する一方、前記面積が前記基準値以下の場合は最も濃く表れる前記オブジェクトを特定せず、当該重なり領域に描画されている前記オブジェクトのうち最も上に描画されているオブジェクトの種類に応じた中間調処理を選択する、画像処理プログラム。
【請求項６】
処理部を備え、
前記処理部は、
多値画像上において複数のオブジェクトが重なって描画されている重なり領域を特定する領域特定処理と、
前記領域特定処理によって特定された前記重なり領域に描画されている前記オブジェクトのうち最も濃く表れるオブジェクトを前記オブジェクトに設定されている透過率に基づいて特定し、特定した前記オブジェクトの種類に応じた中間調処理を選択する選択処理と、
前記選択処理によって選択された中間調処理を前記重なり領域に施すことによって二値化する二値化処理と、
を実行する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
多値画像に中間調処理を施す技術に関する。
【背景技術】
【０００２】
従来、画像データに中間調処理を施す場合に、その画像データを構成しているオブジェクトの種類ごとに異なる中間調処理を施す技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１１０６９０号公報（段落００４９〜段落００５４）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、透過率が設定されている複数のオブジェクトが重なり合って描画される場合もある。従来はこのような場合にどのオブジェクトの種類に応じた中間調処理を施すべきかについて検討されていなかった。
【０００５】
本明細書では、透過率が設定されている複数のオブジェクトが重なり合って描画されている領域に中間調処理を施す場合に、最も上に描画されているオブジェクトの種類に応じた中間調処理を施す場合に比べてより適切な中間調処理を施すことができる技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される画像処理プログラムは、多値画像上において複数のオブジェクトが重なって描画されている重なり領域を特定する領域特定処理と、前記領域特定処理によって特定された前記重なり領域に描画されている前記オブジェクトのうち最も濃く表れるオブジェクトを前記オブジェクトに設定されている透過率に基づいて特定し、特定した前記オブジェクトの種類に応じた中間調処理を選択する選択処理と、前記選択処理によって選択された中間調処理を前記重なり領域に施すことによって二値化する二値化処理と、を情報処理装置に実行させる。
【０００７】
上記画像処理プログラムによると、最も濃く表れるオブジェクトの種類に応じた中間調処理を施すので、透過率が設定されているオブジェクトが重なり合って描画されている領域に中間調処理を施す場合に、最も上に描画されているオブジェクトの種類に応じた中間調処理を施す場合に比べてより適切な中間調処理を施すことができる。
【０００８】
また、上記画像処理プログラムは、前記領域特定処理において、各前記オブジェクトが描画されている領域を示す領域情報に基づいて前記重なり領域を特定してもよい。
【０００９】
上記画像処理プログラムによると、重なり領域を特定することができる。
【００１０】
また、上記画像処理プログラムは、前記選択処理において、前記重なり領域に重なって描画されている全ての前記オブジェクトの種類が同じである場合は、最も濃く表れる前記オブジェクトの特定は行わず、当該種類に応じた中間調処理を選択してもよい。
【００１１】
上記画像処理プログラムによると、重なり領域に重なって描画されている全てのオブジェクトの種類が同じである場合は、最も濃く表れるオブジェクトの特定を行わないことにより、処理効率を向上させることができる。
【００１２】
また、前記選択処理は、重ね合わせる順序が最も上の前記オブジェクトに設定されている透過率（０≦透過率≦１）を１から減算した値を当該オブジェクトの非透過率とする処理と、当該オブジェクトの前記透過率を当該オブジェクトよりも前記順序が下の前記オブジェクト全体に適用する処理とを再帰的に繰り返すことによって各前記オブジェクトの非透過率を算出する非透過率算出処理と、前記重なり領域に描画されている各前記オブジェクトについて、当該オブジェクトを構成している画素のうち前記重なり領域に含まれている画素の濃度と当該オブジェクトの非透過率とを乗算した値を合計する合計処理と、最も濃く表れる前記オブジェクトを前記合計処理によって合計された値に基づいて特定する特定処理と、を含んでもよい。
【００１３】
上記画像処理プログラムによると、最も濃く表れるオブジェクトを透過率に基づいて特定することができる。
【００１４】
また、上記画像処理プログラムは、前記選択処理において、前記重なり領域の面積を判断し、判断した面積が基準値より大きい場合は最も濃く表れる前記オブジェクトを特定し、特定した前記オブジェクトの種類に応じた中間調処理を選択する一方、前記面積が前記基準値以下の場合は最も濃く表れる前記オブジェクトを特定せず、当該重なり領域に描画されている前記オブジェクトのうち最も上に描画されているオブジェクトの種類に応じた中間調処理を選択してもよい。
【００１５】
重なり領域が小さい場合は、最も上に描画されているオブジェクトの種類に応じた中間調処理を施してもユーザは画質の違いに気付き難い。このため、面積が基準値以下であると判断された重なり領域については最も濃く表れるオブジェクトを特定しないことにより、処理効率を向上させることができる。
【００１６】
なお、本明細書によって開示される技術は、情報処理装置、画像処理方法、画像処理プログラムを記録した記録媒体等の種々の態様で実現することができる。
【図面の簡単な説明】
【００１７】
【図１】ＰＣの電気的構成を簡略化して示すブロック図。
【図２】印刷されるページを構成しているオブジェクトを示す模式図。
【図３】パーツ画像の一例を示す模式図。
【図４】パーツ画像の一例を示す模式図。
【図５】パーツ画像の一例を示す模式図。
【図６】区画された領域を示す模式図。
【図７】印刷制御処理の流れを示すフローチャート。
【図８】色空間変換・中間調処理の流れを示すフローチャート。
【図９】領域単位の中間調処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１８】
＜実施形態１＞
実施形態１を図１ないし図９によって説明する。
（１）ＰＣの電気的構成
先ず、図１を参照して、実施形態１に係る情報処理装置としてのパーソナルコンピュータ（ＰＣと記す）１の電気的構成について説明する。ＰＣ１は、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、表示部１３、操作部１４、記憶部１５、及び、通信インタフェース部１６を備えている。
【００１９】
ＣＰＵ１０は、ＲＯＭ１１や記憶部１５に記憶されているプログラムを実行することによってＰＣ１の各部を制御する。ＲＯＭ１１にはＣＰＵ１０によって実行されるプログラムや各種のデータなどが記憶されている。ＲＡＭ１２はＣＰＵ１０が各種の処理を実行するための主記憶装置として用いられる。
【００２０】
表示部１３は、液晶ディスプレイなどの表示装置、表示装置を駆動するディスプレイ駆動回路などを備えて構成されている。
操作部１４は、キーボードやマウス、それらが接続されるインタフェースなどで構成されている。
【００２１】
記憶部１５は、ハードディスクやフラッシュメモリなどの不揮発性のメモリを用いて各種のプログラムやデータを記憶する装置である。記憶部１５には、オペレーティングシステム（ＯＳと記す）３１、アプリケーションプログラム（アプリケーションと記す）３２、プリンタ２を制御するプリンタドライバプログラム（プリンタドライバと記す）３３などが記憶されている。プリンタドライバ３３は画像処理プログラムの一例である。
【００２２】
通信インタフェース部１６はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネットなどの通信ネットワーク５を介してプリンタ２などの外部の装置と通信するためのインタフェースである。
なお、通信インタフェース部１６はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）やパラレル回線を介してプリンタ２と接続される構成であってもよい。また、通信インタフェース部１６は有線によって外部の装置と通信するものであってもよいし、無線によって通信するものであってもよい。
【００２３】
（２）プリンタ
図１に示すプリンタ２は、印刷用紙などのシートに電子写真方式やインクジェット方式などで画像を印刷する装置である。プリンタ２はＣ（シアン）、Ｍ（マゼンタ）、Ｙ（黄）、Ｋ（黒）の４色の着色剤を用いて画像を印刷するカラープリンタである。なお、プリンタ２は１色の着色剤のみを用いて画像を印刷するモノクロプリンタであってもよい。
【００２４】
（３）プリンタドライバによる印刷制御処理の全体的な流れ
次に、プリンタドライバ３３による印刷制御処理の全体的な流れについて説明する。本処理はアプリケーション３２からＯＳ３１を介してプリンタドライバ３３に印刷対象のページが出力されると開始される。
【００２５】
ここでは先ず図２を参照してアプリケーション３２から出力されるページについて説明する。図２では、文字列を表す文字列オブジェクト４１、写真やイラストなどの画像を表す画像オブジェクト４２、及び、直線、曲線、多角形、円、楕円などの図形を表す図形オブジェクト４３の３つのオブジェクトによって構成されているページ４０を示している。アプリケーション３２はＯＳ３１にページ４０を出力するとき、ページ４０を構成しているオブジェクト４１〜４３毎にＯＳ３１に描画命令を出力する。
【００２６】
アプリケーション３２から出力される描画命令はオブジェクトの種類によって異なる。例えば文字列オブジェクトの場合は文字列描画命令、図形オブジェクトの場合は図形描画命令、画像オブジェクトの場合は画像描画命令が出力される。文字列、図形、画像はオブジェクトの種類の一例である。
【００２７】
描画命令にはオブジェクトが描画される領域を示す領域情報や透過率などの情報が付加される。領域情報はオブジェクトが描画される矩形領域の位置及び大きさを示す情報であって、矩形領域の左上の座標、矩形領域の幅、及び、矩形領域の高さを示す情報である。透過率はオブジェクトを透過させる割合である。ここでは透過率を０（０％）〜１（１００％）で表すものとする。透過率が１の場合はそのオブジェクトは完全に透明となる。描画命令に付加されている透過率はオブジェクトに設定されている透過率の一例である。
【００２８】
ＯＳ３１はアプリケーション３２から描画命令が出力されると、その描画命令をプリンタドライバ３３に出力する。そして、ＯＳ３１はプリンタドライバ３３に１ページ分の描画命令を出力する毎にページの終了を表すページ終了命令をプリンタドライバ３３に出力する。
【００２９】
プリンタドライバ３３は、ＯＳ３１から描画命令が出力されると、出力された描画命令に従ってＲＡＭ１２上の仮想的なシートにオブジェクトを描画することにより、出力されたページを表す多値画像を生成する。多値画像とは画素の濃度が３階調以上ある画像のことをいう。なお、多値画像を生成する処理はＯＳ３１によって行われる場合もある。
【００３０】
生成する多値画像の色空間はＲＧＢ色空間であるとする。また、画素の濃度は０〜２５５の２５６階調で表されるものとする。ＲＧＢ色空間では黒はＲＧＢ＝（０、０、０）によって表され、白はＲＧＢ＝（２５５、２５５、２５５）によって表される。つまり、ＲＧＢ色空間は画素の濃度が大きいほど色が薄く、画素の濃度が小さいほど色が濃い色空間である。
【００３１】
プリンタドライバ３３は、多値画像を生成すると、次に、その多値画像の色空間をＲＧＢ色空間からＣＭＹＫ色空間に変換する。ＣＭＹＫ色空間に変換するのはプリンタ２がＣＭＹＫの４色の着色剤を用いて画像を印刷するものだからである。
そして、プリンタドライバ３３は、ＣＭＹＫ色空間で表される多値画像に色毎に中間調処理を施すことにより、プリンタ２に形成させるドットのパターンを０と１との二値で表す二値画像を色毎に生成する。ここで０はドットを形成しないことを意味し、１はドットを形成することを意味している。なお、中間調処理はハーフトーン処理と呼ばれる場合もある。また、二値画像はドットパターン画像あるいはハーフトーン画像と呼ばれる場合もある。
【００３２】
そして、プリンタドライバ３３は生成した各色の二値画像を印刷データとしてプリンタ２に送信することにより、プリンタ２に画像を印刷させる。
【００３３】
（４）中間調処理
次に、上述した中間調処理について説明する。中間調処理にはディザ法と呼ばれる方法と誤差拡散法と呼ばれる方法とがある。一般に誤差拡散法はディザ法より良好な画質が得られるが、処理が複雑であるので処理に長時間を要する。これに対し、ディザ法は誤差拡散法よりも画質は劣るものの、処理が簡素であるので処理に要する時間が短い。
【００３４】
オブジェクトの種類が画像である場合は誤差拡散法が望ましいといえる。これに対し、オブジェクトの種類が文字列や図形である場合は一般にディザ法と誤差拡散法とでユーザが画質の違いを認識するのは困難であるので、ディザ法で十分であるといえる。
そこで、プリンタドライバ３３は、オブジェクト毎にそのオブジェクトの種類に応じた中間調処理を選択する。具体的には、プリンタドライバ３３は、オブジェクトの種類が文字列又は図形である場合はディザ法を選択し、画像である場合は誤差拡散法を選択する。
【００３５】
ところで、複数のオブジェクトが重なって描画される場合もある。その場合、各オブジェクトに設定されている透過率が０である場合は、最も上に描画されているオブジェクトに応じた中間調処理を選択すればよいといえる。最も上に描画されているオブジェクトがユーザに最も注目されるからである。
【００３６】
これに対し、重なって描画されているオブジェクトに設定されている透過率が０より大きい場合は、最も上に描画されているオブジェクトに応じた中間調処理を選択することは必ずしも望ましくない。なぜなら、０より大きい透過率が設定されているオブジェクトが重なって描画されている場合は、一般にユーザは最も上に描画されているオブジェクトではなく、最も濃く表れているオブジェクトに注目するからである。
【００３７】
そこで、プリンタドライバ３３は、オブジェクトが重なって描画されている領域（重なり領域と記す）については、その重なり領域に重なって描画されているオブジェクトのうち最も濃く表れるオブジェクトを透過率に基づいて特定する。そして、プリンタドライバ３３はその重なり領域に対し、最も濃く表れるオブジェクトの種類に応じた中間調処理を選択する。以下、最も濃く表れるオブジェクトの特定について説明する。
【００３８】
（５）最も濃く表れるオブジェクトの特定
図２に示すページを例に、最も濃く表れるオブジェクトの特定について説明する。プリンタドライバ３３は、ＯＳ３１から描画命令が出力されると、図３〜図５に示すようにオブジェクトを表す矩形の画像５１〜５３を描画命令に基づいて生成し、生成した画像５１〜５３をＲＡＭ１２に記憶する。以降の説明では生成した矩形の画像のことをパーツ画像というものとする。パーツ画像の色空間はＲＧＢ色空間であるとする。
【００３９】
ここで、パーツ画像を矩形の画像とすると、図５に示すようにパーツ画像にオブジェクト以外を表す領域が含まれる場合がある。例えば図５に示す例では円５３ａの外側の領域５３ｂがオブジェクト以外を表す領域である。オブジェクト以外を表す領域５３ｂの画素の濃度はＲＧＢ＝（２５５、２５５、２５５）、すなわち白であるとする。
【００４０】
また、プリンタドライバ３３は、パーツ画像をＲＡＭ１２に記憶するとき、パーツ画像の描画に用いた描画命令に付加されている領域情報、透過率、その描画命令によって描画されるオブジェクトの種類、及び、その描画命令が出力された順序をパーツ画像に対応付けてＲＡＭ１２に記憶するものとする。
【００４１】
そして、プリンタドライバ３３はＲＡＭ１２に記憶した領域情報から図６に示すように重なり領域６３、６４、６６、６８を特定する。例えば図６において領域６３は文字列オブジェクト４１のパーツ画像５１が配置される領域と図形オブジェクト４３のパーツ画像５３が配置される領域とが重なっている重なり領域である。領域６８は文字列オブジェクト４１のパーツ画像５１、画像オブジェクト４２のパーツ画像５２、及び、図形オブジェクト４３のパーツ画像５３がそれぞれ配置される領域が重なっている重なり領域である。
【００４２】
重なり領域に描画される画素のＲＧＢ各成分の濃度は以下の式１によって決定される。ここではＲ成分を例に説明する。また、ここではオブジェクトＺが最初に描画され、その上にオブジェクトＹが描画され、その上にオブジェクトＸが描画される場合を例に説明する。
【００４３】
Ｒ成分の濃度＝Ｒｘ×（１―α）＋（Ｒｙ×（１−β）＋Ｒｚ×β）×α  ・・・  式１
式１においてＲｘはオブジェクトＸを構成している画素のＲ成分の濃度である。ＲｙはオブジェクトＹを構成している画素のＲ成分の濃度である。ＲｚはオブジェクトＺを構成している画素のＲ成分の濃度である。
【００４４】
また、式１においてαはオブジェクトＸに設定されている透過率（０≦透過率≦１）である。同様にβはオブジェクトＹに設定されている透過率である。なお、最も下に描画されるオブジェクトＺには透過率は設定されないものとする。
【００４５】
オブジェクトが描画される順序はＯＳ３１から描画命令が出力された順序によって決定される。具体的には、先に出力された描画命令によって表されるオブジェクトほど下に描画され、後に出力された描画命令によって表されるオブジェクトほど上に描画されるものとする。従って、式１ではオブジェクトＺを描画する描画命令が最も先に出力され、その後に、オブジェクトＹを描画する描画命令、オブジェクトＸを描画する描画命令の順で出力されたことになる。
【００４６】
上述した式１を展開すると以下の式２となる。
Ｒ成分の濃度＝Ｒｘ×（１−α）＋Ｒｙ×（１−β）×α＋Ｒｚ×β×α  ・・・  式２
式２において（１―α）はオブジェクトＸの非透過率を表している。同様に（１−β）×αはオブジェクトＹの非透過率を表しており、β×αはオブジェクトＺの非透過率を表している。
【００４７】
式２によって各オブジェクトの非透過率を算出する処理は、重ね合わせる順序が最も上のオブジェクトに設定されている透過率を１から減算した値を当該オブジェクトの非透過率とする処理と、当該オブジェクトの透過率を当該オブジェクトよりも重ね合わせる順序が下のオブジェクト全体に適用する処理とを再帰的に繰り返すことによって各オブジェクトの非透過率を算出する非透過率算出処理の一例である。
【００４８】
ここで再帰的としたのは、式１に示すように、オブジェクトＸの下のオブジェクトであるオブジェクトＹ及びオブジェクトＺについても、それら下のオブジェクトＹ及びＺのうち最も上のオブジェクトＹに設定されている透過率βを１から減算した値を当該オブジェクトＹの非透過率とする処理と、当該オブジェクトＹの透過率βを当該オブジェクトＹよりも重ね合わせる順序が下のオブジェクトＺに適用する処理とが行われるからである。上述した例ではオブジェクトが３つだけの場合を示しているが、オブジェクトが４つ以上である場合も同様である。
【００４９】
そして、プリンタドライバ３３は、重なり領域毎に、その重なり領域に重なって描画されている各オブジェクトについてそれぞれ画素の濃度の総合計値を求める。具体的には、プリンタドライバ３３はオブジェクトのパーツ画像を構成している画素のうちその重なり領域に含まれている画素の濃度にそのオブジェクトの非透過率を乗算することによって画素毎に積を求め、求めた積の合計値を求める。合計値はＲＧＢ各成分についてそれぞれ求められる。そして、プリンタドライバ３３はＲＧＢ毎に求めた合計値を更に合計することによってそのオブジェクトの濃度の総合計値を求める。濃度の総合計値を求める処理は合計処理の一例である。
【００５０】
そして、プリンタドライバ３３は、濃度の総合計値が最も小さいオブジェクトを、その重なり領域において最も濃く表れるオブジェクトとして特定する。濃度の総合計値が最も小さいオブジェクトを最も濃く表れるオブジェクトとするのは、前述したようにＲＧＢ色空間では濃度が小さい画素ほど色が濃く表れるからである。濃度の総合計値が最も小さいオブジェクトを最も濃く表れるオブジェクトとして特定する処理は特定処理の一例である。
【００５１】
（６）印刷制御処理の詳細
次に、図７を参照して、印刷制御処理についてより具体的に説明する。
Ｓ１０１では、プリンタドライバ３３を実行するＣＰＵ１０（以下、単にプリンタドライバ３３と記す）は、ＯＳ３１から出力された命令が描画命令であるかページ終了命令であるかを判断し、描画命令である場合はＳ１０２に進み、ページ終了命令である場合はＳ１０５に進む。
【００５２】
Ｓ１０２では、プリンタドライバ３３はＯＳ３１から出力された描画命令に基づいてパーツ画像を生成する。
Ｓ１０３では、プリンタドライバ３３は生成したパーツ画像を、そのパーツ画像の生成に用いた描画命令に設定されている領域情報、当該描画命令に設定されている透過率、当該描画命令によって描画されるオブジェクトの種類、及び、当該描画命令が出力された順序と対応付けてＲＡＭ１２に記憶する。
【００５３】
Ｓ１０４では、プリンタドライバ３３は描画命令によって表されるオブジェクトをＲＡＭ１２上の仮想的なシートに描画する。
上述したＳ１０４の処理を繰り返すことにより、アプリケーション３２から出力されたページを表す多値画像がＲＡＭ１２上に生成される。
【００５４】
なお、Ｓ１０４の処理はプリンタドライバ３３がＯＳ３１に描画を指示することによってＯＳ３１に行わせることができる場合もある。その場合はＯＳ３１に描画を指示すればよい。
【００５５】
Ｓ１０５では、プリンタドライバ３３は色空間変換・中間調処理を実行する。色空間変換・中間調処理は、上述した多値画像の色空間をＲＧＢ色空間からＣＭＹＫ色空間に変換し、変換した多値画像に中間調処理を施す処理である。
【００５６】
（６−１）色空間変換・中間調処理
次に、図８を参照して、Ｓ１０５で実行される色空間変換・中間調処理について説明する。
Ｓ２０１では、プリンタドライバ３３は上述した多値画像の色空間をＲＧＢ色空間からＣＭＹＫ色空間に変換する。
【００５７】
Ｓ２０２では、プリンタドライバ３３はＲＡＭ１２に記憶されている領域情報から、ＣＭＹＫ色空間で表される多値画像を以下の（ａ）〜（ｃ）の領域に区画する。
（ａ）オブジェクトが描画されない領域
（ｂ）一つのオブジェクトのみが描画される領域
（ｃ）複数のオブジェクトが重なって描画される領域
【００５８】
一つのオブジェクトのみが描画される領域（ｂ）は、描画されるオブジェクトが異なれば異なる領域として区画されるものとする。複数のオブジェクトが重なって描画される領域（ｃ）についても同様である。従って、図２に示す例の場合はＳ２０２が実行されることによって図６に示すように領域６１〜６８の８領域に区画されることになる。
【００５９】
Ｓ２０３では、プリンタドライバ３３はＣＭＹＫの中から色を一色選択する。Ｓ２０３の処理が二回目以降である場合は未だ選択していない色を選択するものとする。
以降に説明するＳ２０４〜Ｓ２０９の処理の対象となるのはＣＭＹＫ各成分のうちＳ２０３で選択した色の成分のみである。
【００６０】
Ｓ２０４では、プリンタドライバ３３は画素の濃度が全て０の二値画像をＲＡＭ１２上に生成する。二値画像の縦横のピクセル数はＣＭＹＫ色空間で表される画像の縦横のピクセル数と１画素当たりのドット数とに応じて決定される。
Ｓ２０５では、プリンタドライバ３３はＳ２０２で区画した領域を一つ選択する。Ｓ２０５の処理が二回目以降である場合は未だ選択していない領域を選択するものとする。
【００６１】
Ｓ２０６では、プリンタドライバ３３はＳ２０５で選択した領域が、オブジェクトが描画される領域（ｂ）又は（ｃ）であるか否かを判断し、オブジェクトが描画される領域（ｂ）又は（ｃ）である場合はＳ２０７に進み、オブジェクトが描画されない領域（ａ）である場合はＳ２０８に進む。
【００６２】
Ｓ２０７では、プリンタドライバ３３は領域単位の中間調処理を実行する。領域単位の中間調処理は選択された領域に中間調処理を施す処理である。
Ｓ２０８では、プリンタドライバ３３は全ての領域を選択したか否かを判断し、全ての領域を選択した場合はＳ２０９に進み、未だ選択されていない領域がある場合はＳ２０５に戻って処理を繰り返す。
【００６３】
Ｓ２０９では、プリンタドライバ３３は二値画像をプリンタ２に送信する。
Ｓ２１０では、プリンタドライバ３３はＣＭＹＫの全ての色を選択したか否かを判断し、全ての色を選択した場合は本処理を終了して印刷制御処理に戻り、未だ選択していない色がある場合はＳ２０３に戻って処理を繰り返す。
【００６４】
（６−２）領域単位の中間調処理
次に、図９を参照して、Ｓ２０７で実行される領域単位の中間調処理について説明する。
Ｓ３０１では、プリンタドライバ３３はＳ２０５で選択した領域が、一つのオブジェクトのみが描画される領域（ｂ）であるか複数のオブジェクトが重なって描画される領域（ｃ）であるかを判断し、一つのオブジェクトのみが描画される領域（ｂ）である場合はＳ３０２に進み、複数のオブジェクトが描画される領域（ｃ）である場合はＳ３０３に進む。Ｓ３０１は領域特定処理の一例である。
【００６５】
Ｓ３０２では、プリンタドライバ３３はＳ２０５で選択した領域に描画されるオブジェクトの種類をＲＡＭ１２から取得し、取得した種類に応じた中間調処理を選択する。
【００６６】
Ｓ３０３では、プリンタドライバ３３はＳ２０５で選択した領域に重なって描画されるオブジェクトの種類をＲＡＭ１２から取得し、取得した種類が全て同じであるか否かを判断する。プリンタドライバ３３は、種類が全て同じである場合はＳ３０４に進み、同じでない場合はＳ３０５に進む。
Ｓ３０４では、プリンタドライバ３３はＳ３０３でＲＡＭ１２から取得した種類に応じた中間調処理を選択する。
【００６７】
Ｓ３０５では、プリンタドライバ３３はＳ２０５で選択した領域に重なって描画されるオブジェクトのうち最も濃く表れるオブジェクトを特定する。最も濃く表れるオブジェクトを特定する方法は前述した通りであるので説明は省略する。
Ｓ３０６では、プリンタドライバ３３は最も濃く表れるオブジェクトの種類に応じた中間調処理を選択する。Ｓ３０５及びＳ３０６は選択処理の一例である。
【００６８】
Ｓ３０７では、プリンタドライバ３３はＳ２０５で選択した領域にＳ３０２、Ｓ３０４、Ｓ３０６のいずれかで選択された中間調処理を施すことにより、当該選択した領域分の二値画像を生成する。そして、プリンタドライバ３３は当該選択した領域分の二値画像をＳ２０４で生成した二値画像の当該選択した領域に対応する領域に書き込む。Ｓ３０７は二値化処理の一例である。
【００６９】
（７）実施形態の効果
以上説明した実施形態１に係るプリンタドライバ３３によると、透過率が設定されているオブジェクトが重なり合って描画されている重なり領域に中間調処理を施す場合に、最も濃く表れるオブジェクトの種類に応じた中間調処理を施すので、最も上に描画されているオブジェクトの種類に応じた中間調処理を施す場合に比べてより適切な中間調処理を施すことができる。
【００７０】
更に、プリンタドライバ３３によると、各オブジェクトが描画される領域を示す領域情報をＲＡＭ１２に記憶させるので、領域情報に基づいて重なり領域を特定することができる。
【００７１】
更に、プリンタドライバ３３によると、重なり領域に重なって描画されている全てのオブジェクトの種類が同じである場合（Ｓ３０３でＹｅｓの場合）は、最も濃く表れるオブジェクトの特定は行わないので、処理効率を向上させることができる。
【００７２】
更に、プリンタドライバ３３によると、式２によって各オブジェクトの非透過率を求めてオブジェクト毎に前述した総合計値を求め、総合計値が最も小さいオブジェクトを最も濃く表れるオブジェクトとして特定するので、最も濃く表れるオブジェクトを透過率に基づいて特定することができる。
【００７３】
更に、プリンタドライバ３３によると、パーツ画像を矩形の画像とする。パーツ画像を矩形の画像とすると、図５に示すようにパーツ画像にオブジェクト以外を表す領域５３ｂが含まれてしまう場合がある。しかしながら、オブジェクト以外を表す領域５３ｂの画素の濃度はＲＧＢ＝（２５５、２５５、２５５）であるので、オブジェクト以外を表す領域５３ｂに他のオブジェクトが重なって描画された場合は、他のオブジェクトの方が濃く表れることにより、他のオブジェクトの種類に応じた中間調処理が施される。従って、パーツ画像にオブジェクト以外を表す領域が含まれていても、最も濃く表れるオブジェクトの特定に与える影響は小さいといえる。
また、パーツ画像を矩形の画像とすると、オブジェクトを表す領域とオブジェクト以外を表す領域とにパーツ画像を分けなくてよいので処理量を低減できる。
よって、パーツ画像を矩形の画像とすると、最も濃く表れるオブジェクトの特定に与える影響を小さくしつつ、オブジェクトを表す領域とオブジェクト以外を表す領域とにパーツ画像を分ける場合に比べて処理量を低減できる。
【００７４】
＜実施形態２＞
次に、実施形態２を説明する。
実施形態２に係るプリンタドライバ３３は、重なり領域の面積を判断する。そして、プリンタドライバ３３は、判断した面積が基準値より大きい場合は最も濃く表れるオブジェクトを特定し、特定したオブジェクトの種類に応じた中間調処理を選択する。重なり領域の面積を判断する処理は図９に示すフローチャートにおいてＳ３０３でＮｏと判定された場合にＳ３０５の前に実行すればよい。
【００７５】
一方、プリンタドライバ３３は、重なり領域の面積が基準値以下の場合は、最も濃く表れるオブジェクトを特定せず、当該重なり領域に描画されているオブジェクトのうち最も上に描画されているオブジェクトの種類に応じた中間調処理を選択する。
【００７６】
上述した基準値は適宜に決定することができる。例えば最も濃く表れるオブジェクトの種類に応じた中間調処理を画像が重なる領域の面積を替えながら施し、同様に最も上に描画されるオブジェクトの種類に応じた中間調処理を画像が重なる領域の面積を替えながら施し、両者の画質の違いを認識することが困難となる面積を基準値とすればよい。
【００７７】
以上説明した実施形態２に係るプリンタドライバ３３によると、重なり領域の面積が基準値以下の場合は最も濃く表れるオブジェクトを特定しないので処理効率を向上させることができる。
【００７８】
＜実施形態３＞
次に、実施形態３を説明する。
上記実施形態１及び２ではパーツ画像に領域情報、透過率、オブジェクトの種類、及び、描画する順序を対応付けてＲＡＭ１２に記憶する場合を例に説明した。これに対し、これらの情報をＲＡＭ１２に記憶しないようにしてもよい。
【００７９】
例えばＭｉｃｒｏｓｏｆｔ社のＯＳであるＷＩＮＤＯＷＳ（登録商標）ではＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）印刷システムと呼ばれる印刷システムが動作する場合がある。ＸＰＳ印刷システムではＯＳ３１からプリンタドライバ３３にＸＰＳファイルと呼ばれるスプールファイルが出力される。ＸＰＳファイルには、各オブジェクトの領域情報、透過率、オブジェクトの種類、オブジェクトを描画する順序などを特定することのできる情報がＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述されている。
【００８０】
ＸＰＳ印刷システムに対応したプリンタドライバ３３はＸＰＳファイルを参照することができる。このため、ＸＰＳ印刷システムに対応したプリンタドライバ３３は領域情報などの情報をＲＡＭ１２に記憶せず、これらの情報をＸＰＳファイルから取得してもよい。
【００８１】
以上説明した実施形態３に係るプリンタドライバ３３によると、領域情報などの情報をＲＡＭ１２に記憶しなくてよいので処理を簡素にできる。
【００８２】
＜実施形態４＞
次に、実施形態４を説明する。
前述した実施形態１〜３ではパーツ画像が矩形の領域であるので、パーツ画像にオブジェクト以外の領域が含まれていた。これに対し、実施形態４ではパーツ画像にオブジェクト以外を表す領域を含まない。
【００８３】
具体的には例えば、実施形態４に係るプリンタドライバ３３は、パーツ画像においてオブジェクト以外を表している画素を除去する。例えば図５に示す例の場合、プリンタドライバ３３は円の外側の領域５３ｂをパーツ画像から除去する。従って、パーツ画像は円形の画像となる。
【００８４】
あるいは、プリンタドライバ３３は、パーツ画像を構成している画素のうちオブジェクト以外を表している領域を構成している画素に、オブジェクト以外を表している画素であることを示す情報を付加してもよい。そして、プリンタドライバ３３は当該情報が付加されている画素はパーツ画像を構成しているものではないとして扱ってもよい。
【００８５】
例えば、図５に示すパーツ画像５３の場合は、プリンタドライバ３３は円の外側の領域５３ｂを構成している画素に、オブジェクト以外を表している画素であることを示す情報を付加してもよい。そして、プリンタドライバ３３は、重なり領域を特定するとき、オブジェクト以外を表している画素であることを示す情報が付加されている画素で構成される領域に他のオブジェクトが重なる場合は、当該他のオブジェクトのうち、円を表すパーツ画像の画素であってオブジェクト以外を表している画素であることを示す情報が付加されている画素に重なっている部分については、円を表しているオブジェクトと重なっていない部分であるとしてもよい。
【００８６】
あるいは、濃度がＲＧＢ＝（２５５、２５５、２５５）である画素、すなわち白である画素は全てパーツ画像を構成しているものではないとして扱ってもよい。
【００８７】
以上説明した実施形態４に係るプリンタドライバ３３によると、パーツ画像にオブジェクト以外を表す領域が含まれないので、オブジェクト以外を表す領域が含まれる場合に比べて重なり領域をより正確に特定できる。
【００８８】
＜他の実施形態＞
上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も技術的範囲に含まれる。
【００８９】
（１）上記実施形態では画像処理プログラムとしてＰＣ１で実行されるプリンタドライバ３３を例に説明した。これに対し、画像処理プログラムはプリンタ２で実行されてもよい。
【００９０】
（２）上記実施形態では図形オブジェクトの場合はディザ法を適用する場合を例に説明した。これに対し、図形オブジェクトの場合は誤差拡散法を適用してもよい。
【００９１】
（３）上記実施形態ではＣＭＹＫの色毎にＳ３０５が繰り返し実行される場合を例に説明した。これに対し、最初に選択した色についてのみＳ３０５を実行し、他の色については最初に実行した結果を流用してもよい。
【００９２】
（４）上記実施形態では中間調処理としてディザ法及び誤差拡散法を例に説明した。しかしながら、中間調処理はこれらに限られるものではなく、他の中間調処理であってもよい。
【００９３】
（５）上記実施形態では描画命令に透過率が設定されている場合を例に説明したが、描画命令には非透過率が設定されていてもよい。
【００９４】
（６）上記実施形態では情報処理装置としてＰＣ１を例に説明した。これに対し、情報処理装置は携帯電話であってもよいし、携帯情報端末であってもよい。
【符号の説明】
【００９５】
１・・・ＰＣ、２・・・プリンタ、５・・・通信ネットワーク、１０・・・ＣＰＵ、３３・・・プリンタドライバ、４１・・・文字列オブジェクト、４２・・・画像オブジェクト、４３・・・図形オブジェクト、５１〜５３・・・パーツ画像、６３、６４、６６、６８・・・重なり領域
【図１】
2014036307.tif 000003
【図２】
2014036307.tif 000004
【図３】
2014036307.tif 000005
【図４】
2014036307.tif 000006
【図５】
2014036307.tif 000007
【図６】
2014036307.tif 000008
【図７】
2014036307.tif 000009
【図８】
2014036307.tif 000010
【図９】
2014036307.tif 000011