(57)【特許請求の範囲】
【請求項１】
文字、記号、図形などの情報要素を表示する表示手段と、
上記表示手段の表示画面上の任意の位置を指示するための位置指示手段を通じて行われる使用者からの操作入力を受け付ける操作入力受付手段と、
上記位置入力受付手段を通じて受け付けた操作入力が、上記表示画面に表示された上記情報要素の表示位置から、上記表示画面上の位置を指示した状態で上記表示画面上の指示位置を所定の方向に移動する引きずり操作が行われたか否かを判定する判定手段と、
上記判定手段の判定結果により上記引きずり操作がされたことが検知されたときに上記引きずり操作の開始位置を含む所定の領域に表示されている情報要素についての処理のためのメニューを、上記引きずり操作の方向に応じた方向に、ウインドウを開いて表示するようにするメニュー作成手段と
を備える情報処理装置。
【請求項２】
上記判定手段における上記引きずり操作の方向として判定する方向は、上記情報要素の表示画面上の配列方向と交叉する方向であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
上記指示位置の上記引きずり操作の開始位置に対して、上記引きずり操作が行われたか否かを判定するための領域が設定され、当該領域内に指示位置が入ったときに上記判定手段は、上記引きずり操作を検出するようにしたことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
上記位置指示手段による指示位置が、上記情報要素の配列方向に上記引きずり操作されたとき、上記指示位置の移動範囲に含まれる情報要素を１つの処理対象として認識する手段を備え、
上記メニュー作成手段は、上記処理対象の範囲の情報要素に対するメニューを作成することを特徴とする請求項２に記載の情報処理装置。
【請求項５】
文字、記号、図形などの情報要素を表示する表示手段と、
上記表示手段の表示画面上の任意の位置を指示するための位置指示手段を通じて行われる使用者からの操作入力を受け付ける操作入力受付手段と、
上記位置入力受付手段を通じて受け付けた操作入力が、上記表示画面に表示された上記情報要素の表示位置から、上記表示画面上の位置を指示した状態で上記表示画面上の指示位置を所定の方向に移動する引きずり操作が行われたか否かを判定する判定手段と、
上記判定手段の判定結果により上記引きずり操作されたことが検知されたときに上記指示位置の引きずり操作の開始位置を含む所定の領域に表示されている情報要素についての処理のためのメニューを、当該メニューを構成する複数個のメニュー項目を上記指示位置の引きずり操作の方向に配列させて表示するようにするメニュー作成手段と
を備える情報処理装置。
【請求項６】
上記メニュー作成手段は、表示する複数のメニュー項目を、上記情報要素に近い位置ほど選択される可能性の高い項目が表示されるように配列することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
表示手段と、操作入力受付手段と、判定手段と、メニュー作成手段とを備えた情報処理装置が行う情報処理方法であって、
前記表示手段が、文字、記号、図形などの情報要素を所定の表示画面に表示させる表示ステップと、
前記操作入力受付手段が、上記表示画面上の任意の位置を指示するために位置指示手段を通じて行われる使用者からの操作入力を受け付ける操作入力受付ステップと、
上記判定手段が、上記位置入力受付ステップを通じて受け付けた操作入力が、上記表示画面に表示された上記情報要素の表示位置から、上記表示画面上の位置を指示した状態で上記表示画面上の指示位置を所定の方向に移動する引きずり操作が行われたか否かを判定する判定ステップと、
上記メニュー作成手段が、上記判定ステップの判定結果により上記引きずり操作がされたことが検知されたときに、上記引きずり操作の開始位置を含む所定の領域に表示されている情報要素についての処理のためのメニューを上記引きずり操作の方向に応じた方向に、ウインドウを開いて表示するようにするメニュー作成ステップと
を有する情報処理方法。
【請求項８】
表示手段と、操作入力受付手段と、判定手段と、メニュー作成手段とを備えた情報処理装置が行う情報処理方法であって、
前記表示手段が、文字、記号、図形などの情報要素を所定の表示画面に表示させる表示ステップと、
前記操作入力受付手段が、上記表示画面上の任意の位置を指示するための位置指示手段を通じて行われる使用者からの操作入力を受け付ける操作入力受付ステップと、
上記判定手段が、上記位置入力受付ステップを通じて受け付けた操作入力が、上記表示画面に表示された上記情報要素の表示位置から、上記表示画面上の位置を指示した状態で上記表示画面上の指示位置を所定の方向に移動する引きずり操作が行われたか否かを判定する判定ステップと、
上記メニュー作成手段が、上記判定ステップにおいての判定結果により上記引きずり操作がされたことが検知されたときに、上記引きずり操作の開始位置を含む所定の領域に表示されている情報要素についての処理のためのメニューを、当該メニューを構成する複数個のメニュー項目を上記引きずり操作の方向に応じた方向に配列させて表示するようにするメニュー作成ステップと
を有する情報処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ユーザインターフェースとして表示画面を備え、その表示画面に、ユーザにより入力された、あるいはメモリから読み出された文字、記号、図形などの情報要素（以下、テキストという）について、編集、検索など種々の処理を行なう情報処理装置および当該情報処理装置で用いられる情報処理方法に関する。
【０００２】
【従来の技術】
この種の情報処理装置では、編集、検索などの処理項目及び処理操作パラメータなどを予めメニューとして登録しておき、ユーザの操作により、必要なメニューのウインドウを開いて処理を実行するようにするものが多い。
【０００３】
そして、このメニューのウインドウを開く（以下、メニューのウインドウを開くことを、メニューを開くという）ために、表示画面上に所定のシンボルを表示するようにするのが一般的である。
【０００４】
例えば、この種の情報処理装置の例として、携帯に便利な電子手帳と呼ばれるものが知られているが、この電子手帳においては、図１４に示すように、メニューを開くためのシンボルは、例えばＬＣＤ（液晶ディスプレイ）などの表示画面５０の上端５１や、画面５０の下端、左端、右端などに設けられる、メニューバーなどと呼ばれる所定の場所にまとめて置かれることが多い。
【０００５】
メニューを開くためのシンボルは、当該シンボルの表示位置をタッチペンやマウスなどの位置指示手段としてのポインティングデバイス（図１４ではタッチペン）によって位置指示することによって開くことができるメニューに登録された処理プログラムによって行なわれる処理の対象や処理の内容などが、図１４に示すように、例えば「ファイル」、「編集」、「検索」などのように表示されるものである。
【０００６】
そして、各シンボルは、例えば「ファイル」、「編集」、「検索」などのようにラベルが付けられ、対応するメニューを開くための、いわゆるボタンスイッチとしての役割を有している。以下では、これらメニューを開くためのシンボルをメニューのタイトルという。
【０００７】
そして、画面に表示されている文字、記号、図形などのテキストに対して編集などの処理操作を行なうには、処理操作の対象となるテキスト位置（１文字分）あるいはテキスト範囲を指定し、次に、メニューバーから実行したい処理が登録されているメニューのタイトルを探し、そのメニューを開き、目的とする処理を選択し、実行するようにする。あるいは、先にメニューのタイトル、および目的とする処理を選択し、次に処理操作の対象となるテキスト位置や範囲の指定をするようにする。
【０００８】
例えば、図１４の、画面５０のテキスト表示例において、「おおくなり」という文字列からなるフレーズに対して編集を行なう場合には、先ず、「おおくなり」という文字列部分を、画面上において、ペン６０を画面に接触させて“なぞる”ことにより、編集の対象となる範囲を指定する。
【０００９】
次に、画面５０の上端５１に設けられたメニューバーから、実行したい処理プログラムが登録されたメニューを開くためのメニューのタイトルを探し、図１４で点線にて示すように目的とするメニューのタイトルである「編集」が表示されている位置にまでペン６０を移動して、そのメニューのタイトルのシンボルの表示画面位置にペン６０を接触させることによって、目的とするメニューを開く。
【００１０】
一般にメニューを開く位置や方向は、電子手帳のシステムにより管理され、そのシステムにより決まる位置や方向となる。例えば、図１４に示すようにメニューバーが画面５０の上端５１にあるときには、選択したメニューのタイトルの下側近傍から画面５０の下端方向にメニューが開かれる。
【００１１】
そして、操作者が目的とする処理を実行させるためには、開かれた編集メニューに表示された、例えば「移動」、「複写」、「削除」、「かな漢字変換」といった複数のメニュー項目の中から、選択したい項目が表示された画面５０上の位置にペン６０を接触させることにより、その選択したい項目を選択する。これにより選択された項目に対応する処理プログラムが実行されて目的とする処理を行なうことができる。
【００１２】
例えば、「かな漢字変換」の項目が選択されると、処理対象範囲である「おおくなり」についての漢字への変換候補の一覧メニューが図示しないが、例えば画面５０の下側に開かれて表示され、操作者は、その変換候補一覧メニューから、正しい「多くなり」を選択することで、かな漢字変換の処理を行なうことができる。
【００１３】
このように、電子手帳の操作者は、複雑なコマンドを入力することなく、ペン６０により画面５０上において直接的に位置指示を行なうだけの操作によって、各種の処理を行なうことができる。
【００１４】
【発明が解決しようとする課題】
ところが、図１４に示したように、編集処理を行なうテキストの表示位置と、メニューのタイトルや前述した変換候補一覧メニューの表示位置とが離れていると、画面５０上を移動させるペンの移動量や、操作者の視点の移動量が多くなる。このため、例えば編集処理を繰り返して行なう場合などには、ペンや操作者の視点の移動が煩雑になり、電子手帳が使いにくくなる。
【００１５】
このため、例えば、処理対象のテキスト位置や範囲を指定したと同時に指定した位置や範囲のテキストに対して実行可能な処理を選択することができるメニューを自動的に開くようにすることが考えられる。
【００１６】
しかし、ペン入力の他にキーボードからの情報入力が可能で、キーボードを操作することで目的とする処理を直接的に実行させることができる装置の場合には、メニューを開く必要がないときでもメニューが自動的に開かれることになり、熟練した操作者にとって煩わしく感じられることもある。
【００１７】
また、上述のようにメニューを自動的に開かせるようにした場合には、ウインドウを開く処理は、処理としてのオーバーヘッドも大きいため情報処理装置としてのシステムにかかる負荷も重くなりかねない。
【００１８】
また、上述したように、メニューを開く方向や位置は、情報処理装置により制御されて定められてしまい、操作者が、それら方向や位置を指定することができない。このため、メニューが開かれた場合に、操作者の意図した方向や位置にメニューが開かれず、操作者を混乱させてしまうことがある。
【００１９】
例えば、メニューバーの表示位置が画面内で固定であって、かつ、メニュータイトルの配列順序も固定である場合には、情報処理装置自身が、それぞれのメニュータイトルの表示位置からメニューを開く位置及び開く方向を決定しても、それら位置及び方向は、各メニュータイトルに対して画面内で常に一定となるので操作者に混乱を生じさせることはない。
【００２０】
しかし、メニュータイトルの表示位置が一定でない場合には、メニューを開く方向、位置は、その画面位置に応じて異ならせるようにしなければならないが、これを情報処理装置自身が行なった場合、操作者の意図とは異なる場合が生じ、操作者に混乱を生じさせやすい。
【００２１】
また、メニューのタイトルやメニューバーの表示位置が一定でない場合には、メニューを開く方向を切り換える境界条件も複雑になり、情報処理装置のメニューに関する制御の負荷も大きくなる。
【００２２】
以上のことにかんがみ、この発明は、上記課題を一掃し、表示画面に表示されたテキストに対する処理操作を、容易かつスムースに行なうことができる情報処理装置および当該情報処理装置で用いられる情報処理方法を提供することを目的とする。
【００２３】
【課題を解決するための手段】
文字、記号、図形などの情報要素を表示する表示手段と、
上記表示手段の表示画面上の任意の位置を指示するための位置指示手段を通じて行われる使用者からの操作入力を受け付ける操作入力受付手段と、
上記位置入力受付手段を通じて受け付けた操作入力が、上記表示画面に表示された上記情報要素の表示位置から、上記表示画面上の位置を指示した状態で上記表示画面上の指示位置を所定の方向に移動する引きずり操作が行われたか否かを判定する判定手段と、
上記判定手段の判定結果により上記引きずり操作がされたことが検知されたときに上記引きずり操作の開始位置を含む所定の領域に表示されている情報要素についての処理のためのメニューを、上記引きずり操作の方向に応じた方向に、ウインドウを開いて表示するようにするメニュー作成手段と
を備える。
【００２４】
また、この発明による情報処理装置においては、表示画面に表示されたテキスト位置から、座標入力手段によって連続的に座標を指定したことを検知した場合に、メニュー作成手段によって、当該キャラクタに関するメニューを開くようにする。
【００２５】
位置指示手段による表示画面上の位置指示が、情報要素の表示位置から所定の方向への連続移動（引きずり操作）により移動された場合には、連続移動の始点位置の情報要素についての処理操作に関するメニューが、当該情報要素の近傍において開かれる。この場合、上記メニュー作成手段は、上記指示位置の連続移動方向（引きずり操作の方向）に応じた方向に、ウインドウを開いて上記メニューを表示するようにする。したがって、開かれるメニューの方向は操作者の指示位置の移動方向により定まり、常に操作者の意図する方向にメニューが開かれる。
【００２６】
また、この発明による情報処理装置は、
上記判定手段における上記指示位置の連続的な移動として判定する方向は、上記情報要素の表示面上の配列方向と交叉する方向であることを特徴とする。
【００２７】
情報要素の配列方向と交叉する方向を、メニューを開くための指示位置の連続移動の方向の判定方向としたので、情報要素の配列方向に、処理対象範囲を指定する操作と区別することができる。
【００３０】
【発明の実施の形態】
以下、図を参照しながら、この発明を上述したようなタッチペンを位置指示手段としてのポインティングデバイスとし、表示画面上にタブレットが貼付された電子手帳に適用した場合の実施の形態について説明する。
【００３１】
以下に説明する情報処理装置は、文字認識機能と、かな漢字変換機能を備え、文字認識したときの複数個の認識結果の候補や、かな漢字変換の際に複数個の変換候補が、それぞれ後述するような表示画面での操作に応じてメニューウインドウとして表示されるものである。
【００３２】
そして、この実施の形態においては、上記２つの機能を実現する処理およびメニューを開く処理等は、ユーザのインターフェースとしての表示画面を通じての操作者の入力操作に応じてマイクロコンピュータが、そのソフトウエアとにより実行するものである。
【００３３】
図１は、この実施の形態の情報処理装置の構成を示すブロック図であり、上記の処理機能やメニュー処理を実現するソフトウエア処理を機能ブロックとして表現したものを含むものである。
【００３４】
この実施の形態の情報処理装置は、入力部１と、演算処理部２と、表示部３とを備えている。図２は、表示部３の表示画面３０の例を示すものである。この実施の形態の場合、表示部３の表示画面はＬＣＤで構成されている。
【００３５】
そして、図２に示すように、この場合、画面３０は、複数の領域に分割されている。すなわち、画面３０はテキスト表示領域３１と、手書き文字入力領域３２とに分割される。テキスト表示領域３１は、文字、記号、図形などのテキストを表示し、これらに対して編集などの処理操作を操作者が行なうことができる編集領域である。手書き文字入力領域３２は、操作者がペン１１により手書き文字を入力する領域である。
【００３６】
また、手書き文字入力領域３２には、１文字分の文字の入力スペースを区切る手書き筆跡入力枠３３が複数個（この場合には４個）設けられている。
【００３７】
入力部１は、表示画面３０上に貼付されるタブレットと、タッチペン１１と、マイコンでの処理とからなり、操作者のペン入力操作に基づいて筆跡データＤ１を生成する。
【００３８】
すなわち、入力部１においては、マイコンはペン１１が画面３０上のタブレットに接触したかどうかを所定時間間隔で常に監視しており、ペン１１のタブレットへの接触を検知すると、当該ペン１１の画面上の接触位置を示す座標データを生成する。
【００３９】
また、入力部１は、ペン１１のタブレットへの接触開始を入力開始（以下、ペンダウンという）として、その時刻（入力時刻）を検知し、接触解除を入力終了（以下、ペンアップという）として、その時刻（終了時刻）をも検知する。そして、入力開始から入力終了までに、接触位置（指示位置）が移動したときには、その移動の間のいくつかの点の座標値データも生成する。
【００４０】
したがって、この入力部１から出力される筆跡データＤ１は、始点の座標値と、終点の座標値と、移動のときに含まれる始点と終点との間のいくつかの点の座標値と、入力時刻と、終了時刻の情報を含む。
【００４１】
入力開始後、入力終了が検知されるまでの間は、終点の座標値には、現在のペン先の座標値が設定され、終了時刻には「０」が設定されている。そして、入力終了となるまでは、一定時間毎に入力部１により、その時点でのペン先の座標が追加されていく。
【００４２】
入力部１においては、ペンアップにより入力終了となると、その時刻が終了時刻として設定される。したがって、終了時刻が「０」である間は入力中（ペンが継続してタブレットに接触している）であることを示している。
【００４３】
演算処理部２は、図１に示すように、入力検査部２１、ＲＡＭ２２、手書き文字認識部２３、かな漢字変換部２４、メニュー作成部２５、テキスト管理部２６、ビデオＲＡＭ２７を備えている。
【００４４】
この実施の形態においては、ＲＡＭ２２のメモリ領域は、図示のように複数の領域に予め分けられている。
【００４５】
ＲＡＭ２２のイベントキュー領域２２１は、後述するように、次に行なうべき処理が何であるかを表わすイベント情報を、そのイベントの発生順（あるいは処理順）に並べて格納する領域である。
【００４６】
筆跡データ領域２２２は、前述した入力部１からの筆跡データＤ１を、入力検査部２１を介して格納する領域である。
【００４７】
テキスト範囲データ領域２２３は、かな漢字変換の処理対象となるテキスト位置およびテキスト範囲を書き込む領域である。
【００４８】
かな漢字ポインタ領域２２４は、ＲＡＭ２２の作業領域２２７内に後述するようにして選択されて格納された、かな漢字変換の結果の候補群のアドレスを格納する領域である。
【００４９】
モード領域２２５は、そのときのモードがかな漢字変換か、手書き文字認識か、その他であるかを示すモード情報を格納する領域である。
【００５０】
文字認識ポインタ領域２２６は、ＲＡＭ２２の作業領域２２７に格納された、文字認識の結果の候補群の先頭アドレスを格納する領域である。
【００５１】
作業領域２２７は、後述する各演算処理の際の中間データ及び結果データ等を格納するための領域である。
【００５２】
入力検査部２１は、入力部１からの筆跡データＤ１を受け取り、ＲＡＭ２２の筆跡データ領域２２２に格納する。そして、この筆跡データ領域２２２に格納した筆跡データＤ１から、操作者の入力操作としてのペンアップ、ペンダウン、タブレットとの接触中（入力中）、接触したままの位置移動および操作者により位置指示された表示画面上の位置を検知する。
【００５３】
すなわち、入力時刻の情報からペンダウンが検知される。また、入力終了時刻が「０」でなくなったことからペンアップが検出される。入力終了時刻が「０」の時に一定の時間おきに入力部１から送られてくる座標データが常に等しければ、接触中のペン先位置が変わらないと検出される。また、前記座標データが変化したときには、ペン先位置が表示画面上を接触しながら移動していると検出される。
【００５４】
なお、テキスト表示領域３１と、手書き文字入力領域３２との区別は、座標データにより判定される。
【００５５】
そして、入力検査部２１は、前述したペン操作に関して検知した内容から「メニューを開く操作」、「かな漢字変換の起動」、「手書き文字入力」、「それ以外」のどのイベントであるかを判定する。
【００５６】
入力検査部２１は、入力部１からの筆跡データＤ１の座標データが、手書き文字入力領域３２内の位置を示すものであるときには、次に行なうべき処理は、「手書き文字認識処理」であると判定する。
【００５７】
また、入力検査部２１は、入力部１からの筆跡データＤ１の各座標データおよび入力時刻、終了時刻の情報が、テキスト表示領域３１上に表示されているテキスト上の座標データあるいはテキスト上であってテキストの並び方向の移動を示す座標データであるときには、筆跡データＤ１は、かな漢字変換処理の対象となる表示された文字列の範囲を指定するデータであると判定し、また、次に行なうべき処理は、「かな漢字変換の起動」であると判定する。
【００５８】
そして、判定したイベントが「かな漢字変換の起動」である場合には、ＲＡＭ２２内のテキスト範囲データ領域２２３に、変換の対象となるテキストの範囲の情報Ｄ３を書き込む。
【００５９】
また、入力検査部２１は、入力部１からの筆跡データＤ１から、操作者のペン入力操作がテキスト表示領域３１上において表示されている文字上から文字の並び方向と交叉する方向、この例では直交する方向への接触したままの移動の操作であるときには、次に行なうべき処理は、ペンダウンした位置に表示されている文字あるいはペンダウンした位置を含む指定された範囲内の文字列についてのメニューを開く処理であると判定する。
【００６０】
この実施の形態の情報処理装置は、図２を用いて上述したように、入力された文字を、テキスト表示領域３１に横書きで表示する。したがって、文字配列方向に直交する方向へのペンの画面に接触したままの移動としては、文字配列方向に対して画面の上側への移動（以下、プルアップという）と、画面の下側への移動（以下、プルダウンという）との２通りが存在し、操作者は、いずれの方向へ移動させるかを選択することができる。
【００６１】
そして、この場合、後述するように、メニューウインドウは、移動方向に開かれるように構成されており、どちらの方向のメニューを開くイベントであるかをも入力検査部２１は判定するようにしている。
【００６２】
このため、入力検査部２１は、この実施の形態においては、詳しくは後述するが、以下のようにして、「プルアップによりメニューを開く処理」か、または、「プルダウンによりメニューを開く処理」かを判定する。
【００６３】
このため、入力検査部２１は、テキスト表示領域３１に表示されているテキスト上に、ペンダウンされた位置から、テキスト表示領域３１に表示された文字の配列方向と直交する方向であって、画面３０の上側方向に所定距離以上、画面３０に接触したまま移動したときには、当該ペン入力操作はプルアップによりメニューを開くことを指示する操作であるとイベントを判定する。
【００６４】
また、入力検査部２１は、ペン１１がテキスト表示領域３１に表示されている文字などのテキスト上にペンダウンされた位置から、テキスト表示領域３１に表示されたテキストの配列方向と直交する方向であって、画面３０の下側方向に所定距離以上移動したときには、当該ペン入力操作はプルダウンによりメニューを開くことを指示する操作であるとイベントを判定する。もちろんこの場合にも、ペン１１は画面３０に接触したままの移動となる。
【００６５】
この入力検査部２１でのメニューを開くことを指示する操作か否かのイベントの判定方法についての詳細は、後述する。
【００６６】
入力検査部２１は、上述のようにして、次に行なうべき処理（イベント）は何かを判定すると、その結果のイベント情報を、判定結果情報Ｄ２としてＲＡＭ２２のイベントキュー領域２２１に追加する。このイベントキュー領域２２１に書き込まれる判定結果情報Ｄ２には、以下に示す４つのイベント情報“ＲＣＧ”，“ＫＫＣ”，“ＰｕｌｌＵｐ”，“ＰｕｌｌＤｏｗｎ”を含む。
【００６７】
▲１▼イベント情報“ＲＣＧ”：次に行なうべき処理は、「手書き文字認識」である。
【００６８】
▲２▼イベント情報“ＫＫＣ”：次に行なうべき処理は、「かな漢字変換」である。
【００６９】
▲３▼イベント情報“ＰｕｌｌＵｐ”：次に行なうべき処理は、「プルアップによりメニューを開く処理」である。
【００７０】
▲４▼イベント情報“ＰｕｌｌＤｏｗｎ”：次に行なうべき処理は、「プルダウンによりメニューを開く処理」である。
【００７１】
判定結果情報Ｄ２が書き込まれたイベントキュー領域２２１は、手書き文字認識部２３、かな漢字変換部２４、メニュー作成部２５により、常時監視される。そして、これら各部は、イベントキュー領域２２１の判定結果情報Ｄ２の先頭のイベント情報が、自分に処理が移ったことを示す情報であった時には、以下に説明するように、自分の処理を開始する。
【００７２】
手書き文字認識部２３は、イベントキュー領域２２１の判定結果情報Ｄ２の先頭のイベント情報が、「次に行なうべき処理は、手書き文字認識であることを示す」イベント情報“ＲＣＧ”であった場合に、このときのイベントキュー領域２２１の先頭のイベント情報“ＲＣＧ”を削除し、手書き文字認識処理を開始する。
【００７３】
この実施の形態の情報処理装置においては、このように、イベントキュー領域の先頭のイベント情報を削除するようにすることにより、次の処理をも迅速に行なうことができるようにしている。
【００７４】
手書き文字認識部２３は、文字認識用の辞書を有している。そして、手書き文字認識部２３は、図２を用いて上述した手書き筆跡入力枠３３内にペン１１を接触させることにより入力した筆跡データＤ１を筆跡データ領域２２２から読み出して、この筆跡データＤ１により形成された手書き文字と、上記文字認識用の辞書に登録されている文字とのパターンマッチングを行ない、類似度が一定値以上のいくつかの文字認識の候補を取得する。ここで各候補は、例えば、文字コードとして取得される。
【００７５】
この実施の形態において、手書き文字認識部２３は、手書き文字と、文字認識用の辞書の文字との類似度の高さに応じて、取得した各候補に順位を付ける。そして、手書き文字認識処理の結果得られた各候補を項目とするメニューを開くときには、この順位に応じて各項目のメニュー内での表示順位置をきめるようにする。
【００７６】
そして、手書き文字認識部２３は、手書き文字認識処理の結果得られた文字認識の候補の中で第１候補となる最高順位の候補の文字コードＤ５をテキスト管理部２６に供給する。テキスト管理部２６は、この文字コードＤ５に対応する文字を手書き文字入力した文字として表示するようにする。
【００７７】
また、同時に、手書き文字認識部２３は、文字認識中であることを示すモード情報“ＭRCG”をモードデータＤ６としてＲＡＭ２２のモード領域２２５に書き込むとともに、手書き文字認識処理の結果得られた文字コードからなる候補群ＤＭを、上述の順位に応じてＲＡＭ２２の作業領域２２７に書き込む。また、作業領域２２７に書き込まれた当該候補群のうちの最優先候補の番地を文字認識ポインタＤ４としてＲＡＭ２２の文字認識ポインタ２２６に書き込む。
【００７８】
なお、この情報処理装置においては、テキスト表示領域３１に表示されたすべての文字に対する文字認識の候補群を保持する。このため、上述の文字認識ポインタＤ４は、テキスト表示領域３１上に表示された文字の並びと対応がとれる順序で、ＲＡＭ２２の文字認識ポインタ領域２２６に格納される。すなわち、文字認識ポインタＤ４は、テキスト表示領域３１に表示された文字の並びと対応がとれるように文字認識ポインタ領域２２６に配列またはリスト形式で格納され、ペン入力操作により指定した文字の文字認識の候補群を迅速にＲＡＭ２２から読み出すことができるようにする。
【００７９】
かな漢字変換部２４は、イベントキュー領域２２１の先頭のイベント情報が、「次に行なうべき処理は、かな漢字変換であることを示す」イベント情報“ＫＫＣ”であった場合に、イベントキュー領域２２１から当該先頭のイベント情報“ＫＫＣ”を削除して、かな漢字変換処理を開始する。
【００８０】
かな漢字変換部２４は、かな漢字用の辞書を有している。そして、かな漢字変換部２４は、テキスト範囲データ領域２２３からテキスト範囲データＤ３を読み出して、データＤ３によって示されるテキスト表示領域３１上の範囲に表示された文字、文字列の読み方に基づいて、上述のかな漢字変換用の辞書を参照し、読み方が一致するいくつかのかな漢字変換の候補からなる候補群を取得する。この場合、各候補は、例えば文字コードとして取得する。
【００８１】
また、この実施の形態において、かな漢字変換部２４は、取得したかな漢字変換の候補群の各候補に、例えば、この情報処理装置が記憶している各候補の使用頻度に応じて順位を付ける。そして、かな漢字変換処理の結果得られた各候補を項目とするメニューを開くときには、この順位に応じて、各候補のメニュー内での表示順位置を決めるようにする。
【００８２】
そして、かな漢字変換部２４は、かな漢字変換処理の結果得られたかな漢字変換の候補の中で第１候補となる最高順位の候補、この場合、使用頻度が一番高い候補の文字コードＤ８をテキスト管理部２６に供給し、これをテキスト領域３１において表示するようにする。また、かな漢字変換処理の場合には、処理の対象となるのは、文字列（フレーズ）であることもあり、その場合、文字コードＤ８は、複数個の文字の文字コードからなる。
【００８３】
また、同時にかな漢字変換部２４は、かな漢字変換処理を行なったことを示すモード情報“Ｍkkc”をモードデータＤ６として、ＲＡＭ２２のモード領域２２５に書き込むとともに、かな漢字変換処理の結果得られたかな漢字変換の候補群Ｄｋを、上述の使用頻度に応じた順位に応じて、ＲＡＭ２２の作業領域２２７に書き込む。また、当該候補群の先頭番地を、かな漢字ポインタＤ７として、ＲＡＭ２２のかな漢字ポインタ領域２２４に書き込む。
【００８４】
なお、この情報処理装置においては、複文節かな漢字変換をも行なう。このため、かな漢字ポインタＤ７は、テキスト表示領域３１上に表示された文字、文節の並びと同じ順序となるようにかな漢字ポインタ領域２２４に書き込まれる。すなわち、かな漢字ポインタＤ７は、テキスト表示領域３１に表示された文字、文節の並びと同じになるような配列またはリスト形式で、かな漢字ポインタ領域２２４に格納される。これにより、ペン入力操作により指定した、文字、文節に対応するかな漢字変換の候補群を迅速に読み出すことができるようにする。
【００８５】
また、上述のように、ＲＡＭ２２のモード領域２２５には、手書き文字認識部２３が手書き文字認識を行なった場合には、情報“ＭRCG”が書き込まれ、かな漢字変換部２４によりかな漢字変換が行なわれたときには情報“Ｍkkc”が書き込まれる。このとき、各情報“ＭRCG”、“Ｍkkc”は、前に書き込まれた情報を書き換えるようにして書き込まれる。このため、例えば、モード領域２２５のモード情報が“Ｍkkc”である場合には、現在表示中のかな漢字変換の候補が未確定であることをも示す。
【００８６】
テキスト管理部２６は、表示部３の画面３０に表示されている１画面分のテキストデータを管理する。そして、テキスト管理部２６は、手書き文字認識部２３や、かな漢字変換部２４などからの文字コードＤ５、Ｄ８を受け取り、そのとき、テキスト表示領域３１上に操作者によって選択されたテキストがあれば、それを置き換えるなどの処理をして、テキスト描画データＤ１１を生成する。
【００８７】
例えば、手書き文字認識処理が行なわれた場合には、テキスト管理部２６は、手書き文字認識部２３からの文字コードＤ５を受け取り、カーソル３４が示すテキスト表示領域３１上の位置に、文字コードＤ５に応じた文字を追加するようにする処理を行なって、テキスト描画データＤ１１を形成する。
【００８８】
また、かな漢字変換が行なわれた場合には、テキスト管理部２６は、かな漢字変換部２４からの文字コードＤ８を受け取って、かな漢字変換の対象として指定された文字や文字列と、文字データＤ８に応じた文字、文字列とを置き換えるなどの処理を行なって、テキスト描画データＤ１１を形成する。ここで、形成されたテキスト描画データＤ１１は、ビデオＲＡＭ２７に供給される。
【００８９】
ビデオＲＡＭ２７は、テキスト描画データＤ１１の供給を受けて、表示部３の画面３０に、テキストを表示するためのイメージデータＤ１２を生成する。イメージデータＤ１２は、表示部３に供給される。
【００９０】
表示部３は、イメージデータＤ１２の供給を受けて、実際に画面３０にテキストの情報を表示するように処理する。これにより、手書き文字認識された文字や、かな漢字変換された文字や文字列を画面３０のテキスト表示領域３１に表示する。
【００９１】
メニュー作成部２５は、図１に示すようにメニュー項目データ作成部２５１と、メニュー描画データ生成部２５２とからなっている。そして、メニュー作成部２５は、手書き文字認識処理の結果得られた候補群の各候補を項目とするメニューや、かな漢字変換処理の結果得られた候補群の各候補を項目とするメニューを作成し、プルアップメニューとして、または、プルダウンメニューとして、それぞれメニューを開く処理を行なう。
【００９２】
メニュー作成部２５は、イベントキュー領域２２１の先頭のイベント情報が、“ＰｕｌｌＵｐ”または、“ＰｕｌｌＤｏｗｎ”であり、次に行なうべき処理は、メニューを開く処理である場合には、イベントキュー領域２２１の、この先頭のイベント情報である“ＰｕｌｌＵｐ”または“ＰｕｌｌＤｏｗｎ”を削除した後、メニュー作成処理を開始する。
【００９３】
メニュー作成処理を開始すると、まず、メニュー項目データ作成部２５１は、モード領域２２５から、直前に行なわれていた処理が何かを示すモードデータＤ６を読み出す。そして、モードデータＤ６が“Ｍkkc”であるときには、直前に行なわれていた処理は、かな漢字変換であり、また、かな漢字変換が確定されていないと判定する。この場合には、かな漢字ポインタＤ７をかな漢字ポインタ領域２２４から読み出す。そして、このかな漢字ポインタＤ７に基づいて、現在かな漢字変換処理の対象となっている範囲の文字、または、文字列に対するかな漢字変換の候補群Ｄｋを、ＲＡＭ２２の作業領域２２７から読み出して、これをメニューの項目とするため保持する。
【００９４】
また、モードデータＤ６が“ＭRCG”であれば、メニュー項目作成部２５１は、文字認識モード中であると判断し、文字認識ポインタ領域２２６から、ポインタＤ４を読み出す。そして、このポインタＤ４に基づいて、現在選択されている文字に対する手書き文字認識の候補群ＤＭを、ＲＡＭ２２の作業領域２２７から読み出して、これをメニューの項目とするため保持する。
【００９５】
そして、メニュー項目データ作成部２５１は、保持した候補群に基づいて、各候補を項目とするメニューの項目データＤ９を作成する。そして、この項目データＤ９をメニュー描画データ作成部２５２に供給する。なお、モードデータＤ６が“Ｍkkc”、“ＭRCG”以外の場合には、メニュー作成部２５は何の処理も実行しない。
【００９６】
メニュー描画データ作成部２５２は、項目データＤ９の供給を受けて、項目データＤ９から項目の数、項目として表示される文字の最大字数を算出する。そして、メニュー描画データ作成部２５２は、項目の数からメニューウインドウの高さを算出し、項目として表示される文字の最大字数からメニューウインドウの幅を算出する。そして、メニュー描画データ作成部２５２は、メニューを開く方向に応じて、項目の並び順を調整する。
【００９７】
例えば、メニューをプルアップメニューとして開く場合には、メニューの項目は、設定された順位に応じて、第１候補から順に画面３０の上側に向かうようにする。また、メニューをプルダウンメニューとして開く場合には、メニューの項目は、第１候補から順に画面３０の下側に向かうように並べ換える。
【００９８】
すなわち、項目の並び順は、ユーザのペンの移動方向に応じ、かつ、処理の対象となっている文字や文字列に近い位置から離れる方向に向かって、第１候補から、順に下位候補となるように並べる。
【００９９】
次に、メニュー描画データ作成部２５２は、筆跡データ領域２２２から筆跡データＤ１を読み出して、メニューを開くためのペン入力操作の開始位置であるペンダウン位置を取得する。そして、メニュー描画データ作成部２５２は、ペンダウン位置、メニューウインドウの幅、高さとから、メニューウインドウの中心座標を算出する。
【０１００】
さらに、メニュー描画データ作成部２５２は、項目データＤ６、メニューウインドウの幅、高さ、メニューウインドウの中心座標とから、画面３０の目的とする位置に当該メニューを開くためのメニューの描画データＤ１０を形成し、これをビデオＲＡＭ２７に供給する。
【０１０１】
ビデオＲＡＭ２７には、メニューの描画データ１０に基づいて、イメージデータＤ１２が形成される。イメージデータＤ１２は、表示部３に供給される。この結果、表示部３の画面３０には、操作者が指示した文字や文字列の近傍に、操作者が指示する方向で目的とするメニューが開かれる。
【０１０２】
そして、演算処理部２は、ユーザが開かれたメニューの項目上にペン１１を接触させてペンアップすると、その操作を、ペン１１で接触した項目を選択する動作と判断し、かな漢字変換の対象となっている文字や文字列が、メニューから選択された項目の文字や文字列に変換されて、画面３０に表示される。そして、メニューウインドウを閉じる。
【０１０３】
次に、上述の入力検査部２１において行なわれるメニューを開く方向の判定方法の一例について、図３を参照しながら説明する。
【０１０４】
なお、以下の説明においては、かな漢字変換処理の対象として選択した文字列に対するメニューを開く場合を例に説明するが、手書き文字認識処理において、認識されて表示された文字を修正する場合に開くメニューの場合にも、同様にしてメニューを開く方向が判定される。
【０１０５】
この情報処理装置は、図３に示すように、画面３０の左上端を原点０とし、横軸（Ｘ座標軸）は、原点０の右方向を正、縦軸（Ｙ座標軸）は、原点０の下方向を正とする座標系を有しており、以下の説明においては、この座標系に従う。
【０１０６】
図３の例は、手書き文字入力等により入力されたテキストの列において、ユーザが「操作者の」の文字列の部分をペン１１により、かな漢字変換の範囲として指定した場合である。この場合、指定された範囲は、いわゆる反転表示とされている。図３では、これを四角枠ＭＡで示している。
【０１０７】
この表示状態において、ユーザが四角枠ＭＡの任意の位置に、ペンダウンすると、入力検査部２は、以下のようにして、メニューを開くことを意味するペン入力操作を検知するための領域Ｒ１、Ｒ２を設定する。
【０１０８】
入力検査部２１は、先ず、ペンダウン位置である始点Ｓから、ペン１１が、画面３０に接触したまま、メニューを開くことを意味するイベントとして検知される程度に移動したか否かを判定するための円形状の不反応領域Ｒ０を設定する。
【０１０９】
この不反応領域Ｒ０は、この領域内であれば、ペン１１が画面３０に接触したまま移動したとしても、それをメニューを開くための移動とは検出しない領域である。図からも明らかなように、この不反応領域Ｒ０は、始点Ｓを中心とした半径ｒの円領域である。半径ｒは、メニューを開くイベントとなる移動を検知するように設定されるものであるが、使用者の手ぶれやちょっとしたはずみで、ペン１１が画面３０に接触したまま、わずかに移動しても、これをペン１１のメニューを開くための移動とは検知しないような値に設定される。これにより、不必要にメニューが開かれることがないようにされる。
【０１１０】
この実施の形態においては、例えば、かな漢字変換処理の対象となる文字例の範囲を指定するペン入力操作と混同することがないようにするため、半径ｒは、テキスト表示領域３１に表示された１文字分の幅の１／２以上、好ましくは１文字分の幅以上の距離を有するようにされる。
【０１１１】
そして、入力検査部２１は、図３に示すように、メニューを開くことを指示するペン入力操作を検知するための領域Ｒ１、Ｒ２を、テキスト表示領域３１に表示された文字の配列方向と直交する方向であって、不反応領域Ｒ０を挟んで対向するように設定する。
【０１１２】
領域Ｒ１は、ペン１１がペンダウン位置からプルアップ（画面の上方向へ移動）したかどうかを検知する領域であり、領域Ｒ２は、ペン１１がペンダウン位置からプルダウン（画面の下方向へ移動）したかどうかを検知するための領域である。従って、プルアップか、プルダウンかの判定の感度を大きくしようとすれば、領域Ｒ１は、画面３０上において、領域Ｒ０の外であって、始点Ｓより画面３０の上側方向に位置するすべての位置からなる領域とし、同様に、領域Ｒ２は、画面３０上において、領域Ｒ０の外であって始点Ｓより画面３０の下側方向に位置するすべての位置からなる領域とする方がよい。
【０１１３】
しかし、このように領域Ｒ１、Ｒ２を設定した場合には、例えばかな漢字変換の範囲を指定するために、ペン１１をペンダウンして画面３０に接触させたままテキスト配列方向に移動中に、上下方向にずれた移動が行なわれると、その移動をも、メニューを開くためのプルアップまたはプルダウン操作として判定されてしまうおそれがある。
【０１１４】
このような誤判定を防止するため、この実施の形態の情報処理装置においては、図３に示すように、プルアップによりメニューを開くことを意味するペン入力操作を検知するための領域Ｒ１およびＲ２を、傾きをもった直線ａ１、ｂ１およびａ２、ｂ２によって挟まれた三角形状の領域として設定する。
【０１１５】
このように、領域Ｒ１、Ｒ２を三角形状の領域となるようにすることで、手ぶれなどのいわゆる誤差をも許容しながら、真にメニューを開くために行なわれたペン入力操作を検知することができる。
【０１１６】
すなわち、入力検査手段２１は、図３に示すように、始点Ｓを通り、文字の配列方向と直行する直線と、領域Ｒ０の外周との交点を頂点Ｔ１、Ｔ２とし、前記文字の配列方向と直行する直線と底辺とのなす角が直角である二等辺三角形状の領域Ｒ１、Ｒ２を設定するようにする。これにより、始点Ｓから画面３０にペン１１を接触させたままのペン入力操作のうち、文字の配列方向と直交する方向のペン入力操作を検知する感度を高くし、それ以外の方向の感度が低くなるように、領域Ｒ１、Ｒ２を設定することができる。
【０１１７】
このように、領域Ｒ１、Ｒ２を三角形の領域として設定するようにする方法について詳述する。
【０１１８】
図３に示したように領域Ｒ１を設定するために用いる直線ａ１、ｂ１、および領域Ｒ２を設定するために用いる直線ａ１、ｂ２の傾きを±ｍ、ペン１１がペンダウンされた画面３０上の位置、すなわち入力開始位置である始点Ｓの座標を（Ｘｓ、Ｙｓ）、不反応領域Ｒ０の半径をｒとすると、入力検査部２１は、以下のように領域Ｒ１、Ｒ２を設定する。
【０１１９】
すなわち、領域Ｒ１は、
Ｙ＝−ｍ（Ｘ−Ｘｓ）−ｒ＋Ｙｓ
で表わされる直線ａ１と、
Ｙ＝  ｍ（Ｘ−Ｘｓ）−ｒ＋Ｙｓ
で表わされる直線ｂ１とにより挟まれた領域である。したがって、領域Ｒ１は、
Ｙ＜−ｍ（Ｘ−Ｘｓ）−ｒ＋Ｙｓ  …  （１）
Ｙ＜  ｍ（Ｘ−Ｘｓ）−ｒ＋Ｙｓ  …  （２）
で示される両式（１）、（２）を満足するすべての座標（Ｘ，Ｙ）の集まりにより形成される領域である。
【０１２０】
また、領域Ｒ２は、
Ｙ＝  ｍ（Ｘ−Ｘｓ）＋ｒ＋Ｙｓ
で表わされる直線ａ２と、
Ｙ＝−ｍ（Ｘ−Ｘｓ）＋ｒ＋Ｙｓ
で表わされる直線ｂ２とにより挟まれた領域である。したがって、領域Ｒ２は、
Ｙ＞  ｍ（Ｘ−Ｘｓ）＋ｒ＋Ｙｓ  …  （３）
Ｙ＞−ｍ（Ｘ−Ｘｓ）＋ｒ＋Ｙｓ  …  （４）
で示される両式（３）、（４）を満足するすべての座標（Ｘ，Ｙ）の集まりにより形成される領域である。
【０１２１】
この場合、領域Ｒ１、Ｒ２を形成する直線ａ１、ｂ１、ａ２、ｂ２の傾きｍ，−ｍの絶対値は、０以上であればよい。しかし、この実施の形態においては、上述したように、メニューを開くためのペン入力操作を効果的に検知することができるようにするため、傾きｍはｍ＞０とし、例えば、｜ｍ｜＝１として領域Ｒ１、Ｒ２が図３に示したように三角形状の領域となるようにしている。
【０１２２】
このように、メニューを開くためのペン入力操作を検知するための領域Ｒ１、Ｒ２を設定することにより、他の処理を行なうためのペン入力操作とメニューを開くためのペン入力操作とを混同することもなく、効率よく、メニューを開くための操作を検知することができる。
【０１２３】
また、メニューを開くためのペン入力操作としては、ペンダウンした位置から、大きくペンを移動させるようにする必要もなく、迅速、確実にメニューを開くことができる。
【０１２４】
なお、上述の傾きｍを変更することにより、入力検査部２１でのメニューを開くことを指示するペン入力操作の検出の感度を調整することができることは、言うまでもない。
【０１２５】
図４、図５は、入力検査部２１においての処理を説明するためのフローチャートである。図４、図５に示す処理は、入力部１からの筆跡データＤ１が入力検査部２１に供給されることにより開始される。
【０１２６】
ペンダウンにより入力部１から入力検査部２１への筆跡データＤ１の供給が開始されると、入力検査部２１は、この筆跡データＤ１から、始点Ｓ（ペンダウンされた場所）の座標と、現在のペン１１のペン先の座標ｔ（すでに入力が終了してペンアップされた場合には、ペンアップされた場所の座標）と、入力が開始された時刻とを取得するとともに、入力開始から現在までの時間間隔ｔｉｍｅを求める（ステップ１０１）。
【０１２７】
次に、入力部２１は、始点Ｓが、画面３０のテキスト表示領域３１に表示された文字の上にあるか否かを判定する（ステップ１０２）。ステップ１０２の判定処理において、始点Ｓがテキスト表示領域３１上に表示された文字上にないと判断したときには、始点Ｓは、手書き文字入力領域３２内の手書き筆跡入力枠３３内にあるか否かを判定する（ステップ１０３）。ステップ１０３の判定処理において、始点Ｓが手書き筆跡入力枠３３内にないと判定したときには、このルーチンを終了する。
【０１２８】
ステップ１０３の判定処理において始点Ｓが画面３０の手書き筆跡入力枠３３内にあると判定したときには、入力終了時刻を参照する。この入力終了時刻は、前述したように入力中は“０”となっている。したがって、この入力終了時刻が“０”か否かにより、入力が終了しているか否かを判定する（ステップ１０４）。
【０１２９】
ステップ１０４の判定処理において、手書き筆跡入力枠内への入力が終了していないと判定したときには、順次に入力部１から供給される現在のペン１１のペン先の座標位置を示す座標データｔを更新し（ステップ１０５）、ステップ１０４からの処理を繰り返す。
【０１３０】
ステップ１０４の判定処理において、手書き文字入力が終了していると判定したときには、筆跡データＤ１をＲＡＭ２２の筆跡データ領域２２２に書き込み（ステップ１０６）、次に行なうべき処理は、「手書き文字認識処理」であることを示すイベント情報“ＲＣＧ”をイベントキュー領域２２１に追加するように書き込む（ステップ１０７）。そして、このルーチンを終了する。
【０１３１】
ステップ１０２の判定処理において、始点Ｓがテキスト表示領域３１上に表示された文字上にあると判定したときには、始点Ｓと現在のペン位置の座標ｔの点との距離が領域Ｒ０の半径ｒ未満か否かを判定する（ステップ１０８）。
【０１３２】
ステップ１０８の判定処理において、ペン１１の接触位置が領域Ｒ０外にあると判定したときには、次に、現在のペン先の座標ｔ（以下、終点ｔという）は、領域Ｒ１の内部にあるか否かを判定する（ステップ１０９）。
【０１３３】
ステップ１０９の判定処理において、終点ｔが、領域Ｒ１の内部にあると判定したときには、筆跡データＤ１を筆跡データ領域２２２に書き込み（ステップ１１０）、イベントキュー領域２２１に次に実行すべき処理は、「プルアップによりメニューを開く処理」であることを示す情報“ＰｕｌｌＵｐ”を追加するように書き込む（ステップ１１１）。そして、このルーチンを終了する。
【０１３４】
ステップ１０９の判定処理において、終点ｔが領域Ｒ１の内部にないと判定したときには、終点ｔは、領域Ｒ２の内部にあるか否かを判定する（ステップ１１２）。ステップ１１２の判定処理において、終点ｔが、領域Ｒ２の内部にあると判定したときには、ステップ１１０の処理と同様に筆跡データＤ１を筆跡データ領域２２２に書き込み（ステップ１１３）、イベントキュー領域２２１に次に実行すべき処理は、「プルダウンによりメニューを開く処理」であることを示す情報“ＰｕｌｌＤｏｗｎ”を追加するように書き込み（ステップ１１４）、このルーチンを終了する。
【０１３５】
ステップ１０８において、ペン１１の接触位置が図３に示した領域Ｒ０内にあると判定した場合、および、ステップ１１２の判定処理において、終点ｔが領域Ｒ２の内部にないと判定したときには、入力開始から現在までの時間間隔ｔｉｍｅは、所定時間間隔ｄよりも長いか否かを判定する（ステップ１１５）。この場合、この所定の時間間隔ｄは、例えば１秒程度とされる。
【０１３６】
このステップ１１５の判定処理は、ペン１１が所定時間ｄ以上、画面３０上に接触していたか否かを判定する処理であり、これにより、始点Ｓにペン１１を接触させたまま動かさず所定時間経過することによって、１文字だけを手書き文字認識処理あるいは、かな漢字変換処理の対象とすることができるようにされ、幅の狭い領域を処理の対象とすることができる。
【０１３７】
ステップ１１５の判定処理において、時間間隔ｔｉｍｅが、所定時間ｄより長いと判定されたときには、始点Ｓから終点ｔまでの間の文字列を反転表示し、反転表示された文字列が、かな漢字変換の対象になったことを操作者に通知する（ステップ１１６）。
【０１３８】
次に、ステップ１０４と同様に入力終了時刻により入力操作が終了したか否かを判定し（ステップ１１７）、入力終了時刻が“０”であり、入力がまだ終了していないと判定したときには、順次に入力部１から供給される座標データを終点ｔとするように更新し（ステップ１１８）、ステップ１１６からの処理を繰り返す。
【０１３９】
ステップ１１７の判定処理において、入力操作が終了していると判定したときには、始点Ｓから終点ｔの間にある文字をテキスト表示領域３１に表示された文章の最初から数えて何番目の文字から何文字分のように表わす文字列範囲データＤ３を文字列範囲データ領域２２３に書き込み（ステップ１１９）、イベントキュー領域２２１に次に実行すべき処理は、「かな漢字変換処理」であることを示すイベント情報“ＫＫＣ”を追加するように書き込んで（ステップ１２０）、このルーチンを終了する。
【０１４０】
また、ステップ１１５の判定処理において、時間間隔ｔｉｍｅが所定時間間隔ｄより短いと判定したときには、前述と同様に、入力終了時刻に基づいて、入力操作が終了したか否かを判定し（ステップ１２１）、入力操作が終了していると判定したときには、このルーチンを終了する。
【０１４１】
ステップ１２１の判定処理において、入力操作が終了していないと判定したときには、順次に入力部１から供給される座標データを終点ｔとするように更新し（ステップ１２２）、時間間隔ｔｉｍｅを、現在時刻から、入力開始時刻を減算した時間間隔に更新し（ステップ１２３）、その後、ステップ１０８に戻って、このステップ１０８からの処理を繰り返す。
【０１４２】
このように、図４、図５に示すルーチンによって、入力検査部２１において、次に実行すべき処理が何であるかが判定されて、判定結果Ｄ２がＲＡＭ２２のイベントキュー領域２２１に書き込まれる。また、次に行なう処理が、メニューを開く処理である場合には、筆跡データＤ１は、処理の対象となる文字や文字列をも指定する。
【０１４３】
図６、図７は、メニュー作成部２５においての処理を説明するためのフローチャートである。この図６、図７に示す処理は、メニュー作成部２５が、常時イベントキュー領域２２１を監視し、イベントキュー領域２２１に書き込まれている情報の先頭のイベント情報が“ＰｕｌｌＵｐ”であって、「プルアップによりメニューを開く処理」のイベント、または、イベント情報が“ＰｕｌｌＤｏｗｎ”であって、「プルダウンによりメニューを開く処理」のイベントのいずれかであることを検知したときに、当該メニュー作成部２５において実行する。
【０１４４】
イベントキュー領域２２１の先頭要素が“ＰｕｌｌＵｐ”または“ＰｕｌｌＤｏｗｎ”であることを検知すると、メニュー作成部２５は、変数Ｐ−ｍｏｄｅに、イベントキュー領域２２１の先頭のイベント情報を代入し、イベントキュー領域２２１から、その先頭のイベント情報を削除する（ステップ２０１）。ステップ２０１において、Ｐ−ｍｏｄｅに代入されるイベント情報は“ＰｕｌｌＵｐ”または“ＰｕｌｌＤｏｗｎ”のいずれかである。
【０１４５】
次に、メニュー作成部２５は、ＲＡＭ２２の作業領域２２７において、これから作成するメニュー項目データＤ９を格納する領域を確保し、これを初期化する（ステップ２０２）。そして、ＲＡＭ２２の筆跡データ領域２２２から、筆跡データＤ１を読み出して、ペンダウンした画面３０上の位置（入力開始位置）を示す座標データを始点Ｓに設定する（ステップ２０３）。
【０１４６】
そして、メニュー作成部２５は、ＲＡＭ２２のモード領域２２５に格納されているモードデータＤ６を参照し、モードデータＤ６が「かな漢字変換処理」を示す“Ｍkkc"であるか否かを判定する（ステップ２０４）。ステップ２０４の判定処理において“Ｍkkc"でないと判定したときには、モードデータＤ６は、「手書き文字認識処理」を示す“ＭRCG"であるか否かを判定する（ステップ２０５）。
【０１４７】
ステップ２０５の判定処理において、“ＭRCG"でないと判定したときには、モード領域２２５に格納されたモードデータＤ６は、“Ｍkkc"、“ＭRCG"のいずれでもないため、何もせずにこのルーチンを終了する。
【０１４８】
また、ステップ２０５の判定処理において、“ＭRCG"であると判定したときには、始点Ｓが示す画面３０上の位置に表示されている文字に対する手書き文字認識処理の結果得られた候補群を読み出すためのポインタを文字認識ポインタ領域２２６から読み出して、そのポインタを変数Ｐtrに設定する（ステップ２０６）。
【０１４９】
また、ステップ２０４の判定処理において、“Ｍkkc"であると判定したときには、始点Ｓが、現在画面３０に表示されているかな漢字変換の対象となるテキスト上にあるか否かを判定する（ステップ２０７）。ステップ２０７の判定処理において、始点Ｓが現在表示されているかな漢字変換の対象であるテキスト上にないと判定したときには、何の処理もせず、このルーチンを終了する。
【０１５０】
ステップ２０７の判定処理において、始点Ｓが、現在表示中のかな漢字変換の対象であるテキスト上にあると判定したときには、かな漢字ポインタ領域２２４から、始点Ｓを含むかな漢字変換の対象範囲内に表示されている文節に対するかな漢字変換処理の結果得られた候補群を読み出すためのポインタを読み出して、そのポインタを変数Ｐtrに設定する（ステップ２０８）。
【０１５１】
次に、変数Ｐtrに設定されたポインタが“０”（ｎｕｌｌ  ｐｏｉｎｔｅｒ）であるか否かを判定する（ステップ２０９）。このステップ２０９の判定処理は、メニューに表示する項目となる手書き文字認識処理または、かな漢字変換処理によって得られた候補群のすべてを、メニュー作成部２５が取り込んだか否かを判定する処理である。目的とする文字、または、文節に対する候補群のすべての候補を取り込み終えると変数Ｐtrには、“０”が設定される。
【０１５２】
ステップ２０９の判断処理において、変数Ｐtrが“０”でないと判定されたときには、変数Ｐtrが示すＲＡＭ２２の作業領域に格納されている各処理の結果得られた候補を読み出して、これをメニュー項目データＤ９に追加する（ステップ２１０）。そして、この実施の形態のペン・コンピュータ１０においては、後述する関数ＮＥＸＴを用いて、次の候補が格納されているＲＡＭ２２上のアドレスをポインタとして、変数Ｐtrに設定し（ステップ２１１）、ステップ２０９からの処理を繰り返す。
【０１５３】
ここで用いられる関数ＮＥＸＴ（Ｐtr）は、引数で与えられるポインタ変数Ｐtrが示すデータのサイズ分だけ、Ｐtrに加えた値（アドレス）を返す関数である。
【０１５４】
Ｐtr＝ＮＥＸＴ（Ｐtr）
この関数演算により、次の候補が格納されているアドレスがポインタとして変数Ｐtrに入る。
【０１５５】
ステップ２０９の判定処理において、変数Ｐtrが“０”であったときには、すべての候補の取り込みを終了したと判定し、項目データを表示するメニューの大きさ（幅、高さ）を求める（ステップ２１２）。そして、このルーチンのステップ２０１において設定した変数Ｐ−Ｍｏｄｅが“ＰｕｌｌＵｐ”か否かを判定し（ステップ２１３）、“ＰｕｌｌＵｐ”でなかったときには、プルダウンによりメニューを開くため、メニューを開く方向が画面３０の上側から下側に向かうようにメニューの中心となる座標を算出する（ステップ２１４）。
【０１５６】
ステップ２１４の処理は、この実施の形態の情報処理装置の場合には、ステップ２０３において取得した筆跡データＰ１の始点Ｓの座標を（Ｘｓ、Ｙｓ）とし、求めるメニューの中心位置Ｃの座標を（Ｘｃ、Ｙｃ）とすると、
Ｘｃ＝Ｘｓ                              …  （５）
Ｙｃ＝Ｙｓ＋（メニューの高さ／２）＋α  …  （６）
で表わされる式（５）、（６）に基づいて算出する。
【０１５７】
ここで、値αは、メニューウインドウが開かれる始点位置を定めるもので、プルダウンメニューの場合には、ウインドウ枠の上端の位置となる。この場合、値αは、α≧０とされる。α＝０のときには、メニューウインドウの開き方向の始点位置と、ペンダウン位置が一致し、α＞０であれば、ペンダウン位置からαだけ離れた位置からメニューが開かれることになる。
【０１５８】
見やすさを考慮して、かな漢字変換等の処理の対象となるテキスト文字位置と重ならないようにする場合には、値αはテキストの１文字の高さ以上とするのが好ましい。
【０１５９】
ステップ２１３の判定処理において、変数Ｐ−Ｍｏｄｅが、“ＰｕｌｌＵｐ”であると判定したときには、プルアップによりメニューを開くため、項目データを“ＰｕｌｌＤｏｗｎ”のときとは逆順に並べ換える（ステップ２１５）。このステップ２１５の処理により、画面３０の下側から上側に向かうように、順位の高い順番にメニュー項目データＤ９を並べ換える。
【０１６０】
そして、プルアップによりメニューを開くため、メニューを開く方向が画面３０の下側から上側に向かうようにメニューの中心となる座標位置を算出する（ステップ２１６）。ステップ２１６の処理は、ステップ２１４と同様に始点Ｓの座標を（Ｘｓ、Ｙｓ）、求めるメニューの中心位置Ｃの座標を（Ｘｃ、Ｙｃ）とすると、
Ｘｃ＝Ｘｓ                              …  （７）
Ｙｃ＝Ｙｓ−（メニューの高さ／２）−α  …  （８）
で表わされる式（７）、（８）に基づいて算出する。
【０１６１】
そして、メニューの項目データＤ９、メニューの中心座標位置、メニューの大きさから、メニューを画面３０上に開くための描画データＤ１０を生成し（ステップ２１７）、この描画データＤ１０をビデオＲＡＭ２７に書き込んで（ステップ２１８）、このルーチンを終了する。
【０１６２】
そして、ビデオＲＡＭ２７に描画データＤ１０が書き込まれることにより、ビデオＲＡＭ２７には画面３０に表示するイメージデータＤ１２が形成され、このイメージデータＤ１２をビデオＲＡＭ２７から読み出して表示部３に供給する。これによりプルアップまたはプルダウンにより、操作者が指定した処理である手書き文字認識処理や、かな漢字変換処理の対象となる文字や文字列の近傍にメニューを開く。
【０１６３】
そして、メニューを構成する項目は、メニューを開く方向がプルアップか、プルダウンかに応じて、処理の対象となる文字や文節に近い位置から遠ざかる方向に、順位の高い順に並べられて表示される。例えば、かな漢字変換処理であれば、使用頻度の高い項目ほど処理対象の文字や文節に近い位置になるようにするなどにより表示される。
【０１６４】
このように、操作者は、ペン１１を画面３０上で大きく移動させることもなく、「手書き文字認識処理」や「かな漢字変換処理」の対象となる文字や文字列の近傍に、操作者のペン入力操作に応じてメニューを開くことができ、その後、メニューからの項目の選択処理をも大きくペン１１を移動させることもなくスムースに行なうことができる。
【０１６５】
なお、ステップ２１４において求められるメニューの中心位置を求めるための式（５）〜（８）のαを変更することにより、メニューを任意の位置に開くようにすることができる。
【０１６６】
上述のような構成を有するこの実施の形態の情報処理装置において、手書き文字入力領域３２の手書き筆跡入力枠３３の中に、ペン１１を用いて、例えば、図８Ａに示すように、かたかなで「マフラー」と入力したところ、図８Ｂに示すように「マつラー」のように、かたかなの「フ」がひらがなの「つ」に誤認識された場合の修正処理について説明する。
【０１６７】
このような場合には、図８Ｃに示すように、誤認識されて表示された文字「つ」のテキスト表示領域３１上の表示位置に、ペン１１を接触させて、接触させたまま、表示された文字の並び方向と直交する方向である、図中矢印が示す方向にペン１１を移動させる。そして、図３を用いて上述したように、ペン１１がペンダウンしたときに設定される領域Ｒ１に到達すると、図８Ｄに示すように、メニュー作成部２５によって、ペンダウンされた位置に表示されている「つ」に対するメニューＭＮ１がプルアップメニューとして開かれ、手書き文字認識処理により得られた文字認識の候補が選択可能な項目として表示される。
【０１６８】
そして、この状態で、操作者がメニューＭＮ１中の「フ」の表示位置をペン１１で接触し、ペンアップすると、情報処理装置によりその操作が、「フ」の選択操作と判定され、テキスト表示領域３１に表示されている「つ」が「フ」に置き換えられる。
【０１６９】
また、図８Ｅに示すように認識されて表示された「つ」の表示位置に、ユーザがペン１１を接触させて、図８Ｅに示す矢印方向にペン１１を移動させると、図８Ｆに示すようにプルダウンメニューＭＮ２が開かれる。
【０１７０】
そして、メニューの項目が表示しきれなかった場合などには、図８Ｇに示すようにメニューＭＮ１またはＭＮ２に隣接してスクロールバー４０が表示され、スクロールバー４０の位置Ｇ１、Ｇ２にペン１１を接触させることにより、メニューの項目をスクロールさせることもできる。
【０１７１】
次に、かな漢字変換処理の例について図９を参照しながら説明する。
【０１７２】
かな漢字変換処理の場合には、例えば、図９Ａに示すようにテキスト表示領域３１に表示された文字列「たなからぼたもち」に対して、かな漢字変換処理の対象となる文字列の範囲が、先ず、指定される。
【０１７３】
この範囲の指定は、図９Ｂに示すように、テキスト表示領域３１に表示されたかな漢字変換する文字の表示位置にペン１１を接触させて、文字の並び方向に文字上をなぞるようにする、いわゆるひきずり操作によって行なわれる。この情報処理装置では、かな漢字変換の範囲として指定された文字が反転表示され、指定範囲が明確に操作者に通知される。
【０１７４】
そして、範囲の指定後、操作者がペン１１をペンアップすると、図９Ｃに示すように、かな漢字変換処理が行なわれ、得られた第１候補が文字列中に表示される。この文字列中に表示された第１候補が誤りであった場合には、操作者は、図９Ｄに示すように、指定した範囲内の文字上にペン１１をペンダウンし、例えば、図１０Ｅに示すように、表示されている文字の並び方向と直交する画面３０の上側方向にペン１１を画面３０のタブレットに接触させたまま移動するようにするひきずり操作を行なう。
【０１７５】
すると、図１０Ｆに示すように、ペン１１を移動させた画面３０の上側方向に、かな漢字変換の候補を項目とするメニューＭＮ３が開かれる。そして、正しい項目、例えば、「棚から」に操作者がペン１１を接触させ、ペンアップさせると、文字列中の「田中ら」が「棚から」に変わり、メニューから選択した候補に修正することができる。
【０１７６】
また、図１０Ｇに示すように、ユーザが表示されている文字の並び方向と直交する画面３０の下側方向にペン１１を画面３０のタブレットに接触させたまま移動するようにひきずり操作を行なうと、図１０Ｈに示すように、画面３０の下側方向に、かな漢字変換の候補を項目とするメニューＭＮ４が開かれる。
【０１７７】
また、このかな漢字変換の場合においても、ペン１１の移動方向、メニューの開く方向、メニューの項目の並び方向は、同じ方向になる。
【０１７８】
なお、かな漢字変換の場合においても、メニューの項目が、表示しきれない場合には、図８Ｇに示したように、スクロールバーを表示させて、メニューの項目をスクロールさせることができる。
【０１７９】
また、この情報処理装置は、かな漢字変換の場合、複文節かな漢字変換を行なうことができる。上述したように、ペン１１を画面３０のタブレットに接触させ、テキスト表示領域３１に表示されている文字の並び方向にひきずり操作することにより、図１１Ａに示すように一連の複文節をかな漢字変換の処理の対象として指定することができる。
【０１８０】
この場合、図１１Ａに示すように、指定された範囲の文字列は、複数の文節に区切られる。そして、ユーザが各文節にペンダウンすることで、かな漢字変換する文節が選択され、選択された文節に対して、メニューが開かれる。
【０１８１】
すなわち、ユーザが、例えば、図１１Ｂに示すように、「操作者の」の文節にペンダウンし、画面３０の下側方向にひきずり操作すると、図１１Ｂに示すように、「操作者の」に対するかな漢字変換の候補群を項目とするメニューＭＮ５が開かれる。
【０１８２】
同様に、ユーザが図１１Ｃに示すように、「視線の」の文節にペン１１をペンダウンし、画面３０の下側方向にひきずり操作したときには、図１１Ｃに示すような「視線の」についての候補群のメニューＭＮ６が、テキスト表示領域において「視線の」という文字列の下側の位置に開かれる。
【０１８３】
また、図１１Ｄに示すように、ユーザにより「移動量は」の文節が選択されたときには、図１１Ｄに示すような「移動量は」についての候補群のメニューＭＮ７が、「移動量は」という文字列の下側の位置に開かれる。
【０１８４】
なお、ユーザが文節をペンダウンにより選択し、ペン１１を画面３０の上側方向にひきずり操作したときには、各項目の上側の近傍に、各文節に対応するメニューが開かれるものである。
【０１８５】
上述したように、この情報処理装置においては、ペン１１の移動方向と、メニューを開く方向と、メニューの項目の並び方向とが同じ方向となる。また、ペン１１を表示された文字の並び方向と直交する方向に移動させなければ、メニューは開かれないため、不必要にメニューが開かれることもない。
【０１８６】
また、処理の対象となる文字の表示位置にペン１１を接触させて、文字の並び方向と直交する方向にペン１１を移動させることによって、処理の対象となる文字に対して、目的とするメニューを開くことができる。すなわち、メニューを開くためにわざわざメニューのタイトルを画面３０の所定の場所に設ける必要もなく、手書き文字認識処理の対象となる文字を、上述のメニューのタイトルと同様に扱うようにすることができる。
【０１８７】
また、メニューを開くためのペン入力操作と、かな漢字変換の処理の対象となる範囲の指定のためのペン入力操作とは、ペン１１の移動方向が異なるため、それらペン入力操作を混在して使用することができる。
【０１８８】
また、手書き文字認識処理、かな漢字変換処理を問わず、メニューは処理の対象となる文字や文字列の近傍に開かれるため、処理の対象の指定→メニューを開く→メニューから項目を選択するといった一連のペン入力操作への移行が容易になる。
【０１８９】
［変形例］
上述の実施の形態においては、情報処理装置の画面３０には、入力された文字は、横書きで表示され、メニューは、プルアップもしくはプルダウンにより開く場合として説明したが、入力された文字を縦書きで表示する場合にもこの発明を適用することができる。
【０１９０】
例えば、図１２に示すように、画面３０のテキスト表示領域３１に、かな漢字変換処理の対象となる文字列が、縦書きで表示されている場合を考える。この場合、上述の実施の形態と同様に、縦書きの文字の並び方向（画面３０の上下方向）に、表示された文字列から、かな漢字変換したい文字範囲をペン１１によってひきずり操作することにより指定することができる。図１２においては、文字列、「操作者の」が、かな漢字変換の範囲として指定された状態が示されている。
【０１９１】
そして、指定された範囲内（図１２において四角枠ＭＢ内）にペン１１をペンダウンさせて、このペン１１をペンダウンさせた位置（Ｘｓ、Ｙｓ）を始点Ｓとして、文字列の文字の並び方向と直交する方向、すなわち画面３０の横方向にペン１１を移動させたときには、ペン１１の入力終了位置が図１２に示す領域Ｒ３にあるか領域Ｒ４にあるかによって、始点Ｓの左側（領域Ｒ３側）にメニューを開くか、始点Ｓの右側（領域Ｒ４側）にメニューを開くかを判定するように構成する。
【０１９２】
この場合、領域Ｒ３は、
Ｙ＝  ｍ（Ｘ−Ｘｓ＋ｒ）＋Ｙｓ
で表わされる直線ａ３と
Ｙ＝−ｍ（Ｘ−Ｘｓ＋ｒ）＋Ｙｓ
で表わされる直線ｂ３とにより挟まれた領域である。したがって領域Ｒ３は、
Ｙ＞  ｍ（Ｘ−Ｘｓ＋ｒ）＋Ｙｓ  …  （  ９）
Ｙ＜−ｍ（Ｘ−Ｘｓ＋ｒ）＋Ｙｓ  …  （１０）
で示される両式（９）、（１０）を満足するすべての座標（Ｘ、Ｙ）の集まりにより形成される領域として設定される。
【０１９３】
また、領域Ｒ４は、
Ｙ＝−ｍ（Ｘ−Ｘｓ−ｒ）＋Ｙｓ
で表わされる直線ａ４と
Ｙ＝  ｍ（Ｘ−Ｘｓ−ｒ）＋Ｙｓ
で表わされる直線ｂ４とにより挟まれた領域である。したがって領域Ｒ４は、
Ｙ＞−ｍ（Ｘ−Ｘｓ−ｒ）＋Ｙｓ  …  （１１）
Ｙ＜  ｍ（Ｘ−Ｘｓ−ｒ）＋Ｙｓ  …  （１２）
で示される両式（１１）、（１２）を満足するすべての座標（Ｘ、Ｙ）の集まりにより形成される領域として設定される。
【０１９４】
そして、画面３０のタブレット上の始点Ｓに接触させたペン１１を文字列と直交する方向に移動し、その終点が領域Ｒ３にあると判定したときには、始点Ｓの左側の文字列の近傍に、画面３０の右側から左側に向かってメニューを開き、終点が領域Ｒ４にあると判定したときには、始点Ｓの右側の文字列の近傍に、画面３０の左側から右側に向かってメニューを開く。
【０１９５】
また、メニューを構成する項目は、メニューを開く方向に、文字列の近傍から例えば使用頻度順などの優先順位を設けて、その優先順位の高い第１候補から順に並べ、例えば、縦書きで表示する。
【０１９６】
もちろん、始点Ｓの右側、あるいは左側にひきずり操作によりメニューを開き、メニューを構成する項目を横書きで表示するようにすることもできる。
【０１９７】
なお、式（９）〜（１２）の各式において、ｍは、各直線ａ３，ｂ３，ａ４，ｂ４の傾きを示し、ｒは、図１２に示す領域Ｒ０の半径である。また、座標系は、上述の図３と同様に、画面３０の左上端を原点０とし、横軸は原点０の右向き方向が正、縦軸は原点０の下向き方向を正とするものである。
【０１９８】
この場合も、傾きｍの値は１程度とされるのが好ましい。そして、この場合には、ｍの値が１より大きくなれば、領域Ｒ３、Ｒ４の大きさが広がり、１より小さくなれば、領域Ｒ３、Ｒ４の大きさが小さくなり誤判定が少なくなる。
【０１９９】
このように、処理の対象となる文字や文字列が縦書きの場合には、処理の対象の近傍に左向き方向、右向き方向でメニューが開かれる。
【０２００】
また、上述の説明から明らかなように、処理の対象となる文字や文字列が縦書きであっても、処理の対象となる文字や文字列を指定するペン入力操作と、メニューを開くためのペン入力操作とを混在させて使用することができる。
【０２０１】
また、図１３Ｅに示すように、処理の対象として指定した文字や文字列に対して、例えば、「移動」、「複写」、「削除」、「かな漢」、「文字種」などのように、実行することができる編集処理を項目とするメニューを開くようにすることもできる。
【０２０２】
すなわち、図１３Ａ、Ｂに示すように、画面３０のテキスト表示領域３１に表示された文字上にペン１１をペンダウンし、表示された文字上をひきずり操作して、ペンアップすることにより、処理の対象となる範囲を指定する。そして、図１３Ｃに示すように指定した範囲上にペン１１をペンダウンさせて、例えば、図１３Ｄのようにペン１１を画面３０の上方向にひきずり操作することにより、図１３Ｅに示すように編集処理を行なうためのメニューを開くようにする。
【０２０３】
そして、表示されたメニューの項目にペン１１を接触させてペンアップすることにより、その項目が選択されて対応する処理を実行する。
【０２０４】
また、編集処理のメニューは、図１３のようにプルアップによりメニューを開くようにできるほか、プルダウンによってメニューを開くこともできる。また、処理の対象となる文字などが横書きで表示される場合だけでなく、処理の対象となる文字などが、縦書きで表示される場合にも、編集処理のメニューを前述の図１２の例と同様にして開くことができる。
【０２０５】
また、開くメニューは、編集処理のメニューに限るものではなく、操作状況や処理の対象などに応じて各種のパラメータを項目とするメニューを開くようにすることができる。
【０２０６】
なお、上述においては、ペン入力によって、各種の操作をするようにしたが、ペン入力に限るものではなく、画面上の座標位置の指定ができるいわゆるマウスなどのポインティングデバイスを用いた場合にも、この発明を適用することができる。例えばマウスの場合、ボタンクリックによりペンダウン対応する始点Ｓを設定し、当該ボタンを押したまま移動させることにより、いわゆるドラッグという引きずり操作を行なうことでペンを接触したままの移動と同様の操作を行なうことができる。
【０２０７】
また、電子手帳に限らず、パーソナルコンピュータ、ワードプロセッサなどの情報の入力およびテキスト表示が可能な各種の情報処理装置にこの発明を適用することができる。
【０２０８】
また、上述においては、編集処理などの対象が文字、文字列の場合について説明したが、記号や図形など画面に表示される各種のテキストやキャラクタを処理の対象とすることができる。
【０２０９】
なお、メニューの表示位置の設定は、ペンダウン位置に応じて求めるようにしたが、例えば、メニューを開くための終点であるペンアップ位置を基準にしたり、処理の対象として選択した文字や文字列などの表示範囲の所定の位置を基準にするなど各種の設定方法で設定することが可能である。
【０２１０】
また、領域Ｒ１、Ｒ２は、三角形状の領域として設定するようにしたが、三角形に限るものではなく、他の多角形でもよいし、図３において点線で示したように、円弧を用いて、領域Ｒ１、Ｒ２を設定するようにしてもよい。
【０２１１】
また、上述したように不反応領域Ｒ０を設けるようにすることによって、メニュー作成部２５を制御して、ペン１１を画面３０のタブレットに接触させているときだけメニューを開くようにし、ペン１１をタブレットから離すと、そのときペン１１が接触していた画面３０上の位置に表示されていたメニューの項目を選択して、メニューのウインドウを閉じるようにするメニューも実現できる。
【０２１２】
【発明の効果】
以上説明したように、この発明によれば、編集処理などの処理の対象となる画面に表示された文字、記号、図形などのテキストに直接働きかけることによりメニューを開くことができるため、各種のメニューを開くようにする場合にも、ペンなどのポインティングデバイスおよび操作者の視点の移動量を少なくすることができる。
【０２１３】
また、メニューを開くためのペンなどのポインティングデバイスによる操作を画面上に表示されている文字、記号、図形などのテキストの並び方向と交叉する方向にひきずり操作するようにしたため、例えば、処理の対象の指定していなどのポインティングデバイスによる他の操作と、メニューを開く操作とを共存させることができる。
【０２１４】
また、操作者によるペンなどのポインティングデバイスの操作に応じて、メニューを開くことができ、さらに、メニューを開く方向や位置をも、操作者が指定することができるため、メニューを開くことによって、表示されているテキストが隠れる画面上の場所を操作者がコントロールすることができる。
【０２１５】
また、操作者の操作に応じて、メニューを開く方向が変えられるため、処理の対象となり、メニューを開くときのメニューのタイトルとなる画面に表示された文字、記号、図形などのテキストが、画面上のどの位置に表示されていてもメニューを開くことができる。
【０２１６】
また、メニューを構成する項目には、順位をつけることにより、処理の対象となる文字、記号、図形などのテキストに近い場所から離れる方向へ、順位に応じて第１候補から順に表示されるため、メニューを開くためのペンなどのポインティングデバイスの移動方向と、メニューを開く方向と、メニューを構成する項目の並び方向のすべてが同じ方向となり、ポインティングデバイスと操作者の視点の移動量が少なくなり、メニューを開く動作からメニューの項目を選択する動作への移行が容易になる。
【図面の簡単な説明】
【図１】この発明による情報処理装置の実施の形態を説明するための図である。
【図２】この発明による情報処理装置の実施の形態の画面について説明するための図である。
【図３】この発明による情報処理装置の実施の形態においてのメニューを開く方向の判定法の一例を説明するための図である。
【図４】この発明による情報処理装置の一実施の形態の入力検査部の処理を説明するための図である。
【図５】図４に続くフローチャートである。
【図６】この発明による情報処理装置の一実施の形態のメニュー作成部の処理を説明するための図である。
【図７】図６に続くフローチャートである。
【図８】この発明による情報処理装置の実施の形態において行なわれる文字認識処理を説明するための図である。
【図９】この発明による情報処理装置の実施の形態において行なわれるかな漢字変換処理を説明するための図である。
【図１０】この発明による情報処理装置の実施の形態において行なわれるかな漢字変換処理を説明するための図である。
【図１１】この発明による情報処理装置の実施の形態において、開かれるメニューの他の例を説明するための図である。
【図１２】この発明による情報処理装置の実施の形態において、メニューを開く方向の判定法の変形例を説明するための図である。
【図１３】この発明による情報処理装置の実施の形態において開くメニューの他の例を説明するための図である。
【図１４】従来のペン入力操作が可能な電子手帳においてのペン入力操作を説明するための図である。
【符号の説明】
１      入力部
１１    ペン
２      演算処理部
２１    入力検査部
２２    ＲＡＭ
２２１  イベントキュー領域
２２２  筆跡データ領域
２２３  テキスト範囲データ領域
２２４  かな漢字ポインタ領域
２２５  モード領域
２２６  文字認識ポインタ領域
２３    手書き文字認識部
２４    かな漢字変換部
２５    メニュー作成部
２５１  メニュー項目データ作成部
２５２  メニュー描画データ作成部
２６    テキスト管理部
２７    ビデオＲＡＭ
３      表示部
３１    表示領域
３２    手書き文字入力領域
【図１】
0003864999.tif 000002
【図２】
0003864999.tif 000003
【図３】
0003864999.tif 000004
【図４】
0003864999.tif 000005
【図５】
0003864999.tif 000006
【図６】
0003864999.tif 000007
【図７】
0003864999.tif 000008
【図８】
0003864999.tif 000009
【図９】
0003864999.tif 000010
【図１０】
0003864999.tif 000011
【図１１】
0003864999.tif 000012
【図１２】
0003864999.tif 000013
【図１３】
0003864999.tif 000014
【図１４】
0003864999.tif 000015