(57)【要約】【課題】  半透明オブジェクトに変倍処理を施すと著しい画像劣化が発生する。【解決手段】  濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する検出手段と、前記検出された半透明オブジェクトにぼかし処理をかけるぼかし処理手段と、前記ぼかし処理のかけられた半透明オブジェクトに対して変倍処理を行う変倍処理手段と、を有することを特徴とする情報処理装置。【選択図】  図９
2015133640.tif 000002
【特許請求の範囲】
【請求項１】
濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する検出手段と、
前記検出された半透明オブジェクトにぼかし処理をかけるぼかし処理手段と、
前記ぼかし処理のかけられた半透明オブジェクトに対して変倍処理を行う変倍処理手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記変倍処理された半透明オブジェクトにディザ処理をかける第１のディザ処理手段と、
前記ディザ処理のかけられた半透明オブジェクトを、当該半透明オブジェクトの背面に位置する他のオブジェクトの上に配置する配置手段と、
前記配置手段の配置により得られた画像にディザ処理をかける第２のディザ処理手段とを有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１のディザ処理でディザ処理をかけられた半透明オブジェクトは、
当該ディザ処理で用いられたディザマトリクスに含まれる閾値を超えた画素は非透明画素であり、当該ディザ処理で用いられたディザマトリクスに含まれる閾値を切った画素は透明画素であることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１のディザ処理手段のディザ処理で用いられるディザマトリクスと、前記第２のディザ処理手段のディザ処理で用いられるディザマトリクスは異なるディザマトリクスであることを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
半透明オブジェクトではないオブジェクトに対しては、前記ぼかし処理手段でぼかし処理がかけられず、前記変倍処理手段で変倍処理がかけられることを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する手段と、
前記検出された半透明オブジェクトに対して変倍処理を行う手段と、
を有し、
前記変倍処理は、ぼかし効果を含む変倍処理であることを特徴とする情報処理装置。
【請求項７】
濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する検出工程と、
前記検出された半透明オブジェクトにぼかし処理をかけるぼかし処理工程と、
前記ぼかし処理のかけられた半透明オブジェクトに対して変倍処理を行う変倍処理工程と、
を有することを特徴とする情報処理方法。
【請求項８】
前記変倍処理された半透明オブジェクトにディザ処理をかける第１のディザ処理工程と、
前記ディザ処理のかけられた半透明オブジェクトを、当該半透明オブジェクトの背面に位置する他のオブジェクトの上に配置する配置工程と、
前記配置工程の配置により得られた画像にディザ処理をかける第２のディザ処理工程とを有することを特徴とする請求項７に記載の情報処理方法。
【請求項９】
前記第１のディザ処理でディザ処理をかけられた半透明オブジェクトは、
当該ディザ処理で用いられたディザマトリクスに含まれる閾値を超えた画素は非透明画素であり、当該ディザ処理で用いられたディザマトリクスに含まれる閾値を切った画素は透明画素であることを特徴とする請求項８に記載の情報処理方法。
【請求項１０】
前記第１のディザ処理工程のディザ処理で用いられるディザマトリクスと、前記第２のディザ処理工程のディザ処理で用いられるディザマトリクスは異なるディザマトリクスであることを特徴とする請求項８又は９に記載の情報処理方法。
【請求項１１】
半透明オブジェクトではないオブジェクトに対しては、前記ぼかし処理工程でぼかし処理がかけられず、前記変倍処理工程で変倍処理がかけられることを特徴とする請求項７乃至１０の何れか１項に記載の情報処理方法。
【請求項１２】
濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する工程と、
前記検出された半透明オブジェクトに対して変倍処理を行う工程と、
を有し、
前記変倍処理は、ぼかし効果を含む変倍処理であることを特徴とする情報処理方法。
【請求項１３】
請求項７乃至１２の何れか１項に記載のコンピュータよみとり可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半透明オブジェクトの変倍処理に伴う画像劣化を回避する方法に関する発明である。
【背景技術】
【０００２】
半透明オブジェクトとは、透過性（透過率と呼ぶこともある）が０％より大きく、１００％より小さい値に設定されたオブジェクトである。この透過性は、様々なアプリケーションで設定することができる。例えば、Ｍｉｃｒｏｓｏｆｔ社のＰｏｗｅｒ  Ｐｏｉｎｔ（商標）では、図１のような設定画面上で設定することができる。設定は１％刻みで行うことができるようになっている。
【０００３】
図２には、４つのオブジェクトが描かれている。オブジェクト１は、透過性が０％に設定されたオブジェクトである。オブジェクト２は、透過性が５０％に設定されたオブジェクトである。オブジェクト３は、透過性が７５％に設定されたオブジェクトである。オブジェクト４は、透過性が１００％に設定されたオブジェクトである。このうち、オブジェクト２とオブジェクト３は半透明オブジェクト、オブジェクト１は通常オブジェクト、オブジェクト４は完全透明オブジェクトと呼ばれる。
【０００４】
図３は、半透明オブジェクトの存在意義を示す図である。この図では、濃い灰色の横棒オブジェクトがオブジェクト１〜４の背面に配置されている。通常、あるオブジェクトがまた別のオブジェクトの背面に配置されている場合、背面に配置されたそのあるオブジェクトを見ることはできない。しかし、図３では、オブジェクト２、３が半透明オブジェクトとなっているため、半透明オブジェクトのみならず、その背面に配置されている横棒オブジェクトも一部見えるようになっている。このように背面のオブジェクトが一部見えるようになるという効果を半透明オブジェクトは持っている。
【０００５】
図４は、オブジェクト１〜４の拡大図である。４０１は、オブジェクト１を構成する全ての画素がＯＮ画素であること、及び、各ＯＮ画素の濃度が３２であることを示している。４０２は、オブジェクト２を構成する全ての画素のうち半分の画素がＯＮ画素であること、残り半分の画素がＯＦＦ画素であることを示している。なお、ＯＮ画素とは、濃度を持った画素（非透明画素）という意味であり、ＯＦＦ画素は濃度を持っていない画素（透明画素）という意味である。しばしば誤解を招くが、濃度０を持った画素もＯＮ画素である。こうした画素は、透明画素ではなく白画素と呼ばれる。以上の通り、半透明オブジェクトは、ＯＮ画素とＯＦＦ画素の組み合わせで半透明を表現するオブジェクトとなっている。
【０００６】
４０３は、オブジェクト３を構成する全ての画素のうち２５％の画素がＯＮ画素であること、残り７５％の画素がＯＦＦ画素であることを示している。４０４は、オブジェクト４を構成する全ての画素がＯＦＦ画素であることを示している。なお、本明細書では、濃度を例に挙げて中心に説明を行うが、濃度と輝度は実質的に同じ意味であり、両者は交換可能である。即ち、濃度というタームには、輝度というタームが含まれるものと解釈されたい。
【０００７】
ここで、半透明オブジェクトの描画方法について説明する。
【０００８】
半透明オブジェクトの描画処理はＲＯＰ（ラスターオペレーション）処理の組み合わせで実現される。今回は例えば、ＸＯＲ演算、ＡＮＤ演算、ＸＯＲ演算のＲＯＰ処理の組み合わせで半透明オブジェクトを描画する方法について図６を用いて説明する。
【０００９】
図６に示すように、半透明オブジェクトを背景に描画するためには（１）上書き処理、（２）ＸＯＲ処理、（３）ＡＮＤ処理、（４）ＸＯＲ処理が必要となる。
【００１０】
初めに、（１）上書き処理では、描画領域６０１に、背景６０２（この背景６０２は、例えば、図３の黒い棒に相当する）を上書き描画する。例えば、Ｋ＝０の描画領域６０１にＫ＝２１８の背景６０２を上書き描画すると、６０６のような画像が得られることになる。
【００１１】
次に（２）ＸＯＲ処理では、６０６上に、全画素がＯＮ画素の画像６０３（各ＯＮ画素の濃度は、半透明オブジェクトにおけるＯＮ画素の濃度であり、この例では、３２となる。）を、ＸＯＲ演算を用いて描画する。例えば、全画素がＫ＝３２の濃度をもった画像６０３と、Ｋ＝２１８の背景６０２との間でＸＯＲ演算することになる。つまり、Ｋ＝２１８（“１１０１１０１０”）とＫ＝３２（“００１０００００”）との間でＸＯＲ演算を行う。その結果、全画素のＫ濃度は２５０（“１１１１１０１０”）となる。それを示したのが６０７となる。
【００１２】
そして（３）ＡＮＤ処理では、６０７上に、半透明オブジェクトにおけるどの画素がＯＮ画素で、どの画素がＯＦＦ画素であるかを示す半透明パターン６０４を、ＡＮＤ演算を用いて描画する。例えば透過性５０％の半透明パターン６０４は、ＯＮ画素（Ｋ＝２５５）とＯＦＦ画素（Ｋ＝０）が交互に配置されている。したがって、Ｋ＝２５５（“１１１１１１１１”）と、（２）ＸＯＲ処理後画像６０７との間でＡＮＤ演算が行われる。また、Ｋ＝０（“００００００００”）と、（２）ＸＯＲ処理後画像６０７との間でＡＮＤ演算が行われることになる。その結果、６０８に示すように、半透明パターン６０４でＫ＝２５５だった画素は、Ｋ＝２５０（“１１１１１０１０”）となり、Ｋ＝０だった画素は、Ｋ＝０（“００００００００”）のままとなる。
【００１３】
最後に（４）ＸＯＲ処理では、（４）ＡＮＤ処理後画像６０８と、画像６０３と同一の画像６０５との間でＸＯＲ演算を行う。即ち、Ｋ＝２５０（“１１１１１０１０”）とＫ＝３２（“００１０００００”）の間でＸＯＲ演算が行われる。また、Ｋ＝０（“００００００００”）とＫ＝３２（“００１０００００”）との間でＸＯＲ演算が行われることになる。その結果、Ｋ＝３２の画素と、Ｋ＝２１８の画素が交互に配置され、背景６０２の上に半透明オブジェクトを描画することができるようになる。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００５−４３１９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
半透明オブジェクトを変倍してしまうと半透明パターンが崩れ、著しく画像劣化が発生するという課題がある。例えば、縮小方法として、一般的な（１）最近傍法を用いた場合、及び、（２）黒画素保存法を用いた場合を例にこの課題を説明する。
【００１６】
図７は、（１）の手法や（２）の手法を行った時の画像劣化を示している。
【００１７】
（１）の手法をとると、縮小率によって画素が間引かれ、半透明パターンを崩してしまう場合がある。例えば、５０％の透過性を持つ半透明パターンはＯＮ画素とＯＦＦ画素が交互に配置される７０１のようなパターンとなっている。これを１／２に縮小しようとした場合（具体的には、＊以外の画素を間引いて縮小しようとした場合）、縮小後のパターンは＊の値だけで構成されることになるため７０２のように真っ白の画像になる。
【００１８】
一方、（２）の手法をとった場合も、半透明パターンが崩れてしまう。これも極端な例だが、半透明パターン６０１に対してＯＮ画素が残るような縮小処理をしてしまうと、６０１（ａ）のような２×２画素の中に、一つでもＯＮ画素があれば、ＯＮ画素に置き換えるため、６０３のように全てがＯＮ画素になってしまう場合がある。
【００１９】
いずれにしても（１）、及び、（２）の手法であっても、またその他の縮小方法をとった場合でも、縮小による半透明パターンの著しい劣化は抑制できない。
【課題を解決するための手段】
【００２０】
上記課題を解決するため、本発明の情報処理装置は、濃度を有する非透明画素と濃度を有さない透明画素との組み合わせで半透明を表現する半透明オブジェクトを検出する検出手段と、前記検出された半透明オブジェクトにぼかし処理をかけるぼかし処理手段と、前記ぼかし処理のかけられた半透明オブジェクトに対して変倍処理を行う変倍処理手段と、を有することを特徴とする。
【発明の効果】
【００２１】
本発明により、半透明パターンを変倍した際に発生する画像劣化を解決することができる。
【図面の簡単な説明】
【００２２】
【図１】透過性を設定するためのユーザインターフェースを示す図
【図２】透過性の設定されたオブジェクトを示す図
【図３】半透明オブジェクトの意義を説明する図
【図４】オブジェクトの拡大図
【図５】第３の実施形態を説明する図
【図６】半透明オブジェクトを描画する際の様子を説明した図
【図７】先行技術の手法を行った場合に画像劣化が起こることを示す図
【図８】システム構成図
【図９】メインフローチャート
【図１０】メインフローチャートの処理を概念的に説明する図
【図１１】Ｓ９０２の処理を概念的に説明する図
【図１２】Ｓ９０２の処理を説明するフローチャート
【図１３】Ｓ９０４の処理を説明する図
【図１４】第２の実施形態の処理を説明するフローチャート
【図１５】Ｓ１４０４の処理を説明する図
【図１６】第３の実施形態の処理を説明するフローチャート
【発明を実施するための形態】
【００２３】
図８は、システム構成図である。
【００２４】
ホストコンピュータ８０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄａｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）から構成される。文書データを作成するアプリケーション８０２と、前記作成された文書データからプリントコマンドを生成し、印刷装置に送信するプリンタドライバ８０３は、ＲＯＭに保存されている。これらの構成により、このホストコンピュータ８０１は、図９のＳ９０１−Ｓ９０５の処理を実行することが可能となっている。ＣＰＵがこのプログラムを適宜、ＲＡＭにロードして実行することにより、これらの処理は実行される。
【００２５】
また、印刷装置８０４は、前記プリンタドライバ８０３で生成されたプリントコマンドを解析するコマンド解析部８０５と、前記解析したコマンドから描画オブジェクトを生成する描画オブジェクト生成部８０６を持つ。また、前記生成した描画オブジェクトからビットマップを生成するレンダリング処理部８０７と、前記生成されたビットマップを印刷用画像に調整（例：ＲＧＢ→Ｋ変換）する画像処理部８０８を持つ。さらに、前記印刷用画像を画像出力部７１０に特性に合わせて調整（例：γ補正、ハーフトーン処理）する画像変換部８０９と、画像を紙に出力する画像出力部７１０を持つ。
【００２６】
なお、以下の実施例は、印刷装置８０４が白黒プリンタであるものとして説明するが、カラープリンタであっても良い。
【００２７】
〔実施例１〕
本発明における、第１の実施形態について説明する。
【００２８】
図９は、プリンタドライバ８０３がアプリケーション８０２から文書データを受けた後に、プリンタドライバ８０３が行う処理のフローとなっている。この処理について図１０も用いながら説明する。
【００２９】
Ｓ９０１では、プリンタドライバ８０３は、アプリケーション８０２から受取った文書データの各オブジェクトを調査する。具体的には、各オブジェクトが半透明オブジェクトであるかを判断する。具体的には、アプリケーション８０２から受け取った各オブジェクトの描画命令にＸＯＲ−ＡＮＤ−ＸＯＲの描画命令の組が含まれているか判断する。その組がある場合には、そのオブジェクトは半透明オブジェクトであると判断し、その組がない場合には、半透明オブジェクトでないと判断する。
【００３０】
さらに、ＸＯＲ−ＡＮＤ−ＸＯＲの組における、最初のＸＯＲ描画命令で描画される画像（６０３）と、最後のＸＯＲ描画命令で描画される画像（６０５）が同じであることを確認し、確認ができた場合にのみ半透明オブジェクトである（半透明オブジェクトが検出された）と判断してもよい。半透明オブジェクトである場合はＳ９０２−Ｓ９０４の処理を行い、半透明オブジェクトでない場合はＳ９０５で変倍率に応じてオブジェクトを変倍する。
【００３１】
Ｓ９０２では、プリンタドライバ８０３は、半透明パターン（６０４）に対して多値化処理を行う（１００４）。なお、この多値化処理の詳細については後述する。ただし、このステップは省略可能である。
【００３２】
Ｓ９０３では、プリンタドライバ８０３は、Ｓ９０２にて多値化された半透明パターン１００４（１００４は、以下、多値半透明パターンと称する。）と、ＸＯＲ描画命令で描かれる、全画素がＯＮ画素の二つの画像１００１（図６でいう所の６０３と６０５）を変倍処理する。変倍処理により得られた画像は１００５に示す。なお、この変倍処理は公知の技術である。例えば、縮小変倍の場合は、間引き処理による縮小変倍を行い、拡大変倍の場合は、バイリニア法等の補間を用いた拡大変倍を行う。
【００３３】
Ｓ９０４では、プリンタドライバ８０３は、変倍処理後の多値半透明パターン１００５に対して、１６×１６画素の矩形単位で、スクリーンを適用する（適用された結果が１００６となる）。この処理の詳細についても後述する。そして、適用された結果と、変倍処理された二つの画像を、ＸＯＲ−ＡＮＤ−ＸＯＲの描画命令に変換する。
【００３４】
その後、プリンタドライバ８０３で得られた描画命令は、プリントコマンド（ＰＤＬ）の形式に直して印刷装置８０４に送信する。印刷装置８０４に送信されたプリントコマンドは、上述したようにコマンド解析部８０５がコマンドを解析する。描画オブジェクト生成部８０６は、解析されたコマンドを描画オブジェクトに変換する。レンダリング部８０７は、描画オブジェクトをビットマップ化する（例えば、ＸＯＲ、ＡＮＤ、ＸＯＲ演算などを行うことにより、ビットマップ画像を生成する）。このビットマップ化においては、前面に位置するオブジェクトは、背面に位置するオブジェクトの上に合成されることになる。例えば、半透明オブジェクトが前面に位置し、それと同じ画素位置で、かつ、背面に通常オブジェクトが位置する場合、半透明オブジェクトは、通常オブジェクトの上に配置されることになる。その結果、通常オブジェクトの一部だけが見えることになる。これは、半透明オブジェクトには透明画素が含まれているためである。
【００３５】
さらに、印刷装置８０４の画像処理部８０８はビットマップ化された画像に対してγ補正などの処理をかける。そののち、画像変換部８０９は、画像処理部８０８から受取った画像をハーフトーン化する（例えば、ディザ処理を画像に対して適用する）。そして画像出力部８１０は画像を紙出力する。
【００３６】
ここで、ハーフトーン化される際に適用されるディザ処理と、Ｓ９０４で適用されるディザ処理は異なるものである。どちらもディザマトリクスであるという点では同じであるが、係数が異なっている。前者のスクリーンは、多値の画像を二値プリンタでも用紙上に表現できるように設計されたスクリーンであり、係数の配列は、ベイヤー型などの公知の配列となっている。一方、後者のスクリーンは、半透明パターンを生成するように設計されたスクリーンであり、係数の配列は、後述の通りである。
【００３７】
なお、本明細書では、プリンタドライバのインストールされたホストコンピュータと、印刷装置は、別の装置であるものとして説明を行うが、両者一体となった装置であっても良い。なお、ホストコンピュータも、印刷装置も、両者一体となった装置も、いずれも情報処理をすることが可能なので、情報処理装置と言うことができる。
【００３８】
以下、Ｓ９０２で行う多値化処理の詳細と、Ｓ９０４で行う、変倍処理後の多値半透明パターンに後者のスクリーンを適用する処理の詳細を説明する。
【００３９】
［Ｓ９０２  多値化処理の詳細］
２値画像である半透明パターンを多値化する際の処理について図１０を用いて説明する。
【００４０】
本実施形態では、半透明パターンが表す形状（黒画素と白画素が千鳥配置された形状）をある程度残したまま多値化を行いたいため、単純平均ではなく、図１０の１００７で示されるフィルタを用いて加重平均を行う。注目画素を一画素ずつずらしながら、このフィルタ１００７を、半透明パターン１００２に対して適用することになる。そうすることにより、多値半透明パターン１００４が得られる。
【００４１】
ただし、多値化処理はこの方法に限られない。例えば、図１２に示すような、より早い処理スピードを実現できる方法でも良い。以下、この方法について説明する。
【００４２】
Ｓ１２０１では、プリンタドライバ８０３は、半透明パターン（１００２）を４×４画素に分割する。分割された結果は、１００３となる。この１００３の一部を拡大して表した図が、図１１の１１０１となる。
【００４３】
Ｓ１２０２では、プリンタドライバ８０３は、４×４画素の塊（１１０１）を１６ｂｉｔで表現する。例えば１１０１に示されるような４×４画素の半透明パターンだった場合、ＯＮ画素（非透明画素）を１、ＯＦＦ画素（透明画素）を０で表現する。そうすることで、１１０１の１段目は“１０１０”、２段目は“０１０１”、３段目は“１０１０”、４段目は“０１００”で表すことができる。これらを並べて１６ｂｉｔで表現すると“１０１００１０１１０１００１００”＝“０ｘＡ５Ａ４”となる。
【００４４】
Ｓ１２０３では、Ｓ１２０２で１６ｂｉｔ表現された４×４画素の塊に対して、後述のテーブルを用いて多値化処理を行う。以下、このテーブルの設計方法について説明する。
【００４５】
例えば、上述した、“０ｘＡ５Ａ４”（１６ｂｉｔ）で表現される４×４画素に対して加重平均フィルタ１００７を適用すると、図１１の１１０６のように示すことができる。多値化後の画素値の１段目は、左から“６５”“６１”“４６”“３４”となる。同様に２段目は“６１”“５７”“５０”“３８”となる。３段目は“５０”“５３”“４２”“４２”となる。そして４段目は“４２”“３８”“４２”“３４”となる。なお、画素値が取りうるレンジは、最大値９９、最小値０の１００である。
【００４６】
このように、“０ｘＡ５Ａ４”で表される４×４画素の画像にフィルタ１００７を適用すると、“６５，６１，４６，３４，６１，５７，５０，３８，５０，５３，４２，４２，４２，３８，４２，３４”になることになる。したがって、４×４画素の画像が１６ｂｉｔ表現で“０ｘＡ５Ａ４”ならば、“６５，６１，４６，３４，６１，５７，５０，３８，５０，５３，４２，４２，４２，３８，４２，３４”に置き換えるというのを予めテーブル化しておくと処理スピードが高まる。もちろん、４×４画素のＯＮ画素とＯＦＦ画素の組み合わせ全２５６パターンの夫々に対して、多値化後の画素値の組み合わせをテーブル化しておく必要がある。ここで２５６パターンとしているのは、アプリケーションがプリンタドライバに送ってくる半透明パターンを４×４画素で区切ると、その４×４画素のＯＮ画素とＯＦＦ画素のパターンは、一般に、予め決められた２５６パターンの何れかだからである。
【００４７】
［Ｓ９０４  スクリーン適用の詳細］
０〜１００で表現された多値画像（変倍処理後の半透明パターン多値化画像）に、スクリーンを適用する処理について図１３を用いて説明する。
【００４８】
例えば、プリンタドライバ８０３が、透過性３０％の透明パターンを多値化し、変倍すると画像１３０２のような多値画像が得られる。この多値画像に対して、パターン化スクリーン１３０１を適用して、プリンタドライバ８０３が二値化を行う。パターン化スクリーン１３０１は、通常のディザマトリクスと同じく、１画素ずつに閾値を持っている。そして、閾値以上の画素を黒、閾値未満の画素を透明（白ではなく透明）とする。
【００４９】
なお、このパターン化スクリーンのサイズは１６×１６画素とする。理由としては、アプリケーションから受取る半透明パターンは、常に縦１６画素×横１６画素のパターンを繰り返し配置したパターンとなっており、これと同じパターンを実現するためである。
【００５０】
ここでパターン化スクリーンの設計方法を１３０１と１３０４と１３０５を用いて説明する。
【００５１】
１３０４は透過性１％が設定された場合にアプリケーションからプリンタドライバに送られてくる半透明パターンである。また、１３０５は透過性２％が設定された場合に送られてくる半透明パターンである。
【００５２】
透過性１％の半透明パターンと同じパターンを得るために、１３０４のＯＮ画素に該当するスクリーンパターン１３０１の所に、閾値１を設定しておく。次に透過性２％の半透明パターンと同じパターンを得るために、透過性１％の半透明パターン１３０４のＯＮ画素位置との差分位置に閾値２を設定する。
【００５３】
このように１％〜９９％の透過性を持つ半透明パターンのＯＮ画素位置を調べ、そのＯＮ画素位置の増加を調べることによって設計された閾値配列をパターン化スクリーンとする。このようなパターン化スクリーンをプリンタドライバで予め保存しておく。
【００５４】
そして、変倍処理後の半透明パターン多値化画像１３０２に対して、このパターン化スクリーンを適用することで、１３０３のような画像を得る。具体的には、閾値を超える濃度を持つ画素の濃度は、１（即ち、ＯＮ画素、かつ、黒画素）となり、閾値を切った濃度を持つ画素の濃度は、なし（即ち、透明画素）となる。以上の通り、１３０３の画像には、真黒（白やグレイではない黒）のＯＮ画素と、ＯＦＦ画素（透明画素）が含まれることになる。一方、白やグレイのＯＦＦ画素は含まれない。
【００５５】
この１３０３の画像におけるＯＮ画素の位置は、プリンタドライバから送られてきた半透明パターン１００２のＯＮ画素の位置と似た位置になっていることが図１０、図１１から見てとれる。
【００５６】
以上が、実施例１の説明となる。
【００５７】
〔実施例２〕
次に、本発明の第２の実施形態について説明する。ただし、ここでは、上述した第１の実施形態との相違点についてのみ説明する。具体的には、プリンタドライバ８０３の画像処理部８０２の処理のうち、半透明パターンを多値化する処理の部分が第１の実施形態との差異であるので、そこについて図１４の処理フローと図１５を用いて説明する。
【００５８】
Ｓ１４０１では、プリンタドライバ８０３は、アプリケーション８０２から受取った文書データに対して、半透明パターンが含まれているかを判断する。具体的な判断方法は第１の実施形態に記載してあるため、説明を省略する。文章データに対して、半透明パターンが含まれている場合はＳ１４０２以降の処理を、半透明パターンが含まれていない場合はＳ１４０８で変倍率に応じて文書データの画像を変倍する。
【００５９】
Ｓ１４０２では、プリンタドライバ８０３は、ＡＮＤ描画命令で描画される半透明パターン画像について、１６×１６画素の矩形領域に分割する。１６×１６画素に分割する理由は、上述したように半透明パターンは、必ず縦１６画素×横１６画素のパターンを示す情報を持っているからである。
【００６０】
Ｓ１４０３では、プリンタドライバ８０３は、Ｓ１４０２で１６×１６画素に分割された領域に対してＯＮ画素比率を算出する。このＯＮ画素の比率から、半透明パターンの透過性が分かる。例えば、１６×１６画素の中にＯＮ画素が１０２個あれば、６０％の透過性になる。その様子を１５０１に示す。
【００６１】
Ｓ１４０４では、プリンタドライバ８０３は、Ｓ１４０３で求めた１６×１６画素の領域のＯＮ画素比率を元に、この領域の多値化を行う。この処理の詳細も後述する。
【００６２】
Ｓ１４０５では、プリンタドライバ８０３は、Ｓ１４０４で多値化された半透明パターンを含む画像を変倍率に応じて変倍する。なお変倍方法は、実施例１と同様であるため、説明は記載しない。
【００６３】
Ｓ１４０６では、プリンタドライバ８０３は、Ｓ１４０５で変倍した画像を１６×１６画素単位に分割する。この単位で分割する理由はこれまでも述べてきた通りである。
【００６４】
Ｓ１４０７では、プリンタドライバ８０３は、Ｓ１４０６で分割された領域毎に、１〜９９％の透過性を表す半透明パターンに置き換える処理を行う。この半透明パターンに置き換える処理についての詳細は［Ｓ９０４  特定パターンに置き換える処理］と同様の方法で置き換えるため、説明は小略する。
【００６５】
［Ｓ１４０４  ＯＮ画素比率を利用した多値化処理の詳細］
１６×１６画素のＯＮ画素比率を利用した多値化処理の詳細について図１５を用いて説明する。
【００６６】
例えばＯＮ画素比率が４０％の領域の場合（１６×１６画素の中にＯＮ画素が１０２個ある場合）、（１０２／２５６）×１００％＝４０が多値化の際の濃度となる。その様子を１５０２に示す。しかし、これだけでは１６×１６画素の領域を単純平均することと同じになってしまい、図１１の１１０１のようなパターンをこの方法で多値化すると“クリア”という文字もぼかされてしまう。したがって、第１の実施形態の加重平均を用いた多値化処理と同様の結果が得られる処理を行う。
【００６７】
具体的には、１６×１６画素の矩形１５０３を注目矩形とした場合、この注目矩形の中の２５６画素についての画素値を、１６×１６画素単位の矩形１５０３、１５０４、１５０５、１５０６の多値化された値を用いて求める。多値化された値というのは、上述したやり方で求めた１６×１６画素領域の多値化の濃度を使用する。例えば、注目矩形１５０３内の１５０７を求めるのであれば、１５０３の多値化の濃度１５０３（ａ）と１５０４（ａ）と１５０５（ａ）と１５０６（ａ）を使ったバイリニア補間で求める。
【００６８】
以上のような処理を施すと、図１１の１１０１のようなパターンが１５０８のようになる。
【００６９】
本実施形態によっても、変倍処理を伴う半透明パターン画像の著しい画像劣化は避けられる。
【００７０】
以上が、実施例２の説明となる。
【００７１】
〔実施例３〕
次に本発明の第３の実施形態について説明する。本発明の第１の実施形態と第２の実施形態は、ホストコンピュータ７０１内のプリンタドライバ８０３における処理詳細について述べた。第３の実施形態では、第１の実施形態と第２の実施形態と同様の効果を得られる処理を、印刷装置７０４内の描画オブジェクト生成部７０６にて行う。
【００７２】
第１の実施形態と第２の実施形態では、変倍処理を行う過程で半透明パターンが崩れないようにするための処理方法を述べた。本実施形態では、プリンタドライバ８０３ですでに変倍処理が行われ、パターンが崩れた状態の半透明パターン１７０１、１７０４を印刷装置７０４が受信した場合について処理について述べる。なお、１７０１はパターンが崩れた状態の半透明パターンを拡大したものである。
【００７３】
コマンド解析部７０５が半透明パターンと解析したコマンドに対して、描画オブジェクト生成部７０６が、図１６のフローチャートで示されている処理を行う。
【００７４】
Ｓ１６０１では、描画オブジェクト生成部７０６は、半透明パターンを矩形領域で多値化する。多値化した結果を１７０２、１７０５に示す。この多値化の方法は、第１の実施形態で述べた、［Ｓ９０２  多値化処理の詳細］もしくは第２の実施形態で述べた［Ｓ１４０４  ＯＮ画素比率を利用した多値化処理の詳細］のどちらを使っても良い。
【００７５】
Ｓ１６０２では、描画オブジェクト生成部７０６は、多値化された半透明パターンを１〜９９％の透過性を表す特定パターンに置き換える。置き換えられた結果を１７０３、１７０６に示す。この方法も第１の実施例で述べた［Ｓ９０４  特定パターンに置き換える処理］を用いる。
【００７６】
以上により、予め崩れたパターンの半透明パターンをプリンタドライバ８０３から受信しても、パターン崩れによる著しい画像劣化は避けられる。
【００７７】
以上が、実施例３の説明となる。
【００７８】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2015133640.tif 000003
【図２】
2015133640.tif 000004
【図３】
2015133640.tif 000005
【図４】
2015133640.tif 000006
【図６】
2015133640.tif 000007
【図７】
2015133640.tif 000008
【図８】
2015133640.tif 000009
【図９】
2015133640.tif 000010
【図１２】
2015133640.tif 000011
【図１４】
2015133640.tif 000012
【図１６】
2015133640.tif 000013
【図５】
2015133640.tif 000014
【図１０】
2015133640.tif 000015
【図１１】
2015133640.tif 000016
【図１３】
2015133640.tif 000017
【図１５】
2015133640.tif 000018