(57)【要約】      （修正有）【課題】カラー画像をグレイスケール画像に変換して描画する場合に、重ねて描画される第１と第２のオブジェクトの濃度差を第１のオブジェクトの大きさまたは線の太さに基づいて調整することを目的とする。【解決手段】画像処理装置は、カラー画像の印刷データから第１のオブジェクトと第１のオブジェクトに重ねて描画される第２のオブジェクトを抽出する抽出手段と、前記抽出手段により抽出された第１のオブジェクトと第２のオブジェクトの濃度差の最低値を、第２のオブジェクトの大きさ、または、第２のオブジェクトを構成する線の太さに基づいて決定する決定手段と、第１のオブジェクトと第２のオブジェクトの濃度差が決定手段により決められた濃度差の最低値よりも大きい単色の画像データを生成する生成手段と、を有する。【選択図】図８
2018142851.tif 000002
【特許請求の範囲】
【請求項１】
カラー画像の印刷データに基づく単色の画像データを生成することのできる画像処理装置であって、
前記カラー画像の印刷データから第１のオブジェクトと前記第１のオブジェクトに重ねて描画される第２のオブジェクトを抽出する抽出手段と、
前記抽出手段により抽出された第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値を、前記第２のオブジェクトの大きさ、または、前記第２のオブジェクトを構成する線の太さに基づいて決定する決定手段と、
前記第１のオブジェクトと前記第２のオブジェクトの濃度差が前記決定手段により決められた濃度差の最低値よりも大きい前記単色の画像データを生成する生成手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記画像処理装置は、
前記抽出手段により抽出された前記第１のオブジェクトと前記第２のオブジェクトを単色のオブジェクトに変換する変換手段をさらに有し、
前記決定手段は、前記変換手段により変換された前記第１のオブジェクトと前記第２のオブジェクトの大きさまたは、前記第２のオブジェクトを構成する線の太さに基づいて前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１のオブジェクトは図形オブジェクトであり、前記第２のオブジェクトは文字オブジェクトであり、
前記決定手段は前記第２のオブジェクトの大きさが大きくなるのに従って、前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値をより小さな値に決定し、
前記第２のオブジェクトの大きさが小さくなるのに従って、前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値をより大きな値に決定すること特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記生成手段は、前記第１のオブジェクトと前記第２のオブジェクトの濃度差が前記決定手段により決定される濃度差の最低値よりも小さい場合、前記第１のオブジェクトと前記第２のオブジェクトの少なくとも一方の濃度を調整した前記単色の画像データを生成し、前記第１のオブジェクトと前記第２のオブジェクトの濃度差が前記決定手段により決められた濃度差の最低値よりも大きい場合、前記第１のオブジェクトおよび前記第２のオブジェクトの濃度差を調整することなく前記単色の画像データを生成することを特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記画像処理装置は、前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値と前記第２のオブジェクトの大きさまたは、前記第２のオブジェクトを構成する線の太さとを対応付けるテーブルを記憶する記憶手段をさらに有し、
前記決定手段は、前記記憶手段に記憶された前記テーブルに基づいて、前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値を決めることを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
前記画像処理装置は、カラーの前記第１のオブジェクトとカラーの前記第２のオブジェクトをグレイスケールに変換するグレイ変換手段と、
前記グレイ変換手段によりグレイスケールに変換された前記第１のオブジェクトと前記第２のオブジェクトの濃度を明度に変換する明度変換手段と、をさらに有し、
前記決定手段は、前記第２のオブジェクトの大きさ、または、前記第２のオブジェクトを構成する線の太さに基づいて前記第１のオブジェクトと前記第２のオブジェクトの明度差の最低値を決定し、
前記生成手段は、前記グレイ変換手段によりグレイスケールに変換された前記第１のオブジェクトと前記第２のオブジェクトの明度差が前記決定手段により決定される明度差の最低値よりも大きな前記単色の画像データを生成することを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
前記明度変換手段は単色の濃度と単色の明度を対応づける明度変換テーブルに基づいて前記第１のオブジェクトと前記第２のオブジェクトの濃度を明度に変換することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記生成手段は、前記第２のオブジェクトの濃度を前記第１のオブジェクトの濃度から前記決定手段により決定される濃度差の最低値を引いた値に調整することを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項９】
前記生成手段は、前記第１のオブジェクトから前記決定手段により決定される濃度差の最低値を引いた値が予め決められた第１の値よりも小さい場合、前記第２のオブジェクトの濃度を前記第１のオブジェクトの濃度に前記濃度差の最小値を加えた値に調整することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記生成手段は、前記第１のオブジェクトから前記決定手段により決定された濃度差の最小値を引いた値が前記第１の値よりも小さい場合であり、さらに、前記第１のオブジェクトの濃度に決定された前記濃度差の最小値を加えた値が予め決められた第２の値を超える場合、前記第２のオブジェクトの濃度を、前記第１の値と前記第２の値のうち前記第１のオブジェクトの濃度と遠い値に調整することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記第１のオブジェクトがシートに描画される位置と前記第１のオブジェクトのサイズの情報および前記第２のオブジェクトが前記シートに描画される位置と前記第２のオブジェクトのサイズの情報に基づいて、前記第１のオブジェクトと前記第２のオブジェクトが重ねて描画されるか否かを判定する判定手段をさらに有することを特徴とする請求項１乃至１０のいずれか一項に記載の画像処理装置。
【請求項１２】
前記第２のオブジェクトは線で構成される図形オブジェクトであることを特徴とする請求項１に記載の画像処理装置。
【請求項１３】
カラー画像の印刷データに基づく単色の画像データを生成することのできる画像処理装置の制御方法であって、
カラー画像の印刷データから第１のオブジェクトと前記第１のオブジェクトに重ねて描画される第２のオブジェクトを抽出する抽出ステップと、
前記抽出ステップにおいて抽出された前記第２のオブジェクトの大きさ、または、前記第２のオブジェクトを構成する線の太さに基づいて、前記第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値を決定する決定ステップと、
前記カラー画像の印刷データに基づいて、前記第１のオブジェクトと前記第２のオブジェクトの濃度差が前記決定ステップにおいて決定された濃度差の最低値よりも大きな単色の画像データを生成する生成ステップと、を有する画像処理装置の制御方法。
【請求項１４】
請求項１３に記載の画像処理装置の制御方法をコンピュータが実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、及び画像処理装置の制御方法と画像処理システムに関し、特にカラー画像の印刷データをモノクロ画像の印刷データに変換する画像処理装置及び画像処理装置の制御方法、プログラムに関する。
【背景技術】
【０００２】
画像処理装置ではカラー画像の印刷データをモノクロプリンタで印刷する場合、または、モノクロモードで印刷する場合がある。この場合、カラー画像の印刷データは、該プリンタ内において所定の変換式に基づいてグレイスケールのデータに変換される。
【０００３】
カラー画像では、色のついた図形の上に色のついた文字が重ねて描画される場合がある。たとえば、表計算ソフトで色のついたセルに文字を入力した場合や、色のついた図形の内側に文字を入力した場合などである。これらの画像データをモノクロ印刷する際には、画像処理装置がカラー画像の印刷データをグレイスケール画像の印刷データに変換する。
【０００４】
しかしながら、設定された文字色及び図形色、各色の濃度によっては、グレイスケールデータに変換をした際に背景となる図形の色と文字色が区別しにくくなってしまう場合がある。これは、グレイスケール変換後の図形の色と文字の色の濃度が接近してしまうためである。たとえば、カラー画像をグレイスケールに変換した後の画像が図１６の１６０１のようになると、図形と文字のグレイ濃度が近く、ユーザが図形と文字を区別することが難しい。
【０００５】
特許文献１には、図形と文字が重なっている領域について、グレイスケールへ変換した後の図形のグレイ濃度と文字のグレイ濃度の差が所定の閾値未満の場合、当該差が所定値になるよう画像処理装置が補正することが記載されている。これにより図形と文字のグレイ濃度の差が所定の閾値と同じ値になり、ユーザが図形と文字を判別しやすくなる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−２６２１０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、グレイスケール変換後に背景となる図形と当該図形に重ねて描画される文字や図形のオブジェクトを区別するために必要な濃度差は、背景に重ねて描画される文字や図形の大きさや線の太さによらず一定である。
【０００８】
しかし、一般的に、グレイスケール画像で人間が背景の図形と当該図形に重ねて描画された線や文字を区別するために必要なグレイ濃度の差は文字の大きさや線の太さによって異なる。図１６の１６０１と１６０３は、どちらも同じ濃度のグレイで描かれた矩形の中に矩形のグレイよりも少し薄い濃度のグレイで「あ」という文字を描画した図である。文字サイズの小さな１６０１は矩形と文字の区別がわかりにくい。一方で、文字サイズの大きい１６０３は矩形と文字を区別することができる。これは、大きい文字が小さい文字と比較して太い線で描画されるためである。
【０００９】
画像処理装置が、大きい文字サイズを基準に、背景となる図形と当該図形に重ねて描画される文字や線のオブジェクトを区別するために必要なグレイ濃度の差を決定する。すると、文字サイズの小さな文字や細い線で描かれた図形では、背景の図形のグレイ濃度と当該図形に重ねて描画される文字や図形のグレイ濃度の差が十分でなく、ユーザが背景と文字や図形を区別することができない。
【００１０】
一方で、小さい文字サイズを基準に背景と文字や図形を区別するために必要な濃度差を決定すると、大きな文字サイズの文字や太い線で描かれる図形についてグレイ濃度補正が不要な場合でも、文字や図形の濃度が補正されてしまう。
【００１１】
ここで、一度グレイ濃度を明度に置き換えて説明をする。グレイ濃度が濃いとは、明度が低いことを示しており、グレイ濃度が薄いとは、明度が高いことを示している。図１７は明度が２００のグレイの上に、同じ大きさの明度の異なる文字を描画した図である。それぞれの文字の明度は左から、１９５、１９０、１８０、１７０である。図１７に描画されている文字は文字サイズが十分大きいため、濃度補正を行わなくてもユーザが背景の図形と文字を区別することができる。しかし、グレイ濃度の補正をするか否かを決める閾値が３０に決められていると、上記の４つの文字はすべて同じ明度１７０のグレイで描画されてしまう。そのため、ユーザはこれら４つの文字がもともと異なる色の文字であったことを知ることができない。
【００１２】
本発明は、カラー画像をグレイスケール画像に変換して描画する場合に、重ねて描画される第１と第２のオブジェクトの濃度差を第１のオブジェクトの大きさまたは線の太さに基づいて調整することを目的とする。
【課題を解決するための手段】
【００１３】
本発明に記載の画像処理装置は、カラー画像の印刷データに基づく単色の画像データを生成することのできる画像処理装置であって、前記カラー画像の印刷データから第１のオブジェクトと前記第１のオブジェクトに重ねて描画される第２のオブジェクトを抽出する抽出手段と、前記抽出手段により抽出された第１のオブジェクトと前記第２のオブジェクトの濃度差の最低値を、前記第２のオブジェクトの大きさ、または、前記第２のオブジェクトを構成する線の太さに基づいて決定する決定手段と、前記第１のオブジェクトと前記第２のオブジェクトの濃度差が前記決定手段により決められた濃度差の最低値よりも大きい前記単色の画像データを生成する生成手段と、を有することを特徴とする。
【発明の効果】
【００１４】
本発明は、カラー画像をグレイスケール画像に変換して描画する場合に、重ねて描画される第１と第２のオブジェクトの濃度差を第１のオブジェクトの大きさまたは線の太さに基づいて調整することができる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態におけるプリンタの機能構成を示すブロック図である。
【図２】本実施の形態におけるプリントシステムの構成を示すブロック図である。
【図３】本実施の形態おけるモノクロプリント処理を示すフローチャートである。
【図４】図３に示すデータ処理の詳細を示すフローチャートである。
【図５】図４に示す描画処理の詳細を示すフローチャートである。
【図６】図４に示すグレイ変換処理の詳細を示すフローチャートである。
【図７】本実施の形態におけるカラーグレイ変換ＬＵＴの一例を示す図である。
【図８】図６に示す明度補正処理の詳細を示すフローチャートである。
【図９】最低明度差を取得する処理に用いる文字サイズ最低明度差ＬＵＴの一例を示す図である。
【図１０】文字と図形の明度を求める処理に用いるグレイ明度変換ＬＵＴの一例を示す図である。
【図１１】図８に示す文字濃度（Ｇｒａｙ）修正処理の詳細を示すフローチャートである。
【図１２】図１１に示す文字濃度（Ｇｒａｙ）修正処理において、図形の明度が文字の明度よりも高い場合の概念図である。
【図１３】図１２に示す明度の補正を行う前後の文字と図形の明度のイメージ図である。
【図１４】図１１に示す文字濃度（Ｇｒａｙ）修正処理において、図形の明度が文字の明度より低い場合の概念図である。
【図１５】図１４に示す明度の置き換え前後の文字と図形の明度のイメージ図である。
【図１６】本実施の形態における、異なる文字サイズの文字オブジェクトに対する明度差の置き換え処理を示す概念図である。
【図１７】本実施の形態における、あるグレイ濃度の図形に異なるグレイ濃度の文字が重畳して描画されている例を示す図である。
【発明を実施するための形態】
【００１６】
（実施例）
以下、本発明を実施するための形態について図面を用いて説明する。
【００１７】
＜画像処理装置を含むプリントシステム構成＞
本実施例では、画像処理装置として画像データをシートに印刷するプリンタを例に説明する。画像処理装置は上記の装置に限定されることなく、複数の機能を有する複合機等様々な装置を含むことは言うまでもない。
【００１８】
本実施例の画像処理装置はカラー画像の印刷データに基づくモノクロプリントを可能とするレーザビームプリンタやインクジェットプリンタである。当該プリンタはホストコンピュータと接続され、プリントシステムを構成する。以下、該プリントシステムの構成について図２を参照して説明する。
【００１９】
はじめに、プリンタ２１４に接続されるホストコンピュータ２００のハードウェア構成を説明する。
【００２０】
図２において、ホストコンピュータ２００はプログラムＲＯＭ２０３に格納されたアプリケーションプログラムをＣＰＵ２０１が実行することで起動される。そして、ＣＰＵ２０１はフォントデータが格納されるフォントＲＯＭ２０４や各種データが格納されるデータＲＯＭ２０５からデータを読み出して処理を実行する。ＲＡＭ２０２は、ＣＰＵ２０１の主記憶領域やワークエリアとして利用される。
【００２１】
ホストコンピュータ２００はキーボード（ＫＢ）２１１やディスプレイ（ＣＲＴ：Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）２１２といった入出力機器や、外部メモリ２１３等とのインターフェイスを備える。これらのデバイスはそれぞれキーボードコントローラ（ＫＢＣ）２０７、ディスプレイコントローラ（ＣＲＴＣ）２０８、メモリコントローラ（ＭＣ）２０９等のデバイスコントローラを介して、システムバス２０６経由でＣＰＵ２０１に制御される。
【００２２】
さらに、ホストコンピュータ２００は、プリントコントローラ（ＰＲＣＴ）２１０を介してプリンタ２１４とのデータの入出力を行う。
【００２３】
次に、プリンタ２１４のハードウェア構成を説明する。
【００２４】
プリンタ２１４は、プログラムＲＯＭ２１７または外部メモリ２２６に記憶された制御プログラムをＣＰＵ２１５が実行することで、システムバス２２０に接続される各デバイスを制御する。
【００２５】
また、ＣＰＵ２１５は印刷部Ｉ／Ｆ（インターフェイス）２２２を介して接続される印刷部（プリンタエンジン）２２４に対して画像信号を出力する。また、プリンタ２１４はＣＰＵ２１５の主記憶領域や出力情報展開領域等として使用されるＲＡＭ２１６や、フォント情報を格納するフォントＲＯＭ２１８、各種データ情報を格納するデータＲＯＭ２１９を備える。
【００２６】
外部メモリ２２６はメモリコントローラ（ＭＣ）２２３を介して、フォントデータ、フォームデータ、エミュレーションプログラムなどをＣＰＵ２１５に供給する。操作部２２５はプリンタ２１４の動作環境を設定するためのスイッチやタッチパネル等の入力装置および、ディスプレイ等の表示装置で構成される。当該表示装置はＲＡＭ２１６に格納される設定データやユーザ情報を表示するために用いられ、入力装置はユーザによる操作を受け付けるために用いられる。
【００２７】
次に、図１を参照してプリンタ２１４の機能構成の概要を説明する。
【００２８】
まず、プリンタ２１４の機能構成は、入力された印刷データに基づきプリント用の画像データを生成するビデオコントローラ１１０と、該プリント用の画像データに基づき記録媒体上に可視像を形成するプリンタエンジン部１０９に大別される。
【００２９】
ビデオコントローラ１１０は、受信バッファ１０２、コマンド判別部１０３、コマンド解析部１０４、色調制御部１０５、コマンド実行部１０６、ページメモリ１０７で構成される。ビデオコントローラ１１０はＣＰＵ２１５により制御される。ＣＰＵ２１５はＲＯＭ２１７に格納されたプログラムを読み出してＲＡＭ２１６に展開し、実行することでビデオコントローラ１１０を制御する。
【００３０】
プリンタエンジン部１０９は、出力制御部１０８を介してビデオコントローラ１１０が生成した画像データを受信する。プリンタエンジン部１０９はＣＰＵ２１５により制御され、印刷部２２４の制御を行う。ＣＰＵ２１５はＲＯＭ２１７からプリンタエンジン部１０９の挙動が書かれたプログラムを呼び出しＲＡＭ２１６に展開して実行することでプリンタエンジン部１０９を制御する。
【００３１】
以下において、プリンタ２１４がホストコンピュータ２００から印刷データを受信したときに行う処理を説明する。
【００３２】
インターフェイス１０１は、ホストコンピュータ２００から送られる印刷データを、入力部２２１を介して受信して、当該印刷データを受信バッファ１０２へ送る。印刷データとはシートに印刷する画像データを示すＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データである。
【００３３】
受信バッファ１０２は、インターフェイス１０１から受信した印刷データをＲＡＭ２１６に格納する。受信バッファ１０２は、文字オブジェクトとして文字パターンそのものや、受信した印刷データに含まれる文字の文字コード等をＲＡＭ２１６に格納する。また、受信バッファ１０２は受信した印刷データが図形オブジェクトであれば、その形状を示す輪郭座標点や色等の図形属性をＲＡＭ２１６に格納する。
【００３４】
コマンド判別部１０３は、受信バッファ１０２に格納された印刷データを読み出して、当該印刷データのＰＤＬの種別を判別する。
【００３５】
その後、コマンド解析部１０４は、判別されたＰＤＬの種別に応じて印刷データを解析する。プリンタ２１４はコマンド種ごとにコマンド解析部１０４を有する。本実施例は、その一つを例として示している。解析されたコマンドは、後段のコマンド実行部１０６が処理しやすい形式の中間データに変換される。
【００３６】
コマンド実行部１０６は、中間データに変換されたコマンドを実行して、画素データの集合であるラスタデータを生成し、生成したラスタデータをページメモリ１０７に格納する。
【００３７】
コマンド解析部１０４において解析されるコマンドが色属性を有すると判断された場合、色調制御部１０５はコマンド解析部１０４が生成した中間データ上の色情報を変更する色調制御を実行する。色調制御部１０５が行う処理については、図６、図８、図１１を用いて後述する。
【００３８】
出力制御部１０８は上記ラスタデータに基づいてビデオ信号を作成し、当該ビデオ信号をレーザ光のオン／オフを制御するレーザ駆動信号としてプリンタエンジン部１０９に送出する。プリンタエンジン部１０９は、出力制御部１０８から受け取ったビデオ信号をレーザ駆動信号として、感光ドラムに照射されるレーザ光を制御する。感光ドラムは予め負の電荷に帯電されており、レーザ光が照射された領域の負電荷が消失する。したがって、感光ドラム上でレーザ光の照射された領域と、レーザ光が照射されていない領域で電位差が生じ、潜像が形成される。潜像が形成された感光ドラム上に正電荷を有するトナーを付着させることで、感光ドラム上に可視像が形成される。
【００３９】
なお、上述したように本実施例のプリンタ２１４はカラー画像の印刷データに基づくモノクロプリントが可能であればよい。従って、プリンタエンジン部１０９が備えるトナー色としては黒単色であっても良いし、複数色であっても良い。
【００４０】
＜色処理概要＞
以下、本実施例の適用されるプリンタ２１４が、色属性を有する印刷データ、例えばＲＧＢ形式のカラー画像の印刷データを処理する際に行う色処理を説明する。ここではプリンタ２１４がＹＭＣＫの４色の現像部を有するカラープリンタであるとする。プリンタ２１４は画像データの各画素の有するＲＧＢ形式の色情報をプリント用のＹＭＣＫ形式に変換する。その後、プリンタ２１４はＹＭＣＫの各色１色（プレーン）で構成される画像データを生成する。従って、プリント用の画像データは、１ページ中の１画素につき、Ｙで構成される画像データ、Ｍで構成される画像データ、Ｃで構成される画像データ、Ｋで構成される画像データの４プレーン分の画像データを有する。そしてプリンタエンジン部１０９は、各色の現像剤（トナー）ごとにプリント処理を行う。
【００４１】
一方、プリンタ２１４がモノクロ画像形成のみを可能とするモノクロプリンタであるとする。プリンタ２１４は黒色の現像部のみを有しており、プリンタ２１４はカラー画像データの各画素の有するＲＧＢ形式の色情報を所定の変換式に基づいてグレイスケールに変換する。黒色単色のトナーで形成されるグレイスケールの画像データは色の明暗を示す明度の情報で構成される。グレイスケールで表現されるデータは１ページに対して１プレーンの画像データで構成される。当該画像データの各画素は固有のグレイ濃度を表す濃度信号を有する。
【００４２】
なお、プリンタ２１４がカラープリンタであって、モノクロで印刷を行う設定がなされた場合、プリンタ２１４は上記モノクロプリンタと同様に、グレイスケール変換を伴う色処理を行う。
【００４３】
上記のように、カラー画像をモノクロ印刷する場合、ビデオコントローラ１１０は各画素の持つ濃度をプリンタエンジンにおける出力レベル（０〜２５５）に対応付けて、ビデオ信号として出力する。尚、モノクロプリンタは、カラープリンタと同様に多値記録を行う場合と、エンジン部がドットを打つか否かによる２値記録を行う場合とがある。プリンタ２１４は記録形式に応じて、グレイスケール形式の中間調データを多値画像または２値画像で出力する。
【００４４】
ホストコンピュータ２００から受信した多値の印刷データを２値画像として出力する場合、プリンタ２１４は受信した多値画像を２値画像に変換する処理を行う。プリンタ２１４は２値化処理として、各画素に対して所定の閾値を設け、画素濃度と閾値との比較によって出力値を２分するディザ処理方法等の公知の方法を用いるとする。
【００４５】
ここで、本実施例にかかるプリンタ２１４がカラー画像をグレイスケール変換するときに行う文字濃度（Ｇｒａｙ）修正処理について、模式図を用いて説明する。
【００４６】
図１６は、四角い図形オブジェトに「あ」という文字オブジェクトが重ねて描画されているカラー画像をグレイスケール変換した後の模式図である。１６０１と１６０３は文字の明度を調整する前を示しており、１６０２と１６０４は本実施例に記載の明度補正処理（Ｓ６０９）を実行した後の図である。
【００４７】
本実施例では、カラー画像の印刷データをグレイスケールの印刷データに変換した後、重ねて描画される図形オブジェクトと文字オブジェクトの描画の明度の差を色調制御部１０５が求める。図形オブジェクトと文字オブジェクトのグレイの明度の差が閾値よりも小さければ、図形と文字のグレイの明度差が閾値以上になるよう色調制御部１０５が文字の明度の補正を行う。一方で、図形と文字のグレイの明度差が閾値以上であれば、色調制御部１０５は文字の明度の補正を行わない。
【００４８】
本実施例で色調制御部１０５は文字オブジェクトの大きさに基づいて上記の閾値を決定する。たとえば、図１６（ａ）１６０１と（ｂ）１６０３はどちらも明度が１６５の矩形の図形オブジェクトの上に明度が１７５の「あ」という文字オブジェクトを重ねて描画したものである。図１６（ａ）の文字オブジェクトは１０ポイントの文字サイズで描画されているため、図９に記載の文字サイズ明度差ＬＵＴより、最低でも図形と文字の明度差が２０必要である。そこで色調制御部１０５は１６０１の図形と文字の明度差が２０になるよう、文字の明度を高くする文字濃度（Ｇｒａｙ）修正処理を実行する。文字濃度（Ｇｒａｙ）修正処理を実行した後のグレイスケール画像が１６０２である。
【００４９】
一方、図１６の（ｂ）の文字オブジェクトは１００ポイントの文字サイズで描画されている。図９の文字サイズ明度差ＬＵＴより文字サイズが１００ポイントのとき、背景の図形と文字を区別するために必要な最低明度差は５である。図１６（ｂ）の図形と文字の明度差は１０あるので、色調制御部１０５は文字濃度（Ｇｒａｙ）修正処理を行わない。したがって、印刷されるグレイスケール画像１６０４は１６０３と同じ画像である。
【００５０】
本実施例におけるプリンタ２１４は、文字サイズによって文字のグレイ濃度の修正を行うか否かを決定する閾値を変更する。これによって、プリンタ２１４は文字サイズが小さい場合でも、図形と文字をユーザが区別しやすい画像を印刷することができる。また、文字サイズが大きい文字について、プリンタ２１４は上記の閾値を小さくする。これにより、カラー画像の状態で異なる色であった文字をグレイスケールに変換して印刷するときに、同じグレイ濃度で印刷がなされてしまうことを減らすことができる。
【００５１】
＜モノクロプリント処理＞
上述したように本実施例のプリンタ２１４はホストコンピュータ２００からカラー画像の印刷データを受信して、該カラー画像の印刷データに基づくモノクロ印刷を行うことができる。以下、本実施例におけるプリンタ２１４が実行するカラー画像の印刷データに基づくモノクロ印刷処理を説明する。
【００５２】
図３は、ホストコンピュータ２００からプリンタ２１４にカラー画像の印刷データが送られ、プリンタエンジン部１０９によって記録媒体に可視像が形成されるまでのモノクロプリント動作の一連の処理を示すフローチャートである。本フローチャートに記載の処理を実行するためのプログラムはＲＯＭ２１７に記憶されており、ＣＰＵ２１５が当該プログラムを実行することで処理が実現される。
【００５３】
先ず、ビデオコントローラ１１０は、入力部２２１を介してホストコンピュータ２００からカラー画像の印刷データを受け取り、ＲＡＭ２１６に格納する（Ｓ３０１）。そしてビデオコントローラ１１０は、図４を用いて後述するデータ処理を行う（Ｓ３０２）。
【００５４】
ビデオコントローラ１１０がＳ３０２に記載の処理を完了したのち、出力制御部１０８はＳ３０２で生成されたラスタ画像をプリンタエンジン部１０９に対するビデオ信号に変換して出力する（Ｓ３０３）。
【００５５】
プリンタエンジン部１０９は受け取ったビデオ信号に基づいて記録媒体上に可視像を形成する（Ｓ３０４）。その後、プリンタエンジン部１０９は可視像が形成された記録媒体を排紙する（Ｓ３０５）。
【００５６】
ビデオコントローラ１１０は印刷終了命令をプリンタエンジン部１０９から受け取ったか否か、または印刷データが終了したか否かに基づいて印刷が終了したかを判断する（Ｓ３０６）。印刷が終了したと判断した場合、ビデオコントローラ１１０は印刷動作を終了する。印刷終了でなければ、ビデオコントローラ１１０はＳ３０１からＳ３０６の処理を繰り返す。
【００５７】
図４は、図３のＳ３０２でビデオコントローラ１１０が行うデータ処理の詳細を示すフローチャートである。
【００５８】
まず、コマンド解析部１０４は当該印刷データに含まれる文字描画コマンドの数を示す変数ｎを初期化する（Ｓ４０１）。変数ｎは、後述する描画処理（Ｓ４０８）において、コマンド解析部１０４が受信バッファ１０２から読み出したデータのうち、文字描画コマンドがいくつあったかを記録する変数である。変数ｎはＲＡＭ２１６に記憶されており、Ｓ４０１でコマンド解析部１０４が変数ｎを０にする。
【００５９】
次に、コマンド解析部１０４は当該印刷データに含まれる図形描画コマンドの数を示す変数ｍを初期化する（Ｓ４０２）。変数ｍは、後述する描画処理（Ｓ４０８）において、コマンド解析部１０４が受信バッファ１０２から読み出したデータのうち、図形描画コマンドがいくつあったかを示す変数である。変数ｍはＲＡＭ２１６に記憶されており、Ｓ４０２では、コマンド解析部１０４が変数ｍを０にする。
【００６０】
次に、コマンド判別部１０３は受信バッファ１０２に格納された印刷データからコマンドを読み出し、当該コマンドをコマンド解析部１０４に送る（Ｓ４０３）。Ｓ４０３でコマンド判別部１０３が読み出すコマンドとは、印刷データから図形オブジェクトや文字オブジェクトを抽出して描画することを指示するコマンドや、印刷設定や排紙方法を指示するためのコマンドである。
【００６１】
コマンド判別部１０３は印刷データに含まれるすべてのコマンドの読み出しを終了したか否かを判断する（Ｓ４０４）。印刷データには、ページの始まりと終わりを示すコマンドが含まれている。コマンド判別部１０３は、受信バッファ１０２から読み出したコマンドがページの終わりを示すコマンドであれば、後述のＳ４０５に処理を進める。一方、印刷データの読み出しの途中である場合、コマンド解析部１０４は後述のＳ４０６の処理を実行する。
【００６２】
印刷データの読み出し途中である場合、コマンド解析部１０４は、コマンド判別部１０３から受け取ったコマンドがページメモリ１０７へ文字／図形等の展開処理を伴う描画コマンドであるか否かを判定する（Ｓ４０６）。
【００６３】
コマンド判別部１０３から受け取ったコマンドが描画コマンドでない場合、コマンド解析部１０４は、中間データを作成してから処理をＳ４０３に戻す（Ｓ４０７）。描画コマンドでないコマンドは、たとえば、排紙に関するコマンドや、片面印刷や両面印刷等の設定に関するコマンドである。一方、コマンド判別部１０３から受け取ったコマンドが描画コマンドである場合、コマンド解析部１０４は図５で後述する描画処理を行ってから処理をＳ４０３に戻す（Ｓ４０８）。Ｓ４０３〜Ｓ４０８を行うことで、印刷データに含まれる文字オブジェクトや図形オブジェクトを抽出することができる。
【００６４】
コマンド判別部１０３が１ページ分の印刷データに含まれるすべてのコマンドを読み出したと判定した場合、コマンド解析部１０４と色調制御部１０５は図６で後述するグレイ変換処理を行う（Ｓ４０５）。Ｓ４０５において、色調制御部１０５は、カラー画像の印刷データを単色の印刷データへ変換する。
【００６５】
Ｓ４０５に記載のグレイ変換処理が完了した後、コマンド実行部１０６はコマンド解析部１０４が作成した中間データに基づいて、画素データの集合であるラスタデータの生成を行う。
【００６６】
図５は、図４のＳ４０８でコマンド解析部１０４が実行する描画処理の詳細を示すフローチャートである。本フローチャートに記載の処理はＲＯＭ２１７に記憶されたプログラムをＣＰＵ２１５が実行することで実現される。
【００６７】
コマンド解析部１０４は、コマンド判別部１０３から受け取った描画コマンドが文字オブジェクトの描画コマンドであるか否かを判断する（Ｓ５０１）。
【００６８】
コマンド判別部１０３から受け取った描画コマンドが文字オブジェクトの描画コマンドである場合、コマンド解析部１０４はＲＡＭ２１６の文字色バッファに、当該文字の色を格納する（Ｓ５０２）。
【００６９】
コマンド解析部１０４は、当該文字オブジェクトの文字サイズをＲＡＭ２１６の文字サイズバッファに格納する（Ｓ５０３）。次に、コマンド解析部１０４は、当該文字オブジェクトのテキストボックスの位置を文字位置バッファに格納する（Ｓ５０４）。テキストボックスの位置は、当該文字がページのどこに描画されるかを示す情報である。Ｓ５０４では、コマンド解析部１０４が、文字を表示するテキストボックスのたとえば左上の座標をＲＡＭ２１６に格納する。文字の色は、たとえばコマンドに含まれているＲＧＢの信号値である。
【００７０】
そして、コマンド解析部１０４は、ＲＡＭ２１６に記憶されている変数ｎの値を現在の値より一つ増やした値に更新する（Ｓ５０５）。その後、コマンド解析部１０４はコマンド判別部１０３から受け取ったコマンドに対応する中間データを生成する（Ｓ５１１）。
【００７１】
Ｓ５０１においてコマンド判別部１０３から受け取った描画コマンドが文字描画コマンドでなかった場合、コマンド解析部１０４は、該描画コマンドが図形オブジェクトの描画コマンドであるか否かを判断する（Ｓ５０６）。
【００７２】
コマンド判別部１０３から受け取ったコマンドが図形オブジェクトの描画コマンドである場合、コマンド解析部１０４は、当該図形オブジェクトの色をＲＡＭ２１６の図形色バッファに格納する（Ｓ５０７）。その後、コマンド解析部１０４は当該図形オブジェクトの幅および大きさをＲＡＭ２１６の図形サイズバッファに格納する（Ｓ５０８）。そして、コマンド解析部１０４は当該図形オブジェクトの描画位置を図形位置バッファに格納する（Ｓ５０９）。
【００７３】
そして、コマンド解析部１０４は、ＲＡＭ２１６に記憶されている変数ｍの値を現在の値より一つ増やした値に更新する（Ｓ５１０）。その後、コマンド解析部１０４はコマンド判別部１０３から受け取ったコマンドに対応する中間データを生成する（Ｓ５１１）。
【００７４】
一方、Ｓ５０６においてコマンド解析部１０４がコマンド判別部１０３から受け取ったコマンドが図形描画コマンドでなかった場合、コマンド解析部１０４は受信したコマンドに対応する中間データを生成する（Ｓ５１１）。Ｓ５０６で図形描画コマンドでないと判定されるコマンドとは、例えば、写真などの画像を描画するコマンドである。なお、Ｓ５０１とＳ５０６の処理はどちらが先に行われてもよく、また並行に処理されてもよい。
【００７５】
図６は、図４のステップＳ４０５に示すグレイ変換処理の詳細を示すフローチャートである。本フローチャートに記載の処理を実行するためのプログラムはＲＯＭ２１７に格納されており、ＣＰＵ２１５が当該プログラムを実行することで処理が実現される。
【００７６】
コマンド解析部１０４は、中間データ化された各コマンド群の中に色情報を有する描画コマンドがあるか否かを判定する（Ｓ６０１）。色情報を含む描画コマンドがある場合、コマンド解析部１０４はＳ６０２の処理を実行する。一方、色情報を含む描画コマンドがない場合、コマンド解析部１０４は、グレイ変換処理（Ｓ４０５）を終了し、コマンド実行部１０６は図４のＳ４０９に示す処理を実行する。
【００７７】
描画データのなかに色情報をもつ文字または図形の描画データがある場合、コマンド解析部１０４は、ＲＡＭ２１６に格納されている印刷データ中の文字数を表す変数ｎの値を、文字の処理数の最終値としてＲＡＭ２１６に格納する（Ｓ６０２）。
【００７８】
コマンド解析部１０４は、ＲＡＭ２１６に格納されている印刷データ中の図形の数を示す変数ｍの値を図形の処理数の最終値としてＲＡＭ２１６に格納する（Ｓ６０３）。
【００７９】
次に、色調制御部１０５は、色情報（ＲＧＢ）を濃度情報（Ｇｒａｙ）に変換するカラーグレイ変換ＬＵＴを外部メモリ２２６より取得する（Ｓ６０４）。ここでカラーグレイ変換ＬＵＴは、図７に示すテーブルであり、入力値にＲＧＢの各信号値、出力値に濃度情報（Ｇｒａｙ）をもつルックアップテーブル（ＬＵＴ）である。図７に示すカラーグレイ変換ＬＵＴは、Ｒが５０、Ｇが５０、Ｂが１００のとき、Ｇｒａｙの濃度が５６であることを示している。
【００８０】
カラーグレイ変換ＬＵＴは例えば、均等な色情報（ＲＧＢ）に対してＮＴＳＣ方式を用いて濃度情報（Ｇｒａｙ）を演算したものを出力値としてもっておいてもよい。
【００８１】
そして、色調制御部１０５は、文字オブジェクトの処理数を示す変数ｉを初期化する（Ｓ６０５）。
【００８２】
色調制御部１０５は、カラーグレイ変換ＬＵＴを用いて、ｉ番目の文字オブジェクトの色情報（ＲＧＢ）から文字濃度（Ｇｒａｙ）を算出する。そして、色調制御部１０５は算出した文字濃度（Ｇｒａｙ）をＲＡＭ２１６の文字濃度バッファに格納する（Ｓ６０６）。Ｓ６０６において算出された文字濃度（Ｇｒａｙ）は、後述の説明でＧｒａｙ＿ｂｆ＿ｔｘｔと称して説明する。
【００８３】
次に、色調制御部１０５は、図形オブジェクトの処理数を示す変数ｊを初期化する（Ｓ６０７）。
【００８４】
色調制御部１０５は、ＲＡＭ２１６の図形色バッファからｊ番目の図形オブジェクトの色情報（ＲＧＢ）を読み出す。そして、色調制御部１０５は、読み出した色情報（ＲＧＢ）を図形濃度（Ｇｒａｙ）に変換する。色調制御部１０５は、得られた図形濃度（Ｇｒａｙ）をＲＡＭ２１６の図形濃度バッファに格納する（Ｓ６０８）。算出された図形濃度（Ｇｒａｙ）は、後述の説明でＧｒａｙ＿ｂｆ＿ｂａｃｋと記載する。
【００８５】
そして、色調制御部１０５は、図８を用いて後述する明度補正処理を実行する（Ｓ６０９）。色調制御部１０５は変数ｊが、Ｓ６０３でコマンド解析部１０４がＲＡＭ２１６に格納した図形の数を示すｍの値と一致するかを判定する（Ｓ６１０）。変数ｊが印刷データに含まれる図形の数ｍと異なる場合、色調制御部１０５は変数ｊの値を一つ大きくして、処理をＳ６０８に戻す（Ｓ６１２）。
【００８６】
変数ｊが印刷データに含まれる画像の数ｍと同一であれば、色調制御部１０５は変数ｉが印刷データに含まれる文字の数ｎと同一かを判定する（Ｓ６１１）。変数ｉの値が印刷データに含まれる文字数ｎと同一でなければ、色調制御部１０５は変数ｉの値を一つ大きくして、処理をＳ６０６に戻す（Ｓ６１３）。
【００８７】
変数ｉが印刷データに含まれる文字数ｎと同一の場合、色調制御部１０５は本フローチャートに記載のグレイ変換処理を終了し、コマンド実行部１０６が図４のＳ４０９に記載の処理を行う。
【００８８】
図８は、本実施形態の特徴である図６のＳ６０９において色調制御部１０５が実行する明度補正処理の詳細を示すフローチャートである。本フローチャートに記載の処理はＣＰＵ２１５がＲＯＭ２１７等に記憶されているプログラムを実行することで実現される。
【００８９】
色調制御部１０５は、ｉ番目の文字とｊ番目の図形が重なっているかを判定する（Ｓ８０１）。Ｓ８０１では、図５の描画処理のＳ５０３とＳ５０４において取得した文字のサイズと位置、およびＳ５０８とＳ５０９において取得した図形のサイズと位置を比較し文字と図形が重なるか否かを判定する。文字の描画される領域が図形の描画される領域に全て覆われている場合、色調制御部１０５は文字と図形が重なると判定する。
【００９０】
色調制御部１０５が、文字と図形が重ならないと判断した場合、色調制御部１０５は本フローチャートに記載の処理を終了し、図６のＳ６１０に処理を進める。
【００９１】
色調制御部１０５が文字と図形が重なると判断した場合、色調制御部１０５は外部メモリ２２６から、図９に示す文字サイズ最低明度差ＬＵＴを取得する（Ｓ８０２）。
【００９２】
文字サイズ最低明度差ＬＵＴは予め外部メモリ２２６に格納されている一次元のテーブルである。インデックスｘは、各行のデータを管理するための見出しとなる値である。文字サイズＰｔ［ｘ］は、文字オブジェクトのフォントサイズを示している。最低明度差（ｍｉｎ＿ΔＬ＊［ｘ］）は、図形オブジェクトに文字サイズＰｔ［ｘ］の文字が重畳して描画される場合にユーザが図形と文字を区別するために必要な明度差の最低値である。
【００９３】
図９に示す文字サイズ最低明度差ＬＵＴより、たとえば、文字サイズが１０ｐｔの文字であれば、背景にある図形と文字の明度差が２０あれば文字と背景とをユーザが区別することができることがわかる。図９より文字サイズが小さいほど、最低明度差（ｍｉｎ＿ΔＬ＊［ｘ］）が大きく、文字サイズが大きいほど、最低明度差（ｍｉｎ＿ΔＬ＊［ｘ］）が小さくなる。これは、文字サイズが小さいほど文字の面積が小さいまたは、文字を構成する線が細いために、図形と文字の明度差が大きくならないとユーザが図形と文字を区別できないためである。一方で、文字サイズの大きい文字は、文字の面積が大きい、また文字を構成する線の線幅が太いため図形と文字の濃度差が小さくてもユーザが文字を区別できるためである。
【００９４】
次に、色調制御部１０５はＳ８０２において取得した文字サイズ最低明度差ＬＵＴを用いて、ｉ番目の文字の文字サイズにおいて必要な最低明度差（ｍｉｎ＿ΔＬ＊［ｘ］）を求める（Ｓ８０３）。色調制御部１０５はＳ８０２で取得した最低明度差ＬＵＴを線形補間することでｉ番目の文字の文字サイズにおける最低明度差（ｍｉｎ＿ΔＬＵＴ＊［ｘ］）を求める。
【００９５】
例えば文字サイズが５ｐｔの場合、色調制御部１０５は入力文字サイズ（Ｐｔｉｎｐｕｔ）を５とする。色調制御部１０５はインデックス［ｘ］（０＜ｘ＜Ｎ）をＰｔ［ｘ］＜Ｐｔｉｎｐｕｔ＜Ｐｔ［ｘ＋１］が成り立つように決定する。ここでは、Ｐｔｉｎｐｕｔが５であるため、ｘは０、ｘ＋１は１である。
【００９６】
図９より文字サイズＰｔ［０］が１ポイントである場合、最低明度差ｍｉｎ＿ΔＬ＊［０］は３０である。また、文字サイズＰｔ［１］が１０ポイントである場合、そのときの最低明度差ｍｉｎ＿ΔＬ＊［１］は２０である。色調制御部１０５は、上記の値を下記の式（１）に代入して、ｉ番目の文字の最低明度差ｍｉｎ＿ΔＬ＊［ｘ］を求める。Ｐｔｉｎｐｕｔが５ポイントの場合、最低明度差は２５．６となる。
【００９７】
【数１】
2018142851.tif 000003
Ｓ８０３において、色調制御部１０５がｉ番目の文字について、ユーザが図形と文字を区別するために必要な明度差（最低明度差）を文字サイズに基づいて決定する。最低明度差は、後に説明する文字濃度（Ｇｒｅｙ）修正処理を色調制御部１０５が実行するか否かの閾値として用いられる。
【００９８】
次に、色調制御部１０５は外部メモリ２２６から、図１０に示すグレイ明度変換ＬＵＴを取得する（Ｓ８０４）。グレイ明度変換ＬＵＴは、グレイ濃度を明度に変換するための明度変換テーブルである。インデックスｙは各行のデータを管理するための見出しとなる値である。Ｇｒａｙ（Ｇｒｙ［ｙ］）は、入力となるグレイスケール画像の濃度信号の値である。明度（Ｌ＊［ｙ］）は、濃度信号（Ｇｒｙ［ｙ］）に対する出力となる明度を示している。
【００９９】
グレイ明度変換ＬＵＴは予め外部メモリ２２６に格納されているものとする。しかし、グレイ明度変換ＬＵＴは予め、複数の濃度信号（Ｇｒａｙ）をもつ画像データをプリンタ２１４で印刷し、チャートを測色機で測色して取得した明度（Ｌ＊）の値をグレイ明度変換ＬＵＴの明度（Ｌ＊［ｙ］）としてもよい。
【０１００】
次に、色調制御部１０５はＳ８０４で取得したグレイ明度変換ＬＵＴを用いてｉ番目の文字の濃度を明度に変換する（Ｓ８０５）。色調制御部１０５は、Ｓ６０６で求めた文字濃度（Ｇｒａｙ＿ｂｆ＿ｔｘｔ）から文字の明度（Ｌ＊＿ｔｘｔ）を求める。
【０１０１】
例えば、文字濃度Ｇｒａｙ＿ｂｆ＿ｔｘｔが３０の場合、色調制御部１０５は入力グレイデータ（Ｇｒｙｉｎｐｕｔ）を３０とする。色調制御部１０５は、インデックス（ｙ）（０＜ｙ＜Ｍ）をＧｒｙ［ｙ］＜Ｇｒｙｉｎｐｕｔ＜Ｇｒｙ［ｙ＋１］が成り立つように決定する。ここでは、Ｇｒｙｉｎｐｕｔが３０であるため、ｙは１、ｙ＋１は２である。図１０より、濃度信号Ｇｒｙ［１］は１７であり、そのときの明度Ｌ＊［１］は２２である。濃度信号Ｇｒｙ［２］は３４であり、そのときの明度Ｌ＊［２］は２５である。色調制御部１０５はこれらの値を下記の式（２）に代入することでｉ番目の文字の明度を求める。Ｇｒｙｉｎｐｕｔが３０の場合、明度は２４．３である。
【０１０２】
【数２】
2018142851.tif 000004
次に、色調制御部１０５はＳ８０４で取得したグレイ明度変換ＬＵＴを用いてｊ番目の図形の濃度を明度に変換する（Ｓ８０６）。色調制御部１０５は、Ｓ６０８で求めた図形濃度（Ｇｒａｙ＿ｂｆ＿ｂａｃｋ）からｊ番目の図形の明度（Ｌ＊＿ｂａｃｋ）を求める。Ｓ８０６において色調制御部１０５が行う処理は、Ｓ８０５で行う処理と同様であるため、説明を省略する。
【０１０３】
次に、色調制御部１０５はＳ８０５で求めた文字の明度（Ｌ＊＿ｔｘｔ）とＳ８０６で求めた図形の明度（Ｌ＊＿ｂａｃｋ）の差分の絶対値（ΔＬ＊＿ａｂｓ）を下記式（３）により求める（Ｓ８０７）。
【０１０４】
ΔＬ＊ａｂｓ＝│Ｌ＊ｔｘｔ−Ｌ＊ｂａｃｋ  ・・・式（３）
次に、色調制御部１０５はＳ８０７で求めた文字と図形の明度差の絶対値（ΔＬ＊＿ａｂｓ）が、Ｓ８０３において取得した最低明度差（ｍｉｎ＿ΔＬ＊）未満であるか否かを判断する（Ｓ８０８）。
【０１０５】
文字と図形の明度差の絶対値（ΔＬ＊＿ａｂｓ）が最低明度差（ｍｉｎ＿ΔＬ＊）未満である場合、色調制御部１０５は後述するＳ８０９の処理を実行する。一方、文字と図形の明度差の絶対値（ΔＬ＊＿ａｂｓ）が最低明度差（ｍｉｎ＿ΔＬ＊）以上の場合、色調制御部１０５は本フローチャートに記載の処理を終了してから、図６のＳ６１０の処理を実行する。
【０１０６】
次に、文字と図形の明度差の絶対値（ΔＬ＊＿ａｂｓ）が最低明度差（ｍｉｎ＿ΔＬ＊）未満である場合、色調制御部１０５は後述する文字濃度（Ｇｒａｙ）修正処理を実行する（Ｓ８０９）。色調制御部１０５はＳ８０９の処理を終了させた後、本フローチャートに記載の処理を終了して、図６のＳ６１０の処理を実行する。
【０１０７】
次に、図１１〜図１５を用いて、図８のＳ８０９における文字濃度（Ｇｒａｙ）修正処理について説明する。
【０１０８】
はじめに、グレイ変換後の図形のグレイ明度が、文字のグレイ明度よりも大きい場合、すなわち図形が文字よりも薄いグレイで描画されている場合について図１２と図１３を用いて説明する。
【０１０９】
図１２は文字と図形の明度を模式的に表したものである。縦軸は明度（Ｌ＊）を示している。ｌｉｍ＿Ｌ＊＿ｍａｘは図１０に示すグレイ明度変換ＬＵＴの明度Ｌ＊［Ｍ］の最大値、ｌｉｍ＿Ｌ＊＿ｍｉｎは図１０に示すグレイ明度変換ＬＵＴの明度ΔＬ＊［０］の最小値である。例えば、図１０ではｌｉｍ＿Ｌ＊＿ｍａｘは７０、ｌｉｍ＿Ｌ＊＿ｍｉｎは２０である。ｍｉｎ＿ΔＬ＊はＳ８０３で求めた最低明度差ｍｉｎ＿ΔＬ＊［ｘ］、Ｌ＊＿ｔｘｔは文字の明度、Ｌ＊＿ｂａｃｋは図形の明度である。また、図中の白丸は図８のＳ８０９の文字濃度（Ｇｒａｙ）修正処理後の文字の明度を示している。
【０１１０】
図１３は文字濃度（Ｇｒａｙ）修正処理前後のグレイスケール画像を示している。１３０１、１３０３、１３０５、１３０７は文字濃度（Ｇｒａｙ）修正処理前のグレイスケール画像であり、１３０２、１３０４、１３０６、１３０８は文字濃度（Ｇｒａｙ）修正処理後のグレイスケール画像である。また図１３（Ａ）〜（Ｄ）はそれぞれ、図１２の（Ａ）〜（Ｄ）に対応している。
【０１１１】
図１２（Ａ）は図形より文字の明度が低く、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ以上の場合を示している。この場合、色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値（図中の白丸）に補正する。図１２（Ａ）では、色調制御部１０５は文字の明度を下げる処理を実行する。すなわち、図１３（Ａ）の１３０１および１３０２に示すように、文字の濃度が濃くなるよう文字のグレイ濃度が調整される。
【０１１２】
図１２（Ｂ）は図形より文字の明度が低く、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ未満の場合である。図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘ以下であれば、色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値に補正する。すなわち図１３（Ｂ）の１３０３、１３０４に示すように、文字の濃度が薄くなるよう文字のグレイ濃度が調整される。
【０１１３】
図１２（Ｃ）（Ｄ）は図形より文字の方の明度が低く、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎよりも小さい場合である。さらに図１２（Ｃ）（Ｄ）は、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘよりも大きくなってしまう場合である。この時、色調制御部１０５は、ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値と、ｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度の差の絶対値を比較する。ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値がｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度の差の絶対値以上であれば、色調制御部１０５は文字の明度をｌｉｍ＿Ｌ＊＿ｍａｘに補正する。すなわち、図１３（Ｃ）のように文字色がグレイ変換ＬＵＴの明度（Ｌ＊［ｙ］）の最大値に補正され、文字のグレイ濃度が薄くなるよう調整される。ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値がｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度の差の絶対値未満の場合、色調制御部１０５は文字の明度をｌｉｍ＿Ｌ＊＿ｍｉｎに補正する。すなわち、図１３（Ｄ）のように文字色がグレイ変換ＬＵＴの明度（Ｌ＊［ｙ］）の最小値に補正され、文字の濃度が濃くなるよう調整される。
【０１１４】
次に、グレイ変換後の図形のグレイ明度が、文字のグレイ明度よりも小さい場合、すなわち図形が文字よりも濃いグレイで描画されている場合について図１４と図１５を用いて説明する。
【０１１５】
図１４は文字と図形の明度を模式的に表したものである。各符号は図１２と同様であるため説明を省略する。
【０１１６】
図１５は文字濃度（Ｇｒａｙ）修正処理前後のグレイスケール画像を示している。１５０１、１５０３、１５０５、１５０７は文字濃度（Ｇｒａｙ）修正処理前のグレイスケール画像であり、１５０２、１５０４、１５０６、１５０８は文字濃度（Ｇｒａｙ）修正処理後のグレイスケール画像である。また図１４（Ａ）〜（Ｄ）はそれぞれ、図１５の（Ａ）〜（Ｄ）に対応している。
【０１１７】
図１４（Ａ）は、文字の明度が図形の明度よりも高く、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘ以下の場合である。色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）と最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値に補正する。すなわち、色調制御部１０５は図１５（Ａ）に示すように、文字の濃度が薄くなるよう文字濃度を補正する。
【０１１８】
図１４（Ｂ）は、文字の明度が図形の明度よりも高く、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘよりも大きい場合である。このとき、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ以上であれば、文字の明度（Ｌ＊＿ｔｘｔ）が図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値に補正される。すなわち、色調制御部１０５は図１５（Ｂ）に示すように、文字の濃度を濃くする補正を行う。
【０１１９】
図１４（Ｃ）（Ｄ）は図形より文字の明度が高く、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を差し引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎよりも小さい場合である。さらに図１４（Ｃ）（Ｄ）は、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘを超えてしまう場合である。この時、色調制御部１０５は、ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値と、ｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度の差の絶対値を比較する。ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値がｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度（Ｌ＊＿ｂａｃｋ）の差の絶対値以上であれば、色調制御部１０５は文字の明度をｌｉｍ＿Ｌ＊＿ｍａｘに補正する。すなわち、色調制御部１０５は図１５（Ｃ）のように文字色をグレイ変換ＬＵＴの明度（Ｌ＊［ｙ］）の最大値に補正して、文字のグレイ濃度を薄くする。ｌｉｍ＿Ｌ＊＿ｍａｘと図形の明度の差の絶対値がｌｉｍ＿Ｌ＊＿ｍｉｎと図形の明度の差の絶対値未満であれば、色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）をｌｉｍ＿Ｌ＊＿ｍｉｎに補正する。すなわち、色調制御部１０５は図１５（Ｄ）のように文字色をグレイ変換ＬＵＴの明度（Ｌ＊［ｙ］）の最小値に補正して、文字の濃度を濃くする。
【０１２０】
図１１のフローチャートを利用し、図８のＳ８０９に記載の文字濃度（Ｇｒａｙ）修正処理の詳細を説明する。本フローチャートに記載の処理を実行するためのプログラムはＲＯＭ２１７に記憶されており、ＣＰＵ２１５が当該プログラムを読み出して実行することで本フローチャートに記載の処理が実現される。
【０１２１】
まず、色調制御部１０５は図８のＳ８０４で取得したグレイ明度変換ＬＵＴを参照し、インデックスが０の明度の値を明度の下限値（ｌｉｍ＿Ｌ＊＿ｍｉｎ）に設定する。また、色調制御部１０５はグレイ明度変換ＬＵＴのインデックスが最も大きい明度の値を明度の上限値（ｌｉｍ＿Ｌ＊＿ｍａｘ）に設定する（Ｓ１１０１）。例えば、色調制御部１０５は図１０のグレイ明度変換ＬＵＴを参照して、明度の下限値（ｌｉｍ＿Ｌ＊＿ｍｉｎ）を２０、明度の上限値（ｌｉｍ＿Ｌ＊＿ｍａｘ）を７０に設定する。
【０１２２】
次に、色調制御部１０５は図８のＳ８０６において求めた図形の明度（Ｌ＊＿ｂａｃｋ）が図８のＳ８０５において求めた文字の明度（Ｌ＊＿ｔｘｔ）以上であるか否かを判断する（Ｓ１１０２）。図形の明度（Ｌ＊＿ｂａｃｋ）が文字の明度（Ｌ＊＿ｔｘｔ）以上である場合、色調制御部１０５は後述するＳ１１０３の処理を実行する。
【０１２３】
一方、図形の明度（Ｌ＊＿ｂａｃｋ）が文字の明度（Ｌ＊＿ｔｘｔ）未満である場合、色調制御部１０５は後述するＳ１１０８の処理を実行する。
【０１２４】
文字の明度（Ｌ＊＿ｔｘｔ）が図形の明度（Ｌ＊＿ｂａｃｋ）未満である場合、色調制御部１０５は図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値が明度の下限値（ｌｉｍ＿Ｌ＊＿ｍｉｎ）以上であるかを判断する（Ｓ１１０３）。ここで図形の明度（Ｌ＊＿ｂａｃｋ）は、図８のＳ８０６で色調制御部１０５が求めたものである。また、最低明度差（ｍｉｎ＿ΔＬ＊）は図８のＳ８０３で色調制御部１０５が求めたものである。
【０１２５】
図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ以上の場合、色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度から最低明度差を引いた値に補正する（Ｓ１１１４）。Ｓ１１１４の処理は、図１２（Ａ）、図１３（Ａ）に対応する処理である。
【０１２６】
図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ未満である場合、色調制御部１０５は以下の処理を行う。色調制御部１０５は図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿ΔＬ＊＿ｍａｘ以下であるか否かを判断する（Ｓ１１０４）。
【０１２７】
図形の明度（Ｌ＊＿ｂａｃｋ）と最低明度差（ｍｉｎ＿ΔＬ＊）の合計値がｌｉｍ＿ΔＬ＊＿ｍａｘより大きい場合、色調制御部１０５は後述するＳ１１０５の処理を実行する。
【０１２８】
一方、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿ΔＬ＊＿ｍａｘ以下の場合、色調制御部１０５は以下の処理を実行する。色調制御部１０５は、文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値に補正する（Ｓ１１１２）。Ｓ１１１２の処理は図１２（Ｂ）、図１３（Ｂ）に対応する。
【０１２９】
次に、Ｓ１１０４において、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘよりも大きい場合、色調制御部１０５は以下の処理を実行する。
【０１３０】
色調制御部１０５は、明度の上限値（ｌｉｍ＿Ｌ＊＿ｍａｘ）から図形の明度（Ｌ＊＿ｂａｃｋ）を引いた値の絶対値（ｔｍｐ＿ｍａｘ）をもとめる。また、色調制御部１０５は図形の明度（Ｌ＊＿ｂａｃｋ）から明度の下限値（ｌｉｍ＿Ｌ＊＿ｍｉｎ）を引いた値の絶対値（ｔｍｐ＿ｍｉｎ）を求める。そして、色調制御部１０５はｔｍｐ＿ｍａｘとｔｍｐ＿ｍｉｎの値を比較し、ｔｍｐ＿ｍａｘがｔｍｐ＿ｍｉｎ以上であるかを判定する（Ｓ１１０５）。
【０１３１】
ｔｍｐ＿ｍａｘがｔｍｐ＿ｍｉｎ以上であるの場合、色調制御部１０５は、文字の明度（Ｌ＊＿ｔｘｔ）をｌｉｍ＿Ｌ＊＿ｍａｘに補正する（Ｓ１１０６）。Ｓ１１０６の処理は図１２（Ｃ）、図１３（Ｃ）に対応する。
【０１３２】
ｔｍｐ＿ｍａｘがｔｍｐ＿ｍｉｎ未満であるの場合、色調制御部１０５は、文字の明度（Ｌ＊＿ｔｘｔ）をｌｉｍ＿Ｌ＊＿ｍｉｎに補正をする（Ｓ１１１３）。Ｓ１１１３の処理は図１２（Ｄ）、図１３（Ｄ）に対応する。
【０１３３】
Ｓ１１０６、Ｓ１１１２、Ｓ１１１３、Ｓ１１１４のいずれかの処理を実行したのち、色調制御部１０５は、補正された文字の明度をグレイ濃度に変換する（Ｓ１１０７）。Ｓ１１０７で、色調制御部１０５は、図１０に示すグレイ明度変換ＬＵＴを用いて線形補間を行い、文字の明度をグレイ濃度に変換する。そして、色調制御部１０５は文字のグレイ濃度をＲＡＭ２１６の文字濃度バッファに記憶する。
【０１３４】
Ｓ１１０２において図形の明度（Ｌ＊＿ｂａｃｋ）が文字の明度（Ｌ＊＿ｔｘｔ）未満であった時の処理を以下に述べる。色調制御部１０５は、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘ以下かを判断する（Ｓ１１０８）。図形の明度に最低明度差を加えた値がｌｉｍ＿ΔＬ＊＿ｍａｘ以下の場合、色調制御部１０５は、以下の処理を実行する。色調制御部１０５は、文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値に補正する（Ｓ１１１０）。Ｓ１１１０の処理は図１４（Ａ）、図１５（Ａ）に対応する。
【０１３５】
一方、図形の明度（Ｌ＊＿ｂａｃｋ）に最低明度差（ｍｉｎ＿ΔＬ＊）を加えた値がｌｉｍ＿Ｌ＊＿ｍａｘよりも大きい場合、色調制御部１０５は、ステップＳ１１０９の処理を実行する。色調制御部１０５は、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ以上であるかを判定する（Ｓ１１０９）。
【０１３６】
図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値が、ｌｉｍ＿Ｌ＊＿ｍｉｎ以上である場合、色調制御部１０５は以下の処理を実行する。色調制御部１０５は文字の明度（Ｌ＊＿ｔｘｔ）を図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値に補正する（Ｓ１１１１）。Ｓ１１１１に記載の処理は図１４（Ｄ）、図１５（Ｄ）に対応する。
【０１３７】
Ｓ１１０９において、図形の明度（Ｌ＊＿ｂａｃｋ）から最低明度差（ｍｉｎ＿ΔＬ＊）を引いた値がｌｉｍ＿Ｌ＊＿ｍｉｎ未満である場合、色調制御部１０５はＳ１１０５以下の処理を実行する。Ｓ１１０５以下の処理は図１４（Ｃ）（Ｄ）、図１５（Ｃ）（Ｄ）に対応する。以降の処理は図形の明度（Ｌ＊＿ｂａｃｋ）が文字の明度（Ｌ＊＿ｔｘｔ）よりも高い場合と同様であるため説明を省略する。
【０１３８】
図１１のＳ１１０１で、色調制御部１０５は明度の最大値（Ｌ＊＿ｍａｘ）と明度の最小値（Ｌ＊＿ｍｉｎ）をグレイ明度変換ＬＵＴに基づいて設定した。Ｓ１１０１において、色調制御部１０５はグレイ明度変換ＬＵＴを参照することなく、予め決められた明度の最大値ｌｉｍ＿Ｌ＊＿ｍａｘと明度の最小値ｌｉｍ＿Ｌ＊＿ｍｉｎを用いることとしてもよい。
【０１３９】
説明したように本実施形態によれば、重ねて描画される文字と図形について、文字サイズに応じて最低明度差を決定し、文字と図形の明度差がそれ以上になるよう文字の濃度を調整することができる。すなわち、重ねて描画される単色の図形と文字について、文字サイズに応じて図形と文字の最低濃度差を決定し、文字と図形の濃度差が決定した最低濃度差以上になるよう文字の濃度を調整する。これにより、どのような文字サイズであってもユーザが背景と文字とが判別でき、かつカラー画像の状態で異なる色であらわされていた文字と文字の色が同じグレイであらわされてしまうのを抑制することができる。
【０１４０】
また、本実施例では、文字を描画する色の明度Ｌ＊＿ｔｘｔと図形を描画する色の明度Ｌ＊＿ｂａｃｋを最低明度差ｍｉｎ＿ΔＬ＊だけ離すことができる。また、図形の明度Ｌ＊＿ｂａｃｋから最低明度差ｍｉｎ＿ΔＬ＊だけ離れた明度が、プリンタ２１４の描画できる明度の色でない場合、色調制御部１０５は図形の明度と文字の明度が最大限離れるように文字の明度を決定する。これにより、図形と文字の明度差が十分に取れない場合でも、図形と文字の明度差をできる限り大きくして、ユーザが図形と文字の区別しやすいようプリンタ２１４は文字の濃度を調整する。
【０１４１】
本実施例では、グレイ濃度を明度に変換してから、文字オブジェクトと図形オブジェクトの明度の差が最低明度差以上あるかを判定し、色調制御部１０５が文字オブジェクトの明度を調整することとした。グレイ濃度を明度に変換することなく、文字オブジェクトと図形オブジェクトの濃度差が所定の濃度差以上あるかを判定し、文字オブジェクトの濃度を調整することとしてもよい。
【０１４２】
（その他の実施例）
なお、本実施例では、図形オブジェクトを背景として、文字オブジェクトが当該図形オブジェクトに重ねて描画される場合を例に説明した。図形オブジェクトを背景として、線のみで構成される線画画像の図形オブジェクトが重ねて描画される場合に本発明を適応することとしてもよい。本実施例において、文字オブジェクトについて書かれた処理を、プリンタ２１４が線画画像の図形オブジェクトに対して実行することで、背景となる図形に重ねて描画される線画画像と、背景の図形の濃度差を補正することができる。この場合、プリンタ２１４のＲＯＭ２１９または外部メモリ２２６は、線画画像の図形オブジェクトを構成する線の線幅と最低明度差（ｍｉｎ＿ΔＬ＊）を管理するテーブルを記憶する。当該テーブルは、本実施例の図９に示す文字サイズ明度差ＬＵＴに対応するテーブルである。当該テーブルは、図形オブジェクトを構成する線の線幅が細い場合ほど、最低明度差が大きく、線幅が太くなることに従って、最低明度差が小さくなるよう設定されたテーブルである。
【０１４３】
背景となる図形オブジェクトと線画画像の図形オブジェクトが重ねて描画される際に、色調制御部１０５は上記のテーブルに基づいて、線画画像を構成する線の太さに基づく、最低明度差（ｍｉｎ＿ΔＬ＊）を求める。この処理は、本実施例の図８のＳ８０３に対応する処理である。他の処理は、本実施例において、文字オブジェクトを線画画像の図形オブジェクトと読み替えた場合と同様であるため説明を省略する。このようにすることで、背景となる図形オブジェクトに重ねて描画される線画画像を構成する線幅に応じて、背景と線の明度差を補正するか否かを決める閾値を変化させることができる。線画画像を構成する線が細い場合、背景と線の明度差を大きくすることで、ユーザが背景と線画画像を区別することができる。一方で、太い線で描画される線画画像は、背景に対して異なる色で描画される複数の線画画像が同じグレイ濃度で描画されてしまうことを抑制することができる。
【０１４４】
本実施例では、背景となる図形と文字の濃度差が最低明度差に満たない場合、文字の濃度を調整する場合を説明した。背景となる図形の濃度を調整するとしてもよい。また、背景となる図形と文字の両方の濃度を調整し、図形と文字の明度差が最低明度差以上となるよう調整してもよい。
【０１４５】
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。また、上述の実施形態の一部を適宜組み合わせてもよい。
【０１４６】
そして、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2018142851.tif 000005
【図２】
2018142851.tif 000006
【図３】
2018142851.tif 000007
【図４】
2018142851.tif 000008
【図５】
2018142851.tif 000009
【図６】
2018142851.tif 000010
【図７】
2018142851.tif 000011
【図８】
2018142851.tif 000012
【図９】
2018142851.tif 000013
【図１０】
2018142851.tif 000014
【図１１】
2018142851.tif 000015
【図１２】
2018142851.tif 000016
【図１３】
2018142851.tif 000017
【図１４】
2018142851.tif 000018
【図１５】
2018142851.tif 000019
【図１６】
2018142851.tif 000020
【図１７】
2018142851.tif 000021