(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-10
(45)【発行日】2022-01-12
(54)【発明の名称】文字列に文字を挿入するための方法およびシステム
(51)【国際特許分類】
G06F 3/04883 20220101AFI20220104BHJP
G06V 30/19 20220101ALI20220104BHJP
G06F 3/0485 20220101ALI20220104BHJP
G09G 5/00 20060101ALI20220104BHJP
G09G 5/34 20060101ALI20220104BHJP
G09G 5/32 20060101ALI20220104BHJP
G09G 5/36 20060101ALI20220104BHJP
G06F 3/04812 20220101ALI20220104BHJP
【FI】
G06F3/0488 130
G06K9/62 G
G06F3/0485
G09G5/00 510H
G09G5/34 A
G09G5/32 640S
G09G5/36 520P
G06F3/0481 120
(21)【出願番号】P 2018545503
(86)(22)【出願日】2017-02-24
(86)【国際出願番号】 EP2017054401
(87)【国際公開番号】W WO2017148833
(87)【国際公開日】2017-09-08
【審査請求日】2020-02-19
(32)【優先日】2016-02-29
(33)【優先権主張国・地域又は機関】EP
(32)【優先日】2016-06-24
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】515295429
【氏名又は名称】マイスクリプト
(74)【代理人】
【識別番号】100141586
【氏名又は名称】沖中 仁
(72)【発明者】
【氏名】クエリエ,ジョエル
(72)【発明者】
【氏名】デバージュ-クザン,ラエティティア
【審査官】三吉 翔子
(56)【参考文献】
【文献】米国特許出願公開第2009/0087095(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/048
G06K 9/62
G09G 5/00
G09G 5/34
G09G 5/32
G09G 5/36
(57)【特許請求の範囲】
【請求項1】
プロセッサおよび前記プロセッサに動作可能に接続されるタッチスクリーン表示デバイスを備えるコンピューティングデバイスによって行われる文字入力方法であって、前記タッチスクリーン表示デバイスは、水平方向に互いに隣接する手書き認識領域およびデジタルインク挿入領域を含む対話式ユーザインタフェースを備え、前記方法は、
前記タッチスクリーン表示デバイスの少なくとも前記手書き認識領域に表示された文字列を、前記プロセッサによって、スクロールし、前記表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択する第一スクロールステップであって、
前記表示された文字列は、複数の単語を含み、前記複数の単語のそれぞれは、少なくとも1文字を含み、前記第一スクロールステップは、前記手書き認識領域に表示された前記文字列の各文字を、前記手書き認識領域内で、前記デジタルインク挿入領域に入るまで移動させることによって、第一方向にスクロールするステップを含
み、前記第一スクロールステップ中に、前記手書き認識領域に完全に表示されている状態から前記デジタルインク挿入領域に全体が入った各単語を少なくとも部分的に隠しながら、前記手書き認識領域に配置された各単語を表示するステップをさらに含む、ステップと、
前記デジタルインク挿入領域に手動で入力された少なくとも1つのデジタルインク入力ストロークを、前記タッチスクリーン表示デバイスによって、検出するステップと、
前記プロセッサによって、手書き認識を使用して、前記少なくとも1つの検出されたデジタルインク入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記表示された文字列内の前記選択された位置に、前記少なくとも1つの認識された文字を挿入するステップと、
前記手書き認識領域において、前記表示された文字列を、前記プロセッサによって自動的に、前記第一方向とは反対の第二方向に移動することによって、前記表示された文字列をスクロールし、前記デジタルインク挿入領域に水平方向に隣接する前記手書き認識領域において、前記デジタルインク挿入領域における前記表示された文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示する、第二スクロールステップと
を含む、方法。
【請求項2】
前記第一スクロールステップにおいて、前記タッチスクリーン表示デバイス上に表示された挿入マーカが前記表示された文字列内の前記位置を規定する、請求項1に記載の方法。
【請求項3】
前記挿入マーカは、前記第一スクロールステップ中に、前記手書き認識領域と前記デジタルインク挿入領域との間の境界に静止して配置される、請求項2に記載の方法。
【請求項4】
前記第一スクロールステップにおいて、前記表示された文字列内の前記選択された位置は、前記手書き認識領域に少なくとも部分的に表示された前記複数の単語の最後の単語の直後に続く位置である、請求項1に記載の方法。
【請求項5】
前記第二スクロールステップは、前記少なくとも1つのデジタルインク入力ストロークの前記検出の後に自動的に行われる、請求項1に記載の方法。
【請求項6】
前記第二スクロールステップは、前記手書き認識が完了したことを検出した際に自動的に開始される、
請求項5に記載の方法。
【請求項7】
前記手書き認識を使用する前記変換ステップが行われているときに、前記デジタルインク挿入領域において、前記検出された少なくとも1つのデジタルインク入力ストロークを表示するステップ
をさらに含む、請求項1に記載の方法。
【請求項8】
前記第二スクロールステップの後に、前記第二スクロールステップと同じ方向に第三スクロールを行い、前記手書き認識領域において、前記表示された文字列内の挿入された前記少なくとも1つの認識された文字の直後に続く
前記第二の文字を表示するステップ
を含む、請求項1に記載の方法。
【請求項9】
プロセッサおよび前記プロセッサに動作可能に接続されるタッチスクリーン表示デバイスを備えるコンピューティングデバイスによって行われる文字入力方法であって、前記タッチスクリーン表示デバイスは、水平方向に互いに隣接する手書き認識領域およびデジタルインク挿入領域を含む対話式ユーザインタフェースを備え、前記方法は、
前記タッチスクリーン表示デバイスの少なくとも前記手書き認識領域に表示された文字列を、前記プロセッサによって、スクロールし、前記表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択する第一スクロールステップであって、前記第一スクロールステップは、前記手書き認識領域に表示された前記文字列の各文字を、前記手書き認識領域内で、前記デジタルインク挿入領域に入るまで移動させることによって、第一方向にスクロールするステップを含む、ステップと、
前記デジタルインク挿入領域に手動で入力された少なくとも1つのデジタルインク入力ストロークを、前記タッチスクリーン表示デバイスによって、検出するステップと、
前記プロセッサによって、手書き認識を使用して、前記少なくとも1つの検出されたデジタルインク入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記表示された文字列内の前記選択された位置に、前記検出された少なくとも1つのデジタルインク入力ストロークを挿入するステップと、
前記手書き認識領域において、前記表示された文字列を、前記プロセッサによって、前記第一方向とは反対の第二方向に移動することによって、前記表示された文字列をスクロールし
、前記手書き認識を使用する前記変換ステップが行われているときに、前記デジタルインク挿入領域に水平方向に隣接する前記手書き認識領域において
、前記表示された文字列に挿入された前記少なくとも1つのデジタルインク入力ストロークの少なくとも一部を表示する、第二スクロールステップと
を含む、方法。
【請求項10】
前記第二スクロールステップは、
前記手書き認識領域に挿入されて表示された前記少なくとも1つのデジタルインク入力ストロークを、前記手書き認識が完了した後に、前記少なくとも1つの認識された文字に置き換えるステップ
を含む、
請求項9に記載の方法。
【請求項11】
コンピュータ読み取り可能なプログラムコードを記憶した、非一時的なコンピュータ読み取り可能な媒体であって、前記コンピュータ読み取り可能なプログラムコードは、タッチスクリーン表示デバイスを備えるコンピューティングデバイスにおいて文字入力方法を実施するように、プロセッサによって、実行されるように適合され、前記タッチスクリーン表示デバイスは、水平方向に互いに隣接する手書き認識領域およびデジタルインク挿入領域を含む対話式ユーザインタフェースを備え、前記文字入力方法は、
前記タッチスクリーン表示デバイスの少なくとも前記手書き認識領域に表示された文字列を、前記プロセッサによって、スクロールし、前記表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択する第一スクロールステップであって、
前記表示された文字列は、複数の単語を含み、前記複数の単語のそれぞれは、少なくとも1文字を含み、前記第一スクロールステップは、前記手書き認識領域に表示された前記文字列の各文字を、前記手書き認識領域内で、前記デジタルインク挿入領域に入るまで移動させることによって、第一方向にスクロールするステップを含
み、前記第一スクロールステップ中に、前記手書き認識領域に完全に表示されている状態から前記デジタルインク挿入領域に全体が入った各単語を少なくとも部分的に隠しながら、前記手書き認識領域に配置された各単語を表示するステップをさらに含む、ステップと、
前記デジタルインク挿入領域に手動で入力された少なくとも1つのデジタルインク入力ストロークを、前記タッチスクリーン表示デバイスによって、検出するステップと、
前記プロセッサによって、手書き認識を使用して、前記少なくとも1つの検出されたデジタルインク入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記表示された文字列内の前記選択された位置に、前記少なくとも1つの認識された文字を挿入するステップと、
前記手書き認識領域において、前記表示された文字列を、前記プロセッサによって自動的に、前記第一方向とは反対の第二方向に移動することによって、前記表示された文字列をスクロールし、前記デジタルインク挿入領域に水平方向に隣接する前記手書き認識領域において、前記デジタルインク挿入領域における前記表示された文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示する、第二スクロールステップと
を含む、非一時的なコンピュータ読み取り可能な媒体。
【請求項12】
文字を入力するためのシステムであって、前記システムは、
手書き認識領域および文字入力を受け取るためのデジタルインク挿入領域含む対話式ユーザインタフェースを備えるタッチスクリーン表示デバイスであって、前記手書き認識領域および前記デジタルインク挿入領域は、互いに水平方向に隣接する、タッチスクリーン表示デバイスと、
指示を含む非一時的なコンピュータ読み取り可能な媒体と、
前記タッチスクリーンおよび前記非一時的なコンピュータ読み取り可能な媒体に動作可能に接続され、前記指示を実行して、動作を行うプロセッサと
を備え、前記動作は、
前記タッチスクリーン表示デバイスの少なくとも前記手書き認識領域に表示された文字列を、前記プロセッサによって、スクロールし、前記表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択する第一スクロールステップであって、
前記表示された文字列は、複数の単語を含み、前記複数の単語のそれぞれは、少なくとも1文字を含み、前記第一スクロールステップは、前記手書き認識領域に表示された前記文字列の各文字を、前記手書き認識領域内で、前記デジタルインク挿入領域に入るまで移動させることによって、第一方向にスクロールするステップを含
み、前記第一スクロールステップ中に、前記手書き認識領域に完全に表示されている状態から前記デジタルインク挿入領域に全体が入った各単語を少なくとも部分的に隠しながら、前記手書き認識領域に配置された各単語を表示するステップをさらに含む、ステップと、
前記デジタルインク挿入領域に手動で入力された少なくとも1つのデジタルインク入力ストロークを、前記タッチスクリーン表示デバイスによって、検出するステップと、
前記プロセッサによって、手書き認識を使用して、前記少なくとも1つの検出されたデジタルインク入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記表示された文字列内の前記選択された位置に、前記少なくとも1つの認識された文字を挿入するステップと、
前記手書き認識領域において、前記表示された文字列を、前記プロセッサによって自動的に、前記第一方向とは反対の第二方向に移動することによって、前記表示された文字列をスクロールし、前記デジタルインク挿入領域に水平方向に隣接する前記手書き認識領域において、前記デジタルインク挿入領域における前記表示された文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示する、第二スクロールステップと
を含む、システム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の参照
本願は、2016年2月29日に出願された欧州特許出願第16 305 229.3号および2016年6月24日に出願された米国特許出願第15/192,252号に基づく優先権を主張し、その内容のすべてを参照としてここに援用する。
【0002】
本開示は、概してユーザによって入力された手書きの種々の文字を認識できる電子デバイスの分野に関し、より具体的には、1以上の文字を文字列に挿入するためのシステムおよびそれに対応する方法に関する。
【背景技術】
【0003】
コンピュータデバイスは、日常生活への普及がますます広がっている。コンピュータデバイスは、種々の形態をとり得る。例えば、デスクトップコンピュータ、ラップトップ、タブレットPC、ハイブリッドコンピュータ(2in1)、電子ブックリーダ、携帯電話、スマートフォン、ウエラブルコンピュータ(スマートウォッチ、スマートグラス/ヘッドセットなど)、全地球測位システム(GPS)ユニット、業務用情報端末(EDA)、個人用情報端末(PDA)、ゲーム機などである。各種のコンピュータデバイスは、特定のコンピュータリソースを備え、特定の用途のために設計される。これらの種々のコンピュータデバイスおよびその使用において、ユーザがそのコンピュータデバイスを対話式操作(interact)できるようにするためには種々の入力デバイスが必要となる。
【0004】
そのような入力デバイスの1つは、タッチスクリーンまたはタッチパッドなどのタッチセンサ式表面(surface)である。タッチセンサ式表面において、ユーザ入力は、ユーザの体の一部(例えば、指)またはユーザに保持された道具(例えば、ペンまたはスタイラス)とタッチセンサ式表面との間の接触を介して受け取られる。別の入力デバイスとして、ユーザが入力表面の上方で行ったジェスチャまたは動きを感知する入力表面がある。さらに別の入力デバイスとして、非接触の物理的または仮想的表面との接触もしくは非接触の相互作用(interaction)の相対位置を検出する位置検出システムがある。これらの方法はいずれも、例えばアルファベット、数、文法および記号文字などのテキスト内容を入力するためなど、一般に手描きまたは手書きのために使用され得る。ユーザが描くまたは書くことより入力した場合、そのユーザの手書きは、通常、リアルタイム式の手書き認識システムまたは方法を使用して解析される。そのために、オンラインシステム(例えば、クラウドベースの手段などを使用して認識が実行される)またはオフラインシステムのいずれを使用してもよい。
【0005】
一般に、手書き認識システムまたは方法は、例えばユーザがタッチセンサ式表面に接触する(例えば、ペンを表面に下す)などのストロークの開始、例えばユーザがタッチセンサ式表面に接触することを止める(例えば、ペンを画面から上げる)などのストロークの終了、およびストロークの開始から終了までの間にユーザが指または道具を用いて生成するいずれのストロークまたはラインもモニタする。
【0006】
コンピュータデバイスの形式によって、文字を入力するために使用されるユーザ入力インタフェースまたは方法が決定され得る。コンピュータデバイスが小型化されるにつれ、ユーザが直感的かつ簡単に内容を入力できるような様々な入力インタフェースおよび方法が開発されてきた。
【発明の概要】
【発明が解決しようとする課題】
【0007】
ユーザが入力文字を描くコンピュータデバイスにおいて、現在のテキストへの文字の挿入を管理することなどは、一般にユーザが指または道具を用いて特定のジェスチャを行う必要があるので困難な課題である。従来のテキスト挿入技術は、一般に複雑または直感的でない対話式操作(interaction)をユーザがインタフェース表面に対して行う必要があるのでユーザフレンドリでない。ユーザは、特定のコンピュータデバイスに実装された挿入技術(実装されている場合)を理解しないか、または覚えていないことが非常に多い。従来の技術の中には、現在の内容を編集するための内容を通常の入力フィールドとは別の専用の編集フィールドに挿入することをユーザに要求し、それによって、より小さなインタフェースを有するデバイスに対する入力インタフェースおよびアプリケーションのエルゴノミクスを低減する技術がある。
【0008】
したがって、上記のようなコンピュータデバイスを使用する際に現在の内容に対して内容を挿入することを可能にするためのより効率的でユーザフレンドリな入力方法およびシステムが求められている。
【課題を解決するための手段】
【0009】
本開示は、タッチスクリーンを備えるデジタルデバイスによって行われる文字入力方法を提供する。前記タッチスクリーンは、認識領域および挿入領域を備える。前記方法は、
少なくとも前記認識領域に表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択するように、前記文字列をスクロールするための第一スクロールステップと、
前記挿入領域に手動で入力された少なくとも1つの入力ストロークを検出するステップと、
手書き認識を行って、前記少なくとも1つの検出された入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記文字列内の前記位置に、前記少なくとも1つの認識された文字を挿入するステップと、
前記認識領域において、前記文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示するように、前記認識領域において前記文字列をスクロールするための第二スクロールステップと
を含む。
【0010】
本開示によれば、ユーザは、文字を文字列に文字列内の適切な位置に、効率的かつユーザフレンドリに挿入できる。本開示によれば、自然かつ迅速なやり方で追加の文字を入力できる。特に、本教示によれば、挿入対象の位置を簡単に選択できる。本開示によれば、ユーザは、複雑なジェスチャを行う必要がなく、文字挿入を行うための手順を簡単に覚え得る。ユーザは、手書き入力用の入力領域に直接に追加の文字を挿入し得る。特に、本開示によれば、デジタルデバイスの入力領域とは別のテキストフィールドを使用して追加の文字を挿入する必要がなくなる。
【0011】
特定の実施形態によれば、前記認識領域および前記挿入領域は、互いに隣接する。この特定の構成によって、ユーザは、追加の文字の文字列への自然な入力をより容易に行うことができる。
【0012】
特定の実施形態によれば、前記第一スクロールステップにおいて、前記タッチスクリーン上に表示された挿入マーカによって、前記文字列内の前記位置が規定される。挿入マーカを表示することによって、ユーザは、文字挿入が行われることになる前記文字列内の前記位置をより容易に選択できる。
【0013】
特定の実施形態によれば、前記挿入マーカは、前記第一スクロールステップ中に、前記認識領域と前記挿入領域との間の境界に静止して配置される。この特定の構成によって、ユーザは、入力領域において文字列を単純にスクロールすることによって文字列内の適切な位置を簡単に選択できる。
【0014】
特定の実施形態によれば、前記第一スクロールステップは、前記認識領域に表示された前記文字列の各文字が前記挿入領域に入るまで前記認識領域内を移動するように、第一スクロールの方向に行われる。
【0015】
特定の実施形態によれば、前記文字列は、複数の単語を含み、各単語は、少なくとも1文字を含む。前記方法は、
前記第一スクロールステップ中に、前記認識領域から前記挿入領域に全体が入った各単語を少なくとも部分的に隠しながら、前記認識領域に配置された各単語を表示するステップ
を含む。
【0016】
この特定の構成によって、ユーザは、文字が挿入されることになる前記文字列内の前記位置を簡単に、精度よく、正確に特定できる。さらに、ユーザがストロークを入力領域に直接に入力することができるように前記挿入領域にスペースを設けてもよい。
【0017】
特定の実施形態によれば、前記文字列は、複数の単語を含み、各単語は、少なくとも1文字を含む。ここで、前記第一スクロールステップにおいて、前記文字列内の前記選択された位置は、前記認識領域に少なくとも部分的に表示された前記文字列の最後の単語の直後に続く位置である。この特定の構成によって、ユーザは、文字挿入が行われることになる前記文字列の前記位置を簡単に選択できる。
【0018】
特定の実施形態によれば、前記第二スクロールステップにおいて、前記認識領域に、前記文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示するように、前記文字列は、前記挿入領域から前記認識領域に向かう方向にスクロールされる。
【0019】
特定の実施形態によれば、前記第二スクロールステップは、前記少なくとも1つの入力ストロークの前記検出の後に自動的に行われる。
【0020】
特定の実施形態によれば、前記第二スクロールステップは、前記手書き認識が完了したことを検出した際に自動的に開始される。このように、追加の文字を文字列内に効率よくかつ自然に入力することができる。
【0021】
特定の実施形態によれば、前記方法は、前記手書き認識が行われているときに、前記挿入領域において、前記検出された少なくとも1つの入力ストロークを表示するステップを含む。この特定の構成によって、前記挿入領域における手書き文字を一時的に表示することができる。
【0022】
特定の実施形態によれば、前記第二スクロールステップは、
前記文字列内の前記位置に、前記検出された少なくとも1つの入力ストロークを挿入するステップと、
前記手書き認識が行われているときに、前記認識領域において、前記挿入された少なくとも1つの入力ストロークの少なくとも一部を表示するように、前記認識領域において前記文字列をスクロールするステップと
を含む。
【0023】
この特定の構成によって、ユーザは、追加の文字を前記文字列に連続かつ自然なやり方で挿入することができる。
【0024】
特定の実施形態によれば、前記第二スクロールステップは、
前記手書き認識が一旦完了したら、前記認識領域に表示されている前記挿入された少なくとも1つの入力ストロークを、前記少なくとも1つの認識された文字に置き換えるステップ
を含む。
【0025】
特定の実施形態によれば、前記第二スクロールステップにおいて、前記少なくとも1つの挿入された文字は、前記認識領域にタイプセット(typeset)として表示される。
【0026】
特定の実施形態によれば、前記方法は、前記第二スクロールステップの後に、前記第二スクロールステップと同じ方向にスクロールして、前記認識領域において、前記文字列内の前記挿入された少なくとも1文字の直後に続く少なくとも前記第二の文字を表示する第三スクロールステップを含む。このように、ユーザは、追加の文字が挿入された文字列全体をスクロールおよび可視化し得る。
【0027】
本開示の特定の実施形態において、前記文字入力方法の前記種々のステップは、コンピュータプログラムの指示によって特定される。
【0028】
したがって、本開示は、記録媒体上のコンピュータプログラムも提供する。このコンピュータプログラムは、デジタルデバイス、より一般にはプロセッサによって実施されるように構成される。このコンピュータプログラムは、上記のような文字入力方法を実施するために適合された指示を含む。
【0029】
特に、本開示は、コンピュータ読み取り可能なプログラムコードが組み込まれた、非一時的なコンピュータ読み取り可能な媒体を提供する。前記コンピュータ読み取り可能なプログラムコードは、タッチスクリーンを備えるデジタルデバイスにおいて文字入力方法を実施するように実行されるように適合され、前記タッチスクリーンは、認識領域および挿入領域を備え、前記方法は、
少なくとも前記認識領域に表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択するように、前記文字列をスクロールするための第一スクロールステップと、
前記挿入領域に手動で入力された少なくとも1つの入力ストロークを検出するステップと、
手書き認識を行って、前記少なくとも1つの検出された入力ストロークを少なくとも1つの認識された文字に変換するステップと、
前記文字列内の前記位置に、前記少なくとも1つの認識された文字を挿入するステップと、
前記認識領域において、前記文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示するように、前記認識領域において前記文字列をスクロールするための第二スクロールステップと
を含む。
【0030】
本開示のコンピュータプログラム(またはコンピュータプログラム製品)は、いずれのプログラミング言語でも表現可能であり、ソースコード、オブジェクトコード、またはソースコードとオブジェクトコードとの間のいずれの中間コード(例えば部分的にコンパイルされた形態またはいずれの他の適切な形態など)の形態をとることも可能である。
【0031】
また、本開示は、上記のようなコンピュータ読み取り可能なプログラムコードを提供する。
【0032】
上記の非一時的なコンピュータ読み取り可能な媒体は、前記コンピュータプログラムを記憶することができるいずれの物(entity)またはデバイスでもあり得る。例えば、前記記録媒体は、ROMメモリ(CD-ROMまたはマイクロ電子回路に実装されたROM)などの記憶手段、またはフロッピーディスクまたはハードディスクなどの磁気記憶手段を備えることができる。
【0033】
本開示の非一時的なコンピュータ読み取り可能な媒体は、電気または光信号などの伝達可能媒体に対応することができる。伝達可能媒体は、電気もしくは光ケーブルを介して、または無線もしくはいずれの他の適切な手段によっても伝搬され得る。本開示に係るコンピュータプログラムは、特にインターネットまたはネットワークなどからダウンロードされ得る。
【0034】
あるいは、前記非一時的なコンピュータ読み取り可能な媒体は、コンピュータプログラムがロードされる集積回路に対応することができる。その回路は、本発明の方法を実行するように、またはその実行において使用されるように適合される。
【0035】
また、本開示は、デジタルデバイスへの文字入力を提供するためのシステムに関する。そのデジタルデバイスは、プロセッサ、認識領域および文字入力を受け取るための挿入領域を含むタッチスクリーン、および少なくとも1つの非一時的なコンピュータ読み取り可能な媒体を備える。前記少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、前記プロセッサの制御下に、
第一スクロールステップとして、少なくとも前記認識領域に表示された文字列内の第一の文字と前記第一の文字に連続した第二の文字との間の位置を選択するように、前記文字列をスクロールするためのスクロールモジュールと、
前記挿入領域に手動で入力された少なくとも1つの入力ストロークを検出するための検出モジュールと、
手書き認識を行って、前記少なくとも1つの検出された入力ストロークを少なくとも1つの認識された文字に変換するための認識モジュールと、
前記文字列内の前記位置に、前記少なくとも1つの認識された文字を挿入するための挿入モジュールと
を構成し、
前記スクロールモジュールは、第二スクロールステップとして、前記認識領域において、前記文字列に挿入された前記少なくとも1つの認識された文字の少なくとも一部を表示するように、前記認識領域において前記文字列をスクロールするように構成される。
【0036】
また、本開示は、認識領域および挿入領域を含むタッチスクリーン、ならびに上記のようなスクロールモジュール、検出モジュール、認識モジュールおよび挿入モジュールを備えるデジタルデバイスを提供する。
【0037】
本開示の文字入力方法に関連して上記に規定された種々の実施形態は、同様に本開示の非一時的なコンピュータ読み取り可能な媒体、システムおよびデジタルデバイスに適用される。
本開示の他の特徴および利点は、実施形態を示す添付の図面を参照する以下の記載から明らかとなる。本開示は、以下の実施形態に限定されない。
【図面の簡単な説明】
【0038】
【
図1】
図1は、本開示の特定の実施形態に係るデジタルデバイスの図である。
【
図2】
図2は、特定の実施形態に係る、
図1のデジタルデバイスを示す図である。
【
図3】
図3は、特定の実施形態に係る、デジタルデバイスのユーザインタフェースの入力領域を示す図である。
【
図4】
図4は、特定の実施形態に係る、
図1のデジタルデバイスによって実装されたモジュールを示すブロック図である。
【
図5】
図5は、本開示の特定の実施形態に係る文字入力方法を示すフローチャートである。
【
図6】
図6は、本開示の特定の実施形態に係る文字入力方法を示す図である。
【
図7】
図7A~7Fは、本開示の特定の実施形態に係る、ユーザ入力を受け取る内容表示領域を含む、コンピュータデバイスのユーザインタフェースを例示する図である。
【
図8】
図8は、本開示の特定の実施形態に係る文字入力方法を示す図である。
【
図9】
図9Aおよび9Bは、本開示の特定の実施形態に係る、ユーザ入力を受け取る内容表示領域を含む、コンピュータデバイスのユーザインタフェースを示す図である。
【発明を実施するための形態】
【0039】
図中の構成要素は、必ずしも正確な縮尺ではなく、その代わりに本開示の原理を例示することに重点を置いている。
【0040】
簡潔で明瞭な図示となるように、特に断らない限り、同じまたは類似の構成要素は、図面全体にわたり同じ参照符号で示される。
【0041】
以下の詳細な記載において、関連する教示を十分に理解できるように、例を用いて多くの具体的な詳細を説明する。しかし、本教示がそのような詳細がなくとも実施され得ることは、当業者には明らかである。他の例において、周知の方法、手順、および/または構成要素は、本教示の局面を不必要に不明瞭にしないように、詳細を記載せず、比較的大局的に説明する。
【0042】
以下、添付の図面を参照して例示の実施形態を説明する。本発明は、以下の詳細な記載によって限定されない。代わりに、本発明の範囲は、付属の特許請求の範囲によって定義される。図示されるような種々の実施形態において、デジタルデバイス、文字入力方法およびそれらに対応するコンピュータ読み取り可能な媒体上のコンピュータプログラムを説明する。
【0043】
上記のように、本開示は、概してユーザによって入力された手書きの種々の文字を認識できる電子デバイスの分野に関し、より具体的には、1以上の文字を文字列に挿入するためのデジタルデバイスおよびその対応の方法に関する。開示のデジタルデバイスおよび方法は、ユーザインタフェースに特異的に生じる問題を解決するコンピュータ技術に基づく。そのような問題は、例えば、どのように手書きの文字をデジタルデバイスのユーザインタフェース上に表示された現在のテキストに正確にかつ精度よく挿入するかという問題である。このように、本開示のデジタルデバイスおよび方法によって、文字情報を表示し、ユーザと対話(interact)するというコンピュータの機能が改善される。
【0044】
本明細書において、「文字」は、いずれの種類の文字、記号なども指すと広義に理解され、2以上の文字を含む。文字は、例えば、アルファベット文字、字、数字、単語、文法記号、標識またはそれらのいずれの組み合わせでもあり得る。なお、他の種類の文字も考えられ得る。
【0045】
図1および2は、本開示の特定の実施形態に係るコンピュータデバイスまたはデジタルデバイス2を模式的に示す。本例に記載のデバイス2は、タッチスクリーン10を備えるスマートフォンである。ユーザは、自身の指またはスタイラス24を使用してタッチスクリーン10を対話式操作(interact)して、手書きで文字34を入力する。
【0046】
なお、デバイス2は、タッチセンサ式表面を備え、本開示に係る文字入力方法を実施するための適切ないずれの機器(携帯可能またはそうでないもの)(例えば、デスクトップPC、タブレットPC、個人用情報端末など)の形態であってもよい。
【0047】
図1に示すように、デバイス2は、プロセッサ4、書き換え可能な不揮発性メモリ6(例えば、フラッシュメモリなど)、RAMメモリ8、および文字の入力や表示を可能にする入出力インタフェース10を有する。入出力インタフェース10は、文字を表示するためのディスプレイ10aおよびディスプレイ10a上で文字を入力するための入力(タッチセンサ式表面)10bを有してもよい。本実施形態において、入出力インタフェース10は、タッチスクリーンである。他の実施形態において、ディスプレイ10aおよび入力10b(例えば、タッチセンサ式表面)がデバイス2の別々の構成要素または互いに接続された別々のデバイスであってもよい。また、近接センサ式表面などの他の入力表面を利用してもよい。近接センサ式表面は、その近接センサ式表面の近く、または仮想「キー」(など)の配列をテーブルまたはホワイトボードなどのいずれかの適切な表面に投影するためのプロジェクタを使用して形成された投影表面の近くにおいて、体の一部(例えば、指)または道具(例えば、スタイラス)を検出し、ユーザが投影されたキー配列を対話式操作できるように構成される。
【0048】
デバイス2の不揮発性メモリ6は、本開示の特定の実施形態に係るコンピュータ利用可能媒体(または記録媒体)を構成する。メモリ6は、本開示の特定の実施形態に係るコンピュータプログラム(またはコンピュータ読み取り可能なプログラムコードなど)PGを含む。このコンピュータプログラムは、本発明の特定の実施形態に係る方法または動作を実施するためのプロセッサ実行可能指示を有する。
【0049】
コンピュータプログラムPGは、デバイス2に入力された手書きを認識するための指示を含んでもよい。あるいは、デバイス2は、入力された手書きを認識するリモートシステムに接続されてもよい。本システムおよび方法によって利用可能な手書き認識処理は、公知の手書き認識方法、または例えば本願と同じ出願人および譲受人の名の下に2014年4月24日に出願された国際出願PCT/FR2014/050991の国際公開WO2014/174219(その内容のすべてを参照としてここに援用する)に記載されるようなニューラルネットワークなどの特定の方法の形態をとってもよい。
【0050】
図2に示すように、デバイス2のタッチスクリーン10は、第一の領域22(本例の内容表示フィールドまたはゾーン)および第二の領域20(内容入力フィールドまたはゾーン)である。入力領域20は、対話式操作可能であり、したがって、ユーザは、例えばスタイラス24を使用して、文字34を入力領域20に入力することによって、文字列32を形成する。本例において、文字34の列32は、文法記号を伴った複数の単語を有するテキストを形成する。本例において、文法記号は、コンマである。図から明らかなように、本例において、入力領域は、テキストの数個の文字または単語を一度に表示できるように構成される。本システムおよび方法を使用して入力を受け取ると、手書き入力は、よく理解されたやり方で、いわゆる「デジタルインク」(例えば、スタイラス24の動きをとらえて、手書きを入力時の形態で表示したインクオブジェクト)として入力領域20に描画される。デジタルインクは、ユーザによって入力されたストロークを表す。手書きストロークは、処理され、その内容が認識される。例えば、特定の文字が認識される。出力された認識結果は、よく理解されたやり方で、いわゆる「タイプセットインク」(例えば、タイプセットフォントテキストとして表示されるデジタルオブジェクト表示)として描画され、それまでデジタルインクバージョンで描画されていた認識された内容がタイプセットインクに置き換えられる。
【0051】
例えば、
図2に示すように、入力領域20に表示された文字列32において、単語「Hello」およびコンマ「,」を形成する手書き入力は、認識処理されており、その認識結果が文字34を表すタイプセットインクバージョンとして表示されている。しかし、文字「ho」を形成する手書き入力は、例えばまだペン上げイベントが起きていないので、まだ認識処理されておらず、したがって、入力文字36は、デジタルインクとして描画される。認識された内容を入力領域20においてユーザに対して表示することは、入力中に手書き認識フィードバックを与えるので有用であるが、本システムおよび方法は、入力をデジタルインクのみで表示してもよいし、または例えばユーザがジェスチャ入力やメニュー表示を介してデジタルインクまたはタイプセットインクの表示を選択できるようにしてもよい。
【0052】
また、本実施形態において、内容表示フィールド22は、対話式操作可能となるように、タッチスクリーン10上に設けられる。内容表示フィールド22は、例えば、入力領域20よりも大きな領域において、例えばより小さなテキストフォントを使用して、入力領域20においてユーザによって入力された文字列32の一表現を表示するように構成される。
【0053】
本例において、内容表示領域22は、例えば、単語および文を適切に再度流しつつ(reflow)、数行のテキストを一度に表示できるように構成される。このように、ユーザは、入力領域20の構成またはサイズに制限はあるが、入力内容の表示を与えられる。あるいは、内容表示領域22は、例えば入力領域20よりも小さなフォントで一行だけの内容を表示し、より多くの内容が入力された場合、またはジェスチャなどのユーザの対話式操作を介した場合に、内容の表示がスクロールされるようにしてもよい。本システムおよび方法によって手書き入力34から認識された場合と同様に、内容表示フィールド22におけるテキストは、一般によく理解されたやり方で、デジタルオブジェクトとして、例えばタイプセットインクで、描画される。
【0054】
例えば、
図2において、内容表示領域22に表示された文字列32において、単語「Hello」およびコンマ「,」を形成する認識された内容は、入力領域20においての表示と同様に、タイプセットインクバージョンの文字34として表示されるが、入力領域20において文字「ho」を形成する手書き入力は、まだ認識処理されておらず、したがって、対応する文字が内容表示領域22にまだ表示されていない。認識された内容をユーザに対して内容表示領域22において表示することは、継続中の入力に対して前後関係(context)を与えるので有用であるが、本開示に係るデジタルデバイスは、そのような(認識された)内容表示を含まずに実装され得る。あるいは、本システムおよび方法は、入力領域20に加えて、内容表示領域22にも表示するか否かをユーザが選択できるようにしてもよい。さらに、本システムおよび方法は、内容表示領域22における内容をタイプセットインクの代わりにデジタルインクとして表示してもよいし、またはデジタルインクまたはタイプセットインクの表示を、例えばジェスチャ入力またはメニュー表示を介して、ユーザが選択できるようにしてもよい。
【0055】
特定の実施形態によれば、デバイス2は、挿入モードに従って動作し、ユーザが少なくとも1つの新しい文字を文字列内に挿入できるようにしてもよい。挿入モードは、例えば所定のコマンドの受け取りに応じてデバイス2によって実装される機能でもよい。いくつかの実装例において、所定のコマンドは、多位置対話式操作であってもよい。すなわち、多指押しまたはスワイプ(詳細は後述する)などのジェスチャ入力であってもよい。例えば、ユーザは、デバイス2を通常の入力モードで使用して、入力領域20において文字を手書きし、そして、タッチスクリーン10上でジェスチャを行ってデバイス2を挿入モードに切り換えて、それまでに入力された文字に少なくとも1つの追加の文字を挿入することによって編集するようにしてもよい。
【0056】
図3は、特定の実施形態に係る、挿入モードにおいてデバイス2が動作している際の入力領域20を例示する。
図3に示されるように、入力領域20は、認識領域28および挿入領域30を備える。さらなる詳細は後述するが、認識領域28に加えて挿入領域30をユーザに与えることにより、簡単かつ効率的に新しい文字を現在の文字列に挿入できるようになる。
【0057】
認識領域28は、上記および
図3に示すように、先の入力の認識された内容に略対応する文字列32の一部を表示するように構成される。挿入領域30は、入力領域20の一部として構成される。挿入領域30において、ユーザによって手書きで入力された少なくとも1つの新しいストローク36がデバイス2によって検出され、デジタルインクとして描画される。手書き認識が新しい入力ストローク36に対して一旦行われたとき、かつ/または挿入モードが終了した際は(デバイス2を入力モードに戻す)、認識領域28に、検出された入力ストローク36から認識された少なくとも1文字が挿入された状態の文字列32が表示され、挿入領域30におけるデジタルインクバージョンが表示から削除される(例えば、デジタルインクバージョンが挿入領域30から消える)。
【0058】
種々の実装例において、挿入マーカ29が表示される。挿入マーカ29は、少なくとも1文字が挿入されることになる文字34の列32内のいずれかの所望の位置を定義するように構成されてもよい。挿入された文字は、検出された入力ストローク36から、またはそれに基づいて認識される。このようにユーザは、挿入マーカ29を使用して、文字34の列32内において、新しい文字を挿入するための特定の位置を選択してもよい。
【0059】
図3に示す特定の例において、挿入マーカ29は、認識領域28と挿入領域30との間の境界に配置されるが、他の位置でもよい。挿入マーカ29は、ユーザが、例えば入力領域20においてスクロールすることによって、少なくとも1文字が挿入されることになる文字34の列32内の位置を選択できるようにするいずれの適切な形態をとってもよい。
図3において、挿入マーカは、破線で表されるが、他の描画で表示されてもよい。挿入マーカ29は、例えば入力領域20に表示された線、カーソル、矢印などの標識であってもよい。他の実施形態において、挿入マーカ29を表示せずに、挿入位置の選択がなされてもよい。
【0060】
図3に示す特定の例において、挿入マーカ29は、文字34の列32内の単語「how」の直後に続く位置を、少なくとも1つの新しい文字が挿入されることになる挿入位置として規定する。本例において、挿入対象の文字は、単語「good」を形成する。この単語は、挿入領域30に入力された際に検出された1つのストローク36の入力に対して行われた手書き認識に基づいて認識される。
【0061】
図3に示すように、対話式スクロールアクチュエータ38(例えば、
図3に示すようなスクロールバー、スクロールボタンなどの形態をとる)を例えば入力領域20内、またはその近傍に設けてもよい。これにより、入力領域20における文字34の列32を、例えばスワイプジェスチャなどのユーザジェスチャを介して、第一スクロールの方向D1(本例では、右方向)および反対の第二スクロールの方向D2(本例では、左方向)にスクロールできる。他の方法を用いて入力領域20におけるスクロールの命令を行ってもよい。
【0062】
なお、
図3に示すような認識領域28、挿入領域30、スクロールアクチュエータ38および挿入マーカ29を含む入力領域20の全体的なユーザインタフェースの特定の配置(フォーム、レイアウトなど)は、あくまでも例示であり、本開示の範囲を限定すると解釈されるべきでない。
【0063】
特定の例において、認識領域28および挿入領域30は、互いに隣接する。本開示において、他の配置も可能である。特に、認識領域28および挿入領域30の相対配置は、コンピュータデバイスのフォームファクタ、デバイス2がテキストを表示および編集するために使用される場合の言語のタイプおよび/またはフォーマットなどの目的の使用に適合されてもよい。ユーザインタフェースの配置は、例えば文字が英語、日本語、中国語、またはある他の文字セットのいずれで入力されるかに応じて、ユーザとの対話を簡単かつ効率よくできるように適合されてもよい。
【0064】
本実施形態において、メモリ6に記憶されたコンピュータプログラムPGを実行する際に、プロセッサ4は、
図4に示す複数の処理モジュールを実施する。すなわち、スクロールモジュール(または表示コントロールモジュール)M2、検出モジュールM4、認識モジュールM6および挿入モジュールM8である。なお、これらの特定の処理モジュールM2~M8は、あくまで本開示の実施例である。当業者であれば、本開示に係る入力方法を実施するための処理モジュールの種々の実施例を想起し得る。
【0065】
より詳細には、スクロールモジュールM2は、少なくとも1文字が挿入されることになる文字列32内の特定の位置を選択するように、入力領域20において文字34の列32をスクロールするように動作可能である。本実施形態において、スクロールは、
図3において矢印で例示するように、互いに反対の2方向D1およびD2に行われてもよい。スクロールは、例えばプロセッサ4の制御下にスクロールモジュールM2によって自動的に行われ得るか、またはユーザから受け取ったスクロールコマンドに応答して(例えば、スクロールアクチュエータ38の対話式操作を介して、またはいずれかの他の適した対話式操作によって)行われ得るか、いずれでもよい。
【0066】
検出モジュールM4は、挿入領域30における少なくとも1つの入力ストローク36を検出するように動作可能である。
【0067】
認識モジュールM6は、少なくとも1つの認識された文字を生成するように、検出された入力ストローク36に基づいて手書き認識を行うか、または行われるように動作可能である。
【0068】
挿入モジュールM8は、先に選択された文字列32内の特定の位置に、検出された入力ストローク36に基づいて認識モジュールM6によって認識された少なくとも1文字を挿入するように動作可能である。
【0069】
特定の実施形態において
スクロールモジュールM2は、第一スクロールステップとして、少なくとも認識領域28に表示された文字列内の第一の文字と第一の文字に連続した第二の文字との間の位置を選択するように、その文字列をスクロールするためのモジュールである。
検出モジュールM4は、挿入領域30に手動で入力された(例えば、ユーザが自身の指、スタイラスなどによって入力した)少なくとも1つの入力ストローク36を検出するためのモジュールである。
認識モジュールM6は、手書き認識を行って、少なくとも1つの検出された入力ストローク36を少なくとも1つの認識された文字に変換するモジュールである。
挿入モジュールM8は、文字列内の位置に、少なくとも1つの認識された文字を挿入するためのモジュールである。
ここで、スクロールモジュールは、第二スクロールステップとして、認識領域28に、文字列32に挿入された少なくとも1つの認識された文字の少なくとも一部を表示するように、認識領域28において文字列32をスクロールするように構成される。
【0070】
特定の実施形態において、本開示は、ソフトウエアおよび/またはハードウェア構成要素を使用して実施され得る。この状況において、用語「モジュール」は、本明細書において、ソフトウエア構成要素、ハードウェア構成要素、または複数のソフトウエアおよび/またはハードウェア構成要素もしくはそれらの組み合わせを指す。
【0071】
以下、
図5を参照して、
図1~4に例示したデバイス2によって実施される、本開示の特定の実施形態に係る文字入力方法を説明する。より詳細には、デバイス2は、メモリ6に記憶されたコンピュータプログラムPGを実行することによってこの方法を実施する。この特定の実施形態の文字入力方法は、
少なくとも認識領域28に表示された文字34の列32内の第一の文字と第一の文字に連続した第二の文字との間の位置を選択するように、文字34の列32をスクロールするための第一スクロールステップ(S2)と、
挿入領域30に手動で入力された少なくとも1つの入力ストローク36を検出するステップ(S4)と、
手書き認識を行って、少なくとも1つの検出された入力ストローク36を少なくとも1つの認識された文字に変換するステップ(S6)と、
文字34の列32内の選択された位置に、少なくとも1つの認識された文字を挿入するステップ(S8)と、
認識領域28に、文字34の列32に挿入された少なくとも1つの認識された文字の少なくとも一部を表示するように、認識領域28において文字34の列32をスクロールするための第二スクロールステップ(S10)と
を含む。
【0072】
図3~5を参照すると、第一スクロールステップS2は、スクロールモジュールM2によって第一スクロールの方向D1に行われ、選択対象の位置が文字列32の文字を通って左から右へ徐々に移動する。特定の実施形態において、挿入マーカ29は、第一スクロールステップが進行している間、リアルタイムに選択対象の位置を規定してもよい。
【0073】
一方、前記第二スクロールステップS10は、本例において、スクロールモジュールM2によって第二スクロールの方向D2に行われる。特に、この第二スクロールステップにより、認識モジュールM6によって認識され、挿入モジュールM8によって文字34の列32に挿入された1以上の文字(または少なくともその一部)を表示するためのスペースを認識領域28に設けることができる。
【0074】
以下、
図6および
図7A~7Fを参照して、
図5に例示されるような文字入力方法の特定の実施形態をより詳細に説明する。より詳細には、デバイス2は、本例においてメモリ6に記憶されたコンピュータプログラムPGを実行することによってこの方法を実施する。
【0075】
本例において、デバイス2は、テキスト文字の入力および編集をできるようにするが、他の種類の文字でもよい。
【0076】
初期状態として、本例において、ユーザが以下の文字34の列32をデバイス2にあらかじめ入力したとする。
「Hello how are you ?」
【0077】
例えば、
図7Aの内容表示領域22に例示するように、文字列32は、単語40および文法記号「?」から構成され、各単語は、少なくとも1文字34から構成される。
【0078】
本例において、例えば、ユーザは、自身の指、スタイラス24などを入力領域20に接触させて上記文字列32(または文)を入力したとしてもよい。そのためには、例えば、デバイス2は、通常の入力モードで動作し、ユーザがテキストなどの文字を入力するための適切ないずれかのユーザインタフェースを使用して入力領域20に文字を入力できるようにしてもよい。例えば、通常の入力モードにおいて、入力領域20が挿入領域30を有さず、より大きな認識領域28を表示して、ユーザがより簡単かつより正確に文字入力をできるようにしてもよい。
【0079】
変形例において、文字34の列32は、いずれかの適切な方法または手段によってデバイス2にあらかじめ入力されていてもよい。文字列32は、デバイス2に、例えばメモリ6によって、あらかじめ記憶されていてもよい。別の例において、デバイス2は、いずれかの適切な送信技術によって、文字列32「Hello how are you ?」を他の端末またはデバイスから受け取るように構成されてもよい。
【0080】
さらに、特定の実施形態において、デバイス2は、現在、挿入モードで動作し、1以上の文字を選択された位置で文字34の列32に挿入できるようにしているとする。
【0081】
図7Aに示すように、初期状態において、文字列32は、ユーザが簡単に可視化したり、見たり、または読んだりできるようなフォーマットで、内容表示領域22に表示される。内容表示領域22にカーソル42を表示して、文字34の列32内の現在アクティブな位置を示すようにしてもよい。
【0082】
図6のS20において、例えばスクロールモジュールM2によって第一スクロールステップが行われ、文字34の列32を認識領域28においてスクロールする。本例において、第一スクロールステップS20は、ユーザから受け取ったスクロールコマンドに応じて、第一スクロールの方向D1に行われる。そうするために、ユーザは、例えば多位置対話式操作をユーザインタフェースに対して行ってもよい。多位置対話式操作は、例えば方向D1を指す矢印の近傍の2つのドットを
図7Aに表されるような2つの指でタッチすることである。第一スクロールステップS20中に、ユーザは、このように文字34の列32を逆向きにスクロールして、少なくとも1文字が挿入されることになる文字列32内の特定の位置を探してもよい。
【0083】
図7Aは、第一スクロールステップS20中の入力領域20の第一の状態を示す。ここで、認識領域28には、文字列32の最後(すなわち、文字「u?」)だけが表示される。
【0084】
詳細は後述するが、挿入マーカ29は、ユーザが1以上の文字を挿入したい文字列32の位置を規定するために使用され得る。カーソル42が示す内容フィールド22内の現在アクティブな位置は、入力領域20における文字34の列32に対する挿入マーカ29の位置に対応してもよい。また、他の実施形態においては、そのような挿入マーカを考えなくてもよい。
【0085】
図7Bは、第一スクロールステップS20がまだ進行中であるときの入力領域20の第二の状態を示す。ここで、文字列32は、方向D1にさらにスクロールされている。図から明らかなように、認識領域28内に表示された文字列32の最後の文字「you?」は、挿入領域30に入って消えるまで、認識領域28内を方向D1に沿って移動されている。
【0086】
本例において、文字列32は、複数の単語40を含む。それぞれの単語は、少なくとも1文字34を含む(単語「how」および「are」は、それぞれ40aおよび40bで示される)。スクロールモジュールM2は、第一スクロールステップS20において、認識領域28内に位置する各単語40を表示するが、認識領域28を出て挿入領域30に全体が入った各単語40は隠すように構成される。
図7Bから明らかなように、単語「you」および「?」は、認識領域28から完全に出たので消えている。単語「are」は、まだ認識領域28と挿入領域30との間の境界を移動する処理の最中であるので、まだ表示されている。後述において明らかになるが、第一スクロールステップS20において挿入領域30内に完全に入った単語を見えないように隠すことは、挿入領域30内に空いたスペースを維持して、ユーザが文字を挿入できるようにするためである。
【0087】
別の例において、スクロールモジュールM2は、第一スクロールステップS20において、認識領域28内に位置する各単語40を表示するとともに、全体が認識領域28から出て挿入領域30内に入った各単語を部分的に隠すように構成されてもよい。挿入領域30に位置する単語を隠すか、またはフェードアウトする方法は、種々考えられ得る。
【0088】
上記例において説明したように、スクロールモジュールM2は、第一スクロールステップS20において、認識領域28内に少なくとも部分的に位置する各単語40を表示するとともに、全体が認識領域28を出て挿入領域30に入った各単語40を隠すように構成される。この構成は、「単語隠蔽ルール」と称することもある。本開示において、他の隠蔽ルールが実装されてもよい。
【0089】
例えば、挿入領域28から認識領域30に入った文字を隠すための隠蔽ルールは、文字レベルで適用してもよい。そのような構成において、各個々の文字34は、認識領域28から挿入領域30に入るとすぐに消える(この場合、単語の境界を待つ必要はない)。「文字隠蔽ルール」と称することもあるこの隠蔽ルールは、文字を単語に挿入するのに便利である。一方、「単語隠蔽ルール」は、完全な単語同士の間に文字を挿入するのに便利である。
図7Dを参照して以下にさらに説明する第二スクロールステップS10は、実施された隠蔽ルールに従って実行されてもよい。
【0090】
図7Cに例示するように、スクロールステップ(S20)は、少なくとも1文字が挿入されることになる、文字列32内の2つの連続した文字と文字の間の位置Pを選択するように、方向D1に継続して行われる。第一スクロールステップS20中に挿入位置を規定するために種々の技術が使用され得る。
【0091】
本例において、スクロールモジュールM2は、第一スクロールステップS20中に、文字34の列32内で選択された位置Pが認識領域28内で挿入マーカ29の近傍に少なくとも部分的に表示された文字列32の最後の単語40a(この場合、「how」)の直後に続く位置となるように構成される。文字隠蔽ルールが実施された別の例において、選択された位置Pは、認識領域28内で挿入マーカ29の近傍に表示された文字列32の最後の文字34の直後に続く位置である。
【0092】
本例において、スクロールステップS20は、単語「how」(40aで示す)の最後にある第一の文字「w」(34aで示す)と単語「are」(40bで示す)の最初にある第二の文字「a」(34bで示す)との間の位置を、位置Pとして、選択するように、
図7Cに示す状態で終了する。
図7Cの本例において、内容フィールド22内のカーソル42は、文字列42内の同じ位置Pに配置され、文字が挿入され得る挿入位置Pのユーザによる可視化を容易にする。
【0093】
この特定の例においては、スクロールステップS20が終了することによって位置Pが自動的に選択されるので、位置Pの選択が簡単にできる。ユーザは、挿入位置Pを選択するためにさらなる対話式操作をする必要がない。
【0094】
上記のように、挿入マーカ29を使用して、文字列32を認識領域28にわたってスクロールしながら(S20)、ユーザが適切な位置Pを選択するのを補助してもよい。選択された位置Pは、文字34の列32内における挿入マーカ29の相対位置に基づいて決定できる。本例において、挿入マーカ29は、認識領域28と挿入領域30との間の境界としてライン(この場合、破線)を形成する。本例において、挿入マーカ29は、入力領域20内において静止しており、文字列32が第一スクロールステップS2中にスクロールされ、文字列32に対する挿入マーカ29の位置、または挿入マーカ29に対する文字列32の位置が制御される。
【0095】
図7A~7Cの例において、第一スクロールステップS20は、方向D1に行われる。別の例において、第一スクロールステップは、方向D2のスクロールステップを含んでもよい。あるいは、第一スクロールステップは、ユーザが文字を挿入したい適切な位置Pを探しながら方向D1およびD2に行われてもよい。上記のような単語隠蔽ルール(または、文字隠蔽ルール)が実施される場合、各単語(または、文字)は、一旦認識領域30から挿入領域28に完全に入ると挿入領域28に現れる。
【0096】
図7Dに例示するように、一旦適切なまたは所望の位置Pが選択されると、ユーザは、文字34の列32内の位置Pに挿入したい1以上の文字(この場合、単語「good」の4文字)に対応する少なくとも1つのストローク36を手動で入力する。したがって、本例において、S22において、検出モジュールM4は、挿入領域30に手動で入力された少なくとも1つの入力ストローク36を検出する。
【0097】
ストローク検出ステップS22は、デバイス2によっていずれの適切な方法で行われてもよい。
【0098】
次いで、
図7Eの例に示すように、認識モジュールM6は、手書き認識を行って、検出されたストローク36を少なくとも1つの認識された文字50に変換する(S24)。本例において、認識モジュールM6は、単語「good」を形成する文字50を認識する。上記のように、手書き認識は、デバイス2によっていずれの適切な方法で行われてもよい。
【0099】
この段階において、本開示の異なる実施例が考えられ得る。本例において、手書き認識S24の進行中に、検出された入力ストローク36が表示される(S26)。これにより、手書きテキスト36をデジタルインクとして挿入領域30に一時的に表示できる(
図7Dを参照)。
【0100】
S28において、挿入モジュールM8は、手書き認識S24が完了したか否かを検出する。この検出は、認識モジュールM6が挿入モジュールM8に認識が完了したことを直接または間接的に伝えた結果として、または例えば手書き認識器によって認識結果が出力された際に、起こり得る。
【0101】
一旦手書き認識S24が完了したことが検出されたら(S28)、挿入モジュールM8は、少なくとも1つの認識された文字50を文字34の列32内の位置Pに挿入し(S30)、スクロールモジュールM2は、認識領域28において、認識された文字50(本例において、「good」)の少なくとも一部を、文字50が文字34の列32に挿入された位置で、表示するように、文字列32を認識領域28内で方向D2にスクロール(S32)する。例えば
図7Eから明らかなように、文字列32は、左方向へ逆向きにスクロールされ、挿入された単語「good」の文字「ood」が認識領域28内に見えるようにする。方向D2のスクロールステップS32によって、挿入領域30内に挿入スペース52を設け、挿入領域30内に追加のストロークを入力できるようにする。
【0102】
本例において、第二スクロールステップS32の結果により認識領域28内に配置された各認識された文字50は、上記のようにテキストまたはタイプセットインクとして表示される。
【0103】
本例において、また、挿入された文字50は、内容フィールド22の文字列32内の位置Pに挿入される。
【0104】
図7Fおよび7Gに例示するように、第二スクロールステップS32の後、第三スクロールステップ(S34)が第二スクロールステップ(すなわち、この場合、方向D2)と同じ方向に行われ、認識領域28において、文字34の列32内の挿入された文字50の直後に続く少なくとも第二の文字34b(すなわち、単語40b「are」の最初の文字「a」)が表示されてもよい。挿入された単語「good」に続く文字は、スクロールステップと同じ速さで現れてもよい。また、内容フィールド22内のカーソル42の位置は、最新の可視文字または単語を考慮して、連続して更新されてもよい。第三スクロールステップS34によって、文字列32を認識領域28内で逆向きにスクロールし、挿入された文字50に続く文字または単語を認識領域28に表示できる。このようにユーザは、単語「good」が挿入された文32の少なくとも一部を見るか、または可視化できる。ユーザは、S20~S32について上記した方法と同じ方法で追加の文字を挿入するための他の位置Pを選択してもよい。
【0105】
以下に、
図8および9A~9Bを参照して、
図5に例示したような文字入力方法の他の特定の実施形態をより詳細に説明する。より詳細には、デバイス2は、メモリ6に記憶されたコンピュータプログラムPGを実行することによってこの方法を実施する。
【0106】
本例においても、ユーザがデバイス2に文字34の列32「Hello how are you ?」をあらかじめ入力しているか、またはデバイス2がこの文字列32を例えばメモリ6に記憶しており、
図6を参照して上記したようにS20、S22およびS24が実行されているとする。
【0107】
図9Aに示すように、手書き認識S24が行われながら、スクロールモジュールM2は、文字34の列32内の位置Pに、検出された少なくとも1つの入力ストローク36を挿入する(S40)。次いで、スクロールモジュールM2は、手書き認識の進行中に、挿入された少なくとも1つの入力ストローク36の少なくとも一部を認識領域28に表示するように、第二スクロールステップとして、文字列32を認識領域28に入るように方向D2にスクロールする(S42)。これにより、ユーザは、認識領域28においてユーザが入力したばかりの内容を可視化できるとともに、挿入領域30内にさらに入力するためのさらなるスペースまたは余地を設けることができるという利点がある。
【0108】
S44において、上記のように、挿入モジュールM8は、手書き認識S24が完了したか否かを検出する。
【0109】
図9Bに示すように、一旦手書き認識S24が完了すると、スクロールモジュールM2は、認識領域28に表示中の挿入された入力ストローク36を対応する認識された文字50に置き換える(S46)。
【0110】
次いで、
図6を参照して上記した方法と同じ方法で第三スクロールステップS34が行われてもよい。
【0111】
本開示のシステムおよび方法によって、追加の文字を現在の文字列の前、中、または後の適切な位置に効率よくかつユーザフレンドリに挿入できる。したがって、追加の文字を自然かつ比較的迅速なやり方で入力できる。
【0112】
特に、本教示によれば、挿入対象の位置を簡単に選択できる。本開示のシステムおよび方法によれば、ユーザは、複雑なまたは覚えるのが難しいジェスチャを行う必要がなく、文字挿入を行う手順を簡単に覚え得る。ユーザは、追加の文字を手書き入力用の入力領域に直接入力してもよい。特に、本システムおよび方法は、デジタルデバイスの入力領域とは別の入力フィールドを使用して追加の文字を入力する必要がない。
【0113】
なお、いくつかの別の実施例において、ブロックに記載の機能は、図示の順番どおりに行われなくてもよい。例えば、連続する2つのブロックが実際には実質的に同時に実行されてもよいし、または逆の順番で実行されてもよいこともあるし、または関連する機能に応じて、別の順番で実行されてもよい。
【0114】
さらに、本原理の局面は、コンピュータ読み取り可能な記憶媒体の形態をとることができる。1以上のコンピュータ読み取り可能な記憶媒体のいずれの組み合わせを利用してもよい。コンピュータ読み取り可能な記憶媒体は、1以上のコンピュータ読み取り可能な媒体に組み込まれ、コンピュータによって実行可能な、その媒体上に組み込まれたコンピュータ読み取り可能なプログラムコードまたは指示を有するコンピュータ読み取り可能なプログラム製品の形態をとることができる。本明細書中に使用されるコンピュータ読み取り可能な記憶媒体は、情報をそれ自体に記憶する能力および情報をそれ自体から取り出す能力を本質的に備える非一時的な記憶媒体であると考えられる。コンピュータ読み取り可能な記憶媒体は、例えば、電子、磁気、光、電磁気、赤外線、または半導体システム、装置、もしくはデバイス、またはこれらのいずれの適した組み合わせでもあり得るが、それらに限定されない。
【0115】
本開示の特定の実施形態を説明したが、多くの変更および実施形態が当業者の能力内で、発明能力を発揮せずになされ得ることが明らかである。したがって、本発明の範囲は、以下の特許請求の範囲によって定義される。