(57)【要約】【課題】手書き文書を容易に扱うことができる電子機器を実現する。【解決手段】実施形態によれば、電子機器は、表示処理手段および選択手段を具備する。表示処理手段は、手書きにより入力される複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを前記画面に表示する。選択手段は、前記領域ストロークに基づいて、前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択する。【選択図】図５
2014092902.tif 000002
【特許請求の範囲】
【請求項１】
手書きにより入力される複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを前記画面に表示する表示処理手段と、
前記領域ストロークに基づいて、前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択する選択手段とを具備する電子機器。
【請求項２】
前記第１ストロークデータと前記第１画像データとを記憶媒体に保存する保存処理手段をさらに具備する請求項１記載の電子機器。
【請求項３】
前記選択手段は、前記複数のストロークの内、前記第１領域に包含される第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内、前記第１領域に包含される第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項４】
前記選択手段は、前記第１領域を包含する矩形領域に少なくとも一部が含まれる前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記第１領域に包含される前記１以上の画像の内の第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項５】
前記選択手段は、前記第１領域を包含する矩形領域に少なくとも一部が含まれる前記複数のストロークの内の複数の第１ストロークに対応する第１ストロークデータと、前記複数の第１ストロークが手書きされた期間内に手書きされた第２ストロークに対応する第２ストロークデータと、前記第１領域に包含される前記１以上の画像の内の第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項６】
前記複数のストロークを、手書きされた時刻に基づく複数のグループに分割する分割手段をさらに具備し、
前記選択手段は、前記第１領域を包含する矩形領域に少なくとも一部が含まれる前記複数のストロークの内の複数の第１ストロークに対応する第１ストロークデータと、前記複数の第１ストロークと同一のグループに属する第２ストロークに対応する第２ストロークデータと、前記第１領域に包含される前記１以上の画像の内の第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項７】
前記選択手段は、前記第１領域を包含する矩形領域に少なくとも一部が含まれる前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記矩形領域に包含される前記１以上の画像の内の第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項８】
前記第１文書は、１以上のオブジェクトをさらに含み、
前記選択手段は、さらに、前記領域ストロークに基づいて、前記１以上のオブジェクトの内のオブジェクトに対応するオブジェクトデータを選択する請求項１記載の電子機器。
【請求項９】
前記表示処理手段は、さらに、前記第１領域を包含する矩形領域を前記画面に表示し、
前記選択手段は、前記第１領域と前記矩形領域のいずれか一方を選択する領域選択操作によって、前記第１領域が選択された場合、前記第１領域に包含される、前記複数のストロークの内のストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択し、前記矩形領域が選択された場合、前記矩形領域に少なくとも一部が含まれる前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記第１領域に包含される前記１以上の画像の内の第１部分に対応する第１画像データとを選択する請求項１記載の電子機器。
【請求項１０】
前記表示処理手段は、さらに、貼付操作に応じて、前記第１ストロークデータに対応する前記第１ストロークと前記第１画像データに対応する前記第１部分とを、前記第１文書内、又は前記第１文書とは異なる第２文書内に表示する請求項１記載の電子機器。
【請求項１１】
タッチスクリーンディスプレイをさらに具備し、
前記複数のストロークと前記領域ストロークとは、前記タッチスクリーンディスプレイを用いて手書きにより入力される請求項１記載の電子機器。
【請求項１２】
手書きにより入力される複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを前記画面に表示し、
前記領域ストロークに基づいて、前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択する手書き文書処理方法。
【請求項１３】
コンピュータにより実行されるプログラムであって、前記プログラムは、
手書きにより入力される複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを前記画面に表示する手順と、
前記領域ストロークに基づいて、前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択する手順とを前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、手書き文書の処理に関する。
【背景技術】
【０００２】
近年、タブレット、ＰＤＡ、スマートフォンといった種々の電子機器が開発されている。この種の電子機器の多くは、ユーザによる入力操作を容易にするために、タッチスクリーンディスプレイを備えている。
【０００３】
ユーザは、タッチスクリーンディスプレイ上に表示されるメニューまたはオブジェクトを指などでタッチすることにより、これらメニューまたはオブジェクトに関連付けられた機能の実行を電子機器に指示することができる。
【０００４】
このような電子機器では、ユーザが、タッチスクリーンディスプレイ上で文字や図形等を手書きするための機能を有するものもある。このような手書きの文字や図形を含む手書き文書（手書きページ）は保存され、必要に応じて閲覧される。
【０００５】
ところで、テキストエディタのような文書を作成可能なソフトウェアでは、作成した文書の一部分をコピー（又はカット）し、そのコピーされた一部分をその文書内の他の領域や別の文書に貼り付ける機能（コピー・アンド・ペースト機能又はカット・アンド・ペースト機能）が設けられていることが多い。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１７８２５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
手書き文書でも、手書き文書内の一部分が、その手書き文書や別の手書き文書で利用されることが期待される場合がある。
【０００８】
本発明の一形態は、手書き文書を容易に扱うことができる電子機器および手書き文書処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態によれば、電子機器は、表示処理手段および選択手段を具備する。表示処理手段は、手書きにより入力される複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを前記画面に表示する。選択手段は、前記領域ストロークに基づいて、前記複数のストロークの内の第１ストロークに対応する第１ストロークデータと、前記１以上の画像の内の第１部分に対応する第１画像データとを選択する。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る電子機器の外観を示す斜視図。
【図２】同実施形態の電子機器によって処理される手書き文書の例を示す図。
【図３】同実施形態の電子機器によって記憶媒体に保存される、図２の手書き文書に対応する時系列情報を説明するための図。
【図４】同実施形態の電子機器のシステム構成を示すブロック図。
【図５】同実施形態の電子機器によって実行されるデジタルノートブックアプリケーションプログラムの機能構成を示すブロック図。
【図６】同実施形態の電子機器によって作成される手書き文書の例を示す図。
【図７】図６の手書き文書上で、ストロークを選択するための領域が入力された例を示す図。
【図８】図７の領域に基づいて決定された候補領域の例を示す図。
【図９】図８の候補領域の選択に応じて抽出されるストロークの例を示す図。
【図１０】図７の領域を変更する操作の例を示す図。
【図１１】同実施形態の電子機器によって抽出されるストロークの例を示す図。
【図１２】同実施形態の電子機器によって作成される画像（オブジェクト）を含む手書き文書上で、ストロークを選択するための領域が入力された例を示す図。
【図１３】図１２の領域に基づいて抽出される画像とストロークとの例を示す図。
【図１４】図１２の領域に基づいて抽出される画像とストロークとの別の例を示す図。
【図１５】図７の領域に基づいて決定された候補領域の別の例を示す図。
【図１６】図１５の領域に基づいて抽出されるストロークの例を示す図。
【図１７】同実施形態の電子機器によって実行される手書き文書入力処理の手順の例を示すフローチャート。
【図１８】同実施形態の電子機器によって実行される領域選択処理の手順の例を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、実施の形態について図面を参照して説明する。  
図１は、一実施形態に係る電子機器の外観を示す斜視図である。この電子機器は、例えば、ペンまたは指によって手書き入力可能なペン・ベースの携帯型電子機器である。この電子機器は、タブレットコンピュータ、ノートブック型パーソナルコンピュータ、スマートフォン、ＰＤＡ等として実現され得る。以下では、この電子機器がタブレットコンピュータ１０として実現されている場合を想定する。タブレットコンピュータ１０は、タブレットまたはスレートコンピュータとも称される携帯型電子機器であり、図１に示すように、本体１１とタッチスクリーンディスプレイ１７とを備える。タッチスクリーンディスプレイ１７は、本体１１の上面に重ね合わせるように取り付けられている。
【００１２】
本体１１は、薄い箱形の筐体を有している。タッチスクリーンディスプレイ１７には、フラットパネルディスプレイと、フラットパネルディスプレイの画面上のペンまたは指の接触位置を検出するように構成されたセンサとが組み込まれている。フラットパネルディスプレイは、例えば、液晶表示装置（ＬＣＤ）であってもよい。センサとしては、例えば、静電容量方式のタッチパネル、電磁誘導方式のデジタイザなどを使用することができる。以下では、デジタイザとタッチパネルの２種類のセンサの双方がタッチスクリーンディスプレイ１７に組み込まれている場合を想定する。
【００１３】
デジタイザおよびタッチパネルの各々は、フラットパネルディスプレイの画面を覆うように設けられる。このタッチスクリーンディスプレイ１７は、指を使用した画面に対するタッチ操作のみならず、ペン１００を使用した画面に対するタッチ操作も検出することができる。ペン１００は例えば電磁誘導ペンであってもよい。
【００１４】
ユーザは、外部オブジェクト（ペン１００又は指）を使用してタッチスクリーンディスプレイ１７上で、手書きにより複数のストロークを入力する手書き文書入力操作を行うことができる。手書き文書入力操作中においては、画面上の外部オブジェクト（ペン１００又は指）の動きの軌跡、つまり手書き文書入力操作によって手書きされるストロークの軌跡（筆跡）がリアルタイムに描画され、これによって各ストロークの軌跡が画面上に表示される。外部オブジェクトが画面に接触されている間の外部オブジェクトの動きの軌跡が１ストロークに相当する。手書きされた文字または図形などに対応する多数のストロークの集合、つまり多数の軌跡（筆跡）の集合が手書き文書を構成する。
【００１５】
本実施形態では、この手書き文書は、イメージデータではなく、各ストロークの軌跡の座標列とストローク間の順序関係を示す時系列情報を含む手書き文書データとして記憶媒体に保存される。この時系列情報の詳細は図３を参照して後述するが、この時系列情報は、概して、複数のストロークにそれぞれ対応する時系列のストロークデータの集合を意味する。各ストロークデータは、手書きにより入力可能なある一つのストロークを表現可能なデータであればどのようなものであってもよく、例えば、このストロークの軌跡上の点それぞれに対応する座標データ系列（時系列座標）を含む。これらストロークデータの並びの順序は、ストロークそれぞれが手書きされた順序つまり筆順に相当する。
【００１６】
タブレットコンピュータ１０は、記憶媒体から既存の任意の手書き文書データを読み出し、この手書き文書データに対応する手書き文書、つまり、時系列情報によって示される複数のストロークそれぞれに対応する軌跡が描画された手書き文書を、画面上に表示することができる。
【００１７】
ユーザはさらに、外部オブジェクト（ペン１００又は指）を使用してタッチスクリーンディスプレイ１７上で、第１領域を指定するための領域ストロークを入力する領域入力操作を行うことができる。この領域入力操作では、表示されている手書き文書上の任意の領域が指定される。領域入力操作中においても、手書き文書入力操作と同様に、画面上の外部オブジェクト（ペン１００又は指）の動きの軌跡、つまり領域入力操作によって手書きされるストロークの軌跡（筆跡）がリアルタイムに描画され、これによって１つのストロークの軌跡が画面上に表示される。外部オブジェクトが画面に接触されている間の外部オブジェクトの動きの軌跡が１ストロークに相当する。手書きされた１つのストローク（一筆書き）によって指定される画面上の範囲（第１領域）に応じて、手書き文書上の処理対象の部分（第１部分）が選択（導出）される。この処理対象の部分に対応するストロークやオブジェクトのデータはクリッピングされ、処理中の文書や他の文書で利用することができる。
【００１８】
なお、ユーザは、例えば、「領域指定」ツール、ペン１００に設けられたボタン等を使用した所定の操作、ペンに関連付けられた属性情報等によって、手書き文書入力操作を行う第１モードと、領域入力操作を行う第２モードとを切り替えることができる。つまり、タッチスクリーンディスプレイ１７上での入力操作は、第１モードに設定されている場合に手書き文書入力操作として検出され、第２モードに設定されている場合に領域入力操作として検出される。ペンに関連付けられた属性情報は、例えば、ペンの種類を示す情報を含み、より具体的には、「ボールペン」や「マーカー」に設定されていること示す情報（ペンの太さ、形状、色、透過度など）や、領域入力用のペンに設定されていることを示す情報等を含む。「ボールペン」や「マーカー」は、描画されるストロークがユーザにイメージされやすいように名付けられたペンの種類である。この属性情報によって、上記の第１モードと第２モードとを判別することもできる。
【００１９】
また、領域入力操作に基づく領域ストロークの軌跡は、手書き文書入力操作に基づくストロークの軌跡とは別の種類の線で描画されてもよい。例えば、手書き文書入力操作に基づくストロークの軌跡が実線で描画され、領域入力操作に基づく領域ストロークの軌跡が破線で描画される。
【００２０】
次いで、図２および図３を参照して、ユーザによって手書きされたストローク（文字、マーク、図形、表など）と時系列情報との関係について説明する。図２は、ペン１００などを使用してタッチスクリーンディスプレイ１７上に手書きされる手書き文書（手書き文字列）の例を示している。
【００２１】
手書き文書では、一旦手書きされた文字や図形などの上に、さらに別の文字や図形などが手書きされるというケースが多い。図２においては、「ＡＢＣ」の手書き文字列が「Ａ」、「Ｂ」、「Ｃ」の順番で手書きされ、この後に、手書きの矢印が、手書き文字「Ａ」のすぐ近くに手書きされた場合が想定されている。
【００２２】
手書き文字「Ａ」は、ペン１００などを使用して手書きされる２つのストローク（「∧」形状の軌跡、「−」形状の軌跡）によって、つまり２つの軌跡によって表現される。最初に手書きされる「∧」形状のペン１００の軌跡は例えば等時間間隔でリアルタイムにサンプリングされ、これによって「∧」形状のストロークの時系列座標ＳＤ１１、ＳＤ１２、…ＳＤ１ｎが得られる。同様に、次に手書きされる「−」形状のペン１００の軌跡もサンプリングされ、これによって「−」形状のストロークの時系列座標ＳＤ２１、ＳＤ２１、…ＳＤ２ｎが得られる。
【００２３】
手書き文字「Ｂ」は、ペン１００などを使用して手書きされた２つのストローク、つまり２つの軌跡によって表現される。手書き文字「Ｃ」は、ペン１００などを使用して手書きされた手書きされた１つのストローク、つまり１つの軌跡によって表現される。手書きの「矢印」は、ペン１００などを使用して手書きされた２つのストローク、つまり２つの軌跡によって表現される。
【００２４】
図３は、図２の手書き文書に対応する時系列情報２００を示している。時系列情報は、複数のストロークデータＳＤ１、ＳＤ２、…、ＳＤ７を含む。時系列情報２００内においては、これらストロークデータＳＤ１、ＳＤ２、…、ＳＤ７は、筆跡順に、つまり複数のストロークが手書きされた順に時系列に並べられている。
【００２５】
時系列情報２００において、先頭の２つのストロークデータＳＤ１、ＳＤ２は、手書き文字「Ａ」の２つのストロークをそれぞれ示している。３番目と４番目のストロークデータＳＤ３、ＳＤ４は、手書き文字「Ｂ」を構成する２つのストロークをそれぞれ示している。５番目のストロークデータＳＤ５は、手書き文字「Ｃ」を構成する１つのストロークを示している。６番目と７番目のストロークデータＳＤ６、ＳＤ７は、手書き矢印を構成する２つのストロークをそれぞれ示している。
【００２６】
各ストロークデータは、一つのストロークに対応する座標データ系列（時系列座標）、つまり一つのストロークの軌跡上の複数の点それぞれに対応する複数の座標を含む。各ストロークデータにおいて、複数の座標は、ストロークが書かれた順に時系列に並べられている。例えば、手書き文字「Ａ」に関しては、ストロークデータＳＤ１は、手書き文字「Ａ」の「∧」形状のストロークの軌跡上の点それぞれに対応する座標データ系列（時系列座標）、つまりｎ個の座標データＳＤ１１、ＳＤ１２、…ＳＤ１ｎを含む。ストロークデータＳＤ２は、手書き文字「Ａ」の「−」形状のストロークの軌跡上の点それぞれに対応する座標データ系列、つまりｎ個の座標データＳＤ２１、ＳＤ２２、…ＳＤ２ｎを含む。なお、座標データの数はストロークデータ毎に異なっていてもよい。
【００２７】
各座標データは、対応する軌跡内のある１点に対応するＸ座標およびＹ座標を示す。例えば、座標データＳＤ１１は、「∧」形状のストロークの始点のＸ座標（Ｘ１１）およびＹ座標（Ｙ１１）を示す。ＳＤ１ｎは、「∧」形状のストロークの終点のＸ座標（Ｘ１ｎ）およびＹ座標（Ｙ１ｎ）を示す。
【００２８】
さらに、各座標データは、その座標に対応する点が手書きされた時点に対応するタイムスタンプ情報Ｔを含んでいてもよい。手書きされた時点は、絶対時間（例えば、年月日時分秒）またはある時点を基準とした相対時間のいずれであってもよい。例えば、各ストロークデータに、ストロークが書き始められた絶対時間（例えば、年月日時分秒）をタイムスタンプ情報として付加し、さらに、ストロークデータ内の各座標データに、絶対時間との差分を示す相対時間をタイムスタンプ情報Ｔとして付加してもよい。
【００２９】
このように、各座標データにタイムスタンプ情報Ｔが追加された時系列情報を使用することにより、ストローク間の時間的関係をより精度よく表すことができる。  
各座標データには、筆圧を示す情報（Ｚ）を追加してもよい。
【００３０】
さらに、本実施形態では、上述したように、手書き文書は、イメージまたは文字認識結果ではなく、時系列のストロークデータの集合から構成される時系列情報２００として記憶されるので、言語に依存せずに手書きの文字や図形を扱うことができる。よって、本実施形態の時系列情報２００の構造は、使用言語の異なる世界中の様々な国で共通に使用できる。
【００３１】
図４は、タブレットコンピュータ１０のシステム構成を示す図である。  
タブレットコンピュータ１０は、図４に示されるように、ＣＰＵ１０１、システムコントローラ１０２、主メモリ１０３、グラフィクスコントローラ１０４、ＢＩＯＳ−ＲＯＭ１０５、不揮発性メモリ１０６、無線通信デバイス１０７、エンベデッドコントローラ（ＥＣ）１０８等を備える。
【００３２】
ＣＰＵ１０１は、タブレットコンピュータ１０内の各種モジュールの動作を制御するプロセッサである。ＣＰＵ１０１は、ストレージデバイスである不揮発性メモリ１０６から主メモリ１０３にロードされる各種ソフトウェアを実行する。これらソフトウェアには、オペレーティングシステム（ＯＳ）２０１、および各種アプリケーションプログラムが含まれている。アプリケーションプログラムには、デジタルノートブックアプリケーションプログラム２０２が含まれている。このデジタルノートブックアプリケーションプログラム２０２は、上述の手書き文書を作成および表示する機能、手書き文書から任意の領域や任意のストロークを切り出すクリッピング機能、等を有している。
【００３３】
また、ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０５に格納された基本入出力システム（ＢＩＯＳ）も実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００３４】
システムコントローラ１０２は、ＣＰＵ１０１のローカルバスと各種コンポーネントとの間を接続するデバイスである。システムコントローラ１０２には、主メモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１０２は、ＰＣＩ  ＥＸＰＲＥＳＳ規格のシリアルバスなどを介してグラフィクスコントローラ１０４との通信を実行する機能も有している。
【００３５】
グラフィクスコントローラ１０４は、本タブレットコンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７Ａを制御する表示コントローラである。このグラフィクスコントローラ１０４によって生成される表示信号はＬＣＤ１７Ａに送られる。ＬＣＤ１７Ａは、表示信号に基づいて画面イメージを表示する。このＬＣＤ１７Ａ上にはタッチパネル１７Ｂおよびデジタイザ１７Ｃが配置されている。タッチパネル１７Ｂは、ＬＣＤ１７Ａの画面上で入力を行うための静電容量式のポインティングデバイスである。指が接触される画面上の接触位置および接触位置の動き等はタッチパネル１７Ｂによって検出される。デジタイザ１７ＣはＬＣＤ１７Ａの画面上で入力を行うための電磁誘導式のポインティングデバイスである。ペン１００が接触される画面上の接触位置および接触位置の動き等はデジタイザ１７Ｃによって検出される。
【００３６】
無線通信デバイス１０７は、無線ＬＡＮまたは３Ｇ移動通信などの無線通信を実行するように構成されたデバイスである。ＥＣ１０８は、電力管理のためのエンベデッドコントローラを含むワンチップマイクロコンピュータである。ＥＣ１０８は、ユーザによるパワーボタンの操作に応じて本タブレットコンピュータ１０を電源オンまたは電源オフする機能を有している。
【００３７】
次に、図５を参照して、デジタルノートブックアプリケーションプログラム２０２の機能構成について説明する。デジタルノートブックアプリケーションプログラム２０２は、タッチスクリーンディスプレイ１７を用いた手書き文書入力操作によって入力されるストロークデータを使用することによって、手書き文書の作成、表示、編集等を行う。また、デジタルノートブックアプリケーションプログラム２０２は、手書き文書内の領域を指定する領域入力操作に応じて、指定された領域に対応又は関連する画像の画像データや、指定された領域に対応又は関連するストロークのストロークデータを取得する。
【００３８】
デジタルノートブックアプリケーションプログラム２０２は、例えば、軌跡表示処理部３０１、時系列情報生成部３０２、候補領域算出部３０４、領域表示処理部３０５、選択部３０６、データ保存処理部３０７、データ取得処理部３０８、文書表示処理部３０９、オブジェクトリード部３１０、オブジェクト表示処理部３１１等を備える。
【００３９】
タッチスクリーンディスプレイ１７は、「タッチ」、「移動（スライド）」、「リリース」等のイベントの発生を検出するように構成されている。「タッチ」は、画面上に外部オブジェクトが接触したことを示すイベントである。「移動（スライド）」は、画面上に外部オブジェクトが接触されている間に接触位置が移動されたことを示すイベントである。「リリース」は、画面から外部オブジェクトが離されたことを示すイベントである。
【００４０】
軌跡表示処理部３０１および時系列情報生成部３０２は、タッチスクリーンディスプレイ１７によって発生される「タッチ」または「移動（スライド）」のイベントを受信し、これによって手書き文書入力操作（又は領域入力操作）を検出する。「タッチ」イベントには、接触位置の座標が含まれている。「移動（スライド）」イベントには、移動先の接触位置の座標が含まれている。したがって、軌跡表示処理部３０１および時系列情報生成部３０２は、タッチスクリーンディスプレイ１７から、接触位置の動きの軌跡に対応する座標列を受信することができる。
【００４１】
軌跡表示処理部３０１は、タッチスクリーンディスプレイ１７から座標列を受信し、この座標列に基づいて、ペン１００等を使用した手書き入力操作（又は領域入力操作）によって手書きされる各ストロークの軌跡をタッチスクリーンディスプレイ１７内のＬＣＤ１７Ａの画面上に表示する。この軌跡表示処理部３０１により、画面にペン１００が接触している間のペン１００の軌跡、つまり各ストロークの軌跡がＬＣＤ１７Ａの画面上に描かれる。
【００４２】
時系列情報生成部３０２は、タッチスクリーンディスプレイ１７から出力される上述の座標列を受信し、この座標列に基づいて、図３で詳述したような構造を有する時系列情報（ストロークデータ）を生成する。この場合、時系列情報、つまりストロークの各点に対応する座標およびタイムスタンプ情報は作業メモリ４０１に一時保存されてもよい。
【００４３】
データ保存処理部３０７は、生成された時系列情報（作業メモリ４０１に一時保存された時系列情報）を、手書き文書データとして記憶媒体４０２に保存する。記憶媒体４０２は、例えば、タブレットコンピュータ１０内のストレージデバイスである。
【００４４】
データ取得処理部３０８は、記憶媒体４０２から既に格納されている任意の手書き文書データを読み出す。読み出された手書き文書データは文書表示処理部３０９に送られる。文書表示処理部３０９は、手書き文書データを解析し、この解析結果に基づいて、時系列情報によって示される各ストロークの軌跡を、画面上に手書き文書（手書きページ）として表示する。
【００４５】
上述したように、手書き文書に対応する時系列情報には、その手書き文書に手書きされた複数のストロークに対応する複数のストロークデータが時系列に並べられている。そして、各ストロークデータは、一つのストロークに対応する座標データ系列、つまり一つのストロークの軌跡上の時系列の複数の点それぞれに対応する複数の座標を含む。このような時系列情報を用いて、手書き文書に手書きされた複数のストロークは、手書きされた時刻に基づくグループに分割することができる。
【００４６】
図６に示すように、手書き文書５０では、各ストロークが手書きされた時刻に基づいて、ストローク間の入力時刻の隔たりを検出することによって、複数のストロークが７つのストロークグループ５１１〜５１７に分割されている。時系列情報生成部３０２は、例えば、時系列情報を用いて、第Ｎストロークの入力が完了した時刻（すなわち、第Ｎストロークの末尾の座標ＳＤ８ｎに関連付けられた時刻）から、第Ｎストロークに後続する第（Ｎ＋１）ストロークの入力が開始された時刻（すなわち、第（Ｎ＋１）ストロークの先頭の座標ＳＤ９１に関連付けられた時刻）までの経過時間がしきい値時間以上である場合に、第Ｎストロークと第（Ｎ＋１）ストロークとが別々のストロークグループに属すると判定する。
【００４７】
時系列情報生成部３０２は、上述の判定を繰り返し行うことによって、手書き文書５０上の複数のストロークを７つのストロークグループ５１１〜５１７に分割する。したがって、これら７つのストロークグループ５１１〜５１７は時系列のグループである。このストロークグループを示す情報は、作業メモリ４０１に一時保存されてもよい。
【００４８】
また、ユーザは、「領域指定」ツールを用いた領域入力操作によって、表示中の手書き文書５０（時系列情報）の任意の部分を指定することができる。この領域入力操作によって指定される領域に応じて、処理対象のストローク群が選択部３０６によって選択される。
【００４９】
図７に示すように、ユーザは、例えば、手書き文書５０内に１つのストローク（領域ストローク）５Ａを手書きする領域入力操作を行うことによって、手書き文書５０内の第１領域を指定する。
【００５０】
軌跡表示処理部３０１は、上述したように、タッチスクリーンディスプレイ１７から座標列を受信し、この座標列に基づいて、ペン１００等を使用した領域入力操作によって手書きされる領域ストローク５Ａの軌跡をタッチスクリーンディスプレイ１７内のＬＣＤ１７Ａの画面上に表示する。
【００５１】
また、時系列情報生成部３０２は、タッチスクリーンディスプレイ１７から出力される上述の座標列を受信し、この座標列に基づいて、図３で詳述したような構造を有する時系列情報（ストロークデータ）を生成する。つまり、時系列情報生成部３０２は、領域入力操作に基づく領域ストローク５Ａに対応するストロークデータを生成する。この場合、ストロークデータ、つまりストロークの各点に対応する座標およびタイムスタンプ情報は作業メモリ４０１に一時保存されてもよい。
【００５２】
そして、候補領域算出部３０４は、生成されたストロークデータを用いて、領域ストローク５Ａに対応する第１候補領域を決定する。領域ストローク５Ａは、例えば、閉ループを構成する。その場合、候補領域算出部３０４は、その閉ループに対応する領域を第１候補領域に決定する。なお、領域ストローク５Ａは閉ループを構成しなくてもよい。その場合、候補領域算出部３０４は、領域ストローク５Ａの先頭と末尾との間のストローク部分を線形又は非線形に補間することによって、領域ストローク５Ａに基づく閉ループを推定し、推定された閉ループに対応する領域を第１候補領域に決定する。
【００５３】
候補領域算出部３０４は、領域ストローク５Ａ（又は第１候補領域）に基づいて、さらに候補領域を算出する。図８は、候補領域算出部３０４によって算出される第１候補領域５１と候補領域５２，５３，５４との例を示す。
【００５４】
候補領域算出部３０４は、例えば、領域ストローク５Ａ（第１候補領域５１）を包含する矩形（例えば、第１候補領域５１に外接する矩形）を第２候補領域５２として算出する。この第２候補領域５２は、例えば、手書き文書５０の水平方向に平行な二辺と、垂直方向に平行な二辺とから構成される矩形領域である。
【００５５】
また、候補領域算出部３０４は、手書き文書５０内の複数のストロークの意味的なつながりが補完されるように、ストロークが手書きされた時刻情報を用いたオフセットを含む領域を算出する。候補領域算出部３０４は、例えば、手書き文書５０内の複数のストロークの内、算出された矩形領域（第２候補領域）５２内に少なくとも一部が含まれるストロークを検出し、その検出されたストロークが手書きされた期間を算出する。そして、候補領域算出部３０４は、手書き文書５０内の複数のストロークから、決定された期間内に手書きされたストロークを検出し、それらストロークを含む第３候補領域５３を算出する。図８に示す例では、ストロークＳＤ１０が手書きされた時刻からストロークＳＤ１Ｎが手書きされた時刻までの期間が算出され、その期間内に手書きされたストロークがさらに検出される、すなわち、“sample a”に対応するストロークと“>sample b”に対応するストロークとがさらに検出される。そして、候補領域算出部３０４は、検出されたストロークを含む第３候補領域５３を決定する。
【００５６】
さらに、候補領域算出部３０４は、例えば、手書き文書５０内の複数のストロークの内、算出された矩形領域（第２候補領域）５２内に少なくとも一部が含まれるストロークを検出し、その検出されたストロークと同一のストロークグループに属するストロークをさらに含む第４候補領域５４を算出する。図８に示す例では、“sample a”に対応するストロークと“>sample b”に対応するストロークと“>sample c”に対応するストロークとが、矩形領域（第２候補領域）５２内に少なくとも一部が含まれるストロークと同一のストロークグループ５１５，５１６，５１７に属するストロークとして検出され、これらストロークをさらに含む第４候補領域５４が決定されている。ストロークグループについては、図６を参照して説明した通りである。
【００５７】
領域表示処理部３０５は、算出された候補領域５１，５２，５３，５４をディスプレイ１７Ａに表示する。ユーザは、表示された候補領域５１，５２，５３，５４から、例えば、選択したいストロークに相当する領域を選ぶ領域選択操作を行う。
【００５８】
選択部３０６は、タッチスクリーンディスプレイ１７を用いた領域選択操作に応じて、候補領域５１，５２，５３，５４の内の、ユーザによって選択された領域を決定する。そして、選択部３０６は、ユーザによって選択された領域に基づいて、手書き文書５０上の複数のストロークの内のストローク（以下、処理対象ブロックとも称する）を選択する。また、領域表示処理部３０５は、領域選択操作によって領域が選択された場合、候補領域５１，５２，５３，５４を画面から消去してもよい。
【００５９】
図９は、領域選択操作に応じて、選択部３０６によって選択されるストローク（処理対象ブロック）の例を示す。
【００６０】
処理対象ブロック６１は、領域ストローク５Ａに対応する第１候補領域５１に包含される複数のストローク８５を含む。処理対象ブロック６２は、第２候補領域（領域ストローク５Ａを包含する矩形領域）５２に少なくとも一部が含まれる複数の第１ストローク８７を含む。
【００６１】
処理対象ブロック６３は、第３候補領域５３に包含されるストロークを含む。つまり、処理対象ブロック６３は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７が手書きされた期間内に手書きされた複数の第２ストローク８８（すなわち、“sample a”および“>sample b”）とを含む。つまり、選択部３０６は、ストロークが手書きされた時刻情報を用いた領域のオフセットを設定する。第２ストローク８８は、複数の第１ストローク８７の内の最も早い時刻に手書きされたストロークと最も遅い時刻に手書きされたストロークとの間の時刻に手書きされたストロークである。
【００６２】
処理対象ブロック６４は、第４候補領域５４に包含されるストロークを含む。つまり、処理対象ブロック６４は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７と同一のストロークグループに属する複数の第３ストローク８９（すなわち、“sample a”，“>sample b”および“>sample c”）とを含む。この第３ストローク８９は、複数の第１ストローク８７に連続して手書きされたストロークである。
【００６３】
選択部３０６は、手書き文書５０上に手書きされた複数のストロークに対応する複数のストロークデータ（時系列情報）から、選択された処理対象ブロック（すなわち、選択された１以上のストローク）に対応する１以上のストロークデータを選択する。選択された１以上のストロークデータは、例えば、複数のストロークデータ（時系列情報）の一部のコピーである。選択されたストロークデータは、例えば、作業メモリ４０１に一時保存される。なお、選択部３０６は、選択されたストロークが描画された画像（クリッピング画像）のデータを生成し、保存してもよい。
【００６４】
選択部３０６はさらに、タッチスクリーンディスプレイ１７を用いた領域貼付操作に応じて、その一時保存されたストロークデータを読み出す。読み出されたストロークデータは領域表示処理部３０５に送られる。領域表示処理部３０５は、ストロークデータを解析し、この解析結果に基づいて、ストロークデータによって示される各ストロークの軌跡を、処理対象の文書内に表示（描画）する。この処理対象の文書は、領域貼付操作が行われた際にアクティブな状態に設定されていた文書であり、例えば、手書き文書（第１文書）５０、又はこの手書き文書５０とは異なる手書き文書（第２文書）である。
【００６５】
なお、手書き文書５０上に複数の候補領域が表示されているとき、領域表示処理部３０５は、それら複数の候補領域の各々が選択された場合に取得される（切り出される）ストロークが、ユーザによって識別可能であるように表示してもよい。
【００６６】
以上の構成により、ユーザは、領域入力操作によって入力された領域ストローク５Ａに対応する領域５１だけでなく、その領域ストローク５Ａに関連する領域５２，５３，５４も容易に選択することができる。そして、選択された領域に対応するストロークを、手書き文書５０や他の手書き文書に貼り付けることによって、手書き文書５０の再構成や複数の手書き文書の統合のような手書き文書の編集を容易に行うことができる。領域ストローク５Ａに関連する領域５２，５３，５４では、ユーザが気付いていない関連性を有するストロークを含む領域を提示し得る。そのため、ユーザは、領域ストローク５Ａに関連する領域５２，５３，５４を、手書き文書を編集する際の注釈や示唆として確認することができ、手書き文書の編集を効率的に行うことができる。
【００６７】
なお、領域ストローク５Ａは、一旦入力が完了した後にさらに変更することができる。  
図１０は、領域ストローク５Ａが修正される例を示す。ここでは、ユーザが、タッチスクリーンディスプレイ１７を用いて、領域ストローク５Ａ上の点５６１を点５６４の位置までドラッグする操作を行ったことを想定する。
【００６８】
候補領域算出部３０４および領域表示処理部３０５は、領域ストローク５Ａ上の点５６２と点５６４との間のストローク部分と、点５６４と領域ストローク５Ａ上の点５６２との間のストローク部分とを線形又は非線形に補間することによって、修正された領域ストローク５６を画面に表示する。候補領域算出部３０４は、修正された領域ストローク５６に基づいて候補領域を算出し、領域表示処理部３０５は、算出された候補領域を画面に表示する。
【００６９】
これにより、入力された領域ストロークが、ユーザが意図したストロークでなかった場合等にその領域ストロークを容易に修正することができる。
【００７０】
また、図１１は、領域ストロークに基づいて選択されるストロークの別の例を示す。  
この手書き文書７１では、手書き文書７１上の複数のストロークから、領域ストローク７２に基づいて算出された領域７３に包含されるストロークが選択されている。領域７３は、少なくとも一部が領域ストローク７２（領域ストローク７２に対応する領域）内に含まれる複数の第１ストロークと、それら複数の第１ストロークの前又は後に連続して手書きされたストロークを含む。
【００７１】
このようなストロークの選択によって、ユーザは、大まかな範囲を指定する領域ストローク７２を入力するだけで、段落のようなストロークのグループに相当する領域７３を容易に選択することができる。
【００７２】
手書き文書５０には、さらに、画像や各種のオブジェクトが配置されてもよい。  
オブジェクトリード部３１０およびオブジェクト表示処理部３１１は、タッチスクリーンディスプレイ１７を用いたオブジェクト入力操作に応じて、手書き文書５０上に、画像、図形、ファイルパス、ファイルへのリンクを示すアイコン、ＵＲＬ、数式、グラフ等のオブジェクトを配置する。ユーザは、例えば、各種のオブジェクトのリストから、手書き文書５０上に配置するオブジェクトを選択し、その選択したオブジェクトを配置する手書き文書５０上の位置を指定するオブジェクト入力操作を行う。
【００７３】
オブジェクトリード部３１０は、オブジェクト入力操作によって選択されたオブジェクトを、記憶媒体４０２等のストレージから読み出す。オブジェクト表示処理部３１１は、読み出されたオブジェクトを、オブジェクト入力操作によって指定された位置に表示する。なお、オブジェクトリード部３１０は、読み出されたオブジェクトを示すオブジェクト情報を作業メモリ４０１に一時保存してもよい。データ保存処理部３０７は、生成された時系列情報（作業メモリ４０１に一時保存された時系列情報）とオブジェクト情報（作業メモリ４０１に一時保存されたオブジェクト情報）とを、手書き文書データとして記憶媒体４０２に保存する。
【００７４】
オブジェクトは、手書き文書５０内の任意の位置に配置することができる。図１２に示すように、画像５８を手書き文書５０の背景画像として配置することもできる。また、オブジェクト（画像）が配置された後に、手書き文書入力操作によって、文字や図形が手書きされてもよい。
【００７５】
ユーザは、オブジェクト（画像）５８とストロークとが混在した手書き文書５０でも、「領域指定」ツールを用いた領域入力操作によって、手書き文書５０の任意の部分を指定することができる。この領域入力操作によって指定される領域に応じて、処理対象のストローク群とオブジェクトとが選択部３０６によって選択される。選択部３０６は、複数のストロークと１以上の画像（オブジェクト）５８とを含む手書き文書（第１文書）が画面に表示されているときに、第１領域を指定するための領域ストロークに基づいて、複数のストロークの内の第１ストロークに対応する第１ストロークデータと、１以上の画像の内の第１部分に対応する第１画像データとを選択する。
【００７６】
図１２に示す例では、背景に画像５８が配置され、この画像５８上に複数のストロークが手書きされた手書き文書５０が画面に表示されているときに、１つのストローク（領域ストローク）５Ａを手書きする領域入力操作に応じて、画像５８の一部を含む手書き文書５０内の領域が指定されている。
【００７７】
軌跡表示処理部３０１は、手書き文書入力操作に応じた複数のストロークと１以上の画像とを含む手書き文書（第１文書）が画面に表示されているとき、領域入力操作に応じて手書きされる領域ストローク５Ａの軌跡をタッチスクリーンディスプレイ１７内のＬＣＤ１７Ａの画面上に表示する。また、時系列情報生成部３０２は、この領域ストローク５Ａに対応するストロークデータ（座標データ列）を生成する。
【００７８】
選択部３０６は、領域ストローク５Ａに基づいて、手書き文書内の複数のストロークの内の第１ストロークと１以上の画像の内の第１部分とを選択する。そして、選択部３０６は、複数のストロークに対応する複数のストロークデータの内の、選択されたストロークに対応する第１ストロークデータと、１以上の画像に対応する１以上の画像データの内の、選択された第１部分に対応する第１画像データとを選択する。
【００７９】
より具体的には、候補領域算出部３０４および領域表示処理部３０５は、図８を参照して詳述したように、領域ストローク５Ａに基づいて複数の候補領域を算出し、画面上に表示する。選択部３０６は、表示された複数の候補領域から１つの領域が選択されたことに応じて、その１つの領域に対応する、手書き文書５０に含まれる複数のストロークの内の第１ストロークと、当該手書き文書５０に含まれる画像５８の内の第１部分とを選択する。
【００８０】
図１３および図１４は、領域選択操作に応じて、選択部３０６によって選択されるストロークと画像部分（第１部分）との例を示す。
【００８１】
図１３に示す処理対象ブロック８１は、領域ストローク５Ａに対応する手書き文書５０内の第１領域に包含される、複数のストローク８５と画像部分（第１部分）８６とを含む。処理対象ブロック８２は、領域ストローク５Ａを包含する矩形領域（例えば、領域ストローク５Ａに外接する矩形領域）５２に少なくとも一部が含まれる複数の第１ストローク８７と、領域ストローク５Ａに対応する第１領域に包含される画像部分（第１部分）８６とを含む。
【００８２】
処理対象ブロック８３は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７が手書きされた期間内に手書きされた第２ストローク８８（すなわち、“sample a”および“>sample b”）と、領域ストローク５Ａに対応する第１領域に包含される画像部分（第１部分）８６とを含む。つまり、選択部３０６は、ストロークが手書きされた時刻情報を用いた領域のオフセットを設定する。第２ストローク８８は、複数の第１ストローク８７の内の最も早い時刻に手書きされたストロークと最も遅い時刻に手書きされたストロークとの間の時刻に手書きされたストロークである。
【００８３】
処理対象ブロック８４は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７と同一のストロークグループに属する第３ストローク８９（すなわち、“sample a”，“>sample b”および“>sample c”）と、領域ストローク５Ａに対応する第１領域に包含される画像部分（第１部分）８６とを含む。この第３ストローク８９は、複数の第１ストローク８７に連続して手書きされたストロークである。
【００８４】
また、図１４に示す処理対象ブロック９１は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、その矩形領域に包含される画像部分（第１部分）９５とを含む。
【００８５】
処理対象ブロック９２は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７が手書きされた期間内に手書きされた第２ストローク８８（すなわち、“sample a”および“>sample b”）とを含む。そして、処理対象ブロック９２は、第１ストローク８７と第２ストローク８８とを包含する矩形領域に対応する画像部分（第１部分）９６をさらに含む。
【００８６】
処理対象ブロック９３は、領域ストローク５Ａを包含する矩形領域５２に少なくとも一部が含まれる複数の第１ストローク８７と、それら複数の第１ストローク８７と同一のストロークグループに属する第３ストローク８９（すなわち、“sample a”，“>sample b”および“>sample c”）とを含む。そして、処理対象ブロック９３は、第１ストローク８７と第３ストローク８９とを包含する矩形領域に対応する画像部分（第１部分）９７をさらに含む。
【００８７】
選択部３０６は、手書き文書５０に含まれる複数のストロークに対応する複数のストロークデータ（時系列情報）と、１以上の画像に対応する画像データとから、選択された処理対象ブロック（すなわち、選択された１以上のストロークおよび画像部分）に対応する１以上のストロークデータと画像データとを選択する。選択された１以上のストロークデータと画像データとは、例えば、複数のストロークデータ（時系列情報）の一部のコピーと、１以上の画像に対応する画像データの一部のコピーである。選択されたストロークデータおよび画像データは、例えば、作業メモリ４０１に一時保存される。なお、選択部３０６は、選択されたストロークと画像部分（第１部分）とが描画された画像（クリッピング画像）のデータを生成し、保存してもよい。また、データ保存処理部３０７は、作業メモリ４０１に一時保存されたストロークデータおよび画像データを記憶媒体４０２に保存してもよい。
【００８８】
選択部３０６はさらに、タッチスクリーンディスプレイ１７を用いた領域貼付操作に応じて、一時保存されたストロークデータおよび画像データを読み出す。読み出されたストロークデータおよび画像データは領域表示処理部３０５に送られる。領域表示処理部３０５は、ストロークデータを解析し、この解析結果に基づいて、ストロークデータによって示される各ストロークの軌跡と、画像データによって示される画像とを、処理対象の文書内に表示（描画）する。この処理対象の文書は、領域貼付操作が行われた際にアクティブな状態に設定されていた文書であり、例えば、手書き文書（第１文書）５０、又はこの手書き文書５０とは異なる手書き文書（第２文書）である。
【００８９】
なお、手書き文書５０上に複数の候補領域が表示されているとき、領域表示処理部３０５は、それら複数の候補領域の各々が選択された場合に取得される（切り出される）ストロークおよび画像部分（第１部分）が、ユーザによって識別可能であるように表示してもよい。
【００９０】
以上の構成により、ユーザは、領域入力操作によって入力した領域ストローク５Ａに対応する領域だけでなく、その領域ストローク５Ａに関連する領域も容易に選択することができる。そして、選択された領域に対応するストロークおよび画像を、手書き文書５０や他の手書き文書に貼り付けることによって、手書き文書５０の再構成や複数の手書き文書の統合のような手書き文書の編集を容易に行うことができる。
【００９１】
なお、上述の説明では、オブジェクトが画像である例について述べたが、手書き文書５０内に配置された他のオブジェクトも、領域入力操作に応じて選択することができる。手書き文書５０に１以上のオブジェクトが含まれる場合、選択部３０６は、例えば、領域ストローク５Ａに基づいて、１以上のオブジェクトの内のオブジェクトを選択する。そして、選択部３０６は、１以上のオブジェクトに対応する１以上のオブジェクトデータの内の、選択されたオブジェクトに対応するオブジェクトデータを選択し、選択されたオブジェクトデータを記憶媒体４０２に一時保存する。なお、ファイルパスやＵＲＬのような文字列のオブジェクトでは、その一部の文字が失われた場合、ファイルやリンク先へのアクセスが不可能になる。そのため、選択部３０６は、この文字列のオブジェクトを含む手書き文書５０では、例えば、領域ストローク５Ａに対応する第１領域に少なくとも一部が含まれるオブジェクトの全体を選択してもよい。また、選択部３０６は、領域ストローク５Ａに対応する第１領域に含まれていない第１オブジェクトが、第１領域内のストロークや画像（オブジェクト）に関連付けられている場合、その第１オブジェト（第１オブジェクトに対応するオブジェクトデータ）を選択してもよい。
【００９２】
また、候補領域算出部３０４は、手書き文書５０内の複数のストロークの意味的なつながりが補完されるように、ストロークが手書きされた位置（座標）情報を用いたオフセットを含む領域を算出することもできる。
【００９３】
図１５に示すように、候補領域算出部３０４は、例えば、手書き文書５０内の複数のストロークの内、領域ストローク５Ａを包含する矩形領域（第２候補領域）５２を、文字サイズに基づくオフセットの分だけ拡大した領域５５、又は当該オフセットの分だけ縮小した領域を算出する。例えば、候補領域算出部３０４は、手書き文書５０内の各ストロークの縦幅および横幅の内の最大値、又は各ストロークの縦幅および横幅の平均値（例えば、ピクセル単位）を、ユーザが意図した文字サイズ（文字に外接する矩形の一辺のサイズ）として算出する。なお、この文字サイズは、手書き文書５０内の複数のストロークの縦幅および横幅の最小値から最大値までの間の任意の値を設定してもよい。
【００９４】
これにより領域選択部３０６は、図１６に示すように、例えば、１文字分のオフセットだけ拡大した領域５５に包含されるストロークを選択し、手書き文書５０内の複数のストロークに対応する複数のストロークデータから、選択されたストロークに対応するストロークデータを選択することができる。なお、拡大または縮小されるオフセットは、１文字分のオフセットに限らず、複数文字分のオフセットであってもよい。
【００９５】
次いで、図１７を参照して、デジタルノートブックアプリケーション２０２によって実行される手書き入力処理の手順の例について説明する。ここでは、デジタルノートブックアプリケーション２０２が、手書き文書（手書きの文字や図形）を入力するための第１モードに設定されていることを想定する。
【００９６】
まず、軌跡表示処理部３０１は、文書入力操作によるペン１００等の動きの軌跡（ストローク）をディスプレイ１７Ａに表示する（ブロックＢ１１）。また、時系列情報生成部３０２は、文書入力操作による軌跡に対応する座標列に基づいて上述の時系列情報（時系列順に並べられた複数のストロークデータ）を生成する（ブロックＢ１２）。時系列情報生成部３０２は、その時系列情報を作業メモリ４０１に一時保存してもよい。
【００９７】
次いで、オブジェクトリード部３１０は、手書き文書内に各種のオブジェクト（画像、図形オブジェクト、ファイルパス、アイコン、ＵＲＬ、数式、グラフ等）を挿入するためのオブジェクト入力操作が検出されたか否かを判定する（ブロックＢ１３）。オブジェクト入力操作が検出されていない場合（ブロックＢ１３のＮＯ）、ブロックＢ１１に戻り、手書き文書入力操作に応じた手書き文書の入力が続行される。
【００９８】
オブジェクト入力操作が検出された場合（ブロックＢ１３のＹＥＳ）、オブジェクトリード部３１０は、記憶媒体４０２等のストレージから、オブジェクト入力操作によって指定されたオブジェクトを読み出す（ブロックＢ１４）。このオブジェクトは、サーバのストレージからネットワークを介して読み出されてもよい。オブジェクト表示処理部３１１は、読み出されたオブジェクトをディスプレイ１７Ａ上の手書き文書に表示する（ブロックＢ１５）。このオブジェクト入力操作では、オブジェクトが表示される位置やサイズが指定されてもよい。なお、オブジェクトリード部３１０は、挿入されたオブジェクトを示すオブジェクト情報（例えば、画像のファイルパス、図形オブジェクトの識別情報、オブジェクトの位置・サイズ、等）を作業メモリ４０１に一時保存してもよい。
【００９９】
さらに、データ保存処理部３０７は、時系列情報生成部３０２によって生成された時系列情報（作業メモリ４０１に一時保存された時系列情報）と、オブジェクトリード部３１０によって読み出された情報（作業メモリ４０１に一時保存されたオブジェクト情報）とを手書き文書データとして記憶媒体４０２に保存してもよい。
【０１００】
また、図１８は、デジタルノートブックアプリケーション２０２によって実行される領域選択処理の手順の例を示す。ここでは、デジタルノートブックアプリケーション２０２が、手書き文書内の領域を選択するための第２モードに設定されていることを想定する。
【０１０１】
まず、軌跡表示処理部３０１は、領域入力操作によるペン１００等の動きの軌跡（領域ストローク）をディスプレイ１７Ａに表示する（ブロックＢ２１）。また、時系列情報生成部３０２は、領域入力操作による軌跡に対応する座標列に基づいて上述の時系列情報（１つのストロークデータ）を生成する（ブロックＢ２２）。時系列情報生成部３０２は、その時系列情報を作業メモリ４０１に一時保存してもよい。
【０１０２】
次いで、候補領域算出部３０４は、生成された時系列情報（領域ストローク）を用いて、手書き文書上の候補領域を算出する（ブロックＢ２３）。領域表示処理部３０５は、算出された候補領域をディスプレイ１７Ａに表示する（ブロックＢ２４）。
【０１０３】
選択部３０６は、領域入力操作に基づく候補領域の内の、１つの領域が選択されたか否かを判定する（ブロックＢ２５）。領域が選択されていない場合（ブロックＢ２５のＮＯ）、ブロックＢ２５に戻り、再度、領域が選択されたか否かが判定される。
【０１０４】
領域が選択された場合（ブロックＢ２５のＹＥＳ）、選択部３０６は、選択された領域に対応する、手書き文書内の１以上のストローク（および画像部分）を決定する（ブロックＢ２６）。選択部３０６は、例えば、決定された１以上のストロークに対応するストロークデータ（および選択された画像部分に対応する画像データ）を取得する。これによりユーザは、手書き文書から任意のストローク（および画像部分）を切り出し、切り出されたストローク（および画像部分）をその手書き文書内の別の領域や他の手書き文書に貼り付けて利用することができる。
【０１０５】
以上説明したように、本実施形態によれば、手書き文書を容易に扱うことができる。軌跡表示処理部３０１は、手書き文書入力操作に応じた複数のストロークと１以上の画像とを含む第１文書が画面に表示されているときに、第１領域を指定するための領域ストロークを画面に表示する。そして、選択部３０６は、領域ストロークに基づいて、複数のストロークの内の第１ストロークに対応する第１ストロークデータと、１以上の画像の内の第１部分に対応する第１画像データとを選択する。
【０１０６】
これによりユーザは、タッチ操作、スタイラス操作、マウス操作等のポインティングデバイスを用いた操作によって、手書き文書が表示された画面上の、任意の領域を指定する領域ストローク（フリーハンドオブジェクト）を入力し、その領域ストロークに対応又は関連する、手書き文書内のストロークおよび画像（オブジェクト）を取得することができる。そして、ユーザは、取得したストロークおよび画像をその手書き文書内の別の領域や他の手書き文書に貼り付けて利用することができる。
【０１０７】
なお、図１７および図１８のフローチャートで説明した本実施形態の処理手順は全てソフトウェアによって実行することができる。このため、この処理手順を実行するプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのプログラムを通常のコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
【０１０８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０９】
１７Ａ…ＬＣＤ、２０２…デジタルノートブックアプリケーション、３０１…軌跡表示処理部、３０２…時系列情報生成部、３０４…候補領域算出部、３０５…領域表示処理部、３０６…選択部、３０７…データ保存処理部、３０８…データ取得処理部、３０９…文書表示処理部、３１０…オブジェクトリード部、３１１…オブジェクト表示処理部、４０１…作業メモリ、４０２…記憶媒体。
【図１】
2014092902.tif 000003
【図２】
2014092902.tif 000004
【図３】
2014092902.tif 000005
【図４】
2014092902.tif 000006
【図５】
2014092902.tif 000007
【図６】
2014092902.tif 000008
【図７】
2014092902.tif 000009
【図８】
2014092902.tif 000010
【図９】
2014092902.tif 000011
【図１０】
2014092902.tif 000012
【図１１】
2014092902.tif 000013
【図１２】
2014092902.tif 000014
【図１３】
2014092902.tif 000015
【図１４】
2014092902.tif 000016
【図１５】
2014092902.tif 000017
【図１６】
2014092902.tif 000018
【図１７】
2014092902.tif 000019
【図１８】
2014092902.tif 000020