(57)【特許請求の範囲】
【請求項１】
入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する情報処理装置であって、
前記入力手段による指示位置を検出する入力検出手段、
前記入力検出手段によって検出された指示位置に対応する前記表示装置の表示位置に含まれる複数の画素の各々の表示色を取得する色取得手段、
前記色取得手段によって取得された複数の画素の表示色から指定色を決定する色決定手段、
前記色決定手段によって指定色が決定されたことに応じて、当該指定色を変更可能に設定するための設定画面を前記表示装置に表示する指定色表示手段、および
前記設定画面を用いて設定された指定色に基づいて前記手書き画像を描画するときの色属性を設定する属性設定手段を備える、情報処理装置。
【請求項２】
前記色決定手段は、前記複数の画素の表示色の最も多い表示色を前記指定色として決定する、請求項１記載の情報処理装置。
【請求項３】
前記色決定手段は、前記複数の画素の表示色を平均した色を前記指定色として決定する、請求項１記載の情報処理装置。
【請求項４】
前記色決定手段は、前記複数の画素の表示色のうち、代表の前記画素の表示色を前記指定色として決定する、請求項１記載の情報処理装置。
【請求項５】
前記代表の画素は、前記複数の画素のうちの中心に位置する画素である、請求項４記載の情報処理装置。
【請求項６】
前記色決定手段は、前記複数の画素の表示色に色情報に所定の重み付けをして合成して前記指定色を決定する、請求項１記載の情報処理装置。
【請求項７】
前記色決定手段によって決定された指定色を前記入力手段の属性として選択するメニューに追加する追加手段をさらに備える、請求項１ないし６のいずれかに記載の情報処理装置。
【請求項８】
入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する情報処理装置の情報処理プログラムであって、
前記情報処理装置のプロセッサに、
前記入力手段による指示位置を検出する入力検出ステップ、
前記入力検出ステップにおいて検出した指示位置に対応する前記表示装置の表示位置に含まれる複数の画素の各々の表示色を取得する色取得ステップ、
前記色取得ステップにおいて取得した複数の画素の表示色から指定色を決定する色決定ステップ、
前記色決定ステップにおいて指定色を決定したことに応じて、当該指定色を変更可能に設定するための設定画面を前記表示装置に表示する指定色表示ステップ、および
前記設定画面を用いて設定された指定色に基づいて前記手書き画像を描画するときの色属性を設定する属性設定ステップを実行させる、情報処理プログラム。
【請求項９】
入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する情報処理装置の情報処理方法であって、
前記情報処理装置のプロセッサは、
（ａ）前記入力手段による指示位置を検出し、
（ｂ）前記ステップ（ａ）において検出した指示位置に対応する前記表示装置の表示位置に含まれる複数の画素の各々の表示色を取得し、
（ｃ）前記ステップ（ｂ）において取得した複数の画素の表示色から指定色を決定し、
（ｄ）前記ステップ（ｃ）色決定ステップにおいて指定色を決定したことに応じて、当該指定色を変更可能に設定するための設定画面を前記表示装置に表示し、そして
（ｅ）前記設定画面を用いて設定された指定色に基づいて前記手書き画像を描画するときの色属性を設定する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、情報処理プログラムおよび情報処理方法に関し、特にたとえば、タッチパネルを用いて手書きされた文字等をディスプレイに表示する、情報処理装置、情報処理プログラムおよび情報処理方法に関する。
【背景技術】
【０００２】
特許文献１に開示される電子白板システムは、タッチパネルを有する表示装置と、タッチパネルに対して入力操作を行うタッチペンを備える。このタッチペンは、測色センサを有している。ユーザが測色モードを選択し、タッチペンのペン先を対象物に接触させて、タッチペンに設けられた第１機能ボタンを操作すると、測色センサによって対象物の色情報が検出される。表示装置は、タッチペンから取得した色情報を測色した色に設定し、この色が選択されているときに手書き入力された文字または線を、設定した色（測色した色）で表示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２５０８０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、この背景技術では、タッチペンに測色センサなどを設ける必要があるため、タッチペンやこれを用いた電子白板システムが高価になってしまう。また、上記の背景技術では、測色センサを有しているタッチペンのような専用のペンを使用しなければ、手書き入力された情報を任意の色を用いて表示することができない。
【０００５】
それゆえに、この発明の主たる目的は、新規な、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。
【０００６】
また、この発明の他の目的は、安価な構成で所望の色を設定できる、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。
【課題を解決するための手段】
【０００７】
第１の発明の情報処理装置は、入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する。この情報処理装置は、入力検出手段、色取得手段、色決定手段、指定色表示手段、および属性設定手段を備える。入力検出手段は、入力手段による指示位置を検出する。色取得手段は、入力検出手段によって検出された指示位置に対応する表示装置の表示位置に含まれる複数の画素の各々の表示色を取得する。色決定手段は、色取得手段によって取得された複数の画素の表示色から指定色を決定する。指定色表示手段は、色決定手段によって指定色が決定されたことに応じて、当該指定色を変更可能に設定するための設定画面を表示装置に表示する。属性設定手段は、設定画面を用いて設定された指定色に基づいて手書き画像を描画するときの色属性を設定する。
【０００８】
第１の発明によれば、指示位置に対応する表示位置に含まれる複数の画素の表示色から決定した指定色に基づいて入力手段の色属性を設定するので、特別なセンサ等を設ける必要が無く、安価な構成で所望の色を入力手段の色属性として設定することができる。
【０００９】
第２の発明は、第１の発明に従属し、色決定手段は、複数の画素の表示色の最も多い表示色を指定色として決定する。
【００１０】
第３の発明は、第１の発明に従属し、色決定手段は、複数の画素の表示色を平均した色を指定色として決定する。
【００１１】
第４の発明は、第１の発明に従属し、色決定手段は、複数の画素の表示色のうち、代表の画素の表示色を指定色として決定する。
【００１２】
第５の発明は、第４の発明に従属し、代表の画素は、複数の画素のうちの中心に位置する画素である。
【００１３】
第６の発明は、第１の発明に従属し、色決定手段は、複数の画素の表示色に色情報に所定の重み付けをして合成して指定色を決定する。
【００１４】
第２ないし第６の発明によれば、簡単に指定色を決定することができる。
【００１７】
第７の発明は、第１ないし第６の発明のいずれかに従属し、属性設定手段によって設定された色属性を、入力手段の色属性を選択するメニューに追加する追加手段をさらに備える。
【００１８】
第７の発明によれば、設定された色属性をメニューに追加するので、これ以降では、メニューから当該色属性を選択することができる。
【００１９】
第８の発明は、入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する情報処理装置の情報処理プログラムであって、情報処理装置のプロセッサに、入力手段による指示位置を検出する入力検出ステップ、入力検出ステップにおいて検出した指示位置に対応する表示装置の表示位置に含まれる複数の画素の各々の表示色を取得する色取得ステップ、色取得ステップにおいて取得した複数の画素の表示色から指定色を決定する色決定ステップ、色決定ステップにおいて指定色を決定したことに応じて、当該指定色を変更可能に設定するための設定画面を表示装置に表示する指定色表示ステップ、および設定画面を用いて設定された指定色に基づいて手書き画像を描画するときの色属性を設定する属性設定ステップを実行させる、情報処理プログラムである。
【００２０】
第９の発明は、入力手段を用いて手書きされた手書き画像を描画して表示装置に表示する情報処理装置の情報処理方法であって、情報処理装置のプロセッサは、（ａ）入力手段による指示位置を検出し、（ｂ）ステップ（ａ）において検出した指示位置に対応する表示装置の表示位置に含まれる複数の画素の各々の表示色を取得し、（ｃ）ステップ（ｂ）において取得した複数の画素の表示色から指定色を決定し、（ｄ）ステップ（ｃ）色決定ステップにおいて指定色を決定したことに応じて、当該指定色を変更可能に設定するための設定画面を表示装置に表示し、そして（ｅ）設定画面を用いて設定された指定色に基づいて手書き画像を描画するときの色属性を設定する、情報処理方法である。
【００２１】
第８および第９の発明においても、第１の発明と同様に、安価な構成で所望の色を入力手段の色属性として設定することができる。
【発明の効果】
【００２２】
この発明によれば、タッチ位置に対応する表示位置の色を線色として設定するので、安価な構成で所望の色を設定することができる。
【００２３】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００２４】
【図１】図１は第１実施例である情報処理装置の電気的な構成を示すブロック図である。
【図２】図２（Ａ）はタッチ画面の一例を示す図解図であり、図２（Ｂ）はタッチ画面の他の例を示す図解図である。
【図３】図３は色選択画面の一例を示す図解図である。
【図４】図４（Ａ）はタッチ画面のその他の例を示す図解図であり、図４（Ｂ）はタッチ画面のさらに他の例を示す図解図である。
【図５】図５（Ａ）は色指定画面の一例を示す図解図であり、図５（Ｂ）はタッチ画面の他の例を示す図解図である。
【図６】図６（Ａ）はタッチパネルの検出領域の一例を示す図解図であり、図６（Ｂ）はディスプレイの表示領域の一例を示す図解図である。
【図７】図７は図１に示すＲＡＭのメモリマップの一例を示す図解図である。
【図８】図８は図１に示すＣＰＵの描画制御処理の一例の一部を示すフロー図である。
【図９】図９は図１に示すＣＰＵの描画制御処理の他の一部であって、図８に後続するフロー図である。
【図１０】図１０は第２実施例におけるＣＰＵの描画制御処理の一部であって、図８に後続するフロー図である。
【図１１】図１１は第３実施例におけるＣＰＵの描画制御処理の一部であって、図８に後続するフロー図である。
【図１２】図１２は第４実施例におけるＣＰＵの描画制御処理の一部であって、図８に後続するフロー図である。
【図１３】図１３は第５実施例におけるＣＰＵの描画制御処理の一部であって、図８に後続するフロー図である。
【発明を実施するための形態】
【００２５】
＜第１実施例＞
図１は、この発明の一実施例である情報処理装置の電気的な構成の一例を示すブロック図である。
【００２６】
図１を参照して、この発明の第１実施例である情報処理装置１０はＣＰＵ１２を含む。ＣＰＵ１２には、バス３０を介してＲＡＭ１４、タッチパネル制御回路１６および描画制御回路１８が接続される。また、タッチパネル制御回路１６にはタッチパネル２０が接続され、描画制御回路１８にはディスプレイ２２が接続される。
【００２７】
この第１実施例では、情報処理装置１０は、電子黒板、タブレット端末、スマートフォン、ＰＣなどの各種の情報機器ないし電子機器に適用される。
【００２８】
また、この第１実施例では、入力手段の一例として、タッチパネル２０が用いられる場合について説明するが、タッチパネル２０以外の入力手段として、たとえばコンピュータマウス、タッチパッド、ペンタブレットなどのポインティングデバイスを用いてもよい。また、情報処理装置１０には、他の入力手段として、操作パネルのようなハードウェアキーが設けられたり、ハードウェアのキーボードが接続されたりすることがある。
【００２９】
図１に戻って、ＣＰＵ１２は、情報処理装置１０の全体的な制御を司る。ＲＡＭ１４は、ＣＰＵ１２のワーク領域およびバッファ領域として用いられる。
【００３０】
タッチパネル制御回路１６は、タッチパネル２０に必要な電圧などを付与するとともに、タッチパネル２０のタッチ有効範囲内でのタッチ操作（タッチ入力）を検出して、そのタッチ入力の位置を示すタッチ座標データをＣＰＵ１２に出力する。
【００３１】
タッチパネル２０は、汎用のタッチパネルであり、静電容量方式、電磁誘導方式、抵抗膜方式、赤外線方式など、任意の方式のものを用いることができる。この第１実施例では、タッチパネル２０としては、静電容量方式のタッチパネルがディスプレイ２２の表示面上に設けられる。
【００３２】
描画制御回路１８は、ＧＰＵおよびＶＲＡＭなどを含んでおり、ＣＰＵ１２の指示の下、ＧＰＵは、ＲＡＭ１４に記憶された手書き入力データ３３２、画像生成データ３３４および静止画像データ３３６（図７参照）などを用いてディスプレイ２２に画面（後述するタッチ画面１００）を表示するための画像データをＶＲＡＭに生成し、生成した画面をディスプレイ２２に表示する。ディスプレイ２２としては、たとえばＬＣＤやＥＬ（Electro-Luminescence）ディスプレイなどを用いることができる。
【００３３】
このような構成の情報処理装置１０では、手書き入力モードにおいて、ユーザがタッチパネル２０を利用して文字、図形、記号など（以下、「文字等」ということがある。）を手書き入力（タッチ入力）すると、タッチパネル制御回路１６は、そのタッチ入力を検出してタッチ位置に対応するタッチ座標データをＣＰＵ１２に出力する。ＣＰＵ１２は、タッチパネル制御回路１６から出力されたタッチ座標データに基づいてディスプレイ２２に手書きの文字等を描画（表示）する。つまり、ＣＰＵ１２の指示の下、描画制御回路１８において手書きの文字等がＶＲＡＭ上に描画され、ＶＲＡＭ上に描画された手書きの文字等を含む画像に対応する画像データがディスプレイ２２に出力される。したがって、ユーザが手書きした文字等を含む画像がディスプレイ２２に表示される。以下、この明細書においては、ユーザが文字を手書きすることを前提とし、手書き文字を含む画像を「手書き画像」と呼ぶことにする。
【００３４】
図２（Ａ）は、手書きが開始される前のタッチ画面１００（初期画面）の一例を示す図解図である。つまり、図２（Ａ）は、描画アプリケーションを実行し、手書き入力モードを開始した当初のタッチ画面１００を示す。また、図２（Ｂ）はタッチ画面１００の他の例を示す図解図である。
【００３５】
たとえば、手書き入力モードでは、図２（Ａ）および（Ｂ）に示すように、タッチ画面１００がディスプレイ２２に表示される。なお、上述したように、ディスプレイ２２の表示面上にはタッチパネル２０が設けられる（図４および図５についても同じ）。以下、タッチ画面１００が表示される場合について同様である。タッチ画面１００の左端部には、それぞれ所定の機能を発揮するボタン（機能ボタン）や描画の属性を設定するためのボタン（属性ボタン）の画像が表示される。この第１実施例では、ペンボタン１０２、消しゴムボタン１０４および色選択ボタン１０６が表示される。ペンボタン１０２は、文字等を手書きする機能を実行する（モードを設定する）ためのボタンである。消しゴムボタン１０４は、手書きの線を消す機能を実行する（モードを設定する）ためのボタンである。色選択ボタン１０６は、線色を選択する機能を実行する（モードを設定する）ためのボタンである。
【００３６】
図示は省略するが、タッチ画面１００には、線種、線幅（太さ）を選択するための属性ボタンや上記以外の機能（新規ページを開く、画像を開く（挿入する）、保存、元に戻すなど）を選択するためのボタンなども表示される。
【００３７】
たとえば、ユーザは、タッチペン（スタイラスペン）１１０でタッチパネル２０を操作する。ただし、ユーザは、手指で操作することもできる。タッチパネル２０を用いた操作（入力）としては、タップ（短押し）、スライド（ドラッグ）、フリック、ロングタッチ（長押し）などがあり、この第１実施例では、これらを「タッチ入力」または単に「入力」のように総称する。また、タッチパネル２０をタッチしていない状態からタッチしている状態に変化することをタッチオン（ペンダウン）と言い、タッチパネル２０をタッチしている状態からタッチしていない状態に変化することをタッチオフ（ペンアップ）と言う。継続的なタッチ入力つまりスライドやフリックによる入力に対しては、タッチパネル２０は、現在のタッチ位置に対応するタッチ座標データを所定周期よりも短い周期で出力する。たとえば、所定周期は、１〜数フレームであり、１フレームは１／３０秒または１／６０秒である。
【００３８】
情報処理装置１０の一例である一般的な電子黒板では、ユーザが文字等を手書きすると、手書きされた文字等がタッチ画面１００に表示（描画）される。つまり、手書きの文字等を含む手書き画像がディスプレイ２２（タッチ画面１００）に表示される。このとき、手書き画像は、設定された属性情報（線種、線色、線幅）に従って描画（表示）される。また、ユーザの操作に従って、予め記憶された画像（静止画像）をディスプレイ２２（タッチ画面１００）に表示する（貼り付ける）こともできる。図２（Ｂ）には、所定の色が付された円１２０および静止画像１３０が表示されたタッチ画面１００の例が示される。
【００３９】
ただし、図２（Ｂ）（図４および図５も同様）では、所定の色が付されていることを、斜線を付すことにより表現してある。
【００４０】
通常、このような情報処理装置１０では、色選択ボタン１０６がタッチされると、図３に示すような色選択画面２００がタッチ画面１００の前面に表示される。色選択画面２００は、カラーパレットが表示される領域２０２およびカラースペクトルが表示される領域２０４を含む。領域２０２には、予め色が設定された複数のボタン２１２が表示されるとともに、ユーザが色を設定可能なボタン２１４が表示される。領域２０４には、異なる色が付された複数の縦長の帯が横方向に並んで配列される。各帯では、縦方向において、色の濃淡が変化される。
【００４１】
ただし、図面の都合上、図３においては、カラーパレットの各ボタン２１２に付された色を文字で表現してある。また、カラースペクトルを、濃淡の異なるモノクロで示してある。
【００４２】
たとえば、ユーザは、所望の色が付されたボタン２１２をタッチしたり、所望の色が表示されたカラースペクトル上の位置をタッチしたりして、ボタン２１２に設定された色やカラースペクトル上でタッチした位置の色を線色として選択（設定）することができる。また、ボタン２１４がタッチされた場合には、その後に、カラースペクトル等を用いて設定された色が当該ボタン２１４に設定される。ボタン２１４に色が設定される（割り当てられる）と、これ以降では、ボタン２１４は、ボタン２１２と同様に機能する。
【００４３】
なお、色を選択せずに、色選択画面２００を閉じた場合には、色の選択（線色の設定）がキャンセルされ、通常の手書き入力モードに戻る。
【００４４】
このような色選択画面２００において、所望の色がカラーパレットに設けられている場合には、所望の色が付されたボタン２１２をタッチするだけなので、所望の色を簡単に設定することができる。しかし、所望の色がカラーパレットに設けられていない場合には、カラースペクトルから所望の色を選択する必要があり、困難である。たとえば、静止画像１３０に使われている色を線色として設定したい場合に、カラーパレットのスペクトルから色を指定（選択）するのは困難である。
【００４５】
このため、色を測定するセンサを備えるタッチペンを使用し、測定した色をタッチペンまたは情報処理装置１０に設定することも考えられるが、センサ等を備えるため、高価である。
【００４６】
そこで、この第１実施例では、色を測定するセンサを備える高価なタッチペンを用いずに、ユーザが指定した所望の色を線色として情報処理装置１０に簡単に設定するようにしてある。
【００４７】
簡単に説明すると、ユーザが、タッチ画面１００に表示された円１２０や静止画像１３０などの画像（表示画像）において、所望の色で表示されている位置ないし部分をタッチ（指示）すると、指示された位置（タッチ位置）に対応する表示位置（表示画像）の色を線色として設定（指定）することができる。
【００４８】
ただし、表示画像をタッチして線色を設定する場合には、当該表示画像上に文字等を描画しないようにするため、文字等を手書きするモードなどの他のモードとは区別する必要がある。このため、図４（Ａ）（図４（Ｂ）および図５（Ａ）も同様）に示すように、タッチ画面１００には、表示画像をタッチして任意の色を線色として指定（設定）するモード（色指定モード）を設定するためのボタン（色指定ボタン）１０８が表示される（設けられる）。
【００４９】
図４（Ａ）に示すように、ユーザがボタン１０８をタッチすると、色指定モードが設定される。次に、ユーザが静止画像１３０をタッチすると、タッチ位置に応じた表示位置（静止画像１３０の位置）の色が取得される。静止画像１３０のような画像のデータでは、画素毎の色が決定されており、決定されている色で各画素が表示される。したがって、ユーザがタッチした位置に応じた静止画像１３０の色（色情報）をディスプレイ２２の出力すなわちＶＲＡＭに描画した画像データから取得することができる。
【００５０】
すると、図５（Ａ）に示すような色指定画面２５０がタッチ画面１００の前面に表示される。この色指定画面２５０は、指定された色を表示するための長方形の表示領域２５２が設けられ、この表示領域２５２の下方に、色情報（ＲＧＢ値）を表示および変更するための領域２６０、領域２６２、領域２６４が横に並んで表示される。領域２６０は、Ｒ（赤）の値を表示および変更するための領域である。領域２６２は、Ｇ（緑）の値を表示および変更するための領域である。そして、領域２６４は、Ｂ（青）の値を表示および変更するための領域である。また、色指定画面２５０には、領域２６０〜２６４の下方に、ボタン２７０およびボタン２７２が設けられる。ボタン２７０は、指定された色を線色に設定することを決定するためのボタンである。ボタン２７２は、指定された色を線色に設定することを中止（キャンセル）するためのボタンである。
【００５１】
色指定画面２５０が表示された当初では、表示領域２５２は、タッチ画面１００においてユーザがタッチしたタッチ位置に対応する表示位置（たとえば、静止画像１３０の位置）の色で表示される（塗り潰される）。また、領域２６０〜２６４に表示された値を変化させることにより、表示領域２５２の色が変化される。領域２６０〜２６４に表示されたＲＧＢ値の各々は、領域２６０、２６２、２６４内に設けられた上昇ボタンまたは下降ボタンをタッチすることにより、変化される。したがって、タッチにより指定した色が所望の色と異なる場合には、ＲＧＢ値を変更することにより、所望の色に変更することができる。
【００５２】
そして、ボタン２７０がタッチされると、領域２６０〜２６４に表示された値で決定される色が線色として設定される。一方、ボタン２７２がタッチされると、指定された色を用いて線色を設定すること（色指定モード）がキャンセルされる。
【００５３】
たとえば、図５（Ａ）に示す色指定画面２５０において指定された色が線色として設定されると、図５（Ｂ）に示すように、手書きされた文字等が、設定（指定）された線色でタッチ画面１００（ディスプレイ２２）に描画される。
【００５４】
上述したように、色指定画面２５０が表示される場合には、タッチ画面１００でタッチされた位置に対応する静止画像１３０の色（表示色）が取得され、表示領域２５２は取得された色で塗り潰される。
【００５５】
ただし、タッチパネル２０の検出単位（ブロック）と、ディスプレイ２２の画素の大きさ（範囲）が異なるため、この第１実施例では、取得する色を、検出単位に相当する範囲に含まれる複数の画素の色（色情報）から所定のルールに従って決定するようにしてある。ただし、検出単位は、タッチパネル２０から出力される一つのタッチ座標（タッチ位置）に対応するタッチパネル２０の検出面における範囲である。この第１実施例では、検出単位の範囲に相当するディスプレイ２２の表示面の範囲に含まれる複数の画素のうち、同じ色（色情報）を有する画素の数が最大となる色が取得する色として決定される。
【００５６】
図６（Ａ）は、タッチパネル２０の検出領域の一部を示す図解図であり、図６（Ｂ）は、この検出領域の一部に対応するディスプレイ２２の表示領域の一部を示す図解図である。ただし、図６（Ａ）に示す検出領域の大きさと、図６（Ｂ）に示す表示領域の大きさは同じである。
【００５７】
図６（Ａ）および図６（Ｂ）に示すように、検出領域の一部が３×３個のブロック（検出単位）Ｋ１〜Ｋ９を含むのに対して、表示領域の一部は９×９個の画素を含む。したがって、図６（Ｂ）から良く分かるように、一つのブロックに相当する大きさ（範囲）には、３×３個の画素が含まれる。図６（Ａ）および図６（Ｂ）に示す例では、ブロックＫ１に対応して、画素Ｅ１〜Ｅ９が設けられる。
【００５８】
したがって、静止画像１３０のタッチ位置（タッチ座標）がブロックＫ１を指示するとき、対応する複数の画素Ｅ１〜Ｅ９から、最も多い色が取得される。ただし、この第１実施例では、各画素Ｅ１〜Ｅ９の色情報（ＲＧＢ値）が検出され、最も多い色情報で決定される色が取得される。そして、取得された色が、色指定画面２５０を表示するときに、表示領域２５２に付される色に使用される。
【００５９】
情報処理装置１０の上記のような動作は、ＣＰＵ１２がＲＡＭ１４に記憶された情報処理プログラムを実行することにより実現される。この第１実施例では、情報処理プログラムの一例として、手書きされた文字等を描画したり保存したりする描画アプリケーションについてのプログラム（描画プログラム）が実行される。具体的な処理については、後でフロー図を用いて説明する。
【００６０】
図７は図１に示したＲＡＭ１４のメモリマップ３００の一例を示す。図７に示すように、ＲＡＭ１４は、プログラム記憶領域３０２およびデータ記憶領域３０４を含む。プログラム記憶領域３０２には、描画プログラムが記憶される。描画プログラムは、入力検出プログラム３１０、画像生成プログラム３１２、表示プログラム３１４および色指定プログラム３１６を含む。
【００６１】
入力検出プログラム３１０は、タッチパネル制御回路１６から出力されたタッチパネル２０におけるタッチ入力のタッチ位置を示すタッチ座標データを取得し、データ記憶領域３０４に記憶するためのプログラムである。ただし、入力検出プログラム３１０は、情報処理装置１０に接続されたハードウェアのキーボードや情報処理装置１０に設けられたハードウェアの操作パネルないし操作ボタンからの入力を検出するためのプログラムでもある。
【００６２】
画像生成プログラム３１２は、後述する画像生成データ３３４を使用したり、後述する手書き入力データ３３２を使用したり、後述する静止画像データ３３６を使用したりして、タッチ画面１００に対応する画像データを生成するためのプログラムである。具体的には、画像生成プログラム３１２が実行されると、ＣＰＵ１２の指示の下、描画制御回路１８において、ＧＰＵがタッチ画面１００に対応する画像データをＶＲＡＭに描画する。表示プログラム３１４は、画像生成プログラム３１２に従って生成された画像データをディスプレイ２２に出力するためのプログラムである。したがって、タッチ画面１００がディスプレイ２２に表示される。
【００６３】
色指定プログラム３１６は、タッチ画面１００に表示された静止画像１３０などの画像において、入力検出プログラム３１０に従って検出されたタッチ座標データ３３０が示すタッチ位置に対応する表示位置の色を所定のルールに従って取得し、ユーザの操作に従って、取得した色または当該色を変更した色を、線色として設定（変更）するためのプログラムである。
【００６４】
なお、図示は省略するが、描画プログラムには、各種の機能を選択および実行するためのプログラムやカラーパレットやカラースペクトルを用いて線色を設定（変更）するためのプログラムなども記憶される。
【００６５】
データ記憶領域３０４には、タッチ座標データ３３０、手書き入力データ３３２、画像生成データ３３４、静止画像データ３３６、指定色データ３３８および属性情報データ３４０などが記憶される。
【００６６】
タッチ座標データ３３０は、入力検出プログラム３１０に従って検出（取得）された現在の（現フレームにおける）タッチ座標データである。タッチ座標データ３３０が示すタッチ座標がタッチ画面１００に表示されたボタン（１０２〜１０８など）の表示領域に含まれる場合には、当該ボタンに割り当てられた機能を実行したり、線色などの属性を設定したりする。また、タッチ座標データ３３０が示すタッチ座標がタッチ画面１００に表示されたボタン（１０２〜１０８など）の表示領域に含まれていない場合には、手書き画像に含まれるタッチ座標であると判断されて、手書き入力データ３３２として記憶する。
【００６７】
手書き入力データ３３２は、手書き画像についてのデータであり、具体的には、タッチオンからタッチオフまでのタッチ入力の軌跡に対応する線のデータ（座標データ群）を、線毎に記憶するデータである。ただし、線は、タッチオンとタッチオフの２点間を結ぶ直線のみならず、曲線（閉曲線）、折れ線、波線も含む。また、閉曲線は、端部のない（始点および終点が同じ位置にある）閉じた線であり、典型的には、円や四角形などの多角形である。ただし、手書きするため、始点と終点が一致するとは限らない。
【００６８】
画像生成データ３３４は、タッチ画面１００のような各種の画面に対応する画像データを生成するためのポリゴンデータやテクスチャデータなどのデータである。また、画像生成データ３３４には、タッチ画面１００に表示される各種のボタンについての画像データも含まれる。
【００６９】
静止画像データ３３６は、イラストや写真などの静止画像についてのデータであり、ユーザの操作によって、他のコンピュータから読み込まれたり（ダウンロードされたり）、情報処理装置１０に着脱可能な外部記憶媒体から読み込まれたりする。静止画像は、一枚に限定される必要はなく、二枚以上であってもよい。ただし、静止画像データ３３６は、情報処理装置１０に設けられる不揮発性のメモリに予め記憶されて、この不揮発性のメモリから読み込まれてもよい。不揮発性のメモリとしては、ＨＤＤやフラッシュメモリを用いることができる。ただし、図１では、不揮発性のメモリは省略してある。
【００７０】
指定色データ３３８は、色指定モードが設定されたときに取得および変更される指定色の色情報についてのデータである。具体的には、ＲＧＢ値についての数値データである。
【００７１】
属性情報データ３４０は、情報処理装置１０またはタッチペン１１０に設定された描画についての属性情報（線種、線色および線幅）についてのデータである。
【００７２】
なお、データ記憶領域３０４には、描画プログラムの実行に必要な他のデータが記憶されたり、描画プログラムの実行に必要なタイマ（カウンタ）やレジスタが設けられたりする。
【００７３】
図８および図９は図１に示したＣＰＵ１２の描画制御処理を示すフロー図である。たとえば、描画プログラムが実行され、ユーザの指示によって、またはデフォルトの設定によって、手書き入力モードが選択される。すると、図８に示すように、ＣＰＵ１２は、描画制御処理を開始し、ステップＳ１で、初期処理を実行する。このステップＳ１の初期処理では、ＣＰＵ１２は、データ記憶領域３０４のタッチ座標データ３３０を消去したり、画像生成データ３３４および静止画像データ３３６などを不揮発性のメモリから読み出したりした上で、初期のタッチ画面１００をディスプレイ２２に表示する。つまり、ＣＰＵ１２の指示の下、描画制御回路１８によって、図２（Ａ）に示したような初期のタッチ画面１００の画像データが生成（描画）され、ディスプレイ２２に出力される。
【００７４】
ただし、静止画像データ３３６は、描画制御処理の実行中に、後述するステップＳ１１において、ユーザの操作に従って、通信可能に接続された他のコンピュータや情報処理装置１０に着脱可能な外部記憶媒体（メモリカードなど）から読み出される場合もある。
【００７５】
次のステップＳ３では、タッチオンかどうかを判断する。このステップＳ３では、ＣＰＵ１２は、データ記憶領域３０４を参照して、タッチ座標データ３３０が記憶されていない状態からタッチ座標データ３３０が記憶されている状態に変化したかどうかを判断する。以下、タッチオンかどうかを判断する場合において同じ。
【００７６】
ただし、図示は省略するが、ＣＰＵ１２は、タッチパネル制御回路１６から出力されたタッチパネル２０におけるタッチ入力のタッチ位置を示すタッチ座標データを取得して、データ記憶領域３０４に記憶する処理（タッチ入力検出処理）を描画制御処理と並行して実行する。
【００７７】
ステップＳ３で“ＮＯ”であれば、つまり、タッチオンでなければ、同じステップＳ３に戻り、タッチオンになるのを待機する。一方、ステップＳ３で“ＹＥＳ”であれば、つまり、タッチオンであれば、ステップＳ５で、終了かどうかを判断する。ここでは、ＣＰＵ１２は、ユーザから描画プログラムの終了が指示されたかどうかを判断する。ステップＳ５で“ＹＥＳ”であれば、つまり終了であれば、描画制御処理を終了する。
【００７８】
一方、ステップＳ５で“ＮＯ”であれば、つまり終了でなければ、ステップＳ７で、色指定ボタンがタッチされたかどうかを判断する。つまり、ＣＰＵ１２は、ボタン１０８がタッチされたかどうかを判断する。ただし、ＣＰＵ１２は、取得したタッチ座標データ３３０が示すタッチ位置がボタン１０８の表示領域を指示するかどうかを判断する。以下、ボタンがタッチされたかどうかを判断する場合について同様である。
【００７９】
ステップＳ７で“ＹＥＳ”であれば、つまり色指定ボタンがタッチされれば、図９に示すステップＳ１９に進む。一方、ステップＳ７で“ＮＯ”であれば、つまり色指定ボタンがタッチされていなければ、ステップＳ９で、他のボタンがタッチされたかどうかを判断する。
【００８０】
ステップＳ９で“ＹＥＳ”であれば、つまり他のボタンがタッチされれば、ステップＳ１１で、他のボタンに応じた処理を実行して、ステップＳ３に戻る。ステップＳ１１では、ＣＰＵ１２は、たとえば、消しゴム機能を実行したり、手書き画像をコピーしたり、静止画像（１３０など）を表示したり（貼り付けたり）、手書き画像を保存したり、属性情報を設定（変更）したりする。
【００８１】
一方、ステップＳ９で“ＮＯ”であれば、つまり他のボタンがタッチされていなければ、ステップＳ１３で、タッチ座標を手書き入力として記憶する。続いて、ステップＳ１５では、タッチ入力に従って手書きされた文字等をディスプレイ２２に表示する。つまり、ステップＳ１５では、上述したように、ＣＰＵ１２の指示の下、描画制御回路１８のＧＰＵが手書き入力データ３３２などを用いて手書き画像を含むタッチ画面１００の画像データをＶＲＡＭに描画し、ディスプレイ２２に出力する。したがって、手書き入力中では、タッチ入力に従う複数の点によって線が描画され、一本または複数本の線によって文字等の手書き画像が描画される。
【００８２】
そして、ステップＳ１７では、タッチオフであるかどうかを判断する。ここでは、ＣＰＵ１２は、データ記憶領域３０４を参照して、タッチ座標データ３３０が記憶されていないかどうかを判断する。ステップＳ１７で“ＮＯ”であれば、つまり、タッチオンの状態が継続していれば、ステップＳ１３に戻る。したがって、タッチ入力に従って手書き入力データ３３２のうち、描画中の線についてのデータが更新されるとともに、タッチ入力に従って線が表示（描画）される。一方、ステップＳ１７で“ＹＥＳ”であれば、つまり、タッチオフであれば、ステップＳ３に戻る。
【００８３】
上述したように、ステップＳ７で“ＹＥＳ”であれば、図９に示すステップＳ１９で、色指定モードを設定する。そして、ステップＳ２１で、タッチオンかどうかを判断する。
【００８４】
ステップＳ２１で“ＮＯ”であれば、つまりタッチオンでなければ、同じステップＳ２１に戻る。一方、ステップＳ２１で“ＹＥＳ”であれば、つまりタッチオンであれば、ステップＳ２３で、タッチ位置（タッチ座標）に対応する表示位置に含まれる全画素の色を取得する。次のステップＳ２５では、取得した全画素の色から、最も多い色を指定色として決定し、これを取得する。そして、ステップＳ２７で、取得した指定色を用いて、図５（Ａ）に示したような色指定画面２５０をタッチ画面１００の前面に表示する。
【００８５】
続いて、ステップＳ２９では、指定色を決定したかどうかを判断する。ここでは、ＣＰＵ１２は、ボタン２７０がタッチされたかどうかを判断する。ステップＳ２９で“ＮＯ”であれば、つまり指定色を決定していなければ、ステップＳ３１で、色が変更されたかどうかを判断する。ここでは、ＣＰＵ１２は、ＲＧＢ値のうち、少なくとも一つの値が変更されたかどうかを判断する。
【００８６】
上述したように、ユーザは、上昇ボタンまたは下降ボタンをタッチして、Ｒの値、Ｇの値、Ｂの値を変更する。つまり、指定色データ３３８が更新される。これによって、表示領域２５２の色が変更される。また、このとき、領域２６０、領域２６２、領域２６４の表示も変更される。
【００８７】
ステップＳ３１で“ＮＯ”であれば、つまり色が変更されていなければ、そのままステップＳ２９に戻る。一方、ステップＳ３１で“ＹＥＳ”であれば、つまり色が変更されれば、ステップＳ３３で、指定色を変更して、ステップＳ２９に戻る。ステップＳ３３では、ＣＰＵ１２の指示の下、ＧＰＵが、表示領域２５２に付された色を変更する。
【００８８】
なお、ステップＳ３１で“ＮＯ”であれば、そのままステップＳ２９に戻るようにしてあるが、ボタン２７２がタッチされた場合には、指定色による線色の設定（色指定モード）をキャンセルして、図８に示したステップＳ３に戻る。このとき、色指定画面２５０は非表示される（閉じられる）。
【００８９】
また、ステップＳ２９で“ＹＥＳ”であれば、つまり指定色を決定すれば、ステップＳ３５で、線色を指定色に設定（変更）して、ステップＳ３に戻る。ステップＳ３５では、ＣＰＵ１２は、指定色データ３３８で属性情報データ３４０に含まれる線色のデータを更新（上書き）する。
【００９０】
この第１実施例によれば、タッチ画面に表示された画像をタッチすると、タッチ位置に対応する画像の色を線色として設定できるので、色を測定するようなセンサを有する高価なタッチペンを用いずに、所望の色を線色として簡単に設定することができる。
【００９１】
なお、この第１実施例では、静止画像１３０のような画像がタッチ画面１００に表示されていることを前提に説明したが、これに限定される必要はない。たとえば、色指定モードが設定された場合に、タッチ画面１００に何ら画像が表示されていない場合には、画像を表示するべきことをメッセージまたは音（音声）或いはそれらの両方で報知するようにしてもよい。ただし、スピーカ等の音を出力するためのコンポーネントは図１では省略してある。
【００９２】
または、タッチ画面１００に何ら画像が表示されていない場合には、色指定モードを設定するボタン１０８をタッチできないようにしてもよい。たとえば、ボタン１０８を非表示したり、ボタン１０８をグレーアウト表示したりして、ボタン１０８をタッチできないようにすることができる。
【００９３】
また、第１実施例では、複数の画素の色のうち、最も多い色を指定色として取得するようにしたが、これに限定される必要はない。たとえば、各画素の色の成分（ＲＧＢ値）に着目し、ＲＧＢ値の各成分について最も多い値を抽出して、抽出したＲＧＢ値で決定される色を指定色として取得するようにしてもよい。
【００９４】
さらに、第１実施例では、一つのタッチ位置に対応する表示位置に九つ（３×３）の画素が含まれる場合について説明したが、これは一例であり、限定されるべきでない。使用するタッチパネル２０およびディスプレイ２２に応じて適宜変更される。たとえば、一つのタッチ位置に対応する表示位置に、四つ（２×２）の画素が含まれる場合や十六（４×４）の画素が含まれる場合もある。
＜第２実施例＞
第２実施例の情報処理装置１０は、タッチされた位置に応じた指定色を決定する方法が異なる以外は、第１実施例と同じであるため、重複した説明は省略することにする。
【００９５】
第２実施例では、タッチ位置に対応する表示位置に含まれる表示画像の全画素の色を平均して指定色を決定し、決定した指定色を取得する。つまり、タッチ位置に対応する表示位置に含まれる全画素のＲＧＢ値の各成分について平均値が算出される。
【００９６】
この第２実施例の描画制御処理は、第１実施例で示した描画制御処理と一部の処理が異なる以外は同じである。具体的には、図１０に示すように、図８および図９に示した描画制御処理のうち、ステップＳ２５に代えて、ステップＳ２５ａの処理が実行される。上述したように、ステップＳ２５ａでは、タッチ位置に対応する位置に含まれる表示画像の全画素の色情報を平均して指定色を決定し、決定した指定色を取得する。
【００９７】
この第２実施例においても、第１実施例と同様に、所望の色を線色として簡単に設定することができる。
＜第３実施例＞
第３実施例の情報処理装置１０は、タッチされた位置に応じた指定色を決定する方法が異なる以外は、第１実施例と同じであるため、重複した説明は省略することにする。
【００９８】
第３実施例では、タッチ位置に対応する表示位置に含まれる全画素のうち、代表の画素の色を指定色として決定し、決定した指定色を取得する。たとえば、代表の画素は、全画素のうちの中心の画素である。ただし、中心の画素に限定される必要はなく、代表の画素はユーザによって設定されてもよい。
【００９９】
この第３実施例の描画制御処理は、第１実施例で示した描画制御処理と一部の処理が異なる以外は同じである。具体的には、図１１に示すように、図８および図９に示した描画制御処理のうち、ステップＳ２３に代えて、ステップＳ２３ａの処理が実行されるとともに、ステップＳ２５に代えて、ステップＳ２５ｂの処理が実行される。上述したように、ステップＳ２３ａでは、タッチ位置に対応する表示位置に含まれる全画素のうち、代表の画素（たとえば、中心の画素Ｅ５）の色を取得する。そして、ステップＳ２５ｂでは、取得した代表の画素の色を指定色として決定し、決定した指定色を取得する。
【０１００】
この第３実施例においても、第１実施例と同様に、所望の色を線色として簡単に設定することができる。
＜第４実施例＞
第４実施例の情報処理装置１０は、タッチされた位置に応じた指定色を決定する方法が異なる以外は、第１実施例と同じであるため、重複した説明は省略することにする。
【０１０１】
第４実施例では、タッチ位置に対応する表示位置に含まれる全画素の色（ＲＧＢ値）に重み付けをして合成（加算）した色を指定色として決定し、決定した指定色を取得する。
【０１０２】
たとえば、九つの画素のうち、中心の画素の重みｗ１を０．２に設定し、他の画素の重みを０．１に設定する（ｗ１＋８×ｗ２＝１）。また、図７に示したように、タッチ位置に対応する九つの画素Ｅｎの色情報を、それぞれ、（Ｒｎ、Ｇｎ、Ｂｎ）とすると（ｎ＝１、２、…、９）、たとえば、数１に従ってＲの値は決定（算出）される。
【０１０３】
［数１］
R = w1 × R5 + w2×(R1 + R2 + R3 + R4 + R6 + R7 + R8 + R9)
なお、数式は省略するが、Ｇの値およびＢの値についても同様に算出される。ただし、重みｗ１およびｗ２の値は一例であり、限定されるべきではない。中心の画素Ｅ５の色情報をさらに重視する場合には、たとえば、重みｗ１を０．４に設定し、重みｗ２を０．０７５に設定してもよい。
【０１０４】
この第４実施例の描画制御処理は、第１実施例で示した描画制御処理と一部の処理が異なる以外は同じである。具体的には、図１２に示すように、図８および図９に示した描画制御処理のうち、ステップＳ２５に代えて、ステップＳ２５ｃの処理が実行される。上述したように、ステップＳ２５ｃでは、タッチ位置に対応する表示位置に含まれる全画素の色（ＲＧＢ値）に重み付けをして加算した色を指定色として決定し、決定した指定色を取得する。
【０１０５】
この第４実施例においても、第１実施例と同様に、所望の色を線色として簡単に設定することができる。
＜第５実施例＞
第５実施例の情報処理装置１０は、タッチされた位置に応じた指定色を決定する方法が異なる以外は、第１実施例と同じであるため、重複した説明は省略することにする。
【０１０６】
第５実施例では、静止画像１３０などの画像をタッチすることにより指定した色が線色として設定された場合に、この線色をカラーパレットのその他の色を設定するボタン２１４に登録するようにしてある。
【０１０７】
この第５実施例の描画制御処理は、第１実施例で示した描画制御処理と一部の処理が異なる以外は同じである。具体的には、図１３に示すように、図８および図９に示した描画制御処理において、ステップＳ３５の後に、ステップＳ３７の処理が追加される。上述したように、ステップＳ３７では、線色として設定した指定色を、カラーパレットが表示された領域２０２に設けられたボタン２１４に設定する（割り当てる）。
【０１０８】
この第５実施例においても、第１実施例と同様に、所望の色を線色として簡単に設定することができる。また、指定色をカラーパレットに登録できるので、それ以降の描画制御処理において、指定色をカラーパレットから選択することができる。
【０１０９】
なお、第５実施例は、第２ないし第４実施例にも適用可能である。
【０１１０】
上述の実施例で挙げた数値および画面構成等は一例であり、実際の製品に応じて適宜変更することが可能である。
【符号の説明】
【０１１１】
１０  …情報処理装置
１２  …ＣＰＵ
１４  …ＲＡＭ
１６  …タッチパネル制御回路
１８  …描画制御回路
２０  …タッチパネル
２２  …ディスプレイ
１１０  …タッチペン
【図１】
0006437299.tif 000002
【図２】
0006437299.tif 000003
【図３】
0006437299.tif 000004
【図４】
0006437299.tif 000005
【図５】
0006437299.tif 000006
【図６】
0006437299.tif 000007
【図７】
0006437299.tif 000008
【図８】
0006437299.tif 000009
【図９】
0006437299.tif 000010
【図１０】
0006437299.tif 000011
【図１１】
0006437299.tif 000012
【図１２】
0006437299.tif 000013
【図１３】
0006437299.tif 000014