(57)【要約】【課題】受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める位置に表示できるようにする。【解決手段】ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末とを備えるネットワークシステムが提供される。第１の通信端末１００Ａは、画像上の位置の指示に対応して入力された手描きデータ１０７Ｘを当該位置に対応する画像上の位置に表示させ、当該位置の位置情報と手描きデータ１０７Ｘとを対応付けて第２の通信端末１００Ｂへと送信する。第２の通信端末１００Ｂは、第１の通信端末１００Ａからの位置情報と手描きデータとに基づいて、第２のディプレイ１０７Ｂに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手書きデータ１０７Ｘを表示させる。【選択図】図４
2011155638.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末とを備えるネットワークシステムであって、
前記第１の通信端末は、
第１のディスプレイと、
第１の通信デバイスと、
前記第１のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを前記位置に対応する該画像上の位置に表示させ、前記第１の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第２の通信端末へと送信させる第１のプロセッサとを含み、
前記第２の通信端末は、
第２のディスプレイと、
第２の通信デバイスと、
前記第１の通信端末からの前記位置の位置情報と前記手描きデータとに基づいて、前記第２のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示させる第２のプロセッサとを含む、ネットワークシステム。
【請求項２】
前記画像のサイズが前記第２のディスプレイのサイズよりも大きい、請求項１に記載のネットワークシステム。
【請求項３】
前記第２のプロセッサは、
前記画像のうちの前記位置が前記第２のディスプレイに表示されているか否かを判断し、
前記位置が表示されている場合に、前記位置情報に基づいて、前記第２のディスプレイに前記手描きデータの全てを表示させる、請求項１または２に記載のネットワークシステム。
【請求項４】
前記第２のプロセッサは、
前記位置が表示されている場合に、前記第２のディスプレイが前記手描きデータを全て表示できるか否かを判断し、
前記第２のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを移動することによって、前記第２のディスプレイに前記手描きデータの全てを表示させる、請求項３に記載のネットワークシステム。
【請求項５】
前記第２のプロセッサは、
前記位置が表示されている場合に、前記第２のディスプレイが前記手描きデータを全て表示できるか否かを判断し、
前記第２のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小することによって、前記第２のディスプレイに前記手描きデータの全てを表示させる、請求項３または４に記載のネットワークシステム。
【請求項６】
前記第２のプロセッサは、前記位置が表示されていない場合に、前記第２のディスプレイの所定の位置に前記手描きデータを表示させる、請求項３から５のいずれかに記載のネットワークシステム。
【請求項７】
前記第２のプロセッサは、前記位置が表示されていない場合に、前記第２のディスプレイに前記位置の方向を示す画像を表示させる、請求項６に記載のネットワークシステム。
【請求項８】
前記画像は地図である、請求項１から７のいずれかに記載のネットワークシステム。
【請求項９】
ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末とを備えるネットワークシステムにおける通信方法であって、
前記第１の通信端末が、画像上の位置の指示をさせるステップと、
前記第１の通信端末が、手描きデータの入力をさせるステップと、
前記第１の通信端末が、第１のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置に対応する場所に前記手描きデータを表示するステップと、
前記第１の通信端末が、第１の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第２の通信端末へと送信するステップと、
前記第２の通信端末が、前記第１の通信端末からの前記位置情報と前記手描きデータとに基づいて、第２のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示するステップとを備える、通信方法。
【請求項１０】
ネットワークを介して他の通信端末と通信可能な通信端末であって、
ディスプレイと、
通信デバイスと、
前記ディスプレイに表示されている画像の位置の指示に対応して入力された手描きデータを前記位置に対応する該画像上の位置に表示させ、前記通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記他の通信端末へと送信させるプロセッサとを備える、通信端末。
【請求項１１】
ネットワークを介して他の通信端末と通信可能な通信端末であって、
ディスプレイと、
通信デバイスと、
前記他の通信端末からの位置情報と手描きデータとに基づいて、前記ディスプレイに前記位置情報に対応する場所に前記手描きデータを表示させるプロセッサとを備える、通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末を備えるネットワークシステム、通信方法、および通信端末に関し、特に、第１および第２の通信端末がコンテンツを送受信するネットワークシステム、通信方法、および通信端末に関する。
【背景技術】
【０００２】
インターネット網に接続可能な複数の通信端末が、コンテンツデータをダイレクトに交換するネットワークシステムが知られている。たとえば、サーバ／クライアントシステムや、Ｐ２Ｐ（Peer  to  Peer）システムなどが挙げられる。そのようなネットワークシステムにおいては、通信端末の各々は、写真画像データや、画像の格納場所を特定するためのデータや、手描き画像データ（手描きデータ）や、テキストデータなどを送信したり受信したりする。そして、通信端末の各々は、受信したデータに基づいて、ディスプレイに画像やテキストを表示させる。
【０００３】
たとえば、特開２００４−２３４５９４号公報（特許文献１）には、フォトコミュニケーションシステムが開示されている。特開２００４−２３４５９４号公報（特許文献１）によると、デジタルカメラのメモリカードなどから画像データを受け取る画像入力手段、画像データなどを記録するデータ記録手段、ユーザからの指示入力を行う入力手段、記録した画像などの表示を行う画像表示手段、記録した画像などのデータを他の端末とやり取りするためのデータ通信手段、端末の実行制御を行う制御手段を備える１対の情報通信端末であって、いずれの情報通信端末においても画像表示手段に表示された画像を見ながら画像表示手段に重畳された入力手段により手描きのグラフィック要素の書き込みを行えば、画像を含めた落書きの結果がリアルタイムに他方の情報通信端末に表示されるように構成する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２３４５９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、受信側の通信端末が、送信側の通信端末が送信したコンテンツを全て表示できない場合がある。たとえば、受信側の通信端末のディスプレイが小さいことために、一部のコンテンツが隠れてしまう場合がある。
【０００６】
本発明は、かかる問題を解決するためになされたものであり、その目的は、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める位置に表示できるようにすることである。
【課題を解決するための手段】
【０００７】
この発明のある局面に従うと、ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末とを備えるネットワークシステムが提供される。第１の通信端末は、第１のディスプレイと、第１の通信デバイスと、第１のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを位置に対応する該画像上の位置に表示させ、第１の通信デバイスに位置の位置情報と手描きデータとを対応付けて第２の通信端末へと送信させる第１のプロセッサとを含む。第２の通信端末は、第２のディスプレイと、第２の通信デバイスと、第１の通信端末からの位置の位置情報と手描きデータとに基づいて、第２のディプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示させる第２のプロセッサとを含む。
【０００８】
好ましくは、画像のサイズが第２のディスプレイのサイズよりも大きい。
好ましくは、第２のプロセッサは、画像のうちの位置が第２のディスプレイに表示されているか否かを判断し、位置が表示されている場合に、位置情報に基づいて、第２のディプレイに手描きデータの全てを表示させる。
【０００９】
好ましくは、第２のプロセッサは、位置が表示されている場合に、第２のディスプレイが手描きデータを全て表示できるか否かを判断し、第２のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを移動することによって、第２のディプレイに手描きデータの全てを表示させる。
【００１０】
好ましくは、第２のプロセッサは、位置が表示されている場合に、第２のディスプレイが手描きデータを全て表示できるか否かを判断し、第２のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小することによって、第２のディプレイに手描きデータの全てを表示させる。
【００１１】
好ましくは、第２のプロセッサは、位置が表示されていない場合に、第２のディスプレイの所定の位置に手描きデータを表示させる。
【００１２】
好ましくは、第２のプロセッサは、位置が表示されていない場合に、第２のディスプレイに位置の方向を示す画像を表示させる。
【００１３】
好ましくは、画像は地図である。
この発明の別の局面に従うと、ネットワークを介して相互に通信可能な少なくとも第１および第２の通信端末とを備えるネットワークシステムにおける通信方法が提供される。通信方法は、第１の通信端末が、画像上の位置の指示をさせるステップと、第１の通信端末が、手描きデータの入力をさせるステップと、第１の通信端末が、第１のディスプレイに画像の少なくとも一部を表示させるとともに位置に対応する場所に手描きデータを表示するステップと、第１の通信端末が、第１の通信デバイスに位置の位置情報と手描きデータとを対応付けて第２の通信端末へと送信するステップと、第２の通信端末が、第１の通信端末からの位置情報と手描きデータとに基づいて、第２のディプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示するステップとを備える。
【００１４】
この発明の別の局面に従うと、ネットワークを介して他の通信端末と通信可能な通信端末が提供される。通信端末は、ディスプレイと、通信デバイスと、ディスプレイに表示されている画像の位置の指示に対応して入力された手描きデータを位置に対応する該画像上の位置に表示させ、通信デバイスに位置の位置情報と手描きデータとを対応付けて他の通信端末へと送信させるプロセッサとを備える。
【００１５】
この発明の別の局面に従うと、ネットワークを介して他の通信端末と通信可能な通信端末が提供される。ディスプレイと、通信デバイスと、他の通信端末からの位置情報と手描きデータとに基づいて、ディプレイに位置情報に対応する場所に手描きデータを表示させるプロセッサとを備える。
【発明の効果】
【００１６】
以上のように、本発明に係るネットワークシステム、通信方法、および通信端末によって、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める位置に表示できるようになる。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態に係るネットワークシステムの一例を示す概略図である。
【図２】本実施の形態に係るネットワークシステムにおける動作概要を示すシーケンス図である。
【図３】本実施の形態に係る動作概要に沿った通信端末の表示態様の推移を示したイメージ図である。
【図４】本実施の形態に係る手描きデータの送受信に関する動作概要を示す第１のイメージ図である。
【図５】本実施の形態に係る手描きデータの送受信に関する動作概要を示す第２のイメージ図である。
【図６】本施の形態に係る携帯電話の概観を示すイメージ図である。
【図７】本施の形態に係る携帯電話のハードウェア構成を示すブロック図である。
【図８】本実施の形態に係るメモリを構成する各種のデータ構造を示すイメージ図である。
【図９】本実施の形態に係る画像データのデータ構造を示すイメージ図である。
【図１０】本実施の形態に係るチャットサーバのハードウェア構成を示すブロック図である。
【図１１】本実施の形態に係るチャットサーバのメモリあるいは固定ディスクに記憶されるルーム管理テーブルのデータ構造を示すイメージ図である。
【図１２】本実施の形態に係る携帯電話におけるＰ２Ｐ通信処理の処理手順の第１の例を示すフローチャートである。
【図１３】本実施の形態に係る送信データのデータ構造を示すイメージ図である。
【図１４】本実施の形態に係るディスプレイ（タッチパネル）が示す画面を示す第１のイメージ図である。
【図１５】本実施の形態に係る送信データを説明するための第１のイメージ図である。
【図１６】本実施の形態に係るディスプレイ（タッチパネル）が示す画面を示す第２のイメージ図である。
【図１７】本実施の形態に係る送信データを説明するための第２のイメージ図である。
【図１８】本実施の形態に係る携帯電話におけるＰ２Ｐ通信処理の処理手順の第２の例を示すフローチャートである。
【図１９】本実施の形態に係るＨＴＴＰ（HyperText  Transfer  Protocol）に基づいてチャット通信が行なわれる場合の送信データの一例を示す図である。
【図２０】本実施の形態に係るＴＣＰ／ＩＰ（Transmission  Control  Protocol/Internet  Protocol）に基づいてチャット通信が行なわれる場合の送信データの一例を示す図である。
【図２１】本実施の形態に係る携帯電話における地図ポインティング処理の処理手順を示すフローチャートである。
【図２２】本実施の形態に係るポインティング処理中の画面を示す第１のイメージ図である。
【図２３】本実施の形態に係るポインティング処理中の画面を示す第２のイメージ図である。
【図２４】本実施の形態に係る地図ポインティング処理において取得される座標を説明するためのイメージ図である。
【図２５】本実施の形態に係る携帯電話における図形入力処理の処理手順を示すフローチャートである。
【図２６】本実施の形態に係る図形入力処理中の画面を示す第１のイメージ図である。
【図２７】本実施の形態に係る図形入力処理中の画面を示す第２のイメージ図である。
【図２８】本実施の形態に係る図形入力処理中の画面を示す第３のイメージ図である。
【図２９】本実施の形態に係る図形入力処理中の画面を示す第４のイメージ図である。
【図３０】本実施の形態に係る携帯電話における手描き入力処理の処理手順を示すフローチャートである。
【図３１】本実施の形態に係る手描き入力処理中の画面を示す第１のイメージ図である。
【図３２】本実施の形態に係る手描き入力処理中の画面を示す第２のイメージ図である。
【図３３】本実施の形態に係る図形入力処理および手描き入力処理において生成された送信データを説明するためのイメージ図である。
【図３４】本実施の形態に係る携帯電話における手描きデータ領域の矩形取得処理の処理手順を示すフローチャートである。
【図３５】本実施の形態に係る携帯電話における手描き処理の処理手順を示すフローチャートである。
【図３６】本実施の形態に係る手描きデータ領域の変化を示すイメージ図である。
【図３７】本実施の形態に係る携帯電話における手描きデータ領域の更新処理の処理手順を示すフローチャートである。
【図３８】本実施の形態に係る携帯電話における背景データ取得処理の処理手順を示すフローチャートである。
【図３９】本実施の形態に係る携帯電話におけるデータサイズ取得処理の処理手順を示すフローチャートである。
【図４０】本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズと同じである場合の画面を示すイメージ図である。
【図４１】本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第１のイメージ図である。
【図４２】本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第２のイメージ図である。
【図４３】本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも大きな場合の受信端末の画面を示すイメージ図である。
【図４４】本実施の形態に係る送信側と同じ背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。
【図４５】本実施の形態に係る受信端末が送信端末と異なる背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。
【図４６】本実施の形態に係る携帯電話におけるデータ表示処理の処理手順を示すフローチャートである。
【図４７】本実施の形態に係る携帯電話におけるポイント位置確認処理の処理手順を示すフローチャートである。
【図４８】本実施の形態に係る携帯電話における手描きデータ設定処理の第１の例を示すフローチャートである。
【図４９Ａ】本実施の形態に係る手描きデータ設定処理１の第１の例における画面を示す第１のイメージ図である。
【図４９Ｂ】本実施の形態に係る手描きデータ設定処理１の第１の例における画面を示す第２のイメージ図である。
【図４９Ｃ】本実施の形態に係る手描きデータ設定処理１の第１の例における画面を示す第３のイメージ図である。
【図４９Ｄ】本実施の形態に係る手描きデータ設定処理１の第１の例における画面遷移を示すイメージ図である。
【図５０】本実施の形態に係る携帯電話における手描きデータ設定処理１の第２の例を示すフローチャートである。
【図５１Ａ】本実施の形態に係る手描きデータ設定処理１の第２の例における画面を示す第１のイメージ図である。
【図５１Ｂ】本実施の形態に係る手描きデータ設定処理１の第２の例における画面を示す第２のイメージ図である。
【図５１Ｃ】本実施の形態に係る手描きデータ設定処理１の第２の例における画面遷移を示すイメージ図である。
【図５２】本実施の形態に係る携帯電話におけるポイントを指す記号データ設定処理の処理手順を示すフローチャートである。
【図５３】本実施の形態に係る携帯電話におけるポイントを指す記号データ位置確認処理の処理手順を示すフローチャートである。
【図５４】本実施の形態に係る携帯電話におけるポイントを指す記号データの領域取得処理の処理手順を示すフローチャートである。
【図５５】本実施の形態に係る携帯電話におけるポイントを指す記号データ取得処理の処理手順を示すフローチャートである。
【図５６】本実施の形態に係るポイントを指す記号データをα２倍に縮小した画面を示すイメージ図である。
【図５７】本実施の形態に係るポイントを指す記号データの表示位置を移動させた画面を示すイメージ図である。
【図５８】本実施の形態に係る携帯電話における縮小率α２の取得処理の処理手順を示すフローチャートである。
【図５９】本実施の形態に係る携帯電話における手描きデータ設定処理２の処理手順を示すフローチャートである。
【図６０】本実施の形態に係る携帯電話における手描き位置確認処理の処理手順を示すフローチャートである。
【図６１】本実施の形態に係る携帯電話における手描きデータ取得処理の処理手順を示すフローチャートである。
【図６２】本実施の形態に係る手描き画像がα３倍に縮小された画面を示すイメージ図である。
【図６３】本実施の形態に係る手描き画像が移動された画面を示すイメージ図である。
【図６４】本実施の形態に係る携帯電話における縮小率α３の取得処理の処理手順を示すフローチャートである。
【図６５】本実施の形態に係るネットワークシステムにおける動作概要の変形例を示すシーケンス図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００１９】
また、以下では、携帯電話１００を「通信端末」の代表例として説明を行う。ただし、通信端末は、パーソナルコンピュータや、カーナビゲーション装置（Satellite  navigation  system）や、ＰＮＤ（Personal  Navigation  Device）や、ＰＤＡ（Personal  Data  Assistance）、ゲーム機、電子辞書、電子ＢＯＯＫなどのような、ネットワークにつながる他の情報通信機器であってもよい。
【００２０】
＜ネットワークシステム１の全体構成＞
まず、本実施の形態に係るネットワークシステム１の全体構成について説明する。図１は、本実施の形態に係るネットワークシステム１の一例を示す概略図である。図１に示すように、ネットワークシステム１は、携帯電話１００Ａ，１００Ｂ，１００Ｃと、チャットサーバ（第１のサーバ装置）４００と、コンテンツサーバ（第２のサーバ装置）６００と、インターネット網（第１のネットワーク）５００と、キャリア網（第２のネットワーク）７００とを含む。また、本実施の形態に係るネットワークシステム１は、車両２５０に搭載されるカーナビゲーション装置２００と、パーソナルコンピュータ（ＰＣ；Personal  Computer）３００とを含む。
【００２１】
なお、説明の容易化のために、以下では、本実施の形態に係るネットワークシステム１が、第１の携帯電話１００Ａと、第２の携帯電話１００Ｂと、第３の携帯電話１００Ｃとを含む場合について説明する。また、携帯電話１００Ａ，１００Ｂ，１００Ｃの各々に共通の構成や機能を説明する際には、それらを携帯電話１００とも総称する。そして、携帯電話１００Ａ，１００Ｂ，１００Ｃ、カーナビゲーション装置２００、パーソナルコンピュータ３００の各々に共通の構成や機能を説明する際には、それらを通信端末とも総称する。
【００２２】
携帯電話１００は、キャリア網７００に接続可能に構成されている。カーナビゲーション装置２００は、インターネット網５００に接続可能に構成されている。パーソナルコンピュータ３００は、ＬＡＮ（Local  Area  Network）３５０やＷＡＮ（Wide  Area  Network）を介してインターネット網５００に接続可能に構成されている。チャットサーバ４００は、インターネット網５００に接続可能に構成されている。コンテンツサーバ６００は、インターネット網５００に接続可能に構成されている。
【００２３】
より詳細には、第１の携帯電話１００Ａと、第２の携帯電話１００Ｂと、第３の携帯電話１００Ｃと、カーナビゲーション装置２００と、パーソナルコンピュータ３００とは、キャリア網７００やメール送信サーバ（図２におけるチャットサーバ４００）やコンテンツサーバ６００（図６５に示す場合）やインターネット網５００を介して互いに接続可能であって、互いにデータの送受信が可能である。また、携帯電話１００とカーナビゲーション装置２００とパーソナルコンピュータ３００には、自端末を特定するための識別情報（たとえば、メールアドレスやＩＰ（Internet  Protocol）アドレスなど）が割り当てられる。すなわち、携帯電話１００とカーナビゲーション装置２００とパーソナルコンピュータ３００は、内部の記録媒体に他の通信端末の識別情報を記憶することができ、当該識別情報に基づいてキャリア網７００やインターネット網５００などを介して当該他の通信端末とデータ送受信を行うことができる。
【００２４】
なお、本実施の形態に係る携帯電話１００とカーナビゲーション装置２００とパーソナルコンピュータ３００とは、他の端末に割り当てられるＩＰアドレスを利用して、サーバ４００，６００を介さずに当該他の通信端末とデータ送受信を行うことが可能である。すなわち、本実施の形態に係るネットワークシステム１に含まれる携帯電話１００、カーナビゲーション装置２００、パーソナルコンピュータ３００は、いわゆるＰ２Ｐ（Peer  to  Peer）型のネットワークを構成することが可能である。
【００２５】
ここでは、各通信端末がチャットサーバ４００にアクセスする際には、すなわち各通信端末がインターネットにアクセスした際に、チャットサーバ４００あるいは他の図示しないサーバ装置などによってＩＰアドレスが割り当てられるものとする。ＩＰアドレスの割り当て処理の詳細は公知であるので、ここでは説明を繰り返さない。
【００２６】
＜ネットワークシステム１の全体的な動作概要＞
次に、本実施の形態に係るネットワークシステム１の動作概要について説明する。図２は、本実施の形態に係るネットワークシステム１における動作概要を示すシーケンス図である。図１および図２に示すように、本実施の形態に係る各通信端末は、Ｐ２Ｐ型のデータ送受信を行うために、はじめに互いのＩＰアドレスを交換（取得）する必要がある。そして、各通信端末は、ＩＰアドレスを取得したのちに、Ｐ２Ｐ型のデータ送受信によってメッセージや添付ファイルなどを他の通信端末に送信する。
【００２７】
ただし、以下では、通信端末のそれぞれが、チャットサーバ４００に生成されたチャットルームを介して、メッセージや添付ファイルを送受信する場合について説明する。そして、第１の携帯電話１００Ａが新たなチャットルームを生成し、当該チャットルームに第２の携帯電話１００Ｂを招待する場合について説明する。
【００２８】
まず、第１の携帯電話１００Ａ（図２において端末Ａ）が、チャットサーバ４００にＩＰ登録（ログイン）を要求する（ステップＳ０００２）。第１の携帯電話１００Ａは、同時にＩＰアドレスを取得してもよいし、予めＩＰアドレスを取得していてもよい。より詳細には、第１の携帯電話１００Ａは、キャリア網７００、メール送信サーバ（チャットサーバ４００）、インターネット網５００を介して、チャットサーバ４００に第１の携帯電話１００ＡのメールアドレスとＩＰアドレスと第２の携帯電話１００Ｂのメールアドレスと新たなチャットルームの生成を要求するメッセージとを送信する。
【００２９】
チャットサーバ４００は、その要求に応じて、第１の携帯電話１００ＡのメールアドレスをそのＩＰアドレスに対応付けて格納する。そして、チャットサーバ４００は、第１の携帯電話１００Ａのメールアドレスと第２の携帯電話１００Ｂのメールアドレスとに基づいて、ルーム名を生成し、当該ルーム名のチャットルームを生成する。このとき、チャットサーバ４００は、チャットルームの生成が完了した旨を第１の携帯電話１００Ａに通知してもよい。チャットサーバ４００は、ルーム名と参加中の通信端末のＩＰアドレスとを対応付けて格納する。
【００３０】
あるいは、第１の携帯電話１００Ａは、第１の携帯電話１００Ａのメールアドレスと第２の携帯電話１００Ｂのメールアドレスとに基づいて、新たなチャットルームのルーム名を生成し、当該ルーム名をチャットサーバ４００に送信する。チャットサーバ４００は、ルーム名に基づいて、新たなチャットルームを生成する。
【００３１】
第１の携帯電話１００Ａは、新たなチャットルームを生成したこと、すなわちチャットルームへの招待を示すＰ２Ｐ参加要請メールを第２の携帯電話１００Ｂに送信する（ステップＳ０００４、ステップＳ０００６）。より詳細には、第１の携帯電話１００Ａは、キャリア網７００、メール送信サーバ（チャットサーバ４００）、インターネット網５００を介して、Ｐ２Ｐ参加要請メールを第２の携帯電話１００Ｂに送信する（ステップＳ０００４、ステップＳ０００６）。ただし、チャットサーバ４００が、コンテンツサーバ６００の役割を兼ねるものであってもよい。
【００３２】
第２の携帯電話１００Ｂは、Ｐ２Ｐ参加要請メールを受信すると（ステップＳ０００６）、第１の携帯電話１００Ａのメールアドレスと第２の携帯電話１００Ｂのメールアドレスとに基づいてルーム名を生成し、チャットサーバ４００に第２の携帯電話１００ＢのメールアドレスとＩＰアドレスとそのルーム名を有するチャットルームへ参加する旨のメッセージとを送信する（ステップＳ０００８）。第２の携帯電話１００Ｂは、同時にＩＰアドレスを取得してもよいし、先にＩＰアドレスを取得してからチャットサーバ４００にアクセスしてもよい。
【００３３】
チャットサーバ４００は、そのメッセージを受け付けて、第２の携帯電話１００Ｂのメールアドレスがルーム名に対応するものであるか否かを判断した上で、第２の携帯電話１００ＢのメールアドレスをＩＰアドレスに対応付けて格納する。そして、チャットサーバ４００は、第１の携帯電話１００Ａに、第２の携帯電話１００Ｂがチャットルームに参加した旨と第２の携帯電話１００ＢのＩＰアドレスとを送信する（ステップＳ００１０）。同時に、チャットサーバ４００は、第２の携帯電話１００Ｂに、チャットルームへの参加を受け付けた旨と第１の携帯電話１００ＡのＩＰアドレスとを送信する。
【００３４】
第１の携帯電話１００Ａと第２の携帯電話１００Ｂは、相手のメールアドレスやＩＰアドレスを取得して、互いを認証する（ステップＳ００１２）。認証が完了すると、第１の携帯電話１００Ａと第２の携帯電話１００Ｂとは、Ｐ２Ｐ通信（チャット通信）を開始する（ステップＳ００１４）。Ｐ２Ｐ通信中の動作概要については、後述する。
【００３５】
第１の携帯電話１００Ａが、第２の携帯電話１００ＢにＰ２Ｐ通信を切断する旨のメッセージを送信すると（ステップＳ００１６）、第２の携帯電話１００Ｂは、第１の携帯電話１００Ａに切断する要求を受け付けた旨のメッセージを送信する（ステップＳ００１８）。第１の携帯電話１００Ａは、チャットサーバ４００にチャットルームを削除する要求を送信し（ステップＳ００２０）、チャットサーバ４００はチャットルームを削除する。
【００３６】
以下、図２と図３とを参照して、本実施の形態に係るネットワークシステム１の動作概要をより具体的に説明する。図３は、本実施の形態に係る動作概要に沿った通信端末の表示態様の推移を示したイメージ図である。なお、以下では、第１の携帯電話１００Ａと第２の携帯電話１００Ｂとが、地図画像（第２のコンテンツ）を背景として表示しながら、手描き画像（第１のコンテンツ）を送受信する場合について説明する。
【００３７】
図３（Ａ）に示すように、まず、第１の携帯電話１００Ａのユーザが地図画像などをダウンロードして、地図画像を閲覧している。第１の携帯電話１００Ａのユーザが、地図画像について第２の携帯電話１００Ｂのユーザとチャットを行いたい場合、第１の携帯電話１００Ａはチャット開始の命令を受け付ける。図３（Ｂ）に示すように、第１の携帯電話１００Ａは、相手ユーザの選択命令を受け付ける。
【００３８】
ここでは、図３（Ｃ）に示すように、第１の携帯電話１００Ａは、地図画像を添付ファイル（あるいは本文）として、コンテンツサーバ６００を介して第２の携帯電話１００Ｂへと送信する（ステップＳ０００４）。図３（Ｄ）に示すように、第２の携帯電話１００Ｂは、地図画像を含むメールを受信して（ステップＳ０００６）、地図画像を表示する。
【００３９】
ただし、第１の携帯電話１００Ａは、第２の携帯電話１００Ｂに、地図画像を取得するためのＵＲＬ（Uniform  Resource  Locator）と地図画像を特定するための情報とを送信してもよい。そして、第２の携帯電話１００Ｂが、当該ＵＲＬに基づいて、コンテンツサーバ６００から第１の携帯電話１００Ａと同じ地図画像をダウンロードしてもよい。
【００４０】
さらに、第１の携帯電話１００Ａと第２の携帯電話１００Ｂとは、Ｐ２Ｐ通信開始後に、地図画像をコンテンツサーバ６００からダウンロードしてもよい。たとえば、第１の携帯電話１００Ａが、Ｐ２Ｐ通信によって、地図画像を取得するためのＵＲＬと地図画像を特定するための情報とを第２の携帯電話１００Ｂに送信したり、地図画像自体を第２の携帯電話１００Ｂに送信したりしてもよい。
【００４１】
図３（Ｅ）に示すように、第１の携帯電話１００Ａは、第２の携帯電話１００ＢとＰ２Ｐ通信接続しない間は、メール送信を繰り返すことができる。第１の携帯電話１００Ａは、メール送信が完了すると、チャットサーバ４００に自身のＩＰアドレスを登録し、第１の携帯電話１００Ａのメールアドレスと第２の携帯電話１００Ｂのメールアドレスとに基づいて新たなチャットルームを生成するように要求する（ステップＳ０００２）。
【００４２】
図３（Ｆ）に示すように、第２の携帯電話１００Ｂは、チャットを開始する旨の命令を受け付けて、チャットサーバ４００に、ルーム名とチャットルームに参加する旨のメッセージと自身のＩＰアドレスとを送信する（ステップＳ０００８）。第１の携帯電話１００Ａは第２の携帯電話１００ＢのＩＰアドレスを取得して、第２の携帯電話１００Ｂは第１の携帯電話１００ＡのＩＰアドレスを取得して（ステップＳ００１０）、互いを認証しあう（ステップＳ００１２）。
【００４３】
これによって、図３（Ｇ）および図３（Ｈ）に示すように、第１の携帯電話１００Ａと第２の携帯電話１００ＢとはＰ２Ｐ通信を行うことができる（ステップＳ００１４）。すなわち、第１の携帯電話１００Ａがユーザから手描き画像の入力を受け付けて、地図画像上に当該手描き画像を表示する。また、第１の携帯電話１００Ａは、手描きデータを第２の携帯電話１００Ｂに送信する。第２の携帯電話１００Ｂは、第１の携帯電話１００Ａからの手描きデータに基づいて、地図画像上に手描き画像を表示する。
【００４４】
第２の携帯電話１００Ｂがユーザから手描き画像の入力を受け付けて、地図画像上に当該手描き画像を表示する。また、第２の携帯電話１００Ｂは、手描きデータを第１の携帯電話１００Ａに送信する。第２の携帯電話１００Ｂは、第１の携帯電話１００Ａからの手描きデータに基づいて、地図画像上に手描き画像を表示する。
【００４５】
そして、第１の携帯電話１００ＡがＰ２Ｐ通信を切断した後（ステップＳ００１６、ステップＳ００１８）、図３（Ｉ）に示すように、第２の携帯電話１００Ｂは第１の携帯電話１００Ａなどにメール送信を行うことができる。なお、Ｐ２Ｐ通信をＴＣＰ／ＩＰ通信方式で、メールの送受信をＨＴＴＰ通信方式で行なうことも可能である。すなわち、Ｐ２Ｐ通信中にメール送受信を行なうことも可能である。
【００４６】
なお、図６５は、本実施の形態に係るネットワークシステム１における動作概要の変形例を示すシーケンス図である。図２は、チャットサーバ４００がメール送信サーバの役割を果たす場合の動作概要である。一方、図６５は、コンテンツサーバ６００がメール送信サーバの役割を果たす場合の動作概要である。なお、メール送信サーバは、チャットサーバ４００やコンテンツサーバ６００とは別の装置であってもよい。
【００４７】
＜ネットワークシステム１における手描きデータの送受信に関する動作概要＞
次に、手描きデータの送受信に関する動作概要についてさらに詳細に説明する。図４は、手描きデータの送受信に関する動作概要を示す第１のイメージ図である。図５は、手描きデータの送受信に関する動作概要を示す第２のイメージ図である。
【００４８】
図４（ａ）を参照して、ユーザが第１の携帯電話１００Ａに手描き画像を入力する。本実施の形態においては、ユーザは、手描き画像と、当該手描き画像を表示するための位置の指定とを入力する。第１の携帯電話１００Ａは、そのディスプレイ１０７Ａに、ユーザが指定した位置を示すための画像１０７Ｙと、手描き画像１０７Ｘとを表示する。第１の携帯電話１００Ａは、指定位置情報と手描きデータとを第２の携帯電話１００Ｂに送信する。
【００４９】
なお、第１の携帯電話１００Ａは、位置の指定を受け付けてから手描き画像の入力を受け付けてもよいし、手描き画像の入力を受け付けてから位置の指定を受け付けてもよい。本実施の形態においては、前者の形態について説明する。
【００５０】
第２の携帯電話１００Ｂは、第１の携帯電話１００Ａから、指定位置情報と、手描きデータとを受信する。第２の携帯電話１００Ｂは、指定位置情報に基づいて、そのディスプレイ１０７Ｂの指定位置の近傍に手描きデータを表示する。ここでは、第２の携帯電話１００Ｂが、指定位置を示す画像１０７Ｙと、手描き画像１０７Ｘの全部とを表示できる。
【００５１】
すなわち、図４（ａ）に示す状態では、第２の携帯電話１００Ｂが、手描き画像１０７Ｘの全部を表示できるように、地図画像を表示している。第２の携帯電話１００Ｂは、ディスプレイ１０７Ｂあるいは地図画像を表示するウインドウの端部に、スクロールバー１０７Ｚを表示する。スクロールバーの位置から明らかなように、図４に示す状態では、第２の携帯電話１００Ｂは、指定位置がディスプレイ１０７Ｂの略中央に位置するように、地図画像と手描き画像とを表示している。
【００５２】
図４（ｂ）を参照して、第２の携帯電話１００Ｂがユーザから画面をスクロールするための指示を受け付けると、第２の携帯電話１００Ｂはスクロールバー１０７Ｚを移動させるとともに、地図画像の表示領域を変更する。ここでは、指定位置がディスプレイ１０７Ｂの右端近傍に位置するように、地図画像がスクロールされている。
【００５３】
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ１０７Ｂは手描き画像の全てを表示することができない。そのため、第２の携帯電話１００Ｂは、指定位置の近傍であって、手描き画像が全て表示できる位置に、手描き画像を表示し直す。すなわち、第２の携帯電話１００Ｂは、指定位置の近傍であって、手描き画像の全てを表示できる位置に、手描き画像を表示する。
【００５４】
図４（ｃ）を参照して、第２の携帯電話１００Ｂがユーザから画面をスクロールするための指示をさらに受け付けると、第２の携帯電話１００Ｂはスクロールバー１０７Ｚをさらに移動させるとともに、地図画像の表示領域を変更する。ここでは、指定位置がディスプレイ１０７の外側に位置するように、地図画像がスクロールされている。
【００５５】
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ１０７Ｂは手描き画像の全てを表示することができない。指定位置を示す画像１０７Ｙがディスプレイ１０７Ｂに表示されないため、第２の携帯電話１００Ｂは、手描き画像が第１の携帯電話１００Ａで入力されたことを示す情報とともに、ディスプレイ１０７Ｂあるいはウインドウの端部などに手描き画像を表示する。換言すれば、第２の携帯電話１００Ｂは、指定位置が表示領域外に位置する場合には、手描き画像をディスプレイ１０７やウインドウの所定の領域に表示する。ただし、指定位置が表示領域外に位置する場合に、手描き画像を表示することなく、手描き画像が存在する旨を示す記号をディスプレイ１０７やウインドウの所定の領域に表示してもよい。
【００５６】
あるいは、図５を参照して、ユーザが第３の携帯電話１００Ｃに手描き画像を入力する。図５においては、第３の携帯電話１００Ｃのディスプレイ１０７Ｃは、第２の携帯電話１００Ｂのディスプレイ１０７Ｂのよりも広い。前述したように、本実施の形態においては、ユーザは、入力される手描き画像に対する位置の指定と、手描き画像とを入力する。第３の携帯電話１００Ｃは、そのディスプレイ１０７Ｃに、ユーザが指定した位置を示すための画像１０７Ｙと、手描き画像１０７Ｘとを表示する。第３の携帯電話１００Ｃは、指定位置情報と、手描きデータとを第２の携帯電話１００Ｂに送信する。
【００５７】
第２の携帯電話１００Ｂは、第３の携帯電話１００Ｃから、指定位置情報と、手描きデータとを受信する。第２の携帯電話１００Ｂは、指定位置情報に基づいて、そのディスプレイ１０７Ｂの指定位置の近傍に手描きデータを表示する。ここでは、第２の携帯電話１００Ｂにおいて、指定位置がディスプレイ１０７Ｂの右端近傍に位置するように、地図画像がスクロールされている。
【００５８】
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ１０７Ｂは手描き画像の全てを表示することができない。そのため、第２の携帯電話１００Ｂは、指定位置の近傍であって、手描き画像が全て表示できる位置に、手描き画像を表示し直す。すなわち、第２の携帯電話１００Ｂは、指定位置の近傍であって、手描き画像の全てを表示できる位置に、手描き画像を表示する。
【００５９】
このように、本実施の形態に係るネットワークシステム１においては、手描き画像の送信側の携帯電話１００は、手描きデータとともに指定位置を送信する。一方、受信側の携帯電話１００は、指定位置に基づいて、手描き画像を、その全部がディスプレイ１０７に収まるように、表示する。その結果、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める表示位置に対応する位置に表示できるようになる。
【００６０】
以下、このような機能を実現するためのネットワークシステム１の構成について詳述する。
【００６１】
＜携帯電話１００のハードウェア構成＞
本実施の形態に係る携帯電話１００のハードウェア構成について説明する。図６は、本施の形態に係る携帯電話１００の外観を示すイメージ図である。図７は、本施の形態に係る携帯電話１００のハードウェア構成を示すブロック図である。
【００６２】
図６および図７に示すように、本実施の形態に係る携帯電話１００は、外部のネットワークとの間でデータを送受信する通信デバイス１０１と、プログラムや各種データベースを記憶するメモリ１０３と、ＣＰＵ（Central  Processing  Unit）１０６と、ディスプレイ１０７と、外部音声が入力されるマイク１０８と、音声を出力するスピーカ１０９と、各種情報の入力を受け付ける各種ボタン１１０と、外部からの通信データや通話信号を受信した旨の音声を出力する第１の通知部１１１と、外部からの通信データや通話信号を受信した旨を表示する第２の通知部１１２とを含む。
【００６３】
本実施の形態に係るディスプレイ１０７は、液晶パネルやＣＲＴから構成されるタッチパネル１０２を実現する。すなわち、本実施の形態に係る携帯電話１００は、ディスプレイ１０７の下側（裏側）にペンタブレット１０４が敷設されている。これによって、ユーザはスタイラスペン１２０などを用いることによって、ペンタブレット１０４を介して、図形情報などをＣＰＵ１０６に手描き入力することができる。
【００６４】
なお、ユーザは、以下の方法によっても、手描き入力を行うことが可能である。すなわち、赤外線や音波を出力する特殊なペンを利用することによって、そのペンから発信される赤外線や音波を受信する受信部によってペンの動きを割り出す。この場合、当該受信部を軌跡を記憶する装置に接続することによって、ＣＰＵ１０６が当該装置から出力される軌跡を手描き入力として受信することができる。
【００６５】
あるいは、ユーザは、静電パネルに対して、指、または、静電対応のペンを用いて手描き画像を書くことも可能である。
【００６６】
このようにして、ディスプレイ１０７（タッチパネル１０２）は、ＣＰＵ１０６が出力したデータに基づいて、画像やテキストを表示する。
【００６７】
各種ボタン１１０は、キー入力操作などによってユーザから情報を受け付ける。たとえば、各種ボタン１１０は、通話を受け付けたり、通話を発したりするためのＴＥＬボタン１１０Ａと、メールを受け付けたり、メールを発したりするためのメールボタン１１０Ｂと、Ｐ２Ｐ通信を受け付けたり、Ｐ２Ｐ通信を発したりするためのＰ２Ｐボタン１１０Ｃと、アドレス帳データを呼び出すアドレス帳ボタン１１０Ｄと、各種の処理を終了させるための終了ボタン１１０Ｅとを含む。すなわち、各種ボタン１１０は、通信デバイス１０１を介してＰ２Ｐ参加要請メールを受信したときに、ユーザから、チャットルームへ参加する命令や、メールの内容を表示させる命令などを選択可能に受け付ける。
【００６８】
第１の通知部１１１は、スピーカ１０９などを介して着信音を出力する。あるいは、第１の通知部１１１は、バイブレーション機能を有する。第１の通知部１１１は、着呼した際や、メールを受信した際や、Ｐ２Ｐ参加要請メールを受信した際に、音声を出力したり、携帯電話１００を振動させたりする。
【００６９】
第２の通知部１１２は、着信したときに点滅するＴＥＬ用ＬＥＤ（Light  Emitting  Diode）１１２Ａと、メールを受信したときに点滅するメール用ＬＥＤ１１２Ｂと、Ｐ２Ｐ通信を受信したときに点滅するＰ２Ｐ用ＬＥＤ１１２Ｃを含む。
【００７０】
ＣＰＵ１０６は、携帯電話１００の各部を制御する。たとえば、各種ボタン１１０を介してユーザから各種命令を受け付けて、通信デバイス１０１や通信デバイス１０１やネットワークを介して外部の通信端末とデータの送受信を行う。
【００７１】
通信デバイス１０１および通信デバイス１０１は、ＣＰＵ１０６からの通信データを通信信号に変換し、その通信信号を図示しないアンテナを介して発信する。通信デバイス１０１および通信デバイス１０１は、アンテナを介して受信した通信信号を通信データに変換し、その通信データをＣＰＵ１０６に入力する。
【００７２】
メモリ１０３は、作業用メモリとして機能するＲＡＭ（Random  Access  Memory）や、制御プログラムなどを格納するＲＯＭ（Read  Only  Memory）や、画像データなどを記憶するハードディスクなどによって実現される。図８（ａ）は、メモリ１０３を構成する各種のワークメモリ１０３Ａのデータ構造を示すイメージ図である。図８（ｂ）は、メモリ１０３が記憶するアドレス帳データ１０３Ｂを示すイメージ図である。図８（ｃ）は、メモリ１０３が記憶する自端末データ１０３Ｃを示すイメージ図である。図８（ｄ）は、メモリ１０３が記憶する自端末のＩＰアドレスデータ１０３Ｄと他端末のＩＰアドレスデータ１０３Ｅとを示すイメージ図である。
【００７３】
図８（ａ）に示すように、メモリ１０３のワークメモリ１０３Ａは、発信者の電話番号を格納するＲＣＶＴＥＬＮＯ領域、受信メールに関する情報を格納するＲＣＶＭＡＩＬ領域、送信メールに関する情報を格納するＳＥＮＤＭＡＩＬ領域、選択されたアドレスのメモリＮｏを格納するＳＥＬ領域、生成されたルーム名を格納するＲＯＯＭＮＡＭＥ領域などを含む。なお、ワークメモリ１０３Ａは、電話番号を格納しなくてもよい。受信メールに関する情報は、ＭＡＩＮ領域に格納されるメール本文と、ＲＣＶＭＡＩＬのＦＲＯＭ領域に格納されるメール送信元のメールアドレスを含む。送信メールに関する情報は、ＭＡＩＮ領域に格納されるメール本文と、ＲＣＶＭＡＩＬのＴＯ領域に格納されるメール送信先のメールアドレスとを含む。
【００７４】
図８（ｂ）に示すように、アドレス帳データ１０３Ｂは、宛先（他の通信端末）毎にメモリＮｏを対応付けている。そして、アドレス帳データ１０３Ｂは、宛先毎に、名前、電話番号、メールアドレスなどを互いに対応付けて格納する。
【００７５】
図８（ｃ）に示すように、自端末データ１０３Ｃは、自端末のユーザの名前、自端末の電話番号、自端末のメールアドレスなどを格納する。
【００７６】
図８（ｄ）に示すように、自端末のＩＰアドレスデータ１０３Ｄは、自端末のＩＰアドレスを格納する。他端末のＩＰアドレスデータ１０３Ｅは、他端末のＩＰアドレスを格納する。
【００７７】
本実施の形態に係る携帯電話１００の各々は、図８に示すデータを利用することによって、前述したような方法で（図１〜図３を参照。）、他の通信端末との間でデータを送受信することができる。
【００７８】
以下では、ディスプレイ１０７に表示される画像データのデータ構造、すなわちメモリ１０３やＣＰＵ１０６が取り扱う画像データのデータ構造について説明する。図９は、本実施の形態に係る画像データのデータ構造を示すイメージ図である。
【００７９】
図９（ａ）を参照して、指定位置がディスプレイ１０７の表示領域外である場合、ＣＰＵ１０６がディスプレイ１０７に表示する画像データ１０３０ａは、地図画像などの背景を表わすレイヤー１０３１ａと、指定位置を表わすためのレイヤー１０３２ａ（図９（ａ）では指定位置が含まれていない。）と、手描き画像１０７Ｘや指定位置を示す画像１０７Ｙを表わすためのレイヤー１０３３ａとを含む。すなわち、メモリ１０３は、画像データ１０３０ａとして、レイヤー１０３１ａ〜１０３３ａを格納する。ＣＰＵ１０６は、メモリ１０３からレイヤー１０３１ａ〜１０３３ａのデータを読み出して、背景や、手描き画像を表示する。
【００８０】
なお、指定位置を表すためのレイヤーは、手描き画像１０７Ｘや指定位置を示す画像１０７Ｙを表わすためのレイヤーと、同一レイヤーであってもよい。
【００８１】
図９（ｂ）を参照して、指定位置がディスプレイ１０７の表示領域内である場合、ＣＰＵ１０６がディスプレイ１０７に表示する画像データ１０３０ｂは、地図画像などの背景を表わすレイヤー１０３１ｂと、指定位置を表わすためのレイヤー１０３２ｂと、手描き画像１０７Ｘや指定位置を示す画像１０７Ｙを表わすためのレイヤー１０３３ｂとを含む。すなわち、メモリ１０３は、画像データ１０３０ｂとして、レイヤー１０３１ｂ〜１０３３ｂを格納する。ＣＰＵ１０６は、メモリ１０３からレイヤー１０３１ｂ〜１０３３ｂのデータを読み出して、背景や、手描き画像を表示する。
【００８２】
＜チャットサーバ４００およびコンテンツサーバ６００のハードウェア構成＞
次に、本実施の形態に係るチャットサーバ４００およびコンテンツサーバ６００のハードウェア構成について説明する。以下では、まず、チャットサーバ４００のハードウェア構成について説明する。
【００８３】
図１０は、本実施の形態に係るチャットサーバ４００のハードウェア構成を示すブロック図である。図１０に示すように、本実施の形態に係るチャットサーバ４００は、相互に内部バス４０８で接続されたＣＰＵ４０５と、メモリ４０６と、固定ディスク４０７と、サーバ通信デバイス４０９とを含む。
【００８４】
メモリ４０６は、各種の情報を記憶するものであって、たとえば、ＣＰＵ４０５でのプログラムの実行に必要なデータを一時的に記憶する。固定ディスク４０７は、ＣＰＵ４０５が実行するプログラムやデータベースを記憶する。ＣＰＵ４０５は、チャットサーバ４００の各要素を制御するものであって、各種の演算を実施する装置である。
【００８５】
サーバ通信デバイス４０９は、ＣＰＵ４０５が出力したデータを電気信号へと変換して外部へ送信し、外部から受信した電気信号をデータに変換してＣＰＵ４０５に入力する。具体的には、サーバ通信デバイス４０９は、ＣＰＵ４０５からのデータを、インターネット網５００やキャリア網７００などを介して、携帯電話１００やカーナビゲーション装置２００やパーソナルコンピュータ３００やゲーム機や電子辞書や電子ＢＯＯＫなどのネットワークに接続可能な機器に送信する。そして、サーバ通信デバイス４０９は、インターネット網５００やキャリア網７００を介して、携帯電話１００やカーナビゲーション装置２００やパーソナルコンピュータ３００やゲーム機や電子辞書や電子ＢＯＯＫなどのネットワークに接続可能な機器から受信したデータを、ＣＰＵ４０５に入力する。
【００８６】
ここで、メモリ４０６あるいは固定ディスク４０７に記憶されるデータについて説明する。図１１（ａ）は、チャットサーバ４００のメモリ４０６あるいは固定ディスク４０７に記憶されるルーム管理テーブル４０６Ａのデータ構造を示す第１のイメージ図であって、図１１（ｂ）は、チャットサーバ４００のメモリ４０６あるいは固定ディスク４０７に記憶されるルーム管理テーブル４０６Ａのデータ構造を示す第２のイメージ図である。
【００８７】
図１１（ａ）および図１１（ｂ）に示すように、ルーム管理テーブル４０６Ａは、ルーム名とＩＰアドレスとを対応付けて格納する。たとえば、ある時点においては、図１１（ａ）に示すように、チャットサーバ４００にルーム名Ｒを有するチャットルーム、ルーム名Ｓを有するチャットルーム、ルーム名Ｔを有するチャットルームが生成されている。そして、ルーム名Ｒを有するチャットルームには、ＡというＩＰアドレスを有する通信端末と、ＣというＩＰアドレスを有する通信端末が入室している。ルーム名Ｓを有するチャットルームには、ＢというＩＰアドレスを有する通信端末が入室している。ルーム名Ｔを有するチャットルームには、ＤというＩＰアドレスを有する通信端末が入室している。
【００８８】
後述するように、ルーム名Ｒは、ＣＰＵ４０６が、ＡというＩＰアドレスを有する通信端末のメールアドレスとＢというＩＰアドレスを有する通信端末のメールアドレスに基づいて決定する。図１１（ａ）に示す状態において、ルーム名Ｓを有するチャットルームに新たにＥというＩＰアドレスを有する通信端末が入室すると、図１１（ｂ）に示すように、ルーム管理テーブル４０６Ａはルーム名ＳとＩＰアドレスＥとを対応付けて格納する。
【００８９】
具体的には、チャットサーバ４００においては、第１の携帯電話１００Ａが新たなチャットルームの生成を要求してきた際（図２におけるステップＳ０００２）に、ＣＰＵ４０５が、第１の携帯電話１００Ａのメールアドレスと第２の携帯電話１００Ｂのメールアドレスとに基づいてルーム名を生成した上で、ルーム管理テーブル４０６Ａに当該ルーム名と第１の携帯電話１００ＡのＩＰアドレスとを対応付けて格納する。
【００９０】
そして、第２の携帯電話１００Ｂがチャットサーバ４００にチャットルームへの参加を要求してきた際（図２におけるステップＳ０００８）に、ＣＰＵ４０５が、ルーム管理テーブル４０６Ａに当該ルーム名と第２の携帯電話１００ＢのＩＰアドレスとを対応付けて格納する。ＣＰＵ４０６は、ルーム管理テーブル４０６Ａから、当該ルーム名に対応する第１の携帯電話１００ＡのＩＰアドレスを読み出す。ＣＰＵ４０６は、第１の携帯電話１００ＡのＩＰアドレスを第２の各通信端末に送信し、第２の携帯電話１００ＢのＩＰアドレスを第１の携帯電話１００Ａに送信する。
【００９１】
次に、コンテンツサーバ６００のハードウェア構成について説明する。図１０に示すように、本実施の形態に係るコンテンツサーバ６００は、相互に内部バス６０８で接続されたＣＰＵ６０５と、メモリ６０６と、固定ディスク６０７と、サーバ通信デバイス６０９とを含む。
【００９２】
メモリ６０６は、各種の情報を記憶するものであって、たとえば、ＣＰＵ６０５でのプログラムの実行に必要なデータを一時的に記憶する。固定ディスク６０７は、ＣＰＵ６０５が実行するプログラムやデータベースを記憶する。ＣＰＵ６０５は、コンテンツサーバ６００の各要素を制御するものであって、各種の演算を実施する装置である。
【００９３】
サーバ通信デバイス６０９は、ＣＰＵ６０５が出力したデータを電気信号へと変換して外部へ送信し、外部から受信した電気信号をデータに変換してＣＰＵ６０５に入力する。具体的には、サーバ通信デバイス６０９は、ＣＰＵ６０５からのデータを、インターネット網５００やキャリア網７００などを介して、携帯電話１００やカーナビゲーション装置２００やパーソナルコンピュータ３００やゲーム機や電子辞書や電子ＢＯＯＫなどのネットワークに接続可能な機器に送信する。そして、サーバ通信デバイス６０９は、インターネット網５００やキャリア網７００を介して、携帯電話１００やカーナビゲーション装置２００やパーソナルコンピュータ３００やゲーム機や電子辞書や電子ＢＯＯＫなどのネットワークに接続可能な機器から受信したデータを、ＣＰＵ６０５に入力する。
【００９４】
コンテンツサーバ６００のメモリ６０６あるいは固定ディスク６１５は、手描きチャット通信の背景画像として利用されるコンテンツ（第２のコンテンツ）、たとえば地図画像などを記憶する。コンテンツサーバ６００のＣＰＵ６０５は、サーバ通信デバイス６０９を介して、通信端末からコンテンツの指定を受信する。コンテンツサーバ６００のＣＰＵ６０５は、コンテンツの指定に基づいて、当該指定に対応するコンテンツをメモリ６０６から読み出して、サーバ通信デバイス６０９を介して当該コンテンツを通信端末へ送信する。
【００９５】
より詳細には、コンテンツサーバ６００は、コンテンツの指定として、コンテンツの種類や、コンテンツの領域などを受け付ける。コンテンツの種類の指定とは、地図画像や写真画像などのような画像データの種類の指定や、地図の縮尺の指定などを含む。コンテンツの領域の指定とは、大きいサイズのコンテンツにおける一部の領域の指定（たとえば、緯度・経度情報など。）を含む。
【００９６】
＜携帯電話１００における通信処理＞
次に、本実施の形態に係る携帯電話１００におけるＰ２Ｐ通信処理について説明する。図１２は、本実施の形態に係る携帯電話１００におけるＰ２Ｐ通信処理の処理手順の第１の例を示すフローチャートである。図１３は、本実施の形態に係る送信データのデータ構造を示すイメージ図である。図１４は、ディスプレイ１０７（タッチパネル１０２）が示す画面を示す第１のイメージ図である。図１５は、本実施の形態に係る送信データを説明するための第１のイメージ図である。
【００９７】
以下では、チャットルームが既に開設されている状態、すなわち、Ｐ２Ｐ通信が設立されている状態における、第１の携帯電話１００Ａから第２の携帯電話１００Ｂへと手描きデータが送信される場合について説明する。
【００９８】
図１２に示すように、まず、第１の携帯電話１００Ａ（送信側）のＣＰＵ１０６は、通信デバイス１０１を介して、チャットサーバ４００からチャット通信に関するデータを取得する（ステップＳ００２）。同様に、第２の携帯電話１００Ｂ（受信側）のＣＰＵ１０６も、通信デバイス１０１を介して、チャットサーバ４００からチャット通信に関するデータを取得する（ステップＳ００４）。
【００９９】
なお、「チャット通信に関するデータ」は、チャットルームのＩＤ、メンバーの端末情報、お知らせ（告知情報）、この時点までのチャット内容などを含む。
【０１００】
第１の携帯電話１００ＡのＣＰＵ１０６は、通信デバイス１０１を介して、コンテンツサーバ６００から背景情報としての地図画像を取得する（ステップＳ００６）。より詳細には、ＣＰＵ１０６は、通信デバイス１０１を介して、コンテンツサーバ６００に、地図の中心を示す情報（図１３の（ｇ））と、地図の縮尺を示す情報（図１３の（ｈ））と、地図画像のサイズを示す情報（図１３の（ｉ））とを送信する。コンテンツサーバ６００のＣＰＵ６０５は、第１の携帯電話１００Ａからの情報に基づいて、メモリ６０６から当該情報に対応する地図画像を読み出す。ＣＰＵ６０５は、サーバ通信デバイス６０９を介して、地図画像を第１の携帯電話１００Ａに送信する。
【０１０１】
同様に、第２の携帯電話１００ＢのＣＰＵ１０６も、通信デバイス１０１を介して、コンテンツサーバ６００から背景としての地図画像を取得する（ステップＳ００８）。なお、ここでは、第１の携帯電話１００Ａと第２の携帯電話１００Ｂとが、チャット通信中に背景データを取得する例を示したが、これに限られず、第１の携帯電話１００Ａと第２の携帯電話１００Ｂとが、チャット通信前に背景データを取得していてもよい。
【０１０２】
第１の携帯電話１００ＡのＣＰＵ１０６は、タッチパネル１０２に、地図画像を表示させる（ステップＳ０１０）。同様に、第２の携帯電話１００ＢのＣＰＵ１０６は、タッチパネル１０２に、地図画像を表示させる（ステップＳ０１２）。
【０１０３】
図１４に示すように、ステップＳ０１０およびステップＳ０１２において、ディスプレイ１０７には、地図画像が表示される。
【０１０４】
第１の携帯電話１００ＡのＣＰＵ１０６は、タッチパネル１０２を介して、地図画像内の位置を指定するための命令を受け付ける（ステップＳ０１４）。第１の携帯電話１００ＡのＣＰＵ１０６は、タッチパネル１０２を介して、手描き画像の入力を受け付ける（ステップＳ０１６）。このとき、ＣＰＵ１０６は、指定位置（ポイント）を示すための画像（以下では、ポイント位置を指す記号、あるいは単にポイント画像ともいう。）の選択や、当該画像の位置と指定位置との関係なども受け付けてもよい。ＣＰＵ１０６は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けて、メモリ１０３に記憶する。
【０１０５】
ＣＰＵ１０６は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けた送信データを作成する（ステップＳ０１８）。より詳細には、図１３および図１５に示すように、送信データは、指定位置を示す情報（図１３の（ａ））と、指定位置を示すための画像（ポイント画像）のイメージデータ（図１３の（ｂ））と、指定位置を示す画像を表示するための領域を特定するための情報（図１３の（ｃ））と、手描き画像を表示するための領域を特定するための情報（図１３の（ｄ））と、手描きデータ（図１３の（ｅ））と、手描き画像を表示するための領域（図１３の（ｆ））と、地図の中心を示す情報（図１３の（ｇ））と、地図の縮尺を示す情報（図１３の（ｈ））と、地図画像のサイズを示す情報（図１３の（ｉ））とを含む。
【０１０６】
ＣＰＵ１０６は、通信デバイス１０１を介して、送信データを第２の携帯電話１００Ｂに送信する（ステップＳ０２０）。第２の携帯電話１００ＢのＣＰＵ１０６は、通信デバイス１０１を介して、送信データを受信する（ステップＳ０２２）。
【０１０７】
第２の携帯電話１００ＢのＣＰＵ１０６は、送信データを解析する（ステップＳ０２４）。ＣＰＵ１０６は、地図の中心を示す情報（図１３の（ｇ））と、地図の縮尺を示す情報（図１３の（ｈ））と、地図画像のサイズを示す情報（図１３の（ｉ））とに基づいて、コンテンツサーバ６００から地図画像を受信する（ステップＳ０２６）。ＣＰＵ１０６は、地図画像をディスプレイ１０７に表示させる（ステップＳ０２８）。
【０１０８】
図１６は、ディスプレイ１０７（タッチパネル１０２）が示す画面を示す第２のイメージ図である。図１６に示すように、ステップＳ０２８において、ＣＰＵ１０６は、送信データと地図画像とに基づいて、ディスプレイ１０７に手描き画像が描かれた背景画像を表示させる。
【０１０９】
図１７は、本実施の形態に係る送信データを説明するための第２のイメージ図である。図１６および図１７を参照して、指定位置を示すための画像のイメージデータ（図１３の（ｂ））は、矢印を示す画像、フキダシを示す画像、線、イメージ画像、三角、丸、十字カーソルであってもよい。指定位置を示す画像を表示するための領域を特定するための情報（図１３の（ｃ））は、矢印に外接する矩形の頂点を示す４つの座標であってもよいし、フキダシに外接する矩形の頂点を示す４つの座標であってもよい。
【０１１０】
手描き画像を表示するための領域を特定するための情報（図１３の（ｄ））は、ポイント画像が表示される領域（以下では、手描きデータ領域ともいう。）の外側の矩形の頂点を示す４つの座標であってもよいし、ポイント画像が表示される領域内の矩形の頂点を示す４つの座標であってもよいし、ポイント画像が表示される領域の内側と外側とにまたがる矩形の頂点を示す４つの座標であってもよい。
【０１１１】
図１８は、本実施の形態に係る携帯電話１００におけるＰ２Ｐ通信処理の処理手順の第２の例を示すフローチャートである。図１２および図１８を参照して、第１の例と第２の例とは、第１の例のステップＳ０１８（第２の例におけるステップＳ０６８）以降の処理において異なる。そのため、第１の例と第２の例は、ステップＳ０１８（ステップＳ０６８）より前の処理について同様であるため、ここでは説明を繰り返さない。
【０１１２】
図１８を参照して、第２の例では、ＣＰＵ１０６は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けた送信データを作成する（ステップＳ０６８）。より詳細には、図１３および図１５に示すように、送信データは、指定位置を示す情報（図１３の（ａ））や、指定位置を示すための画像（ポイント画像）のイメージデータ（図１３の（ｂ））や、指定位置を示す画像を表示するための領域を特定するための情報（図１３の（ｃ））や、手描き画像を表示するための領域を特定するための情報（図１３の（ｄ））や、手描きデータ（図１３の（ｅ））や、手描き画像を表示するための領域（図１３の（ｆ））とを含む。
【０１１３】
ＣＰＵ１０６は、通信デバイス１０１を介して、送信データを第２の携帯電話１００Ｂに送信する（ステップＳ０７０）。第２の携帯電話１００ＢのＣＰＵ１０６は、通信デバイス１０１を介して、送信データを受信する（ステップＳ０７２）。
【０１１４】
第２の携帯電話１００ＢのＣＰＵ１０６は、送信データを解析する（ステップＳ０７４）。図１６に示すように、ＣＰＵ１０６は、既に取得している地図画像と受信した送信データとに基づいて、ディスプレイ１０７に手描き画像が描かれた背景画像を表示させる（ステップＳ０７８）。すなわち、第２の例では、第２の携帯電話１００Ｂが、第１の携帯電話１００Ａと同様の背景データに基づいて、背景を表示していることが好ましい。
【０１１５】
参考のために、図１９に、ＨＴＴＰ（HyperText  Transfer  Protocol）に基づいてチャット通信が行なわれる場合の送信データの一例を示す。図２０に、ＴＣＰ／ＩＰ（Transmission  Control  Protocol/Internet  Protocol）に基づいてチャット通信が行なわれる場合の送信データの一例を示す。
【０１１６】
＜携帯電話１００における地図ポインティング処理＞
次に、本実施の形態に係る携帯電話１００における地図ポインティング処理について説明する。図２１は、本実施の形態に係る携帯電話１００における地図ポインティング処理の処理手順を示すフローチャートである。図２２は、本実施の形態に係るポインティング処理中の画面を示す第１のイメージ図である。図２３は、本実施の形態に係るポインティング処理中の画面を示す第２のイメージ図である。図２４は、地図ポインティング処理において取得される座標を説明するためのイメージ図である。
【０１１７】
図２１を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザから位置指定スタンプ（指定位置を示す画像）の選択命令を受け付ける（ステップＳ１０２）。より詳細には、図２２に示すように、ＣＰＵ１０６は、タッチパネル１０２に、位置指定ボタン１０７１と、フキダシボタン１０７２と、矢印ボタン１０７３と、矩形ボタン１０７４と、手描きボタン１０７５と、設定ボタン１０７６とを表示させる。ＣＰＵ１０６は、タッチパネル１０２を介して、位置指定ボタン１０７１が押下されたことを検知することによって、位置指定スタンプの選択命令を受け付ける。
【０１１８】
ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザから位置指定スタンプを押下するための命令を受け付ける（ステップＳ１０４）。より詳細には、図２３に示すように、ＣＰＵ１０６は、スタイラスペン１２０あるいは指がタッチパネル１０２にタッチしたことを検知する。
【０１１９】
図２４を参照して、ＣＰＵ１０６は、タッチ位置に基づいて、スタンプの中央座標（Ａ）を取得する（ステップＳ１０６）。スタンプの中央座標（Ａ）は、背景画像の位置を特定するための情報であればよい。たとえば、スタンプの中央座標（Ａ）は、タッチパネル１０２あるいはウインドウの右上を（０，０）とした場合の、タッチパネル１０２あるいはウインドウ内におけるスタンプの位置を特定するものである。
【０１２０】
ＣＰＵ１１０は、背景である地図画像の中央座標（Ｇ）を取得する（ステップＳ１０８）。地図画像の中央座標（Ｇ）とは、現在表示対象となっている地図画像の右上を（０，０）とした場合の、当該地図画像内におけるタッチパネル１０２あるいはウインドウの中心を特定するものである。
【０１２１】
ＣＰＵ１１０は、座標（Ａ）および座標（Ｇ）に基づいて、ポイント位置座標（データ（ａ））を取得する（ステップＳ１１０）。すなわち、ＣＰＵ１０６は、座標（Ｇ）に基づいて、ディスプレイ１０７あるいはウインドウ内におけるスタンプの座標（Ａ）（画面座標系）を、地図画像におけるスタンプの座標（ａ）（画像座標系）に変換する。ＣＰＵ１１０は、データ（ａ）をメモリ１０３に格納する（ステップＳ１１２）。
【０１２２】
＜携帯電話１００における図形入力処理＞
次に、本実施の形態に係る携帯電話１００における図形入力処理について説明する。図２５は、本実施の形態に係る携帯電話１００における図形入力処理の処理手順を示すフローチャートである。図２６は、本実施の形態に係る図形入力処理中の画面を示す第１のイメージ図である。図２７は、本実施の形態に係る図形入力処理中の画面を示す第２のイメージ図である。図２８は、本実施の形態に係る図形入力処理中の画面を示す第３のイメージ図である。図２９は、本実施の形態に係る図形入力処理中の画面を示す第４のイメージ図である。
【０１２３】
図２５を参照して、ＣＰＵ１１０は、タッチパネル１０２を介して、ユーザから記号スタンプを選択するための選択命令を受け付ける（ステップＳ２０２）。より詳細には、図２６を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、矢印ボタン１０７３が押下されたことを検知する。
【０１２４】
ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザから記号スタンプを押下するための命令を受け付ける（ステップＳ２０４）。より詳細には、図２７を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、スタイラスペン１２０あるいは指が押下されたことを検知して、タッチ位置を取得する。ＣＰＵ１０６は、タッチパネル１０２に、タッチ位置に対応する位置に、スタンプを表示する。
【０１２５】
ＣＰＵ１０６は、押下されたスタンプデータを内部イメージデータ（データ（ｂ））に変換する（ステップＳ２０６）。ＣＰＵ１０６は、タッチ位置に基づいて、押下されたスタンプの左上、右下の座標（データ（ｃ））を取得する（ステップＳ２０８）。
【０１２６】
ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザから表示位置の候補を示すためのスタンプの選択命令を受け付ける（ステップＳ２１０）。より詳細には、図２８を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、矩形ボタン１０７４が押下されたことを検出する。
【０１２７】
ＣＰＵ１１０は、タッチパネル１０２を介して、ユーザから表示位置の候補を示すためのスタンプの押下命令を受け付ける（ステップＳ２１２）。より詳細には、図２９を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、スタイラスペン１２０あるいは指が押下されたことを検知して、タッチ位置を取得する。ＣＰＵ１０６は、タッチパネル１０２に、タッチ位置に対応する位置に矩形を表示させる。
【０１２８】
ＣＰＵ１１０は、押下されたスタンプの左上、右下の座標（データ（ｄ））を取得する（ステップＳ２１４）。ＣＰＵ１０６は、データ（ｂ）、（ｃ）、（ｄ）をメモリ１０３に格納する（ステップＳ２１６）。
【０１２９】
＜携帯電話１００における手描き入力処理＞
次に、本実施の形態に係る携帯電話１００における手描き入力処理について説明する。図３０は、本実施の形態に係る携帯電話１００における手描き入力処理の処理手順を示すフローチャートである。図３１は、本実施の形態に係る手描き入力処理中の画面を示す第１のイメージ図である。図３２は、本実施の形態に係る手描き入力処理中の画面を示す第２のイメージ図である。
【０１３０】
図３０を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザから手描きスタンプの選択命令を受け付ける（ステップＳ３０２）。より詳細には、図３１を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、手描きボタン１０７５が押下されたことを検出する。
【０１３１】
ＣＰＵ１１０は、タッチパネル１０２を介して、ユーザからコメントなどの手描き画像の入力を受け付ける（ステップＳ３０４）。より詳細には、図３２を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、スタイラスペン１２０あるいは指のタッチ位置を順次取得することによって、タッチ位置の軌跡を取得する。ＣＰＵ１０６は、タッチパネル１０２に手描き画像を表示させる。
【０１３２】
ＣＰＵ１１０は、手描きデータ領域の矩形取得処理（ステップＳ４００）を実行する。なお、手描きデータ領域の矩形取得処理（ステップＳ４００）については後述する。
【０１３３】
ＣＰＵ１０６は、手描きデータを内部イメージデータ（データ（ｅ））に変換する（ステップＳ３０６）。ただし、ＣＰＵ１０６は、ペンダウンからペンアップまで、所定の時間毎のペン座標を送信してもよい。たとえば、ＣＰＵ１０６は、所定の時間毎に測定されたぞれぞれの接触座標（ｘ１，ｙ１）（ｘ２，ｙ２）（ｘ３，ｙ３）を、測定の都度、他の機器に送信してもよい。ＣＰＵ１０６は、手描きデータの矩形の左上、右下の座標（データ（ｆ））を取得する（ステップＳ３０８）。ＣＰＵ１０６は、データ（ｅ）、（ｆ）をメモリ１０３に格納する（ステップＳ３１０）。
【０１３４】
図形入力処理および手描き入力処理において生成される送信データのデータ構造について説明する。図３３は、図形入力処理および手描き入力処理において生成された送信データを説明するためのイメージ図である。
【０１３５】
図３３を参照して、送信データは、データ（ａ）からデータ（ｇ）を含む。また、前述したように、送信データは、データ（ｈ）およびデータ（ｉ）を含んでもよい。
【０１３６】
なお、ＣＰＵ１０６は、これらのデータ（ａ）からデータ（ｉ）を、１つの送信データとして送信してもよいし、ＣＰＵ１０６が取得する度に送信してもよい。また、ＣＰＵ１０６は、手描きボタン以外のボタンの選択命令や、図示しない送信ボタンの押下を受け付けた際に手描きデータ（ｅ）を送信してもよい。あるいは、ＣＰＵ１０６は、一定時間毎に手描きデータ（ｅ）を送信してもよい。あるいは、ＣＰＵ１０６は、ストローク毎に手描き情報を送信してもよい。あるいは、ＣＰＵ１０６は、手描き画像の差分情報のみを順次送信してもよい。
【０１３７】
次に、本実施の形態に係る携帯電話１００における手描きデータ領域の矩形取得処理について説明する。図３４は、本実施の形態に係る携帯電話１００における手描きデータ領域の矩形取得処理の処理手順を示すフローチャートである。
【０１３８】
図３４を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、ユーザによって設定ボタン１０７６が押下されたか否かを判断する（ステップＳ４０２）。設定ボタン１０７６が押下されなかった場合（ステップＳ４０２においてＮＯである場合）、ＣＰＵ１０６は、手描き処理（ステップＳ５００）を実行する。なお、手描き処理（ステップＳ５００）については後述する。
【０１３９】
一方、設定ボタン１０７６が押下された場合（ステップＳ４０２にてＹＥＳである場合）、ＣＰＵ１０６は、手描きデータ領域の矩形取得処理を終了する。
【０１４０】
次に、本実施の形態に係る携帯電話１００における手描き処理について説明する。図３５は、本実施の形態に係る携帯電話１００における手描き処理の処理手順を示すフローチャートである。図３６は、本実施の形態に係る手描きデータ領域の変化を示すイメージ図である。
【０１４１】
図３５を参照して、ＣＰＵ１０６は、タッチパネル１０２を介して、ペンダウン（タッチ操作）を受け付けたか否かを判断する（ステップＳ５０２）。ＣＰＵ１０６は、ペンダウンを受け付けなかった場合（ステップＳ５０２においてＮＯである場合）、手描き処理を終了する。
【０１４２】
ＣＰＵ１０６は、ペンダウンを受け付けた場合（ステップＳ５０２にてＹＥＳである場合）、タッチ操作された座標（Ｘ，Ｙ）を取得する（ステップＳ５０４）。ＣＰＵ１０６は、手描きデータ領域が設定済みであるか否かを判断する（ステップＳ５０６）。より詳細には、ＣＰＵ１０６は、手描きデータ領域の左上座標（Ｘ１，Ｙ１）と右下座標（Ｘ２，Ｙ２）が設定済みであるか否かを判断する。
【０１４３】
手描きデータ領域が設定されている場合（ステップＳ５０６にてＹＥＳである場合）、ＣＰＵ１０６は、手描きデータ領域の更新処理（ステップＳ６００）を実行する。すなわち、後述するように、図３６に示すように、手描きデータ領域は、手描き画像が入力されるたびに大きくなっていく場合があるため、手描き画像の入力中に、手描きデータ領域の更新処理が必要となる。なお、手描きデータ領域の更新処理（ステップＳ６００）の詳細については後述する。
【０１４４】
手描きデータ領域が未だ設定されていない場合（ステップＳ５０６にてＮＯである場合）、ＣＰＵ１０６は、変数Ｘ１にＸを代入し、変数Ｘ２にＸの値を代入し、変数Ｙ１にＹの値を代入し、変数Ｙ２にＹの値を代入する（ステップＳ５０８）。ＣＰＵ１０６は、タッチパネル１０２を介して、ペンがドラッグされたか否かを判断する（ステップＳ５１０）。ペンがドラッグされていない場合（ステップＳ５１０にてＮＯである場合）、ＣＰＵ１０６は、ステップＳ５１４からの処理を実行する。
【０１４５】
ペンがドラッグされた場合（ステップＳ５１０にてＹＥＳである場合）、ＣＰＵ１０６は、タッチパネル１０２を介して、現在の座標（Ｘ，Ｙ）を取得する（ステップＳ５１２）。ＣＰＵ１０６は、手描きデータ領域の更新処理（ステップＳ６００）を実行する。ＣＰＵ１０６は、タッチパネル１０２を介して、ペンがアップされたか否か（一連のタッチ操作が終了したか否か）を判断する（ステップＳ５１４）。ペンがアップされなかった場合（ステップＳ５１４にてＮＯである場合）、ＣＰＵ１０６は、ステップＳ５１０からの処理を繰返す。
【０１４６】
ペンがアップされた場合（ステップＳ５１４にてＹＥＳである場合）、ＣＰＵ１０６は、現在の座標（Ｘ，Ｙ）を取得する（ステップＳ５１６）。ＣＰＵ１０６は、手描きデータ領域の更新処理（ステップＳ６００）を実行する。ＣＰＵ１０６は、手描き処理を終了する。
【０１４７】
図３６（ａ）から（ｄ）に示すように、手描き画像の入力が進行するに従って、手描きデータ領域は広がっていく。そのため、手描き画像入力が終了した時点、すなわち、本実施の形態においてはペンがアップされた時点、において手描きデータ領域を確定することが好ましい。本実施の形態においては、後述する手描きデータ領域の更新処理（ステップＳ６００）において、一連のタッチ操作に対応する手描きデータ領域が随時更新されていくものである。
【０１４８】
次に、本実施の形態に係る携帯電話１００における手描きデータ領域の更新処理について説明する。図３７は、本実施の形態に係る携帯電話１００における手描きデータ領域の更新処理の処理手順を示すフローチャートである。以下では、手描きデータ領域の左上座標が（Ｘ１，Ｙ１）であって、手描きデータ領域の右下座標が（Ｘ２，Ｙ２）である場合について説明する。
【０１４９】
図３７を参照して、ＣＰＵ１０６は、現在のタッチ位置のＸ座標が変数Ｘ１未満であるか否かを判断する（ステップＳ６０２）。ＸがＸ１未満である場合（ステップＳ６０２にてＹＥＳである場合）、ＣＰＵ１０６は、変数Ｘ１にＸの値を代入する（ステップＳ６０４）。ＣＰＵ１０６は、ステップＳ６１０からの処理を実行する。
【０１５０】
Ｘが変数Ｘ１以上である場合（ステップＳ６０２にてＮＯである場合）、ＣＰＵ１０６は、タッチ位置のＸ座標が変数Ｘ２よりも大きいか否かを判断する（ステップＳ６０６）。Ｘが変数Ｘ２よりも大きい場合（ステップＳ６０６にてＹＥＳである場合）、ＣＰＵ１０６は、変数Ｘ２にＸの値を代入する。ＣＰＵ１０６は、ステップＳ６１０からの処理を実行する。
【０１５１】
Ｘが変数Ｘ２以下である場合（ステップＳ６０６にてＮＯである場合）、ＣＰＵ１０６は、タッチ位置のＹ座標が変数Ｙ１未満であるか否かを判断する（ステップＳ６１０）。Ｙが変数Ｙ１未満である場合（ステップＳ６１０にてＹＥＳである場合）、ＣＰＵ１０６は、変数Ｙ１にＹの値を代入する（ステップＳ６１２）。ＣＰＵ１０６は、手描きデータ領域の更新処理を終了する。
【０１５２】
Ｙが変数Ｙ１以上である場合（ステップＳ６１０にてＮＯである場合）、ＣＰＵ１０６は、タッチ位置のＹ座標が変数Ｙ２よりも大きいか否かを判断する（ステップＳ６１４）。Ｙが変数Ｙ２よりも大きい場合（ステップＳ６１４にてＹＥＳである場合）、ＣＰＵ１０６は、変数Ｙ２にＹの値を代入する（ステップＳ６１６）。ＣＰＵ１０６は、手描きデータ領域の更新処理を終了する。
【０１５３】
Ｙが変数Ｙ２以下である場合（ステップＳ６１４にてＮＯである場合）、ＣＰＵ１０６は、手描きデータ領域の更新処理を終了する。
【０１５４】
＜携帯電話１００における背景データ取得処理＞
次に、本実施の形態に係る携帯電話１００における背景データ取得処理について説明する。図３８は、本実施の形態に係る携帯電話１００における背景データ取得処理の処理手順を示すフローチャートである。
【０１５５】
図３８を参照して、ＣＰＵ１０６は、データサイズ取得処理（ステップＳ８００）を実行する。なお、データサイズ取得処理（ステップＳ８００）については後述する。
【０１５６】
ＣＰＵ１０６は、通信デバイス１０１を介して、地図データベース（コンテンツサーバ６００）に地図データを要求する（ステップＳ７０２）。より詳細には、ＣＰＵ１０６は、通信デバイス１０１を介して、データ（ｇ）、（ｈ）、（ｉ）を送信する。ＣＰＵ１０６は、通信デバイス１０１を介して、コンテンツサーバ６００からレスポンスを受信したか否かを判断する（ステップＳ７０４）。ＣＰＵ１０６は、コンテンツサーバ６００から、レスポンスを受信しなかった場合（ステップＳ７０４にてＮＯである場合）、ステップＳ７０４の処理を繰返す。
【０１５７】
ＣＰＵ１０６は、通信デバイス１０１を介して、コンテンツサーバ６００からレスポンスを受信した場合（ステップＳ７０４にてＹＥＳである場合）、受信したデータを内部画像データに変換する（ステップＳ７０６）。ＣＰＵ１０６は、背景レイヤに変換した背景データ（地図画像データ）を設定する（ステップＳ７０８）。ＣＰＵ１０６は、背景データ取得処理を終了する。
【０１５８】
次に、本実施の形態に係る携帯電話１００におけるデータサイズ取得処理について説明する。図３９は、本実施の形態に係る携帯電話１００におけるデータサイズ取得処理の処理手順を示すフローチャートである。
【０１５９】
図３９を参照して、ＣＰＵ１０６は、変数ｏｒｇにｔｒｕｅを代入する（ステップＳ８０２）。ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウの画面の幅ｗを取得する（ステップＳ８０４）。ＣＰＵ１０６は、タッチパネルあるいはウインドウの高さｈを取得する（ステップＳ８０６）。
【０１６０】
ＣＰＵ１０６は、ｗｉｄｔｈ（データ（ｉ））＝ｗであるか否かを判断する（ステップＳ８０８）。ＣＰＵ１０６は、変数ｗｉｄｔｈ（データ（ｉ））＝ｗである場合（ステップＳ８０８にてＹＥＳである場合）、ステップＳ８１２からの処理を実行する。
【０１６１】
ＣＰＵ１０６は、変数ｗｉｄｔｈ（データ（ｉ））＝ｗでない場合（ステップＳ８０８にてＮＯである場合）、変数ｏｒｇにｆａｌｓｅを代入する（ステップＳ８１０）。ＣＰＵ１０６は、変数ｈｅｉｇｈｔ（データ（ｉ））＝ｈであるか否かを判断する（ステップＳ８１２）。ＣＰＵ１０６は、変数ｈｅｉｇｈｔ（データ（ｉ））＝ｈである場合（ステップＳ８１２にてＹＥＳである場合）、ステップＳ８１６からの処理を実行する。
【０１６２】
ＣＰＵ１０６は、変数ｈｅｉｇｈｔ（データ（ｉ））＝ｈでない場合（ステップＳ８１２にてＮＯである場合）、変数ｏｒｇにｆａｌｓｅを代入する（ステップＳ８１４）。ＣＰＵ１０６は、変数ｏｒｇにｔｒｕｅが代入されているか否かを判断する（ステップＳ８１６）。ＣＰＵ１０６は、変数ｏｒｇにｔｒｕｅが代入されている場合（ステップＳ８１６にてＹＥＳである場合）、データサイズ取得処理を終了する。
【０１６３】
ＣＰＵ１０６は、変数ｏｒｇにｔｒｕｅが代入されていない場合（ステップＳ８１６にてＮＯである場合）、データサイズ設定処理（ステップＳ９００）を実行する。なおデータサイズ設定処理（ステップＳ９００）については後述する。ＣＰＵ１０６は、データサイズ取得処理を終了する。
【０１６４】
次に、本実施の形態に係る携帯電話１００におけるデータサイズ設定処理について説明する。図４０は、受信端末の画面サイズが送信端末の画面サイズと同じである場合の画面を示すイメージ図である。図４１は、受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第１のイメージ図である。図４２は、受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第２のイメージ図である。図４３は、受信端末の画面サイズが送信端末の画面サイズよりも大きな場合の受信端末の画面を示すイメージ図である。
【０１６５】
そして、図４４は、送信側と同じ背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。図４５は、受信端末が送信端末と異なる背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。
【０１６６】
図４１、図４４を参照して、ＣＰＵ１０６は、変数Ｗに変数ｗｉｄｔｈ（ｔデータ（ｉ））を代入する（ステップＳ９０２）。ＣＰＵ１０６は、変数Ｈにｈｅｇｈｔ（ｄデータ（ｉ））を代入する（ステップＳ９０４）。ＣＰＵ１０６は、ディスプレイ１０７におけるスクロールバーの表示設定を行なう（ステップＳ９０６）。ＣＰＵ１０６は、データサイズ設定処理を終了する。
【０１６７】
図４２、図４３、図４５を参照して、ＣＰＵ１０６は、変数Ｗに変数ｗの値を代入する（ステップＳ９１２）。ＣＰＵ１０６は、変数Ｈに変数ｈの値を代入する（ステップＳ９１４）。ＣＰＵ１０６は、データサイズ設定処理を終了する。
【０１６８】
＜携帯電話１００におけるデータ表示処理＞
次に、本実施の形態に係る携帯電話１００におけるデータ処理処理について説明する。図４６は、本実施の形態に係る携帯電話１００におけるデータ表示処理の処理手順を示すフローチャートである。
【０１６９】
図４６を参照して、ＣＰＵ１０６は、現在表示されている画面の中央座標（Ｂｘ，Ｂｙ）を取得する（ステップＳ１００２）。ＣＰＵ１０６は、ポイント位置確認処理（ステップＳ１１００）を実行する。なお、ポイント位置確認処理（ステップＳ１１００）については後述する。
【０１７０】
ＣＰＵ１０６は、変数Ｉｎ１にｆａｌｓｅが格納されているか否かを判断する（ステップＳ１００４）。ＣＰＵ１０６は、変数Ｉｎ１にｆａｌｓｅが格納されている場合（ステップＳ１００４にてＹＥＳである場合）、手描きデータ設定処理１（ステップＳ１２００）を実行する。なお、手描きデータ設定処理１（ステップＳ１２００）については後述する。ＣＰＵ１０６は、ステップＳ１００８からの処理を実行する。
【０１７１】
ＣＰＵ１０６は、変数Ｉｎ１にｆａｌｓｅが代入されていない場合（ステップＳ１４００にてＮＯである場合）、ポイントを指す記号データ設定処理（１３００）を実行する。なお、ポイントを指す記号データ設定処理（１３００）については後述する。
【０１７２】
ＣＰＵ１０６は、手描きレイヤにポイントを指す記号データ（ｃ’）を設定する（ステップＳ１００６）。ＣＰＵ１０６は、手描きデータ設定処理２（ステップＳ１４００）を実行する。なお、手描きデータ設定処理２（ステップＳ１４００）については後述する。ＣＰＵ１０６は、手描きレイヤに手描きデータ（ｅ’）を設定する（ステップＳ１００８）。ＣＰＵ１０６は、データ表示処理を終了する。
【０１７３】
次に、本実施の形態に係る携帯電話１００におけるポイント位置確認処理について説明する。図４７は、本実施の形態に係る携帯電話１００におけるポイント位置確認処理の処理手順を示すフローチャートである。
【０１７４】
図４７を参照して、ＣＰＵ１０６は、変数Ｉｎ１にｆａｌｓｅを代入する（ステップＳ１１０２）。ＣＰＵ１０６は、タッチパネル１０２を介して、ポイント位置の座標（Ａｘ，Ａｙ）を取得する（ステップＳ１１０４）。ＣＰＵ１０６は、変数Ａｘが０以上であるか否かを判断する（ステップＳ１１０６）。ＣＰＵ１０６は、変数Ａｘが０未満である場合（ステップＳ１１０６にてＮＯである場合）、ポイント位置確認処理を終了する。
【０１７５】
ＣＰＵ１０６は、変数Ａｘが０以上である場合（ステップＳ１１０６にてＹＥＳである場合）、変数Ａｘが画面幅以下であるか否かを判断する（ステップＳ１１０８）。ＣＰＵ１０６は、変数Ａｘが画面幅よりも大きい場合（ステップＳ１１０８にてＮＯである場合）、ポイント位置確認処理を終了する。
【０１７６】
ＣＰＵ１０６は、変数Ａｘが画面幅以下である場合（ステップＳ１１０８にてＹＥＳである場合）、変数Ａｙが０以上である否かを判断する（ステップＳ１１１０）。ＣＰＵ１０６は、変数Ａｙが０未満である場合（ステップＳ１１１０にてＮＯである場合）、ポイント位置確認処理を終了する。
【０１７７】
ＣＰＵ１０６は、変数Ａｙが０以上である場合（ステップＳ１１１０にてＹＥＳである場合）、変数Ａｙが画面高さ以下であるか否かを判断する（ステップＳ１１１２）。ＣＰＵ１０６は、変数Ａｙが画面高さより大きい場合（ステップＳ１１１２にてＮＯである場合）、ポイント位置確認処理を終了する。
【０１７８】
ＣＰＵ１０６は、変数Ａｙが画面高さ以下である場合（ステップＳ１１１２にてＹＥＳである場合）、変数Ｉｎ１にｔｒｕｅを代入する（ステップＳ１１１４）。ＣＰＵ１０６は、ポイント位置確認処理を終了する。
【０１７９】
次に、本実施の形態に係る携帯電話１００における手描きデータ設定処理１の第１の例について説明する。図４８は、本実施の形態に係る携帯電話１００における手描きデータ設定処理の第１の例を示すフローチャートである。図４９Ａは、手描きデータ設定処理１の第１の例における画面を示す第１のイメージ図である。図４９Ｂは、手描きデータ設定処理１の第１の例における画面を示す第２のイメージ図である。図４９Ｃは、手描きデータ設定処理１の第１の例における画面を示す第３のイメージ図である。図４９Ｄは、手描きデータ設定処理１の第１の例における画面遷移を示すイメージ図である。
【０１８０】
図４８を参照して、ＣＰＵ１０６は、変数αｗに画面幅／手描きデータ（データ（ｅ））の幅を代入する（ステップＳ１２０２）。ＣＰＵ１０６は、変数αｈに指定領域の高さ／手描きデータ（データ（ｅ）の高さを代入する（ステップＳ１２０４）。ＣＰＵ１０６は、変数αｗが変数αｈ未満であるか否かを判断する（ステップＳ１２０６）。ＣＰＵ１０６は、変数αｗが変数αｈ未満である場合（ステップＳ１２０６にてＹＥＳである場合）、変数α１に変数αｗを代入する（ステップＳ１２０８）。ＣＰＵ１０６は、ステップＳ１２１２からの処理を実行する。
【０１８１】
ＣＰＵ１０６は、変数αｗが変数αｈ以上である場合（ステップＳ１２０６にてＮＯである場合）、変数α１に変数αｈを代入する（ステップＳ１２１０）。ＣＰＵ１０６は、変数α１が１未満であるか否かを判断する（ステップＳ１２１２）。ＣＰＵ１０６は、変数α１が１未満である場合（ステップＳ１２１２にてＹＥＳである場合）、手描きデータ（データ（ｅ））をα１倍に縮小し、手描きデータ（ｅ’）を作成する（ステップＳ１２１４）。ＣＰＵ１０６は、ステップＳ１２１８からの処理を実行する。
【０１８２】
ＣＰＵ１０６は、変数α１が１以上である場合（ステップＳ１２１２にてＮＯである場合）、手描きデータ（ｅ’）に手描きデータ（データ（ｅ））を代入する（１２１６）。ＣＰＵ１０６は、データ（ｅ’）の表示位置を座標（０，０）に設定する（ステップＳ１２１８）。ＣＰＵ１０６は、手描きデータ設定処理１を終了する。
【０１８３】
このようにして、手描きデータ設定処理１においては、図４９Ａに示すように、ＣＰＵ１０６は、指定位置（データ（ａ））がタッチパネル１０２あるいはウインドウの外側に位置する場合であっても、タッチパネル１０２あるいはウインドウの所定エリア（上部エリア）に手描き画像を表示させる。
【０１８４】
あるいは、図４９Ｂに示すように、ＣＰＵ１０６は、指定位置がタッチパネル１０２あるいはウインドウの外側に位置する場合、タッチパネル１０２あるいはウインドウの所定エリアに、指定位置の方向を示すための矢印１０７ａを表示させる。
【０１８５】
あるいは、図４９Ｃに示すように、ＣＰＵ１０６は、指定位置がタッチパネル１０２あるいはウインドウの外側に位置する場合、タッチパネル１０２あるいはウインドウの当該指定位置に近いエリアに、指定位置の方向を示すための矢印１０７ａを表示させる。
【０１８６】
さらに、図４９Ｄ（ａ）に示すように、ＣＰＵ１０６は、指定位置がタッチパネル１０２あるいはウインドウの外側に位置する場合、タッチパネル１０２を介して、タッチパネル１０２あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付ける。なお、矢印１０７ａは、表示されてもよいし、表示されなくともよい。ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付けると、図４９Ｄ（ｂ）に示すように、指定位置がタッチパネル１０２あるいはウインドウの中央に位置するように画面をスクロールする。
【０１８７】
あるいは、ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウの所定エリアに対するユーザのタッチ操作を所定時間以上受け続けると、当該所定時間の経過後、タッチ操作を受け続けている間、当該指定位置の方向へ画面をスクロールする。
【０１８８】
あるいは、ＣＰＵ１１０は、タッチパネル１０２あるいはウインドウの所定エリアに対するユーザの１つ目のタッチ操作を受けているときに、他の（２つ目の）タッチ位置を検出した場合、当該他のタッチ位置がタッチパネル１０２あるいはウインドウの中央に位置するように画面をスクロールする。
【０１８９】
あるいは、ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付けると、タッチパネル１０２あるいはウインドウに表示されているエリア（または、タッチパネル１０２あるいはウインドウの中心）と当該指定位置とがタッチパネル１０２あるいはウインドウに入るように、画像（地図）の縮尺（表示倍率）を調整する。
【０１９０】
次に、本実施の形態に係る携帯電話１００における手描きデータ設定処理１の第２の例について説明する。図５０は、本実施の形態に係る携帯電話１００における手描きデータ設定処理１の第２の例を示すフローチャートである。図５１Ａは、手描きデータ設定処理１の第２の例における画面を示す第１のイメージ図である。図５１Ｂは、手描きデータ設定処理１の第２の例における画面を示す第２のイメージ図である。図５１Ｃは、手描きデータ設定処理１の第２の例における画面遷移を示すイメージ図である。
【０１９１】
図５０を参照して、ＣＰＵ１０６は、手描きデータ（ｅ’）にｎｕｌｌを代入する（ステップＳ１２２２）。ＣＰＵ１０６は、手描きデータ設定処理１を終了する。
【０１９２】
このように、手描きデータ設定処理１においては、図５１Ａに示すように、ＣＰＵ１０６は、指定位置が、タッチパネル１０２あるいはウインドウの外側に位置する場合には、タッチパネル１０２に手描き画像を表示させない。
【０１９３】
あるいは、図５１Ｂに示すように、ＣＰＵ１０６は、指定位置がタッチパネル１０２あるいはウインドウの外側に位置する場合、タッチパネル１０２あるいはウインドウの当該指定位置に近いエリアに、指定位置の方向を示すための矢印１０７ａを表示させる。
【０１９４】
さらに、図５１Ｃ（ａ）に示すように、ＣＰＵ１０６は、指定位置がタッチパネル１０２あるいはウインドウの外側に位置する場合、タッチパネル１０２を介して、タッチパネル１０２あるいはウインドウに対するユーザのタッチ操作を受け付ける。なお、矢印１０７ａは、表示されてもよいし、表示されなくともよい。ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウに対するユーザのタッチ操作を受け付けると、図５１Ｃ（ｂ）に示すように、指定位置がタッチパネル１０２あるいはウインドウの中央に位置するように画面をスクロールする。
【０１９５】
あるいは、ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウに対するユーザのタッチ操作を所定時間以上受け続けると、当該所定時間の経過後、タッチ操作を受け続けている間、当該指定位置の方向へ画面をスクロールする。
【０１９６】
あるいは、ＣＰＵ１１０は、タッチパネル１０２あるいはウインドウに対するユーザの１つ目のタッチ操作を受けているときに、他の（２つ目の）タッチ位置を検出した場合、当該他のタッチ位置がタッチパネル１０２あるいはウインドウの中央に位置するように画面をスクロールする。
【０１９７】
あるいは、ＣＰＵ１０６は、タッチパネル１０２あるいはウインドウに対するユーザのタッチ操作を受け付けると、タッチパネル１０２あるいはウインドウに表示されているエリア（または、タッチパネル１０２あるいはウインドウの中心）と当該指定位置とがタッチパネル１０２あるいはウインドウに入るように、画像（地図）の縮尺（表示倍率）を調整する。
【０１９８】
次に、本実施の形態に係る携帯電話１００におけるポイントを指す記号データ設定処理について説明する。図５２は、本実施の形態に係る携帯電話１００におけるポイントを指す記号データ設定処理の処理手順を示すフローチャートである。
【０１９９】
図５２を参照して、ＣＰＵ１０６は、ポイントを指す記号データ位置確認処理（ステップＳ１４００）を実行する。なお、ポイントを指す記号データ位置確認処理（ステップＳ１４００）については後述する。
【０２００】
ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されているか否かを判断する（ステップＳ１３０２）。ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されている場合（ステップＳ１３０２にてＹＥＳである場合）、ポイントを指す記号データ取得処理（ステップＳ１６００）を実行する。ＣＰＵ１０６は、ポイントを指す記号データ設定処理を終了する。
【０２０１】
一方、ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されていない場合（ステップＳ１３０２にてＮＯである場合）、縮小率α２に１を代入する（ステップＳ１３０４）。ＣＰＵ１０６は、ポイントを指す記号データ（ｃ’）にポイントを指す記号データ（ｃ）を代入する（ステップＳ１３０６）。ＣＰＵ１０６は、データ（ｃ’）の表示位置を座標（Ｃｘ１，Ｃｙ１）に設定する（ステップＳ１３０８）。ＣＰＵ１０６は、ポイントを指す記号データ設定処理を終了する。
【０２０２】
次に、本実施の形態に係る携帯電話１００におけるポイントを指す記号データ位置確認処理について説明する。図５３は、本実施の形態に係る携帯電話におけるポイントを指す記号データ位置確認処理の処理手順を示すフローチャートである。
【０２０３】
図５３を参照して、ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅを代入する（ステップＳ１４０２）。ＣＰＵ１０６は、ポイントを指す記号データ位置の矩形領域を取得する（１４０４）。より詳細には、ＣＰＵ１０６は、ポイントを指す記号データを表示するための領域（矩形領域）の左上座標（Ｃｘ１，Ｃｙ１）と右下座標（Ｃｘ２，Ｃｙ２）とを取得する。
【０２０４】
ＣＰＵ１０６は、表示位置候補の矩形領域を取得する（ステップＳ１４０６）。より詳細には、ＣＰＵ１０６は、表示位置候補の矩形領域の左上座標（Ｄｘ１，Ｄｙ１）と右下座標（Ｄｘ２，Ｄｙ２）とを取得する。
【０２０５】
ＣＰＵ１０６は、ポイントを指す記号データの領域取得処理（ステップＳ１５００）を実行する。なお、ポイントを指す記号データの領域取得処理（ステップＳ１５００）については後述する。
【０２０６】
ＣＰＵ１０６は、変数Ｘ１が０以上であるか否かを判断する（ステップＳ１４０８）。ＣＰＵ１０６は、変数Ｘ１が０未満である場合（ステップＳ１４０８にてＮＯである場合）、ポイントを指す記号データ位置確認処理を終了する。
【０２０７】
ＣＰＵ１０６は、変数Ｘ１が０以上である場合（ステップＳ１４０８にてＹＥＳである場合）、変数Ｘ２が画面幅以下であるか否かを判断する（ステップＳ１４１０）。ＣＰＵ１０６は、変数Ｘ２が画面幅よりも大きい場合（ステップＳ１４１０にてＮＯである場合）、ポイントを指す記号データ位置確認処理を終了する。
【０２０８】
ＣＰＵ１０６は、変数Ｘが画面幅以下である場合（ステップＳ１４１０にてＹＥＳである場合）、変数Ｙ１が０以上であるか否かを判断する（ステップＳ１４１２）。ＣＰＵ１０６は、変数Ｙ１が０未満である場合（ステップＳ１４１２にてＮＯである場合）、ポイントを指す記号データ位置確認処理を終了する。
【０２０９】
ＣＰＵ１０６は、変数Ｙ１が０以上である場合（ステップＳ１４１２にてＹＥＳである場合）、変数Ｙ２が画面高さ以下であるか否かを判断する（ステップＳ１４１４）。ＣＰＵ１０６は、変数Ｙ２が画面高さよりも大きい場合（ステップＳ１４１４にてＮＯである場合）、ポイントを指す記号データ位置確認処理を終了する。
【０２１０】
ＣＰＵ１０６は、変数Ｙ２が画面高さ以下である場合（ステップＳ１４１４にてＹＥＳである場合）、変数Ｉｎ２にｔｒｕｅ（ステップＳ１４１６）を代入する。ＣＰＵ１０６はポイントを指す記号データ位置確認処理を終了する。
【０２１１】
次に、本実施の形態に係る携帯電話１００におけるポイントを指す記号データの領域取得処理について説明する。図５４は、本実施の形態に係る携帯電話１００におけるポイントを指す記号データの領域取得処理の処理手順を示すフローチャートである。
【０２１２】
図５４を参照して、ＣＰＵ１０６は、変数Ｃｘ１が変数Ｄｘ１以下であるか否かを判断する（ステップＳ１５０２）。ＣＰＵ１０６は、変数Ｃｘ１が変数Ｄｘ１以下である場合（ステップＳ１５０２にてＹＥＳである場合）、変数Ｘ１に変数Ｃｘ１を代入する（ステップＳ１５０４）。ＣＰＵ１０６は、ステップＳ１５０８からの処理を実行する。
【０２１３】
ＣＰＵ１０６は、変数Ｃｘ１が変数Ｄｘ１よりも大きい場合（ステップＳ１５０２にてＮＯである場合）、変数Ｘ１に変数Ｄｘ１を代入する（ステップＳ１５０６）。ＣＰＵ１０６は、変数Ｃｙ１が変数Ｄｙ１以下であるか否かを判断する（ステップＳ１５０８）。ＣＰＵ１０６は、変数Ｃｙ１が変数Ｄｙ１以下である場合（ステップＳ１５０８にてＹＥＳである場合）、変数Ｙ１に変数Ｃｙ１を代入する（ステップＳ１５１０）。ＣＰＵ１０６は、ステップＳ１５１４からの処理を実行する。
【０２１４】
ＣＰＵ１０６は、変数Ｃｙ１が変数Ｄｙ１よりも大きい場合（ステップＳ１５０８にてＮＯである場合）、変数Ｙ１に変数Ｄｙ１を代入する（ステップＳ１５１２）。ＣＰＵ１０６は、変数Ｃｘ２が変数Ｄｘ２以下であるか否かを判断する（ステップＳ１５１４）。ＣＰＵ１０６は、変数Ｃｘ２が変数Ｄｘ２以下である場合（ステップＳ１５１４にてＹＥＳである場合）、変数Ｘ２に変数Ｄｘ２を代入する（ステップＳ１５１６）。ＣＰＵ１０６は、ステップＳ１５２０からの処理を実行する。
【０２１５】
ＣＰＵ１０６は、変数Ｃｘ２が変数Ｄｘ２よりも大きい場合（ステップＳ１５１４にてＮＯである場合）、変数ｘ２に変数Ｃｘ２を代入する（ステップＳ１５１８）。ＣＰＵ１０６は、変数Ｃｙ２が変数Ｄｙ２以下であるか否かを判断する（ステップＳ１５２０）。ＣＰＵ１０６は、変数Ｃｙ２が変数Ｄｙ２以下である場合（ステップＳ１５２０にてＹＥＳである場合）、変数Ｙ２に変数Ｄｙ２を代入する（ステップＳ１５２２）。ＣＰＵ１０６は、ポイントを指す記号データの領域取得処理を終了する。
【０２１６】
ＣＰＵ１０６は、変数Ｃｙ２が変数Ｄｙ２よりも大きい場合（ステップＳ１５２０にてＮＯである場合）、変数Ｙ２に変数Ｃｙ２を代入する（ステップＳ１５２４）。ＣＰＵ１０６は、ポイントを指す記号データの領域取得処理を終了する。
【０２１７】
次に、本実施の形態に係る携帯電話１００におけるポイントを指す記号データ取得処理について説明する。図５５は、本実施の形態に係る携帯電話１００におけるポイントを指す記号データ取得処理の処理手順を示すフローチャートである。図５６は、ポイントを指す記号データをα２倍に縮小した画面を示すイメージ図である。図５７は、ポイントを指す記号データの表示位置を移動させた画面を示すイメージ図である。
【０２１８】
図５５を参照して、ＣＰＵ１０６は、縮小率α２の取得処理（ステップＳ１７００）を実行する。なお、縮小率α２の取得処理（ステップＳ１７００）については後述する。
【０２１９】
ＣＰＵ１０６は、変数α２が１未満であるか否かを判断する（ステップＳ１６０２）。ＣＰＵ１０６は、変数α２が１未満である場合（ステップＳ１６０２にてＹＥＳである場合、ポイントを指す記号データ（データ（ｃ））をα２倍に縮小し、ポイントを指す記号データ（ｃ’）を作成する（ステップＳ１６０４）。より詳細には、図５６に示すように、ＣＰＵ１０６は、記号データの表示領域を縮小する。ＣＰＵ１０６は、ステップＳ１６０８からの処理を実行する。
【０２２０】
一方、ＣＰＵ１０６は、変数α２が１以上である場合（ステップＳ１６０２にてＮＯである場合）、ポイントを指す記号データ（ｃ’）にポイントを指す記号データ（データ（ｃ））を代入する（ステップＳ１６０６）。ＣＰＵ１０６は、データ（ｃ’）の表示位置を（Ｃｘ１，Ｃｙ１＋（Ｃｙ２−Ｃｙ１）×（１−α））に設定する（ステップＳ１６０８）。すなわち、図５７に示すように、ＣＰＵ１０６は、記号データの表示位置を移動させる。ＣＰＵ１０６は、ポイントを指す記号データ取得処理を終了する。
【０２２１】
次に、本実施の形態に係る携帯電話１００における縮小率α２の取得処理について説明する。図５８は、本実施の形態に係る携帯電話１００における縮小率α２の取得処理の処理手順を示すフローチャートである。
【０２２２】
図５８を参照して、ＣＰＵ１０６は、ポイントを指す記号データの領域から、当該領域の幅ｗと高さｈとを取得する（ステップＳ１７０２）。より詳細には、ポイントを指す記号データの領域とは、左上の頂点の座標（Ｘ１，Ｙ１）と右下の座標（Ｘ２，Ｙ２）とに基づいて、ｗ＝Ｘ２−Ｘ１およびｈ＝Ｙ２−Ｙ１などの式によって幅ｗと高さｈを計算することができる。
【０２２３】
ＣＰＵ１０６は、変数αｗに画面幅／ｗを代入する（ステップＳ１７０４）。ＣＰＵ１０６は、変数αｈに画面高さ／ｈを代入する（ステップＳ１７０６）。ＣＰＵ１０６は、変数αｗが変数αｈ未満であるか否かを判断する（ステップＳ１７０８）。ＣＰＵ１０６は、変数αｗが変数αｈ未満である場合（ステップＳ１７０８にてＹＥＳである場合）、変数α２に変数αｗを代入する（ステップＳ１７１０）。ＣＰＵ１０６は、縮小率α２の取得処理を終了する。
【０２２４】
一方、ＣＰＵ１０６は、変数αｗが変数αｈ以上である場合（ステップＳ１７０８にてＮＯである場合）、変数α２に変数αｈを代入する（ステップＳ１７１２）。ＣＰＵ１０６は、縮小率α２の取得処理を終了する。
【０２２５】
次に、本実施の形態に係る携帯電話１００における手描きデータ設定処理２について説明する。図５９は、本実施の形態に係る携帯電話１００における手描きデータ設定処理２の処理手順を示すフローチャートである。
【０２２６】
図５９を参照して、ＣＰＵ１０６は、手描きデータに概説する矩形を取得する（ステップＳ１８０２）。より詳細には、ＣＰＵ１０６は、矩形の左上座標（Ｆｘ１，Ｆｙ１）と右下座標（Ｆｘ２，Ｆｙ２）とを取得する。ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されているか否かを判断する（ステップＳ１８０４）。ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されている場合（ステップＳ１８０４にてＹＥＳである場合）、手描きデータ取得処理（ステップＳ２０００）を実行する。なお、手描きデータ取得処理（ステップＳ２０００）については後述する。ＣＰＵ１０６は、手描きデータ設定処理２を終了する。
【０２２７】
ＣＰＵ１０６は、変数Ｉｎ２にｆａｌｓｅが代入されていない場合（ステップＳ１８０４いてＮＯである場合）、手描き位置確認処理（ステップＳ１９００）を実行する。なお、手描き位置確認処理（ステップＳ１９００）については後述する。
【０２２８】
ＣＰＵ１０６は、変数Ｉｎ３にｆａｌｓｅが代入されているか否かを判断する（ステップＳ１８０６）。ＣＰＵ１０６は、変数Ｉｎ３にｆａｌｓｅが代入されている場合（ステップＳ１８０６にてＹＥＳである場合）、手描きデータ取得処理（ステップＳ２０００）を実行する。
【０２２９】
ＣＰＵ１０６は、変数Ｉｎ３にｆａｌｓｅが代入されていない場合（ステップＳ１８０６にてＮＯである場合）、手描きデータ（ｅ’）に手描きデータ（ｅ）を代入する（ステップＳ１８０８）。ＣＰＵ１０６は、データ（ｅ’）の表示位置を、（Ｆｘ１，Ｆｙ２）に設定する（ステップＳ１８１０）。ＣＰＵ１０６は、手描きデータ設定処理２を終了する。
【０２３０】
次に、本実施の形態に係る携帯電話１００における手描き位置確認処理について説明する。図６０は、本実施の形態に係る携帯電話１００における手描き位置確認処理の処理手順を示すフローチャートである。
【０２３１】
図６０を参照して、ＣＰＵ１０６は、変数Ｉｎ３にｆａｌｓｅを代入する（ステップＳ１９０２）。ＣＰＵ１０６は、手描きデータを表示するための矩形領域を取得する（ステップＳ１９０４）。より詳細には、ＣＰＵ１０６は、矩形領域の左上座標（Ｆｘ１，Ｆｙ１）と右下座標（Ｆｘ２，Ｆｙ２）とを取得する。
【０２３２】
ＣＰＵ１０６は、変数Ｆｘ１が０以上であるか否かを判断する（ステップＳ１９０６）。ＣＰＵ１０６は、変数Ｆｘ１が０未満である場合（ステップＳ１９０６にてＮＯである場合）、手描き位置確認処理を終了する。
【０２３３】
ＣＰＵ１０６は、変数Ｆｘ１が０以上である場合（ステップＳ１９０６にてＹＥＳである場合）、変数Ｆｘ２が画面幅以下であるか否かを判断する（ステップＳ１９０８）。ＣＰＵ１０６は、変数Ｆｘ２が画面幅よりも大きい場合（ステップＳ１９０８にてＮＯである場合）、手描き位置確認処理を終了する。
【０２３４】
ＣＰＵ１０６は、変数Ｆｘ２が画面幅以下である場合（ステップＳ１９０８にてＹＥＳである場合）、変数Ｆｙ１が０以上であるか否かを判断する（ステップＳ１９１０）。ＣＰＵ１０６は、変数Ｆｙ１が０未満である場合（ステップＳ１９１０にてＮＯ）である場合、手描き位置確認処理を終了する。
【０２３５】
ＣＰＵ１０６は、変数Ｆｙ１が０以上である場合（ステップＳ１９１０にてＹＥＳである場合）、変数Ｆｙ２が画面高さ以下であるか否かを判断する（ステップＳ１９１２）。ＣＰＵ１０６は、変数Ｆｙ２が画面高さよりも大きい場合（ステップＳ１９１２にてＮＯである場合）、手描き位置確認処理を終了する。
【０２３６】
ＣＰＵ１０６は、変数Ｆｙ２が画面高さ以下である場合（ステップＳ１９１２にてＹＥＳである場合）、変数Ｉｎ３にｔｒｕｅを代入する（ステップＳ１９１４）。ＣＰＵ１０６は、手描き確認処理を終了する。
【０２３７】
次に、本実施の形態に係る携帯電話１００における手描きデータ取得処理について説明する。図６１は、本実施の形態に係る携帯電話１００における手描きデータ取得処理の処理手順を示すフローチャートである。図６２は、手描き画像がα３倍に縮小された画面を示すイメージ図である。図６３は、手描き画像が移動された画面を示すイメージ図である。
【０２３８】
図６１を参照して、ＣＰＵ１０６は、縮小率α３の取得処理を実行する（ステップＳ２１００）。ＣＰＵ１０６は、変数α３が１未満であるか否かを判断する（ステップＳ２００２）。ＣＰＵ１０６は、変数α３が１未満である場合（ステップＳ２００２にてＹＥＳである場合）、手描きデータ（データ（ｅ））をα３倍に縮小し、ポイントを指す記号データ（ｅ’）を作成する（ステップＳ２００４）。すなわち、図６２に示すように、ＣＰＵ１０６は、α３倍に縮小された手描き画像をタッチパネル１０２に表示する。ＣＰＵ１０６は、ステップＳ２００８からの処理を実行する。
【０２３９】
ＣＰＵ１０６は、変数α３が１以上である場合（ステップＳ２００２にてＮＯである場合）、手描きデータ（ｅ’）に手描きデータ（ｅ）を代入する（ステップＳ２００６）。ＣＰＵ１０６は、手描きデータ（ｅ’）の表示位置を、（Ｆｘ１−（Ｄｘ２−Ｄｘ１）×α２，Ｆｙ１＋（Ｄｙ２−Ｄｙ１）×α２）に設定する（ステップＳ２００８）。すなわち、図６３に示すように、ＣＰＵ１０６は、手描き画像を移動させる。ＣＰＵ１０６は、手描きデータ取得処理を終了する。
【０２４０】
次に、本実施の形態に係る携帯電話１００における縮小率α３の取得処理について説明する。図６４は、本実施の形態に係る携帯電話１００における縮小率α３の取得処理の処理手順を示すフローチャートである。
【０２４１】
図６４を参照して、ＣＰＵ１０６は、手描きデータ領域に基づいて、領域の幅ｗと高さｈとを取得する（ステップＳ２１０２）。より詳細には、ＣＰＵ１０６は、手描きデータ領域の左上座標（Ｆｘ１，Ｆｙ１）と右下座標（Ｆｘ２，Ｆｙ２）とに基づいて，手描きデータ領域の幅ｗと高さｈとを取得する。たとえば、ＣＰＵ１０６は、ｗ＝Ｆｘ２−Ｆｘ１とｈ＝Ｆｙ２−Ｆｙ１との式から、幅ｗと高さｈとを取得する。
【０２４２】
ＣＰＵ１０６は、ポイントを指す記号データの領域（記号領域）に基づいて、記号領域の幅Ｄｗと高さＤｈとを取得する（ステップＳ２１０４）。より詳細には、ＣＰＵ１０６は、記号領域の左上座標（Ｄｘ１，Ｄｙ１）と右下座標（Ｄｘ２，Ｄｙ２）とに基づいて、記号領域の幅Ｄｗと高さＤｈとを取得する。たとえば、ＣＰＵ１０６は、Ｄｗ＝（Ｄｘ２−Ｄｘ１）×α２とＤｈ＝（Ｄｙ２−Ｄｙ１）×α２とに基づいて、記号領域の幅Ｄｗと高さＤｈとを取得する。
【０２４３】
ＣＰＵ１０６は、変数αｗにＤｗ／ｗを代入する（ステップＳ２１０６）。ＣＰＵ１０６は、変数αｈにＤｈ／ｈを代入する（ステップＳ２１０８）。ＣＰＵ１０６は、変数αｗが変数αｈ未満であるか否かを判断する（ステップＳ２１１０）。ＣＰＵ１０６は、変数αｗが変数αｈ未満である場合（ステップＳ２１１０にてＹＥＳである場合）、変数α３に変数αｗを代入する（ステップＳ２１１２）。ＣＰＵ１０６は，縮小率α３の取得処理を終了する。
【０２４４】
ＣＰＵ１０６は、変数αｗが変数αｈ以上である場合（ステップＳ２１１０にてＮＯである場合）、変数α３に変数αｈを代入する（ステップＳ２１１４）。ＣＰＵ１０６は、縮小率α３の取得処理を終了する。
【０２４５】
このように、本実施の形態に係る通信端末は、以下のように構成されている。送信側の通信端末のＣＰＵ１０６は、タッチパネル１０２を介して、背景内の位置を特定と手描き画像の入力とを対応付けて受け付ける。送信側の通信端末のＣＰＵ１０６は、当該位置を特定するための情報と手描き画像データとを対応付けてメモリ１０３に記憶するとともに、通信デバイス１０１を介して他の通信端末（受信側の通信端末）へと送信する。
【０２４６】
受信側の通信端末のＣＰＵ１０６は、通信デバイス１０１を介して、他の通信端末（送信側の通信端末）から、当該位置を特定するための情報と手描き画像データとを対応付けて受信する。そのため、受信側の通信端末のＣＰＵ１０６は、タッチパネル１０２（ディスプレイ１０７）に、背景上の当該位置に対応する領域（たとえば、当該位置の近傍、あるいは当該位置の周囲）であって、手描き画像を全て表示できる領域に、手描き画像を表示させることができる。
【０２４７】
なお、通信端末は、背景画像上の指定位置を示す情報と、背景画像上のポイントを示す記号を表示する位置あるいは領域を示す情報と、背景画像上の手描き画像を表示する位置あるいは領域を示す情報とを対応付けて他の通信端末へ送信してもよい。あるいは、通信端末は、背景画像上の指定位置を示す情報と、当該指定位置に対するポイントを示す記号を表示する位置あるいは領域を示す情報と、当該指定位置に対する手描き画像を表示する位置あるいは領域を示す情報とを対応付けて他の通信端末へ送信してもよい。
【０２４８】
そして、特に双方向の通信を考慮すると、背景画像のサイズがいずれかの通信端末のディスプレイのサイズよりも大きい場合もあり得る。
【０２４９】
また、本実施の形態に係る通信端末は、Ｐ２Ｐ通信を行なうものに限定されるものではない。たとえば、通信端末は、サーバなどを介して、当該位置を特定するための情報と手描き画像データとを対応付けて送受信してもよい。
【０２５０】
以上の構成により、本実施の形態に係る通信端末は、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める表示位置に対応する位置に表示することができる。
【０２５１】
＜本実施の形態に係るネットワークシステム１の応用例＞
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
【０２５２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２５３】
プログラムコードを供給するための記憶媒体としては、例えば、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード（ＩＣメモリカード）、ＲＯＭ（マスクＲＯＭ、フラッシュＥＥＰＲＯＭなど）などを用いることができる。
【０２５４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０２５５】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０２５６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２５７】
１  ネットワークシステム、１００，１００Ａ，１００Ｂ，１００Ｃ  携帯電話、１０１  通信デバイス、１０２  タッチパネル、１０３  メモリ、１０３Ａ  ワークメモリ、１０３Ｂ  アドレス帳データ、１０３Ｃ  自端末データ、１０３Ｄ  アドレスデータ、１０３Ｅ  アドレスデータ、１０４  ペンタブレット、１０６  ＣＰＵ、１０７  ディスプレイ、１０７Ａ，１０７Ｂ，１０７Ｃ  ディスプレイ、１０７Ｘ  手描き画像、１０７Ｙ  ポイント画像、１０７Ｚ  スクロールバー、１０８  マイク、１０９  スピーカ、１１０  各種ボタン、１１０Ａ  ボタン、１１０Ｂ  メールボタン、１１０Ｃ  ボタン、１１０Ｄ  アドレス帳ボタン、１１０Ｅ  終了ボタン、１１１  第１の通知部、１１２  第２の通知部、１２０  スタイラスペン、２００  カーナビゲーション装置、２５０  車両、３００  パーソナルコンピュータ、４００  チャットサーバ、４０６  メモリ、４０６Ａ  ルーム管理テーブル、４０７  固定ディスク、４０８  内部バス、４０９  サーバ通信デバイス、５００  インターネット網、６００  コンテンツサーバ、６０６  メモリ、６０７  固定ディスク、６０８  内部バス、６０９  サーバ通信デバイス、６１５  固定ディスク、７００  キャリア網、１０３０ａ，１０３０ｂ  画像データ、１０３１ａ，１０３１ｂ，１０３２ａ，１０３２ｂ，１０３３ａ，１０３３ｂ  レイヤー、１０７１  位置指定ボタン、１０７２  フキダシボタン、１０７３  矢印ボタン、１０７４  矩形ボタン、１０７５  手描きボタン、１０７６  設定ボタン。
【図１】
2011155638.tif 000003
【図２】
2011155638.tif 000004
【図３】
2011155638.tif 000005
【図４】
2011155638.tif 000006
【図５】
2011155638.tif 000007
【図６】
2011155638.tif 000008
【図７】
2011155638.tif 000009
【図８】
2011155638.tif 000010
【図９】
2011155638.tif 000011
【図１０】
2011155638.tif 000012
【図１１】
2011155638.tif 000013
【図１２】
2011155638.tif 000014
【図１３】
2011155638.tif 000015
【図１４】
2011155638.tif 000016
【図１５】
2011155638.tif 000017
【図１６】
2011155638.tif 000018
【図１７】
2011155638.tif 000019
【図１８】
2011155638.tif 000020
【図１９】
2011155638.tif 000021
【図２０】
2011155638.tif 000022
【図２１】
2011155638.tif 000023
【図２２】
2011155638.tif 000024
【図２３】
2011155638.tif 000025
【図２４】
2011155638.tif 000026
【図２５】
2011155638.tif 000027
【図２６】
2011155638.tif 000028
【図２７】
2011155638.tif 000029
【図２８】
2011155638.tif 000030
【図２９】
2011155638.tif 000031
【図３０】
2011155638.tif 000032
【図３１】
2011155638.tif 000033
【図３２】
2011155638.tif 000034
【図３３】
2011155638.tif 000035
【図３４】
2011155638.tif 000036
【図３５】
2011155638.tif 000037
【図３６】
2011155638.tif 000038
【図３７】
2011155638.tif 000039
【図３８】
2011155638.tif 000040
【図３９】
2011155638.tif 000041
【図４０】
2011155638.tif 000042
【図４１】
2011155638.tif 000043
【図４２】
2011155638.tif 000044
【図４３】
2011155638.tif 000045
【図４４】
2011155638.tif 000046
【図４５】
2011155638.tif 000047
【図４６】
2011155638.tif 000048
【図４７】
2011155638.tif 000049
【図４８】
2011155638.tif 000050
【図４９Ａ】
2011155638.tif 000051
【図４９Ｂ】
2011155638.tif 000052
【図４９Ｃ】
2011155638.tif 000053
【図４９Ｄ】
2011155638.tif 000054
【図５０】
2011155638.tif 000055
【図５１Ａ】
2011155638.tif 000056
【図５１Ｂ】
2011155638.tif 000057
【図５１Ｃ】
2011155638.tif 000058
【図５２】
2011155638.tif 000059
【図５３】
2011155638.tif 000060
【図５４】
2011155638.tif 000061
【図５５】
2011155638.tif 000062
【図５６】
2011155638.tif 000063
【図５７】
2011155638.tif 000064
【図５８】
2011155638.tif 000065
【図５９】
2011155638.tif 000066
【図６０】
2011155638.tif 000067
【図６１】
2011155638.tif 000068
【図６２】
2011155638.tif 000069
【図６３】
2011155638.tif 000070
【図６４】
2011155638.tif 000071
【図６５】
2011155638.tif 000072