(57)【要約】【課題】  本発明は、ＯＳによって提供されるソフトウェアキーボードの表示を抑制するモードとＯＳによって提供されるソフトウェアキーボードを表示しないモードとを切り替えることで、利便性の高い入力システムを提供することを目的とする。【解決手段】  本発明の情報処理装置は、テキスト入力エリアに、ＯＳによって提供されるソフトウェアキーボードの表示を抑制する属性を付加することでＯＳによって提供されるソフトウェアキーボードの表示を抑制する第１のモードと、属性を付加しないことでＯＳによって提供されるソフトウェアキーボードを表示可能な第２のモードの２つのモードを切り替え、第１のモードに切り替えられた場合に、テンキーのソフトウェアキーボードが表示され、第２のモードに切り替えられた場合に、ＯＳによって提供されるソフトウェアキーボードが表示される。【選択図】  図１１
2016167155.tif 000002
【特許請求の範囲】
【請求項１】
テキストを入力するための領域であるテキスト入力エリアに、オペレーティングシステムによって提供されるソフトウェアキーボードの表示を抑制する属性を付加することで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードの表示を抑制する第１のモードと、前記属性を付加しないことで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードを表示可能な第２のモードを切り替える切り替え手段と、を有し、
前記切り替え手段によって前記第１のモードに切り替えられた場合に、テンキーのソフトウェアキーボードが表示され、前記切り替え手段によって前記第２のモードに切り替えられた場合に、前記オペレーティングシステムによって提供される前記ソフトウェアキーボードが表示されることを特徴とする情報処理装置。
【請求項２】
前記切り替え手段によって前記第１のモードに切り替えられた場合に、キャレット及び選択された文字列を表現する領域を、ウェブページの要素を挿入することで表示する表示手段と、を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記切り替え手段によって前記第２のモードに切り替えられた場合に、前記ウェブページの要素によって表現されていた前記選択された文字列と同一の文字列が前記オペレーティングシステムの機能によって選択されるように、前記選択された文字列に関する情報を前記オペレーティングシステムに通知する通知手段と、を有し、
前記通知手段によって前記選択された文字列に関する前記情報が通知されることで、前記第１のモードから前記第２のモードに選択された文字列が引き継がれることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
キャレットを移動するための指示を受け付ける受信手段と、
前記受信手段が前記キャレットを移動するための指示を受け付けて、かつ現在のモードが第１のモードである場合に、前記ウェブページの要素によって表現されるキャレットの位置を更新し、前記受信手段が前記キャレットを移動するための指示を受け付けて、かつ現在のモードが第２のモードである場合に、前記オペレーティングシステムにキャレットの位置を更新するための情報を通知する通知手段と、を有することを特徴とする請求項２又は請求項３に記載の情報処理装置。
【請求項５】
前記テキスト入力エリアとして複数行を許可するか否かの設定を受け付ける受付手段と、
前記受付手段が複数行を許可する設定を受け付けた場合に、複数行を入力可能なウェブページの要素を前記テキスト入力エリアとして作成し、前記受付手段が複数行を許可しない設定を受け付けた場合に、一行のみ入力可能なウェブページの要素を前記テキスト入力エリアとして作成する作成手段と、を有することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記テキスト入力エリアには文字認識の結果が入力されることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記テキスト入力エリアのテキストが選択された場合に、選択された文字列に基づいてデータベースを検索して検索結果を表示する検索手段と、
表示された前記検索結果をユーザーが選択した場合に、前記テキスト入力エリアの文字列を前記ユーザーが選択した前記検索結果の文字列で置換する置換手段と、を有することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
コンピュータに、
テキストを入力するための領域であるテキスト入力エリアに、オペレーティングシステムによって提供されるソフトウェアキーボードの表示を抑制する属性を付加することで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードの表示を抑制する第１のモードと、前記属性を付加しないことで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードを表示可能な第２のモードを切り替える切り替え工程と、を実行させ、
前記切り替え工程によって前記第１のモードに切り替えられた場合に、テンキーのソフトウェアキーボードが表示され、前記切り替え工程によって前記第２のモードに切り替えられた場合に、前記オペレーティングシステムによって提供される前記ソフトウェアキーボードが表示されることを特徴とするプログラム。
【請求項９】
前記コンピュータに、
前記切り替え工程によって前記第１のモードに切り替えられた場合に、キャレット及び選択された文字列を表現する領域を、ウェブページの要素を挿入することで表示する表示工程と、を実行させることを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記コンピュータに、
前記切り替え工程によって前記第２のモードに切り替えられた場合に、前記ウェブページの要素によって表現されていた前記選択された文字列と同一の文字列が前記オペレーティングシステムの機能によって選択されるように、前記選択された文字列に関する情報を前記オペレーティングシステムに通知する通知工程と、を実行させ、
前記通知工程によって前記選択された文字列に関する前記情報が通知されることで、前記第１のモードから前記第２のモードに選択された文字列が引き継がれることを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記コンピュータに、
キャレットを移動するための指示を受け付ける受信工程と、
前記受信工程で前記キャレットを移動するための指示を受け付けて、かつ現在のモードが第１のモードである場合に、前記ウェブページの要素によって表現されるキャレットの位置を更新し、前記受信工程で前記キャレットを移動するための指示を受け付けて、かつ現在のモードが第２のモードである場合に、前記オペレーティングシステムにキャレットの位置を更新するための情報を通知する通知工程と、を実行させることを特徴とする請求項９又は請求項１０に記載のプログラム。
【請求項１２】
前記コンピュータに、
前記テキスト入力エリアとして複数行を許可するか否かの設定を受け付ける受付工程と、
前記受付工程で複数行を許可する設定を受け付けた場合に、複数行を入力可能なウェブページの要素を前記テキスト入力エリアとして作成し、前記受付工程で複数行を許可しない設定を受け付けた場合に、一行のみ入力可能なウェブページの要素を前記テキスト入力エリアとして作成する作成工程と、を実行させることを特徴とする請求項８乃至１１のいずれか１項に記載のプログラム。
【請求項１３】
前記テキスト入力エリアには文字認識の結果が入力されることを特徴とする請求項８乃至１２のいずれか１項に記載のプログラム。
【請求項１４】
前記コンピュータに、
前記テキスト入力エリアのテキストが選択された場合に、選択された文字列に基づいてデータベースを検索して検索結果を表示する検索工程と、
表示された前記検索結果をユーザーが選択した場合に、前記テキスト入力エリアの文字列を前記ユーザーが選択した前記検索結果の文字列で置換する置換工程と、を実行させることを特徴とする請求項８乃至１３のいずれか１項に記載のプログラム。
【請求項１５】
テキストを入力するための領域であるテキスト入力エリアに、オペレーティングシステムによって提供されるソフトウェアキーボードの表示を抑制する属性を付加することで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードの表示を抑制する第１のモードと、前記属性を付加しないことで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードを表示可能な第２のモードを切り替える切り替え工程と、を有し、
前記切り替え工程によって前記第１のモードに切り替えられた場合に、テンキーのソフトウェアキーボードが表示され、前記切り替え工程によって前記第２のモードに切り替えられた場合に、前記オペレーティングシステムによって提供される前記ソフトウェアキーボードが表示されることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はソフトウェアキーボードの表示を抑制する技術に関する。
【背景技術】
【０００２】
従来、画面に表示されたソフトウェアキーボードからタッチ入力を行うことによって、テキストを入力する領域に文字を入力する技術が開示されている。ソフトウェアキーボードは、こうした領域をユーザーがタッチしてフォーカスを移動させることをきっかけとして、自動的に表示される。特許文献１は、入力フィールドにフォーカスが移動した場合にソフトウェアキーボードを表示させ、入力フィールドからフォーカスが外れた場合にソフトウェアキーボードを消去する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１０８９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本明細書ではテキストを入力するための領域であるテキスト入力エリアに文字を入力する際、テキスト入力エリアにフォーカスを移動させることで、文字を入力するためのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）標準のソフトウェアキーボードが表示される場合について検討する。
【０００５】
このようなＯＳ標準のソフトウェアキーボードでは、ユーザーによっては数値の入力が行いにくいケースがある。例えば、数値を入力するのが主要な用途のアプリケーションの場合、タブレット標準の数値入力用ソフトウェアキーボードでは、数値が横一列に配置されている場合があり、テンキーでの操作に慣れているユーザーにとって、入力効率が悪くなる可能性がある。一方で、常にテンキーのソフトウェアキーボードしか表示しないように構成してしまうと、数値以外を入力することができなくなってしまう。
【０００６】
これに対して本発明は、ＯＳによって提供されるソフトウェアキーボードの表示を抑制するモードとＯＳによって提供されるソフトウェアキーボードを表示しないモードとを切り替えることで、利便性の高い入力システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明に係る情報処理装置は、
テキストを入力するための領域であるテキスト入力エリアに、オペレーティングシステムによって提供されるソフトウェアキーボードの表示を抑制する属性を付加することで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードの表示を抑制する第１のモードと、前記属性を付加しないことで前記オペレーティングシステムによって提供される前記ソフトウェアキーボードを表示可能な第２のモードを切り替える切り替え手段と、を有し、
前記切り替え手段によって前記第１のモードに切り替えられた場合に、テンキーのソフトウェアキーボードが表示され、前記切り替え手段によって前記第２のモードに切り替えられた場合に、前記オペレーティングシステムによって提供される前記ソフトウェアキーボードが表示されることを特徴とする。
【発明の効果】
【０００８】
本発明によって、ＯＳによって提供されるソフトウェアキーボードの表示を抑制する属性をテキスト入力エリアに付加するモードと付加しないモードを切り替えることで、利便性の高い入力システムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】システム構成の一例を示す図である。
【図２】ハードウェア構成の一例を示す図である。
【図３】各装置のソフトウェアの構成の一例を示す図である。
【図４】モバイルアプリのＵＩの一例を示す図である。
【図５】モバイルアプリのＵＩの一例を示す図である。
【図６】モバイルアプリのＵＩで、テキストを選択する操作を示す図である。
【図７】モバイルアプリで、テキストを選択する操作を行った際の処理のフローチャートである。
【図８】テキスト入力エリアの終端座標リストを表す図である。
【図９】モバイルアプリのＵＩで、数値キーが押下された際の処理のフローチャートである。
【図１０】モバイルアプリのＵＩの一例を示す図である。
【図１１】モバイルアプリのＵＩで、ＯＳの標準ソフトウェアキーボードの表示／非表示を切り替えるためのボタンを押下した際の処理のフローチャートである。
【図１２】キャレット移動キーの左右の矢印キーが押下された場合の処理のフローチャートである。
【図１３】モバイルアプリのＵＩの一例を示す図である。
【図１４】モバイルアプリのＵＩ（設定画面）の一例を示す図である。
【図１５】モバイルアプリのＵＩの一例を示す図である。
【図１６】設定に応じて２種類のテキスト入力エリアを挿入する処理のフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。なお、実施形態は、本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するための手段に必須であるとは限らない。
【００１１】
［システム構成］
本実施形態に係るＦＡＸ受注システム１０００の構成について図１を用いて説明する。ＦＡＸ受注システム１０００は、画像形成装置１０１、ＦＡＸ保管サーバー１０２、基幹業務サーバー１０３、情報処理装置の一例であるモバイル端末１０４、ＰＣ端末１０５を有する。画像形成装置１０１は、ユーザー環境に配置された装置であり、ネットワーク１００に接続されるとともに、ＦＡＸを受信するための公衆回線１０６に接続されている。ＦＡＸ保管サーバー１０２、基幹業務サーバー１０３、モバイル端末１０４、ＰＣ端末１０５は、ユーザー環境に配置された装置であり、ネットワーク１００を介して互いに通信可能に接続されている。
【００１２】
なお、図１においてＦＡＸ保管サーバー１０２、基幹業務サーバー１０３、モバイル端末１０４、ＰＣ端末１０５は同一ネットワークに属しているが、それぞれが独立したネットワークに属しているか、又はインターネットに直接接続されていても構わない。また、各サーバーは、１台で構成されていてもよいし、複数台で構成されていてもよい。
【００１３】
ＦＡＸ保管サーバー１０２は、画像形成装置１０１と同一のネットワークに存在するオンプレミスのＳＭＢ（Ｓｅｒｖｅｒ  Ｍｅｓｓａｇｅ  Ｂｌｏｃｋ）サーバー等である。あるいは、インターネットに接続された公知の一般的なストレージサーバーであっても構わない。例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）社のＯｎｅＤｒｉｖｅ（登録商標）やＧｏｏｇｌｅ（登録商標）社のＧｏｏｇｌｅドライブなどがある。
【００１４】
基幹業務サーバー１０３は、特定の業務に関して、ＰＣ端末１０５で動作する基幹システム接続アプリケーションを通じて情報の入力を受け付け、処理を行うサーバーである。本発明において、基幹業務サーバーが受け付ける情報、および、それに基づいて実行する処理については、規定されるものではない。また、入力元の情報がＦＡＸから抽出された情報であることを、必ずしも想定する必要はない。基幹業務サーバー１０３は、単に、ＰＣ端末１０５で動作する基幹システム接続アプリケーションを通じて情報の入力を受け付け、処理を行うという条件だけを満たせばよい。
【００１５】
［ハードウェア構成］
図２は、ＦＡＸ受注システム１０００を構成する各装置（画像形成装置１０１、モバイル端末１０４、基幹業務サーバー１０３）のハードウェアの構成の一例を示す図である。ＦＡＸ受注システム１０００を構成する各装置は、各種のユニット（２０２〜２０７）を含んで構成される。
【００１６】
なお、ＦＡＸ受注システム１０００を構成する各装置のハードウェア構成は同一でも構わないし、それぞれ異なっていても構わない。
【００１７】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０２は、各種のプログラムを実行し、様々な機能を実現するユニットである。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０４は、各種のプログラム等を記憶するユニットである。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３は、各種の情報を記憶するユニットである。また、ＲＡＭ２０３は、ＣＰＵ２０２の一時的な作業記憶領域としても利用されるユニットである。例えば、ＣＰＵ２０２は、ＲＯＭ２０４に記憶されているプログラムをＲＡＭ２０３にロードしてプログラムを実行する。
【００１８】
加えて、ＣＰＵ２０２がフラッシュメモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）といった外部記憶装置に記憶されているプログラムに基づき処理を実行する。これにより、図３に示されるようなＦＡＸ受注システム１０００を構成する各装置のソフトウェア構成及び後述するシーケンスの各ステップの処理が実現される。
【００１９】
なお、装置の機能及び後述するシーケンスに係る処理の全部又は一部については専用のハードウェアを用いて実現してもよい。
【００２０】
Ｉｎｐｕｔ／Ｏｕｔｐｕｔインターフェース２０５は、装置に接続されているディスプレイ（不図示）にデータを送信する他、同じく装置に接続されているポインティングデバイス（不図示）からデータを受信するユニットである。
【００２１】
ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０６は、装置をネットワーク１００に接続するためのユニットである。上述したユニットは、バス２０７を介してデータの送受信を行うことが可能に構成されている。
【００２２】
さらに、画像形成装置１０１は、ＦＡＸユニット（不図示）を搭載しており、バス２０７を介して各ユニットとデータを送受信することが可能に構成されている。ＦＡＸユニットは、各装置より受けたＦＡＸ制御言語をイメージに展開し不図示の公衆回線、又はインターネット１１０（ＩＰ−ＦＡＸ）を介して他のＦＡＸ装置（不図示）へ転送することができる。
【００２３】
ここで、画像形成装置１０１は、印刷ユニット（不図示）を更に搭載していても構わない。印刷ユニットは、バス２０７を介して各ユニットとデータを送受信することが可能に構成されている。なお、印刷ユニットは、ラスタイメージを紙などの記録媒体に記録（印刷）することが可能なユニットである。
【００２４】
そして、画像形成装置１０１は、スキャナユニット（不図示）を更に搭載していても構わない。スキャナユニットは、バス２０７を介して各ユニットとデータを送受信することが可能に構成されている。なお、スキャナユニットは、画像を入力することが可能なユニットである。
【００２５】
また、モバイル端末１０４では、Ｉｎｐｕｔ／Ｏｕｔｐｕｔインターフェース２０５にタッチパネル（不図示）が接続されている。タッチパネルは、ディスプレイ等の表示部の一例であり、出力（表示）と入力との２つの機能を備えている。
【００２６】
［ソフトウェア構成（全般）］
次に、ＦＡＸ受注システム１０００を構成する各装置のソフトウェアの構成について図３を用いて説明する。
【００２７】
図３に示される各ソフトウェア（アプリケーション）における機能（モジュール部）を実現するプログラムは、各装置のＲＯＭ２０４等に記憶されている。
【００２８】
［ソフトウェア構成（モバイル端末）］
次に、モバイル端末１０４におけるソフトウェアの構成について説明する。なお、モバイル端末１０４は、携帯端末の一例であり、無線通信機能などの装備によって自由な場所で利用できる端末である。
【００２９】
モバイル端末１０４のＯＳ（不図示）は、後述する各モジュール（画像管理部３０１、アドレス管理部３０２、通知処理部３０３）を有する。
【００３０】
画像管理部３０１は、画像やアプリケーションデータを管理する。ＯＳは、画像管理部３０１を利用するための制御ＡＰＩを提供しており、各アプリはその制御ＡＰＩを利用することで画像管理部３０１が管理する画像やアプリケーションデータの取得や保存を行う。
【００３１】
モバイルアプリ３０４は、モバイル端末１０４のＯＳのインストール機能（例えばＡｐｐｌｅ  ＳｔｏｒｅやＧｏｏｇｌｅ  Ｐｌａｙ）を利用して、ダウンロードしインストールすることにより実行可能なアプリケーションである。モバイルアプリ３０４は、ＦＡＸ保管サーバー１０２が管理するデータに対する各種のデータ処理を行う。
【００３２】
メイン制御部３０５は、モバイル端末１０４用のアプリケーション（モバイルアプリ）３０４を制御し、後述する各モジュール部（３０５〜３１４）に対する指示、管理を行う。
【００３３】
情報表示部３０６は、メイン制御部３０５からの指示に従い、モバイルアプリ３０４のユーザインタフェース（ＵＩ）をユーザーに提供する。
【００３４】
図４は、モバイルアプリ３０４のＵＩ（携帯端末用のＵＩ）を提供する画面の一例（モバイル端末画面４００）を示す図である。モバイル端末画面４００は、モバイル端末１０４のタッチパネルに表示される。また、モバイルアプリ３０４に対するユーザーの操作は、タッチパネルを介して受け付ける。
【００３５】
なお、モバイルアプリ３０４のＵＩの形態（位置、大きさ、範囲、配置、表示内容など）は、図に示す形態に限定されるものではなく、モバイル端末１０４の機能を実現することができる適宜の構成を採用することができる。
【００３６】
再び図３に戻って各モジュールの説明を行う。
【００３７】
操作情報取得部３０７は、情報表示部３０６により表示されたモバイルアプリ３０４のＵＩがユーザー操作された情報を取得し、取得した情報をメイン制御部３０５に通知する。例えば、タッチパネルをユーザーが手で触れると、操作情報取得部３０７は、触れられた画面上の位置の情報を感知し、感知した位置の情報をメイン制御部３０５に送信する。
【００３８】
データ送受信部３０８は、ＦＡＸ保管サーバー１０２とデータの送信および受信を行い、送受信するデータをメイン制御部３０５とやり取りする。データ送受信部３０８は前述のＦＡＸデータ操作及びＦＡＸデータ編集によるファイルの更新をＦＡＸ保管サーバー１０２に要求する。
【００３９】
記憶部３０９は、操作情報取得部３０７を介して、換言するならばモバイルアプリ３０４のＵＩを介して、ユーザーにより入力された設定値を保存（永続化）する。さらに記憶部３０９は、データ送受信部３０８でＦＡＸ保管サーバー１０２から受信したデータ及び通知処理部３０３を介して受けた通知情報を保存する。
【００４０】
ＦＡＸ画像解析部３１０は、ＦＡＸイメージを解析して、レイアウト情報を生成する。レイアウト情報には、ＦＡＸイメージから抽出された矩形領域とその種別（文字、図形、線、表など）が含まれる。
【００４１】
ＯＣＲ部３１１は、ＦＡＸ画像解析部３１０で抽出した矩形領域の中で、文字と判定された矩形領域に対して、ＯＣＲ（光学文字認識）処理を行う。
【００４２】
メッセージ生成部３１２は、ＰＣ端末１０５の中継アプリ３２１に送信するメッセージを生成する。メッセージには、ＯＣＲ部３１１で処理した結果の文字列をユーザーが編集したテキスト情報とそれに紐づく種別情報が含まれる。
【００４３】
［ソフトウェア構成（ＰＣ端末）］
次に、ＰＣ端末１０５におけるソフトウェアの構成について説明する。
【００４４】
ＰＣ端末１０５は、ＰＣ端末１０５にインストールされたＯＳ（オペレーティングシステム）上で複数のアプリケーションを実行することが可能である。図３では、複数のアプリケーションの一つである中継アプリ３２１と基幹システム接続アプリ３３１について記載している。
【００４５】
なお、基幹システム接続アプリ３３１は、ユーザーからの入力を受け付け、基幹業務サーバー１０３に送信するアプリケーションである。本発明において、基幹システム接続アプリは、ユーザーからの入力を受け付ける機能を備えるアプリケーションであればよいので、その詳細については省略する。
【００４６】
中継アプリ３２１は、モバイルアプリ３０４から受信したテキスト情報とそれに紐づく種別にしたがって、基幹システム接続アプリ３３１に情報を入力するアプリケーションである。
【００４７】
［ソフトウェア構成（画像形成装置）］
次に、画像形成装置１０１におけるソフトウェアの構成について説明する。
【００４８】
画像形成装置１０１はＪａｖａ（登録商標）のプラットフォーム上で複数のアプリケーションを実行する。図３では複数のアプリケーションの一つであるＦＡＸ受信アプリ３４１について記載している。ＦＡＸ受信アプリ３４１は、ＦＡＸ保管サーバー１０２とデータの送信および受信を行う。
【００４９】
［モバイルアプリＵＩ］
図４は、モバイルアプリ３０４のＵＩ（携帯端末用のＵＩ）を提供する画面の一例（モバイル端末画面４００）を示す図である。この例では、画面はＨＴＭＬを使用して記述されている。モバイル端末画面４００は、モバイル端末１０４のタッチパネルに表示される。
【００５０】
図４は、システムが受信したＦＡＸデータの画像の一部にＯＣＲを適用した結果を表示している画面である。４０１はＦＡＸデータの画像の一部が表示される領域である。４０２はテキスト入力エリアである。４０２は、初期表示では、４０１の画像に対してＯＣＲを適用した結果の文字列が表示されているが、表示されている文字列は、ユーザーの操作によって、編集することが可能である。４１３は、テキストクリアボタンである。このボタンを押下すると、テキスト入力エリアに表示されている文字列がすべてクリアされる。４０３は、数値入力キー（テンキー）が表示された領域である。４０３は、ＯＳによって提供される標準のソフトウェアキーボードではなく、モバイルアプリ３０４自身が提供している数値入力用インターフェースである。４０３のキーを押下することによって、各キーに対応した数値がテキスト入力エリア４０２の文字列に反映される。４０４は、ＯＳ標準のソフトウェアキーボードの表示／非表示を切り替えるボタンである。図４の画面は、ＯＳ標準のソフトウェアキーボードが非表示の状態であるが、４０４のボタンが押下されることによって、ＯＳ標準のソフトウェアキーボードが表示され、そのキーボードを使用して、テキスト入力エリア４０２に、文字を入力することができる。４１０は、削除キーである。テキスト入力エリア４０２の文字を削除する際に使用するキーである。４１１は、バックスペースキーであり、削除キー４１０と同様に、テキスト入力エリア４０２の文字を削除する際に使用するキーである。４１２は、履歴ＤＢ検索結果表示欄である。４１２については、図１３を用いた説明で詳しく説明する。４０５、４０６、４０７は、テキスト入力エリア４０２の文字列をＰＣ端末１０５の中継アプリ３２１に送信する際に、付加する種別情報を決定するボタンである。４０５、４０６、４０７は、それぞれ、電話番号、商品コード、商品数量に対応している。４０８は、テキスト入力エリア４０２の文字列に、４０５〜４０７の中から選択された種別情報を付加してＰＣ端末１０５の中継アプリ３２１に送信するトリガとなるボタンである。ユーザーは、テキスト入力エリア４０２の編集が完了したら、送信ボタン４０８を押下して、この画面での処理を終了する。あるいは、キャンセルボタン４０９ボタンを押下することによって、この画面での処理をキャンセルする。
【００５１】
モバイルアプリ３０４において、テキスト入力エリア４０２にフォーカスが移動した場合、ＯＳ標準のソフトウェアキーボードが表示される。ここでフォーカスという用語について説明する。画面内に複数のテキスト入力エリア４０２などのコントロールがある場合、通常一度にすべてのコントロールを入力したり操作することはできない。よって、タッチ操作でどのコントロールを操作対象とするかを選択する必要がある。このように操作対象としてコントロールが選択され、入力や操作を受け付けられる状態になることを、そのコントロールにフォーカスが移動すると表現する。
【００５２】
図４の画面では、ＯＳ標準のソフトウェアキーボードが表示されないようするため、テキスト入力エリア４０２にフォーカスが移動するのを抑制している。以降、どうやって抑制しているのかを具体的に説明する。ＨＴＭＬで、テキスト入力エリアを表示する場合、以下のように、ｉｎｐｕｔ要素を用いる。
<input>
ｉｎｐｕｔ要素にｒｅａｄｏｎｌｙ属性を付加することによって、テキスト入力エリア４０２にフォーカスが移動するのを抑制することができる。
<input readonly="readonly">
ｒｅａｄｏｎｌｙ属性はＯＳ標準のソフトウェアキーボードの表示を抑制する属性である。このためｒｅａｄｏｎｌｙ属性を付加したテキスト入力エリアでは、ＯＳ標準のソフトウェアキーボードを使用した文字列の修正を行うことができない。よって、本明細書ではＯＳ標準のソフトウェアキーボードを使用せずに、文字列の入力や編集を行う手段を提供する。また、文字が挿入される位置を示すキャレットや、選択された文字列を囲む矩形を表示する機能も提供する。（ｒｅａｄｏｎｌｙ属性を付加していないテキスト入力エリアの場合は、キャレットや文字列の選択領域を表す矩形は、ＯＳによって自動的に表示される）。
【００５３】
図５は、図４の画面において、テキスト入力エリア４０２に表示されている文字列が選択された状態を表している。５０１は、以下のようなＨＴＭＬのｄｉｖ要素を挿入することによって、テキスト入力エリア４０２に重ねて、疑似的にキャレットを表示した例である。
<div style="position: absolute; background-color: red; left: 146px; top: 5px; width: 1px; height: 56px; opacity: 1;"></div>
５０２は、以下のようなＨＴＭＬのｄｉｖ要素を挿入することによって、テキスト入力エリア４０２に重ねて、疑似的に文字列の選択範囲を表す矩形を表示した例である。
<div style="position: absolute; background-color: blue; left: 52px; top: 5px; width: 94px; height: 56px; opacity: 0.2;"></div>
【００５４】
［テキスト入力エリアの文字列の選択］
図６は、テキスト入力エリア４０２内の文字列を、ユーザーが選択する操作を行った結果、文字列が選択されたことを示す図である。テキスト入力エリア４０２の上をタッチし、左から右に移動することによって、文字列が選択される。本実施例のモバイルアプリ３０４では、ＪａｖａＳｃｒｉｐｔ（登録商標）を使用することによって、この操作を実現している。選択開始文字６０１は、選択された文字列の先頭の文字を指している。選択終了文字６０２は、選択された文字列の最後の文字の次の文字（つまり、選択範囲外の文字の先頭）を指している。テキスト入力エリア４０２に入力されている文字列の全てが選択されている場合、選択終了文字６０２はテキスト入力エリア４０２に入力された文字列の終端を意味する終端記号となる。選択開始文字６０１と選択終了文字６０２が一致する場合、テキスト入力エリア４０２内の文字は選択されていないと判断する。
【００５５】
図７は、図６で示した、テキスト入力エリア４０２内の文字列を、ユーザーが選択する際のモバイルアプリ３０４の処理のフローチャートである。このフローチャートの前提として、テキスト入力エリア４０２の各文字の終端までの幅（言い換えれば、テキスト入力エリア４０２の左端を原点としたｘ座標）のリスト（終端座標リストと呼ぶ）を作成する。
【００５６】
図８は、終端座標リストを説明するための図である。文字列の幅は、ＪａｖａＳｃｒｉｐｔ（登録商標）を使用して、（非表示の）ｃａｎｖａｓ要素から取得する。８０１は、１文字目の幅を示している。８０２は、２文字目までの幅（１文字目と２文字目の幅の和）を示している。以下、同様に、８０３〜８０６は、それぞれ、３、４、５、６文字目までの幅を示している。８０７は、終端座標リストである。終端座標リスト８０７には、８０１〜８０６の幅を示す値がテキスト入力エリア４０２内の文字数分、保持されている。
【００５７】
Ｓ７０１で、ユーザーがモバイル端末のタッチパネルにタッチした際に発生するタッチ開始イベントを取得して、タッチイベント開始イベントに含まれるタッチ開始座標（テキスト入力エリア４０２内の相対座標）を取得する。Ｓ７０２で、終端座標リスト８０７を検索し、Ｓ７０３で、終端座標リスト８０７に基づいてタッチ開始座標のｘ座標と最も近い値を持つ文字の次の文字を選択開始文字として保持する。例えば、タッチ開始座標のｘ座標が４だった場合、終端座標リスト８０７において最も近い値を持つ１文字目の次の２文字目が選択開始文字となる。Ｓ７０４で、ユーザーの指（あるいは、タッチペン）が、タッチパネルから離れた際に発生するタッチ終了イベントを取得して、タッチイベント終了イベントに含まれるタッチ終了座標（テキスト入力エリア４０２内の相対座標）を取得する。Ｓ７０５で、終端座標リスト８０７を検索し、Ｓ７０６で、終端座標リスト８０７に基づいてタッチ終了座標のｘ座標と最も近い値を持つ文字の次の文字を選択終了文字として保持する。例えば、タッチ終了座標のｘ座標３２だった場合、終端座標リスト８０７において最も近い値を持つ５文字目の次の６文字目が選択終了文字となる。したがって、２文字目から５文字目までが選択範囲文字となる。Ｓ７０７で、選択終了文字の前の文字の終端位置にキャレットを表示するためのｄｉｖ要素を挿入する。Ｓ７０８で、選択開始文字と選択終了文字が同じかどうかを判定する。これは、文字列が選択されているかどうかを判定している。つまり、選択開始文字と選択終了文字が同じであれば文字列は選択されていない、選択開始文字と選択終了文字が異なる場合は、文字列が選択されていると判断できる。Ｓ７０８で、選択開始文字と選択終了文字が同じ（すなわち、文字列は選択されていない）と判断された場合は、終了する。Ｓ７０８で、選択開始文字と選択終了文字が異なる（すなわち、文字列が選択されている）と判断された場合は、Ｓ７０９へ進む。Ｓ７０９で、選択開始文字の前の文字の終端を左辺とし、選択終了文字の前の文字の終端を右辺とした（選択文字列を表す）矩形を描画するためのｄｉｖ要素を挿入し、終了する。
【００５８】
なお、Ｓ７０１〜Ｓ７０６は、操作情報取得部３０７で実行される。Ｓ７０７〜Ｓ７０９は、情報表示部３０６で実行される。
【００５９】
また、図７ではＳ７０２とＳ７０５で終端座標リスト８０７を２回検索したが、Ｓ７０２で１回だけ検索を行ってそれを保持し、Ｓ７０５では検索を行わずに、Ｓ７０６ではＳ７０２で保持した終端座標リスト８０７を利用するように構成しても構わない。
【００６０】
［数値キーが押下された場合の処理］
図９は、数値入力領域４０３の数値キーが押下されたときの処理のフローチャートである。Ｓ９０１で、テキスト入力エリア４０２内の文字列が選択されているかどうか判定する（文字列が選択されているかどうかは、選択開始文字と選択終了文字が異なっているかどうかで判定する）。Ｓ９０１で、文字列が選択されていないと判断された場合は、Ｓ９０２で、キャレットが表示されている位置に数値キーに対応した数字を挿入した新しい文字列を作成する。Ｓ９０３で、テキスト入力エリア４０２内の文字列をＪａｖａＳｃｒｉｐｔ（登録商標）によって差し替える（ｉｎｐｕｔ要素にｒｅａｄｏｎｌｙ属性が付加されていても、ＪａｖａＳｃｒｉｐｔ（登録商標）によって値を差し替えることは可能）。Ｓ９０４で、選択開始文字と選択終了文字の情報を更新（１文字分後ろにずらす）する。Ｓ９０５で終端座標リスト８０７を更新し、Ｓ９０６で、キャレットを表示する位置を更新して終了する。Ｓ９０１で、文字列が選択されている（選択開始文字と選択終了文字が異なっている）と判断された場合、Ｓ９０７で、選択された文字列を数値キーに対応した数字で置き換えた新しい文字列を作成する。Ｓ９０８で、テキスト入力エリア４０２内の文字列をＪａｖａＳｃｒｉｐｔ（登録商標）によって差し替える。Ｓ９０９で、選択開始文字の情報を更新する（選択終了文字と同じにする）。Ｓ９１０で終端座標リスト８０７を更新し、Ｓ９１１で、キャレットを表示する位置を更新する。Ｓ９１２で、選択文字列表示用のｄｉｖ要素を削除する。
【００６１】
なお、Ｓ９０１〜Ｓ９１２は、情報表示部３０６で実行される。
【００６２】
［ソフトウェアキーボードの表示／非表示を切り替えた場合の処理］
図１０は、図５の画面において、ボタン４０４を押下して、ＯＳの標準ソフトウェアキーボードを表示した際の画面を表す図である。ＯＳの標準ソフトウェアキーボード１００４が表示されると、ＯＳの機能によって文字列選択領域１００１が表示される。また、ＯＳの機能によって、文字列選択領域の前後にキャレット１００３が表示され、キャレットにタッチして動かすことによって、文字列の選択範囲を変えることができる。さらに、ＯＳの機能によって、選択した文字列を操作するためのポップアップメニュー１００２が表示される。
【００６３】
図１１は、ＯＳの標準ソフトウェアキーボードの表示／非表示を切り替えるためのボタン４０４を押下した際の処理のフローチャートである。この処理は、ＯＳの標準ソフトウェアキーボードを表示するモードかどうかによって処理が分かれる。大きな違いは、ＯＳの標準ソフトウェアキーボードを表示するモードの場合、選択開始文字、選択終了文字の情報をテキスト入力エリア４０２の属性として保持させることができる。一方、ＯＳの標準ソフトウェアキーボードを表示しないモードの場合、選択開始文字、選択終了文字の情報は、モバイルアプリ３０４で保持しなければならない。そのため、まず、Ｓ１１０１で、現在のモードがＯＳの標準ソフトウェアキーボードを表示するモードかどうかを判断する。
【００６４】
Ｓ１１０１で現在のモードがＯＳの標準ソフトウェアキーボードを表示するモードでないと判断した場合、Ｓ１１０２以降で、ＯＳの標準ソフトウェアキーボード１００４を表示するための処理を行う。具体的には、Ｓ１１０２で、キャレット表示用のｄｉｖ要素を削除し、Ｓ１１０３で、文字列選択領域表示用のｄｉｖ要素を削除する。Ｓ１１０４で、ｄｉｖ要素によって表現されていた選択された文字列と同一の文字列がＯＳの機能によって選択されるように、テキスト入力エリア４０２における、ＯＳが選択範囲を認識するための選択開始文字と選択終了文字の情報をＯＳに通知する。Ｓ１１０５で、テキスト入力エリア４０２のｒｅａｄｏｎｌｙ属性を解除して終了する。Ｓ１１０４で、選択開始文字と選択終了文字の情報を通知し、Ｓ１１０５でｒｅａｄｏｎｌｙ属性を解除することによって、ＯＳの標準ソフトウェアキーボード１００４が表示され、図５のような文字列選択領域１００１、ポップアップメニュー１００２、キャレット１００３が表示されるようになる。このように、ＯＳの標準ソフトウェアキーボードを表示するモードに切り替えられた場合でも、Ｓ１１０４による通知が行われることで、文字列の選択状態が引き継がれる。
【００６５】
なお、本明細書では以上のようにボタン４０４を押下することでＯＳの標準ソフトウェアキーボード１００４が表示される例を示した。しかし、ボタン４０４押下に伴うＯＳの標準ソフトウェアキーボード１００４の表示を行わず、ユーザーがテキスト入力エリア４０２をタップすることでＯＳの標準ソフトウェアキーボード１００４が表示されるように構成しても構わない。このように構成した場合、ボタン４０４を押下することでテキスト入力エリア４０２に対する挙動を次の２つのモード間で切り替えられる。２つのモードとは、ＯＳによって提供される標準ソフトウェアキーボード１００４の表示を抑制するモードと、ＯＳによって提供される標準ソフトウェアキーボード１００４を表示可能なモードである。
【００６６】
一方、Ｓ１１０１で、現在のモードがＯＳの標準ソフトウェアキーボードを表示するモードであると判断した場合、Ｓ１１０６以降で、ＯＳの標準ソフトウェアキーボード１００４を非表示にするための処理を行う。Ｓ１１０６で、テキスト入力エリア４０２の選択開始文字と選択終了文字の情報をＯＳから取得し、取得した情報をモバイルアプリ３０４が保持する。Ｓ１１０７でテキスト入力エリア４０２にｒｅａｄｏｎｌｙ属性を付加する。これによって、ＯＳの標準ソフトウェアキーボード１００４が非表示になる。また、以降テキスト入力エリア４０２をタップしてもＯＳの標準ソフトウェアキーボード１００４の表示が抑制される（表示されなくなる）。Ｓ１１０８で、テキスト入力エリア４０２に表示されている文字列の終端座標リスト８０７を作成する。Ｓ１１０９で、キャレット表示用のｄｉｖ要素を挿入する。Ｓ１１１０で、文字列が選択されているかどうか（Ｓ１１０６で取得した選択開始文字と選択終了文字が異なっているかどうか）を判断し、選択されていないと判断した場合は終了する。Ｓ１１１０で、文字列が選択されていると判断された場合、Ｓ１１１１で、選択文字列表示用のｄｉｖ要素を挿入して終了する。Ｓ１１０７でＯＳの標準ソフトウェアキーボード１００４が非表示になると、ＯＳの標準ソフトウェアキーボード１００４が表示されることで隠されていた、前述の数値入力領域４０３のテンキーが表示される。
【００６７】
このようにＳ１１０９と、文字列が選択されている場合はＳ１１１１で、ウェブページの要素（ｄｉｖ要素）が挿入されることによって、キャレット及び選択された文字列を表現する領域が表示される。
【００６８】
なお、Ｓ１１０１〜Ｓ１１１１は、情報表示部３０６で実行される。
【００６９】
［キャレット移動キーが押下された場合の処理］
図１２は、キャレット移動キー４１４の左右の矢印キーが押下された場合の処理のフローチャートである。Ｓ１２０１で、現在のモードがＯＳの標準ソフトウェアキーボードを表示するモードかどうかを判断する。
【００７０】
Ｓ１２０１で、ＯＳの標準ソフトウェアキーボードを表示するモードであると判断した場合、Ｓ１２０２で、テキスト入力エリア４０２の選択終了文字列の情報を更新する（左矢印キーが押下された場合は、選択終了文字列を左に一文字ずらし、右矢印キーが押下された場合は、選択終了文字列を右に一文字ずらす）。Ｓ１２０２と後述するＳ１２０４の選択文字列の更新はＯＳに情報を更新するための情報を通知することによって行われる。Ｓ１２０３で、テキスト入力エリア４０２の文字列が選択状態にあるかどうか（選択開始文字と選択終了文字が異なっているかどうか）を判定し、選択状態にあると判断した場合、終了する。この場合、選択終了文字列のみが変更されるので、結果的に、文字列の選択範囲が、押下されたキーに応じて、拡がったり、狭まったりする。Ｓ１２０３で、テキスト入力エリア４０２の文字列が選択状態にない（選択開始文字と選択終了文字が同じ）と判定された場合、Ｓ１２０４で、テキスト入力エリア４０２の選択開始文字列の情報を、選択終了文字列の情報と同様に更新する。この場合、選択開始文字列と選択終了文字列が同じように更新されるので、結果的に、キャレットの位置が押下されたキーに応じて移動する。よって、文字列が選択されていない場合はＳ１２０２とＳ１２０４のステップによってＯＳにキャレットの位置を更新するための情報が通知される。
【００７１】
Ｓ１２０１で、ＯＳの標準ソフトウェアキーボードを表示するモードでないと判断した場合、Ｓ１２０５で、モバイルアプリ３０４で保持している選択終了文字の情報を更新する。Ｓ１２０６で、終端座標リスト８０７から選択終了文字の終端座標を検索する。Ｓ１２０７で、キャレットの表示位置を更新する。具体的には、キャレットを表示しているｄｉｖ要素のｌｅｆｔ属性を、Ｓ１２０６で取得した座標で更新する。ｌｅｆｔ属性を更新することによってｄｉｖの位置が更新される。Ｓ１２０８で、テキスト入力エリア４０２の文字列が選択状態にあるかどうかを判定し、選択状態にないと判断した場合、終了する。Ｓ１２０８で、テキスト入力エリア４０２の文字列が選択状態にあると判定した場合、Ｓ１２０９で、選択文字列表示用の矩形を更新して終了する。選択文字列表示用の矩形の更新は、具体的には、選択文字列を表示しているｄｉｖ要素のｗｉｄｔｈ属性を、Ｓ１２０６で取得した座標からｌｅｆｔ属性の値を差し引いた値で更新する。
【００７２】
なお、Ｓ１２０１〜Ｓ１２０９は、情報表示部３０６で実行される。
【００７３】
モバイルアプリ３０４が、キャレット移動手段を提供することによって、ＯＳの標準ソフトウェアキーボードの表示／非表示にかかわらず、キャレットの移動、文字列の選択範囲の変更を、同じ操作で行うことができる。
【００７４】
［履歴ＤＢ検索結果表示欄］
図１３は、テキスト入力エリア４０２で文字列が選択された場合に、履歴ＤＢ（データベース）を検索して、選択された文字列が部分一致するレコードを、履歴ＤＢ検索結果表示欄４１２に表示した例である。この例では、選択された文字列「８０」に対して、５個の検索結果が表示されている。ユーザーが検索結果の一つにタッチすると、タッチした検索結果の文字列でテキスト入力エリア４０２の文字列が置換される。履歴ＤＢには、テキスト入力エリア４０２の文字列を送信（ユーザが送信ボタンを押下）した際に、送信した文字列が登録される。履歴ＤＢは、テキスト入力エリア４０２に紐づけられた種別情報ごとに作成される。例えば、電話番号として送信した文字列は、電話番号用の履歴ＤＢに登録され、商品コードとして送信された文字列は、商品コード用の履歴ＤＢに登録される。テキスト入力エリア４０２の文字列が選択された場合に検索される履歴ＤＢは、テキスト入力エリア４０２に紐づけられた種別情報に対応する履歴ＤＢである。履歴ＤＢ検索結果表示欄４１２に表示される検索結果は、テキスト入力エリア４０２で文字列の選択を変更するたびに、履歴ＤＢが再検索されて更新される。
【００７５】
ＯＣＲで認識した結果、部分的に間違った文字列が表示された場合であっても、正しく認識された部分の文字列を選択することによって、過去の履歴から正しい文字列が検索結果として表示される可能性がある。正しい文字列が検索結果として表示された場合、それを選択することによってテキスト入力エリアの文字列が置き換えられるため、テキスト入力エリアの文字列を編集する必要がない。
【００７６】
［複数行のテキスト入力エリア］
図１４は、テキスト入力エリア４０２に紐づける種別情報ごとに個別の設定を行う画面である。設定画面には、複数行入力設定１４０１は、テキスト入力エリア４０２として複数行の入力を許可するかどうかを設定する。複数行を許可する設定にした場合、ＯＣＲ結果が複数行の場合は、テキスト入力エリア４０２には、複数行として表示される。複数行を許可しない場合、ＯＣＲ結果が複数行の場合であっても、１行のテキスト入力エリア４０２にスペースで区切られて表示される。１４０２は種別名を設定する。１４０３は、この種別を設定ごと削除するボタンである。１４０４は、この画面で行った設定をキャンセルするボタン、１４０５は、この画面で行った設定を有効にするボタンである。
【００７７】
図１５は、図１４の設定画面で、複数行のテキスト入力エリア４０２を許可する設定を行い、ＯＣＲ結果が複数行だった場合の画面の例である。
【００７８】
図１６は、テキスト入力エリア４０２を表示する処理のフローチャートである。テキスト入力エリア４０２は、ＨＴＭＬのｉｎｐｕｔ要素を使用して表示しているが、ｉｎｐｕｔ要素は、単数行しか表示することができない。複数行のテキスト入力エリア４０２を表示する場合は、下記のようなｔｅｘｔａｒｅａ要素を使用する必要がある。
<textarea>
Ｓ１６０１で、テキスト入力エリア４０２に紐づけられている種別の設定で、複数行のテキスト入力エリア４０２が許可されているかどうかを判断する。禁止されていると判断された場合は、Ｓ１６０２で、一行のみ入力可能なｉｎｐｕｔ要素を作成して画面のＨＴＭＬに挿入する。Ｓ１６０３で、ｉｎｐｕｔ要素にｒｅａｄｏｎｌｙ属性を付加する。Ｓ１６０４で、テキスト入力エリア４０２にＯＣＲ結果の文字列を挿入する。Ｓ１６０５で、テキスト入力エリア４０２に表示されている文字列の終端座標リスト８０７を作成して終了する。Ｓ１６０１で、複数行のテキスト入力エリア４０２が許可されていると判断された場合は、Ｓ１６０６で、複数行を入力可能なｔｅｘｔａｒｅａ要素を作成して画面のＨＴＭＬに挿入する。Ｓ１６０３ではｔｅｘｔａｒｅａ要素にｒｅａｄｏｎｌｙ属性を付加し、Ｓ１６０４へ進む。
【００７９】
なお、Ｓ１６０１〜Ｓ１６０５は、情報表示部３０６で実行される。
【００８０】
テキスト入力エリア４０２に文字列が複数行表示されている場合、１回の送信ボタン４０８の押下で、行数分、送信処理を繰り返す。
【００８１】
テキスト入力エリア４０２が複数行の場合、終端座標リスト８０７は、行数分作成する必要がある。また、各行の高さを保持して、タッチされた座標から何行目がタッチされかを判断する必要がある。何行目がタッチされたかを判断した後、その行に対応した終端座標リスト８０７を検索して、キャレットの表示位置や文字列の選択範囲を表す矩形を表示する。
【００８２】
複数行の入力を許可する設定を設けることによって、テキスト入力エリアが複数行に対応することができる。
【００８３】
以上、述べたように、数値入力に関しては、モバイルアプリケーションが数値入力に特化した入力手段を提供し、数値以外の文字に関しては、ＯＳ標準のソフトウェアキーボードを使用して入力が可能となるため、数値入力が主要な用途のモバイルアプリケーションであっても、効率よく文字入力を行うことができる。
【００８４】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2016167155.tif 000003
【図２】
2016167155.tif 000004
【図３】
2016167155.tif 000005
【図４】
2016167155.tif 000006
【図５】
2016167155.tif 000007
【図６】
2016167155.tif 000008
【図７】
2016167155.tif 000009
【図８】
2016167155.tif 000010
【図９】
2016167155.tif 000011
【図１０】
2016167155.tif 000012
【図１１】
2016167155.tif 000013
【図１２】
2016167155.tif 000014
【図１３】
2016167155.tif 000015
【図１４】
2016167155.tif 000016
【図１５】
2016167155.tif 000017
【図１６】
2016167155.tif 000018