以下、本発明の一実施形態について、図面を参照して説明する。以下の説明では、図1の左上側、右下側、上側、下側、右上側、左下側を、各々、読取装置2の左側、右側、前側、後側、上側、下側と定義する。
図1を参照し、手書入力システム1の概要を説明する。手書入力システム1は、読取装置2、電子ペン3、スマートフォン19を主に備える。読取装置2は、薄型軽量の手書き入力装置である。手書入力システム1では、ユーザは電子ペン3を用いて、読取装置2に装着された紙媒体100に線画を筆記する。線画には、文字、数値、記号、図形等が含まれる。読取装置2は、筆記の過程における電子ペン3の位置を取得する。読取装置2は、取得した位置に基づいてストロークデータを作成する。ストロークデータは、電子ペン3によって筆記された線画上の複数の位置の夫々を示す複数の座標データを少なくとも含む。このため、複数の座標データは、夫々、電子ペン3によって線画が筆記されたときの電子ペン3の移動の軌跡を示す。読取装置2は、作成したストロークデータを、スマートフォン19に送信できる。スマートフォン19は、ストロークデータを受信した場合、受信したストロークデータに対応する画像を、ディスプレイ192に表示させる。これによってユーザは、電子ペン3によって紙媒体100に筆記された線画と同一形状の線画を、ディスプレイ192を介して視認できる。又、ユーザは、電子ペン3によって紙媒体100に筆記された線画を示すストロークデータを、読取装置2及びスマートフォン19に保存できる。
読取装置2は、矩形薄板状である。読取装置2は、載置部2Aを前面に備え、LED5を上端に備える。載置部2Aの後側には、後述するセンサ基板7(図2参照)が配置される。載置部2Aに紙媒体100が着脱可能に装着される。紙媒体100は、上端部が綴じられた複数の用紙111を含む。複数の用紙111の夫々に予め印刷される文字や線分等のレイアウトを示すフォーマットは、複数の用紙111の夫々で異なる場合がある。紙媒体100は、両面テープ及び粘着性を有する樹脂フィルム等によって、紙媒体100が載置部2Aに位置決めされた状態で装着される。ユーザは、紙媒体100の複数の用紙111のうち最表部に配置された用紙111に、電子ペン3を用いて線画を筆記できる。又、ユーザは、最表部の用紙を捲ることによって、複数の用紙111のうち電子ペン3によって筆記する最表部の用紙のページを、次のページに変更する。なお、紙媒体100の複数の用紙111は、上端部が綴じられている場合に限定されず、左端部、右端部、及び、下端部の何れかが綴じられていてもよい。
電子ペン3は、公知の電磁誘導式の電子ペンであり、筒体30、芯体31、コイル32、コンデンサ33,35、基板34、インク収納部36、及び、図示外のスイッチを主に備える。筒体30は、円柱状の形状を有し、芯体31の一部、コイル32、コンデンサ33,35、基板34、及びインク収納部36を内部に収容する。芯体31は、電子ペン3の先端部に設けられている。芯体31は、図示しない弾性部材によって、電子ペン3の先端側に付勢されている。芯体31の先端部は、筒体30の外部に突出している。芯体31の後端側は、インクが収納されているインク収納部36に接続されている。インク収納部36は、芯体31にインクを供給する。ユーザが電子ペン3を用いて最表部の用紙に筆記する動作を行うと、インクによって最表部の用紙に線画が形成される。
コイル32は、インク収納部36の周囲に巻回された状態で、芯体31とコンデンサ33との間に保持されている。コンデンサ33は、基板34によって電子ペン3の内部に固定されている。基板34には、コンデンサ35が搭載されている。コンデンサ33,35はコイル32に並列に接続され、周知の共振(同調)回路を構成する。図示外のスイッチは、芯体31の後方に設けられる。スイッチは、筒体30から芯体31が突出した状態でOFFし、筒体30に芯体31が進入した状態でONする。スイッチがONしたとき、コイル32は導通状態となり、スイッチがOFFしたとき、コイル32は非導通状態となる。このため、電子ペン3による筆記が行われていない場合、芯体31は筒体30から突出するので、スイッチはOFFし、コイル32は非導通状態となる。一方、電子ペン3による筆記が行われている場合、芯体31は筒体30の内部に進入するので、スイッチはONし、コイル32は導通状態となる。
スマートフォン19は、タッチパネル191及びディスプレイ192を備える。タッチパネル191は、各種指示を入力するために使用される。ディスプレイ192は、画像ファイルに対応する画像を表示可能である。なお、スマートフォン19の代わりに汎用PCやタブレットPCが用いられてもよい。
図2を参照し、手書入力システム1の電気的構成を説明する。読取装置2の電気的構成を説明する。読取装置2は、メイン基板20、センサ制御基板28、センサ基板7、入力部25、及び、LED5を備える。メイン基板20は、CPU21、RAM22、フラッシュメモリ23、及び無線通信部24を備える。センサ制御基板28は、ASIC28Aを備える。RAM22、フラッシュメモリ23、無線通信部24、入力部25、LED5、及び、ASIC28Aは、CPU21に電気的に接続されている。センサ基板7は、ASIC28Aに電気的に接続されている。
CPU21は、読取装置2の制御を行う。RAM22は、演算データ等の各種データを一時的に記憶する。フラッシュメモリ23には、CPU21が読取装置2を制御するために実行するプログラムが記憶される。又、フラッシュメモリ23には、フォーマットテーブルが記憶される。フォーマットテーブルでは、媒体ID、及びレイアウトデータが対応付けられている。媒体IDは、紙媒体100の種別を示す識別情報である。レイアウトデータは、対応する媒体IDによって示される紙媒体100の複数の用紙111の夫々のフォーマットを、ページ毎特定可能なデータである。
なお、上記のうちプログラムは、読取装置2の出荷時に予めフラッシュメモリ23に記憶される。なお、フラッシュメモリ23に記憶されたプログラムは、出荷後に書き換え可能としてもよい。例えば、CPU21は、無線通信部24を介してプログラムを受信し、フラッシュメモリ23に記憶できるようにしてもよい。
無線通信部24は、外部の電子機器と近距離無線通信を実行するためのコントローラである。入力部25は、読取装置2に対する指示を入力するためのスイッチである。ASIC28Aは、電子ペン3による筆記動作がセンサ基板7上で行われた場合に、電子ペン3の位置を示す座標データを検出する。センサ基板7には、上下方向及び左右方向の各々に細長いループコイルが複数配列されている。
読取装置2の動作原理を説明する。センサ基板7上で電子ペン3による筆記動作が行われた場合に座標データが検出される原理を、概略的に説明する。CPU21は、ASIC28Aを制御して、センサ基板7の複数のループコイルに一本ずつ特定の周波数の電流(励磁用送信電流)を流す。これにより、センサ基板7の複数のループコイルの夫々から、磁界が発生する。
この状態で、例えばユーザが電子ペン3を用いて、読取装置2に装着された紙媒体100の複数の用紙111のうち最表部の用紙に、線画を筆記する動作を行ったとする。この場合、電子ペン3はセンサ基板7に近接する。又、筆記の動作に応じて、電子ペン3の芯体31が筒体30内に進入することによって、スイッチはONし、コイル32は導通状態となる。このため、電子ペン3の共振回路は電磁誘導によって共振し、誘導磁界を生じる。
次に、CPU21はASIC28Aを制御して、センサ基板7の複数のループコイルの夫々からの磁界の発生を停止させる。センサ基板7のループコイルは、電子ペン3の共振回路から発せられる誘導磁界を受信する。CPU21はASIC28Aを制御して、センサ基板7の複数のループコイルに流れる信号電流(受信電流)を検出させる。ASIC28Aは、この動作を複数のループコイルのすべてについて一本ずつ実行する。ASIC28Aは、受信電流を検出した場合のループコイルの位置を、電子ペン3の位置を示す座標データとして特定し、CPU21に対して出力する。CPU21は、ASIC28Aから座標データが出力された場合、載置部2Aの後側のセンサ基板7に電子ペン3が近接し、且つ、芯体31が筒体30内に進入しているので、載置部2Aに載置された紙媒体100の用紙111に電子ペン3によって線画が筆記されていると判断する。
スマートフォン19の電気的構成を説明する。スマートフォン19は、CPU41、RAM42、フラッシュメモリ43、無線通信部44、入力回路45、出力回路46、タッチパネル191、及びディスプレイ192を主に備える。CPU41は、スマートフォン19の制御を行う。CPU41は、RAM42、フラッシュメモリ43、無線通信部44、入力回路45、及び出力回路46と電気的に接続している。
RAM42は、種々の一時データを記憶する。無線通信部44は、外部の電子機器と近距離無線通信を実行するためのコントローラである。入力回路45は、CPU41へタッチパネル191からの指示を送る制御を行う。出力回路46は、CPU41からの指示に応じてディスプレイ192に画像を表示する制御を行う。
フラッシュメモリ43には、CPU41が実行するプログラム、後述のページ記憶領域134(図11参照)、対応テーブル135(図12参照)等が記憶される。スマートフォン19は、図示外の媒体読取装置(例えば、メモリカードスロット)を備える。スマートフォン19は、記憶媒体(例えば、メモリカード)に記憶されているプログラムを、媒体読取装置で読み取ってフラッシュメモリ43にインストールできる。又、スマートフォン19に接続されている外部機器(図示外)又はネットワークからプログラムを受信して、フラッシュメモリ43にインストールしてもよい。
図3を参照し、紙媒体100の用紙111の概要及び具体的な使用例を説明する。図3の左側、右側、上側、下側を、夫々、用紙111の左側、右側、上側、下側と定義して説明する。用紙111は、線画を筆記するための用紙である。用紙111は、複数枚の用紙111(例えば用紙111A、111B、111C・・・)を含む。用紙111A、用紙111B、及び用紙111Cの媒体IDは同一である。図3は、読取装置2に装着された紙媒体100の1枚分の用紙111(用紙111A)を示している。
用紙111は、筆記領域50、通常チェックボックス55A、及び追記チェックボックス55Bを有する。筆記領域50は、メモ領域51とページボックス52とを含む。メモ領域51は、ユーザがメモ等を筆記するための領域である。例えば、ユーザは用紙111Aのメモ領域51に線画51Aを電子ペン3で筆記する。線画51Aは「information A」を示す。
ページボックス52は、筆記領域50の右上角部に印刷されている。ページボックス52は、用紙111のページ番号を筆記するための領域を示す。ページ番号は、用紙111のうちで一又は複数の用紙111を他の用紙111と識別するための数字である。本実施形態では、ページ番号は1桁又は2桁である。ページボックス52は、第一ページボックス52Aと第二ページボックス52Bとを含む。第二ページボックス52Bは、第一ページボックス52Aの左側に設けられる。第一ページボックス52A、及び第二ページボックス52Bの形状は矩形状の1重線である。第一ページボックス52Aは、用紙111のページ番号のうち、1桁目の数字を筆記するための領域である。第二ページボックス52Bは、用紙111のページ番号のうち、2桁目の数字を筆記するための領域である。ユーザは用紙111のページボックス52に用紙111のページ番号を電子ペン3で筆記する。例えば用紙111Aのページ番号が「26」である場合、ユーザは用紙111Aの第二ページボックス52Bに「2」を筆記し、第一ページボックス52Aに「6」を筆記する。
通常チェックボックス55Aは、用紙111の右下角部に印刷されている。追記チェックボックス55Bは、用紙111において、通常チェックボックス55Aの左側に印刷されている。通常チェックボックス55A及び追記チェックボックス55Bの形状は、夫々、矩形状である。通常チェックボックス55A及び追記チェックボックス55Bは、夫々、筆記領域50に筆記された線画を確定させるためにユーザが線画を筆記する領域を示す。ユーザは、例えば用紙111Aへの筆記が終了した場合、筆記領域50に筆記した線画を確定したことを読取装置2に通知するため、通常チェックボックス55A及び追記チェックボックス55Bの何れかに線画を筆記する。
なお、読取装置2のCPU21は、用紙111の通常チェックボックス55Aに電子ペン3で線画が筆記されたと判断した場合、筆記領域50に筆記された線画に対応するストロークデータを作成する。CPU21は、用紙111の追記チェックボックス55Bに電子ペン3で線画が筆記されたと判断した場合、追記指示及び筆記領域50に筆記された線画に対応するストロークデータを作成する。追記指示は、スマートフォン19のCPU41に後述の追記作成をさせるための指示である。
CPU41は、読取装置2からストロークデータを取得できる。この場合、ユーザは、タッチパネル191を操作して、データ要求指示を読取装置2に送信する。データ要求指示は、読取装置2のCPU21にストロークデータを送信させるための指示である。CPU21は、スマートフォン19からデータ要求指示を受信した場合、ストロークデータ及び媒体IDをスマートフォン19に送信する。なお、追記指示が作成されている場合は、CPU21は追記指示もスマートフォン19に送信する。スマートフォン19のCPU41は、読取装置2から送信されたストロークデータ及び媒体IDを受信する。なお、追記指示が送信されている場合、CPU41は、追記指示も読取装置2から受信する。CPU41は、ストロークデータに基づき、線画として特定する。CPU41は、特定した線画に基づき、ページ番号を特定する。
CPU41は、特定した線画を含むメモ領域51を示す画像ファイルを、同一の媒体IDのページ番号毎に作成する。画像ファイルは、線画をデシタル画像によって示すデータファイルである。デジタル画像の例として、ベクター画像やラスター画像が挙げられる。画像ファイルとしてJPEGファイル、GIFファイル、PNGファイル、BMPファイルが挙げられる。CPU41は、作成した画像ファイルを、ストロークデータ、媒体ID、及びページ番号と対応付けてフラッシュメモリ43に記憶する。
ユーザは、タッチパネル191を操作することで、図6に示す選択テーブル700をディスプレイ192に表示できる。図6に示すように、選択テーブル700は、作成した画像ファイルを媒体ID及びページ番号に対応付けた形で表示する。この場合、画像ファイルは、媒体ID毎にページ番号の降順に表示される。なお、ユーザは、タッチパネル191を操作することで、例えば画像ファイルをページ番号の昇順に表示させることもできる。
ユーザは、タッチパネル191を操作して選択テーブル700の中から画像ファイルを選択することで、選択された画像ファイルが示す画像をディスプレイ192に表示させることができる。この場合、画像ファイルがページ番号の順番に並んでいるため、ユーザは所望するページ番号の画像ファイルを容易に検索できる。CPU41は、選択された画像ファイルが示す画像をディスプレイ192に表示させる。これにより、ユーザは用紙111に筆記した線画に対応する画像をスマートフォン19上で視認できる。
図7を参照し、ページ番号の特定方法を、具体例を挙げながら説明する。図7に示すページ番号は、何れも同一の媒体IDに対応する。CPU41は、ページ番号の1桁目及び2桁目を特定することで、用紙111のページ番号を特定する。CPU41は、特定したページ番号を、媒体ID毎に上書きしてフラッシュメモリ43に記憶する。これにより、CPU41は、以下に説明するページ番号を特定する場合に、必要に応じて前回特定したページ番号を参照できる。
まず、CPU41は、第一ページボックス52Aに線画が筆記されたかを判断する。第一ページボックス52Aに線画が筆記された場合、CPU41は、第二ページボックス52Bに線画筆記されたかを判断する。第一ページボックス52A及び第二ページボックス52Bの何れにも線画が筆記された場合、ページ番号の1桁目及び2桁目を、夫々、第一ページボックス52A及び第二ページボックス52Bに筆記された線画から夫々特定される数字と特定し、ページ番号を特定する。例えば、図7に示すように、第一ページボックス52A及び第二ページボックス52Bに、夫々、「6」及び「2」が筆記された場合、前回特定したページ番号に関わらず、ページ番号は「26」と特定される。
第一ページボックス52Aに線画が筆記されており、第二ページボックス52Bに線画が筆記されていない場合、CPU41は、フラッシュメモリ43を参照し、同一の媒体IDに対応するページ番号であって前回特定したページ番号が2桁であるか判断する。つまり、フラッシュメモリ43に、ページ番号を特定する対象の用紙111の媒体IDに対応するページ番号の2桁目の数字が記憶されているか判断する。同一の媒体IDに対応するページ番号であって前回特定されたページ番号が2桁である場合、CPU41は、ページ番号の2桁目を、同一の媒体IDに対応する前回特定したページ番号の2桁目が示す数字と特定する。例えば、図7に示すように、前回特定したページ番号が「26」である場合であって、第一ページボックス52Aに「7」が筆記され、第二ページボックス52Bに線画が筆記されていない場合、CPU41は、ページ番号を「27」と特定する。従って、ユーザは前回使用した用紙111のページ番号の2桁目が今回使用する用紙111のページ番号の2桁目と一致する場合、ページ番号の1桁目だけを第一ページボックス52Aに筆記し、ページ番号の2桁目を第二ページボックス52Bに筆記する必要がない。
同一の媒体IDに対応するページ番号であって前回特定されたページ番号が1桁である場合、又は同一の媒体IDにおいて、未だ1度もページ番号が特定されていない場合、CPU41は、ページ番号の2桁目を「0」と特定する。CPU41は、ページ番号の1桁目を、第一ページボックス52Aに筆記された線画から特定される数字と特定する。すなわち、同一の媒体IDに対応するページ番号の2桁目がフラッシュメモリ43に記憶されていない場合、ページ番号は1桁と特定する。例えば、図7に示すように、前回特定したページ番号が「6」又は今回ページ番号を特定するのが初めてである場合であって、第一ページボックス52Aに「7」が筆記され、第二ページボックス52Bに線画が筆記されなかった場合、CPU41は、ページ番号を「7」と特定する。
第一ページボックス52Aに線画が筆記されていない場合、CPU41は、フラッシュメモリ43に、同一の媒体IDに対応するページ番号であって前回特定したページ番号が記憶されているか判断する。フラッシュメモリ43に、同一の媒体IDに対応する前回特定したページ番号が記憶されている場合、CPU41は、ページ番号を、同一の媒体IDに対応するページ番号であって前回特定したページ番号と特定する。例えば、前回特定したページ番号が「26」である場合であって、第一ページボックス52Aに線画が筆記されていない場合、CPU41は、ページ番号を「26」と特定する。例えば、図7に示すように、ユーザは1枚の用紙111に線画を筆記しきれない場合等、2枚の用紙111に線画を筆記する場合がある。この場合、ユーザは2枚の用紙111を合わせて1ページとすることで管理しやすい。ユーザは今回使用する用紙111を前回使用した用紙111のページ番号と同一のページ番号で管理する場合、ページボックス52にページ番号を筆記する必要がない。
図7に示すように、第一ページボックス52Aに線画が筆記されていない場合であって、同一の媒体IDにおいて、未だ1度もページ番号が特定されていない場合、CPU41は、ページ番号を「1」と特定する。従って、ユーザは1ページ目の用紙111のページボックス52には、線画を筆記する必要がない。
図3〜図5を参照し、CPU41による画像ファイルの作成態様を説明する。CPU41は、次に説明する新規作成、追加作成、及び追記作成の何れかの方法で画像ファイルを作成する。図3を参照し、新規作成を説明する。CPU41は、例えば用紙111Aの画像ファイルを作成する場合、特定したページ番号が、用紙111Aと同一の媒体IDにおいて、既にフラッシュメモリ43に記憶されているか判断する。例えば用紙111Aと同一の媒体IDにおいて、26ページが未だフラッシュメモリ43に記憶されていない場合、画像ファイルが新規作成される。選択テーブル700(図6参照)において、ユーザがタッチパネル191を操作し、新規作成された画像ファイルを選択すると、ディスプレイ192には新規画像90Aが表示される。新規画像90Aは、線画51Aを含むメモ領域51を示す。画像ファイルを新規作成する場合、ユーザは、未だスマートフォン19に記憶されていないページ番号をページボックス52に筆記した後、通常チェックボックス55A又は追記チェックボックス55Bに線画を筆記する。
図3及び図4を参照し、追加作成を説明する。図4に示すように、用紙111Bは、メモ領域51に筆記された線画51Bを含む。線画51Bは「information B」を示す。用紙111Bのページ番号「26」は、用紙111Aのページ番号と同一である。又、通常チェックボックス55Aに線画が筆記されている。例えば、スマートフォン19は、用紙111Aに対応するストロークデータを受信した後に、用紙111Bに対応するストロークデータを受信したとする。この場合、用紙111Bに対応するストロークデータに基づいて特定されるページ番号「26」は、既に用紙111Aのページ番号「26」としてフラッシュメモリ43に記憶されている。
CPU41は、特定したページ番号が既にフラッシュメモリ43に記憶されており、追記指示を受信してない場合、画像ファイルを追加作成する。選択テーブル700(図6参照)において、ユーザがタッチパネル191を操作し、追加作成された画像ファイルを選択すると、ディスプレイ192には結合画像90Bが表示される。結合画像90Bは、線画51Aを含む用紙111Aのメモ領域51と、線画51Bを含む用紙111Bのメモ領域51とを示す。画像ファイルを追加作成する場合、ユーザは、既にスマートフォン19に記憶されているページ番号をページボックス52に筆記した後、通常チェックボックス55Aに線画を筆記する。
図3及び図5を参照し、追記作成を説明する。図5に示すように、用紙111Cは、メモ領域51に筆記された線画51Cを含む。線画51Bは「information B」を示す。用紙111Cのページ番号「26」は、用紙111Aのページ番号と同一である。又、追記チェックボックス55Bに線画が筆記されている。この場合、用紙111Cに対応するストロークデータが記憶される際に、追記指示が対応付けられて記憶される。例えば、スマートフォン19は、用紙111Aに対応するストロークデータを受信した後に、用紙111Cに対応するストロークデータを受信したとする。この場合、用紙111Cは追記チェックボックス55Bに線画が筆記されているため、スマートフォン19は、ストロークデータと共に追記指示を受信する。又、用紙111Cに対応するストロークデータに基づいて特定されるページ番号「26」は、既に用紙111Aのページ番号「26」としてフラッシュメモリ43に記憶されている。
CPU41は、特定したページ番号が既に記憶されており、追記指示を受信した場合、画像ファイルを追記作成する。選択テーブル700(図6参照)において、ユーザがタッチパネル191を操作し、追記作成された画像ファイルを選択すると、ディスプレイ192には合成画像90Cが表示される。合成画像90Cは、線画51Aを含む用紙111Aのメモ領域51と線画51Cを含む用紙111Cのメモ領域51が互いに合成されて重ね合わさった画像を示す。画像ファイルを追記作成する場合、ユーザは、既にスマートフォン19に記憶されているページ番号をページボックス52に筆記した後、追記チェックボックス55Bに線画を筆記する。
図8を参照し、読取装置2のCPU21によって実行される第一メイン処理を説明する。CPU21は、読取装置2の電源をONする操作を、入力部25を介して検出した場合、フラッシュメモリ23に記憶されたプログラムを実行することによって、第一メイン処理を開始する。ユーザは、読取装置2の電源をONした後、載置部2A(図1参照)に用紙111を有する紙媒体100を装着する。
第一メイン処理が開始されると、CPU21は、次の初期化処理を実行する(S1)。CPU21は、RAM22に記憶されたデータをクリアする。CPU21は、ASIC28Aの制御を開始する。これにより、CPU21は、読取装置2に装着された紙媒体100の用紙111に電子ペン3を用いて線画が筆記されているかを判断できる状態になる。CPU21は、電子ペン3を用いて線画が筆記されている状態であると判断した場合に、電子ペン3の位置を示す座標データを取得できる状態になる。
CPU21は、読取装置2に装着された紙媒体100の用紙111のフォーマットを特定する(S2)。詳細には、CPU21は、ユーザによって入力部25を介して入力された媒体IDを取得し、RAM22に記憶する。CPU21は、取得した媒体IDに対応する用紙111のフォーマットを特定する。CPU21は、特定した用紙111のフォーマットを示すフォーマットデータをRAM22に記憶する。
CPU21は、フラッシュメモリ23に記憶されたフォーマットテーブルを参照し、特定したフォーマットに対応するレイアウトデータを、フラッシュメモリ23から読み出してRAM22に記憶する(S3)。レイアウトデータは、用紙111の通常チェックボックス55A及び追記チェックボックス55Bの夫々の位置を特定することが可能なデータである。CPU21は、紙媒体100が装着される領域(即ち読取装置2の前面)のうち、通常チェックボックス55A及び追記チェックボックス55Bに対応する領域を、RAM22に記憶したレイアウトデータに基づいて特定する。以下、通常チェックボックス55Aを構成する矩形状の領域に対応する読取装置2の前面の領域を、通常チェック領域という。追記チェックボックス55Bを構成する矩形状の領域に対応する読取装置2の前面の領域を、追記チェック領域という。なお、第一ページボックス52Aを構成する矩形状の領域に対応する読取装置2の前面の領域を、第一ページ領域という。第二ページボックス52Bを構成する矩形状の領域に対応する読取装置2の前面の領域を、第二ページ領域という。
CPU21は、電子ペン3に付与された筆圧に基づき、用紙111に線画が筆記されている状態であるかを判断する(S4)。CPU21は、用紙111に線画が筆記されている状態であると判断した場合(S4:YES)、電子ペン3の位置を示す座標データ及び時間データを取得し、両者を関連付けてRAM22の第一領域に記憶する(S5)。時間データは、取得された座標データが検出された時刻を示す。CPU21は、電子ペン3による1つの線分の筆記が終了するまで(即ち、電子ペン3に対して筆圧が付与されている間)、一定周期でS5を繰り返す。電子ペン3による1つの線分の筆記が終了した場合、その1つの線分に対応する複数の座標データ及び複数の時間データを含む線分データが、RAM22の第一領域に記憶された状態になる。
CPU21は、RAM22の第一領域に記憶した線分データに含まれる複数の座標データに基づき、通常チェックボックス55Aに線画が筆記されたかを判断する(S11)。具体的には、CPU21は、複数の座標データの少なくとも1つが、通常チェック領域内の位置を示している場合、通常チェックボックス55Aに線画が筆記されたと判断する(S11:YES)。一方、CPU21は、複数の座標データの全てが、通常チェック領域外の位置を示している場合、通常チェックボックス55Aに線画が筆記されていないと判断する(S11:NO)。
CPU21は、通常チェックボックス55Aに線画が筆記されていないと判断した場合(S11:NO)、RAM22の第一領域に記憶した線分データに含まれる複数の座標データに基づき、追記チェックボックス55Bに線画が筆記されたかを判断する(S12)。具体的には、CPU21は、複数の座標データの少なくとも1つが、追記チェック領域内の位置を示している場合、追記チェックボックス55Bに線画が筆記されたと判断する(S12:YES)。一方、CPU21は、複数の座標データの全てが、追記チェック領域外の位置を示している場合、追記チェックボックス55Bに線画が筆記されていないと判断する(S12:NO)。
CPU21は、追記チェックボックス55Bに線画が筆記されていないと判断した場合(S12:NO)、筆記領域50に線画が筆記されたと判断する。CPU21は、RAM22の第一領域に記憶した線分データを、RAM22の第二領域に記憶する(S13)。CPU21は、RAM22の第二領域に記憶した線分データを、RAM22の第一領域から削除する(S14)。CPU21は処理をS4に戻す。
CPU21は、S11の処理において、通常チェックボックス55Aに線画が筆記されたと判断した場合(S11:YES)、RAM22の第二領域に記憶された少なくとも1つの線分データを含むストロークデータを作成し、RAM22に記憶されている媒体IDと対応付けてフラッシュメモリ23に記憶する(S15)。CPU21は、作成したストロークデータに含まれる線分データ及び媒体IDを、RAM22の第二領域から削除する(S16)。CPU21は処理をS4に戻す。
CPU21は、S12の処理において、追記チェックボックス55Bに線画が筆記されたと判断した場合(S12:YES)、RAM22の第二領域に記憶された少なくとも1つの線分データ含むストロークデータを作成し、追記指示及びRAM22に記憶されている媒体IDと対応付けてフラッシュメモリ23に記憶する(S17)。CPU21は、作成したストロークデータに含まれる線分データ及び媒体IDを、RAM22の第二領域から削除する(S18)。CPU21は処理をS4に戻す。ストロークデータには、通常チェックボックス55A又は追記チェックボックス55Bに線画が筆記されてから、次に通常チェックボックス55A又は追記チェックボックス55Bに線画が筆記されるまでに取得された少なくとも1つの線分データが含まれる。
CPU21は、S4の処理において、用紙111に線画が筆記されていない状態であると判断した場合(S4:NO)、スマートフォン19から無線送信されたデータ要求指示を、無線通信部24を介して受信したかを判断する(S21)。データ要求指示は、CPU21に少なくともストロークデータ及び媒体IDを送信させるための指示である。CPU21は、データ要求指示を受信していないと判断した場合(S21:NO)、処理をS4に戻す。CPU21は、データ要求指示を受信したと判断した場合(S21:YES)、フラッシュメモリ23に記憶したストロークデータ及び媒体IDを、無線通信部24を介してスマートフォン19に無線送信する(S22)。なお、S17でストロークデータに追記指示が対応付けられてフラッシュメモリ23に記憶されている場合、CPU21は、S22の処理において追記指示もスマートフォン19に送信する。CPU21は、スマートフォン19に送信したストロークデータ等を、フラッシュメモリ23から削除する(S23)。CPU21は、処理をS4に戻す。
図9を参照し、スマートフォン19のCPU41によって実行される第二メイン処理を説明する。CPU41は、読取装置2と無線接続するためのアプリケーションの起動操作を、タッチパネル191を介して検出した場合、フラッシュメモリ43に記憶されたプログラムに基づいて動作することで第二メイン処理を開始する。
第二メイン処理が開始されると、CPU41は、次の初期化処理を実行する(S51)。CPU41は、RAM42に記憶されたデータをクリアする。CPU41は、読取装置2との無線通信を開始する。CPU41は、タッチパネル191を介して、(a)読取装置2のフラッシュメモリ23に記憶されたストロークデータの取得を要求するためのボタン、(b)フラッシュメモリ43に記憶した画像ファイルに対応した付加データの表示を要求するためのボタンを少なくとも含む初期画面をディスプレイ192に表示する。CPU41は、タッチパネル191を介して検出される入力操作を監視する。
CPU41は、(a)のボタンを選択する操作を、タッチパネル191を介して検出したか判断する(S52)。CPU41は、(a)のボタンを選択する操作を、タッチパネル191を介して検出したと判断した場合(S52:YES)、無線通信部44を介して、データ要求指示を読取装置2に対して無線送信する(S53)。CPU41は、送信したデータ要求指示に応じて読取装置2から無線送信されるストロークデータ等を、無線通信部44を介して受信し、RAM42に記憶する(S54)。CPU41は、RAM42に記憶したストロークデータに対応する線画が筆記された用紙111のページ番号を特定するためのページ番号特定処理を実行する(S55)。詳しくは後述するが、ページ番号特定処理では、ストロークデータのページ番号が特定される。なお、ページ番号は、1又は複数の用紙111を識別可能な数字であるため、1又は複数の用紙111に対応する1又は複数のストロークデータを識別可能である。特定されたページ番号を示すページデータは、RAM42に記憶され、且つフラッシュメモリ43のページ記憶領域134(図11参照)に媒体IDと対応付けられて上書き記憶される。
図11に示すように、ページ記憶領域134には、媒体IDとストロークデータのページ番号を示すページデータとが対応付けて記憶される。新たに記憶するページデータに対応する媒体IDが既にページ記憶領域134に記憶されている場合、その媒体IDに対応する既に記憶されているページデータに新たなページデータが上書き記憶される。これにより、ページ記憶領域134には、各媒体IDに対して、前回特定されたページ番号を示すページデータが記憶された状態となる。以下、ページ番号を特定するストロークデータの媒体IDに対応するページデータであって、前回特定されたページ番号を示すページデータを、対象ページデータという。
CPU41は、S81以降の処理において、画像ファイルを作成してフラッシュメモリ43の対応テーブル135(図12参照)に格納するための処理を行う。この場合、CPU41は、媒体IDと、受信したストロークデータと、ページ番号特定処理で特定したページ番号と、作成した画像ファイルとを互いに対応付けて対応テーブル135に格納する。
図12に示すように、対応テーブル135には、媒体ID、画像ファイル、ストロークデータ、及びページデータが互いに対応付けられて記憶される。対応テーブル135には、画像ファイル、ストロークデータがページデータ毎に関連付けて記憶される。
図10を参照し、第二メイン処理において実行されるページ番号特定処理を説明する。CPU41は、RAM42に記憶したストロークデータに含まれる線分データに基づき、筆記された文字列を特定する(S61)。CPU41は、特定した文字列を示す線画データをRAM42に記憶する(S61)。具体的には、CPU41は、ストロークデータに含まれる少なくとも1つの線分データを1つずつ抽出する。CPU41は、抽出した線分データに対応する複数の座標データによって示される複数の位置の間を、関連付けられた複数の時間データによって示される時刻の順番に直線で結ぶ。CPU41は、線分データ毎に1つずつ得られる線分を結合し、線画として特定する。
CPU41は、RAM42に記憶したストロークデータに含まれる複数の座標データに基づき、第一ページボックス52Aに線画が筆記されたかを判断する(S62)。具体的には、CPU41は、複数の座標データの少なくとも1つが、第一ページ領域内の位置を示している場合、第一ページボックス52Aに線画が筆記されたと判断する(S62:YES)。一方、CPU41は、複数の座標データの全てが、第一ページ領域外の位置を示している場合、第一ページボックス52Aに線画が筆記されていないと判断する(S62:NO)。
CPU41は、第一ページボックス52Aに線画が筆記されたと判断した場合(S62:YES)、S54でRAM42に記憶したストロークデータに含まれる複数の座標データに基づき、第二ページボックス52Bに線画が筆記されていないかを判断する(S63)。具体的には、CPU41は、複数の座標データの少なくとも1つが、第二ページ領域内の位置を示している場合、第二ページボックス52Bに線画が筆記されたと判断する(S63:NO)。一方、CPU41は、複数の座標データの全てが、第二ページ領域外の位置を示している場合、第二ページボックス52Bに線画が筆記されていないと判断する(S63:YES)。
CPU41は、第二ページボックス52Bに線画が筆記されたと判断した場合(S63:NO)、次のようにページ番号を特定する。CPU41は、ページ番号の1桁目及び2桁目を、夫々、第一ページボックス52A及び第二ページボックス52Bに筆記された数字と特定する(S64,S65)。具体的には、CPU41は、RAM42に記憶した線画データから、第一ページ線画データ及び第二ページ線画データを夫々特定する。第一ページ線画データ及び第二ページ線画データは、夫々、第一ページ領域内及び第二ページ領域内の位置を示す座標データに対応する線画データである。CPU41は、ページ番号の1桁目及び2桁目を、夫々、第一ページ線画データ及び第二ページ線画データが示す数字と特定する。これにより、S54で受信されたストロークデータのページ番号が特定される。CPU41は、処理をS76に進める。
CPU41は、S63において、第二ページボックス52Bに線画が筆記されていないと判断した場合(S63:YES)、2桁のページ番号を示す対象ページデータがページ記憶領域134(図11参照)に記憶されているかを判断する(S66)。ページ記憶領域134には、後述のS76において、ページデータが媒体IDと対応付けられて記憶されている。
CPU41は、2桁のページ番号を示す対象ページデータがページ記憶領域134に記憶されていると判断した場合(S66:YES)、次のようにページ番号を特定する。CPU41は、ページ番号の1桁目及び2桁目を、夫々、第一ページ線画データが示す数字及び対象ページデータが示すページ番号の2桁目の数字と特定する(S67,S68)。これにより、S54で受信されたストロークデータのページ番号が特定される。CPU41は、処理をS76に進める。
CPU41は、2桁のページ番号を示す対象ページデータがページ記憶領域134に記憶されていないと判断した場合(S66:NO)、次のようにページ番号を特定する。CPU41は、ページ番号の1桁目及び2桁目を、夫々、第一ページ線画データが示す数字及び「0」と特定する(S69,S70)。これにより、S54で受信されたストロークデータのページ番号が特定される。CPU41は、処理をS76に進める。
CPU41は、S62において、第一ページボックス52Aに線画が筆記されていないと判断した場合(S62:NO)、対象ページデータがページ記憶領域134に記憶されているかを判断する(S71)。CPU41は、対象ページデータがページ記憶領域134に記憶されていると判断した場合(S71:YES)、次のようにページ番号を特定する。CPU41は、ページ番号の1桁目及び2桁目を、夫々、S71で記憶されていると判断された対象ページデータが示すページ番号の1桁目及び2桁目と特定する(S72,S73)。すなわち、S54で受信されたストロークデータのページ番号は、S71で記憶されていると判断された対象ページデータが示すページ番号と同一であると特定される。CPU41は、処理をS76に進める。
CPU41は、対象ページデータがページ記憶領域134に記憶されていないと判断した場合(S71:NO)、次のようにページ番号を特定する。CPU41は、ページ番号の1桁目及び2桁目を、夫々、「1」及び「0」と特定する(S74,S75)。すなわち、用紙111は1ページ目と特定される。CPU41は、処理をS76に進める。
CPU41は、S76において、S64及びS65、S67及びS68、S69及びS70、S72及びS73、又はS74及びS75で特定したページ番号を示すページデータをRAM42に記憶し、且つ媒体IDと対応付けてページ記憶領域134に記憶する(S76)。対象ページデータがページ記憶領域134に既に記憶されている場合、特定されたページ番号を示すページデータを、既に記憶されている対象ページデータに上書きして記憶する。これにより、ページ記憶領域134には、1つのIDに対応するページデータとして、前回特定したページ番号を示すページデータが1つのみ記憶されている状態となる。CPU41は、ページ番号特定処理を終了し、処理を第二メイン処理(図9参照)に戻す。
図9に示すように、CPU41は、ページ番号特定処理(S55)の終了後、受信した媒体IDとRAM42に記憶したページデータとが互いに対応付けられて対応テーブル135(図12参照)に格納されているかを判断する(S81)。
CPU41は、受信した媒体IDとRAM42に記憶したページデータとが互いに対応付けられて対応テーブル135に格納されていないと判断した場合(S81:NO)、RAM42に記憶した線画データに基づき、画像ファイルを新規作成する(S82)。CPU41は、受信した媒体IDと、新規作成した画像ファイルと、RAM42に記憶したストロークデータと、RAM42に記憶したページデータとを対応付けて、対応テーブル135に格納する(S82)。CPU41は、処理をS52に戻す。
CPU41は、受信した媒体IDとRAM42に記憶したページデータとが既に互いに対応付けられて対応テーブル135に格納されていると判断した場合(S81:YES)、追記指示を受信したかを判断する(S83)。CPU41は、追記指示を受信していないと判断した場合(S83:NO)、RAM42に記憶した線画データと、受信した媒体ID及び特定したページ番号に対応する対応テーブル135に格納されたストロークデータとに基づき、画像ファイルを追加作成する(S84)。CPU41は、受信した媒体IDと、追加作成した画像ファイルと、RAM42に記憶したストロークデータと、RAM42に記憶したページデータとを対応付けて、対応テーブル135に格納する(S84)。CPU41は、処理をS52に戻す。
CPU41は、追記指示を受信したと判断した場合(S83:YES)、RAM42に記憶した線画データと、受信した媒体ID及び特定したページ番号に対応する対応テーブル135に格納されたストロークデータとに基づき、画像ファイルを追記作成する(S85)。CPU41は、受信した媒体IDと、追記作成した画像ファイルと、RAM42に記憶したストロークデータと、RAM42に記憶したページデータとを対応付けて、対応テーブル135に格納する(S85)。CPU41は、処理をS52に戻す。
CPU41は、S52の処理において、(a)のボタンを選択する操作を、タッチパネル191を介して検出していないと判断した場合(S52:YES)、(b)のボタンを選択する操作を、タッチパネル191を介して検出したか判断する(S91)。CPU41は、(b)のボタンを選択する操作を、タッチパネル191を介して検出していないと判断した場合(S91:NO)、処理をS52に戻す。
CPU41は、(b)のボタンを選択する操作を、タッチパネル191を介して検出したと判断した場合(S91:YES)、選択テーブル700(図6参照)をディスプレイ192に表示する(S92)。選択テーブル700は、画像ファイルとページ番号とが含まれる。選択テーブル700では、画像ファイルがページ番号に基づいて降順に並ぶ。
CPU41は、画像ファイルを選択する操作を、タッチパネル191を介して検出したか判断する(S93)。ユーザは、選択テーブル700に含まれる画像ファイルを、タッチパネル191を介して選択できる。CPU41は、画像ファイルを選択する操作を、タッチパネル191を介して検出していないと判断した場合(S93:NO)、処理をS52に戻す。
CPU41は、画像ファイルを選択する操作を、タッチパネル191を介して検出した場合(S93:YES)、選択された画像ファイルに基づき、画像をディスプレイ192に表示する(S94)。CPU41は、処理をS52に戻す。
以上説明したように、スマートフォン19のCPU41は、S54で受信したストロークデータに含まれる座標データから特定した第一ページ線画データ及び第二ページ線画データに基づいて、受信したストロークデータのページ番号を特定する。CPU41は受信したストロークデータを、特定したページ番号毎に関連付けてフラッシュメモリ43の対応テーブル135に記憶する。例えばユーザは複数回に分けて関連した内容を筆記する際に、各用紙111のページボックス52内に互いに同一のページ番号を筆記する場合がある。この場合、CPU41はページ番号が同一である複数のストロークデータを、互いに関連付けて対応テーブル135に記憶できる。従って、スマートフォン19は、複数のストロークデータをページ番号毎に管理できるため、ストロークデータを容易に管理できる。
CPU41は、受信したストロークデータに第一ページ領域内の位置を示す座標データが含まれないと判断した場合、対象ページデータを、受信したストロークデータのページ番号として特定する。これにより、例えばユーザはストロークデータを複数回に分けて連続して関連付けて記憶させる場合、ページ番号を筆記する必要がない。従って、CPU41はストロークデータを複数回に分けて連続して関連付けて対応テーブル135に記憶する場合に、ユーザがページ番号を筆記する手間を省略できる。
CPU41は、受信したストロークデータに第二ページ領域内の位置を示す座標データが含まれないと判断した場合、対象ページデータが示すページ番号の2桁目を、受信したストロークデータのページ番号の2桁目と特定する。これにより、例えばユーザは使用する用紙111のページ番号の2桁目が前回使用した用紙111のページ番号の2桁目と同じ場合、ページ番号の2桁目を筆記する必要がない。従って、スマートフォン19は、ページ番号の2桁目が前回と同じ場合に、ユーザがページ番号の2桁目を筆記する手間を省略できる。
CPU41は、受信したストロークデータを、特定したページ番号毎に合成作成できる。例えばユーザは以前に記憶したストロークデータに新たなストロークデータを合成して記憶する場合がある。この場合、ユーザが以前に記憶されたストロークデータのページ番号と同一のページ番号を筆記することで、CPU41は以前に記憶したストロークデータと受信したストロークデータに基づいて画像ファイルを追記作成する。従って、スマートフォン19は、同一のページ番号を筆記するだけで、容易に画像ファイルを追記作成できる。
CPU41は、追記指示を受け付けたかを判断する。CPU41は追記指示を受け付けた場合、以前に記憶したストロークデータと受信したストロークデータとに基づいて、ページ番号毎に画像ファイルを追記作成する。従って、CPU41は追記指示を受け付けた場合に、互いにページ番号が同一のストロークデータに基づいて、画像ファイルを追記作成できる。ユーザはCPU41に追記作成を実行させる場合、追記チェックボックス55Bに線画を筆記する。スマートフォン19は、ユーザが追記チェックボックス55Bに線画を筆記するだけで、容易に画像ファイルを追記作成できる。
CPU41は、ページ番号をストロークデータと対応付けてフラッシュメモリ43の対応テーブル135に記憶する。これにより、CPU41は記憶したストロークデータをページ番号の昇順又は降順に並べることができる。例えばユーザは、ランダムに並べられたストロークデータよりも、所定の規則に従って並べられたストロークデータの方が管理しやすい。従って、CPU41はストロークデータを容易に管理できる。
CPU41は、ストロークファイルに基づいて作成した画像ファイルを、ページ番号の昇順又は降順で表示部に表示する。例えばユーザは、ランダムに並べられて表示された画像ファイルよりも、所定の規則に従って並べられて表示された画像ファイルの方が検索しやすい。従って、CPU41は画像ファイルの検索性を向上できる。
本実施形態において、CPU41が本発明の「コンピュータ」に相当する。スマートフォン19が本発明の「筆記データ処理装置」に相当する。読取装置2が本発明の「入力装置」に相当する。手書入力システム1が本発明の「筆記データ処理システム」に相当する。電子ペン3が本発明の「筆記具」に相当する。ストロークデータが本発明の「筆記データ」に相当する。フラッシュメモリ43が本発明の「記憶部」に相当する。ディスプレイ192が本発明の「表示部」に相当する。
第一ページ領域及び第二ページ領域が本発明の「識別領域」に相当する。第一ページ領域が本発明の「第一部分領域」に相当する。第二ページ領域が本発明の「第二部分領域」に相当する。第一識別領域内又は第二識別領域内の位置を示す座標データが本発明の「識別座標データ」に相当する。第一ページ領域内の位置を示す座標データが本発明の「第一座標データ」に相当する。第二ページ領域内の位置を示す座標データが本発明の「第二座標データ」に相当する。ページデータが本発明の「識別データ」に相当する。ページ番号の1桁目を示すページデータが本発明の「第一識別データ」に相当する。ページ番号の2桁目を示すページデータが本発明の「第二識別データ」に相当する。追記指示が本発明の「合成指示」に相当する。
図9のS54の処理が本発明の「取得ステップ」に相当する。図10のS62及びS63の処理が本発明の「第一判断ステップ」に相当する。図10のS63の処理が本発明の「第三判断ステップ」に相当する。図9のS83の処理が本発明の「第二判断ステップ」に相当する。図10のS64及びS65の処理が本発明の「第一特定ステップ」に相当する。図10のS72及びS73の処理が本発明の「第二特定ステップ」に相当する。図10のS67及びS69の処理が本発明の「第三特定ステップ」に相当する。図10のS65の処理が本発明の「第四特定ステップ」に相当する。図10のS68の処理が本発明の「第五特定ステップ」に相当する。図10のS84及びS85が本発明の「記憶ステップ」に相当する。図9のS92の処理が本発明の「表示ステップ」に相当する。
図8のS5の処理を実行するCPU21が本発明の「検出手段」に相当する。図8のS22の処理を実行するCPU21が本発明の「送信手段」に相当する。図9のS54の処理を実行するCPU41が本発明の「取得手段」に相当する。図10のS62及びS63の処理を実行するCPU41が本発明の「第一判断手段」に相当する。図10のS64及びS65の処理を実行するCPU41が本発明の「第一特定手段」に相当する。図9のS84及びS85の処理を実行するCPU41が本発明の「記憶手段」に相当する。
なお、本発明は上記実施形態に限定されず、種々の変形が可能である。例えば、上記実施形態において、スマートフォン19のフラッシュメモリ43に記憶されたプログラムは、読取装置2のフラッシュメモリ23に記憶されてもよい。この場合、読取装置2のCPU21が第二メイン処理を実行してもよい。上記実施形態では、CPU41は、ページ番号毎に画像ファイルを作成するが、媒体ID毎に画像ファイルを追加作成してもよい。この場合、追加作成された画像ファイルは、線画が筆記された各用紙111のメモ領域51を示す画像が、ページ番号の順に並んだ画像を示す。上記実施形態では、画像ファイルはメモ領域51を示すが、筆記領域50を示してもよい。即ち、画像ファイルは、ページボックス52に筆記された線画を更に示してもよい。上記実施形態では、ページ番号は1桁又は2桁であるが、3桁以上であってもよい。この場合、ページボックス52は、第二ページボックス52Bの左側にページ番号の各桁を筆記するための領域を示すページボックスを更に備えればよい。この場合、CPU41は、ページ番号の2桁目に対して実行した処理を、ページ番号の3桁目以降に対しても実行すればよい。ページ番号は、1桁であってもよい。ページボックス52は、第二ページボックス52Bを備えなくてもよく、第一ページボックス52Aに2桁以上の数字が筆記されてもよい。この場合、CPU41はS62においてページボックス52に線画が筆記されたかを判断すればよい。CPU41は線画が筆記されたと判断した場合、筆記された線画に基づきページ番号を特定すればよい。CPU41はS71〜S75を実行しなくてもよい。この場合、CPU41はページボックス52に線画が筆記されていないと判断した場合、例えばページ番号がないストロークデータとしてフラッシュメモリ43に記憶してもよい。
上記実施形態では、スマートフォン19のCPU41は読取装置2からストロークデータを受信するが、ストロークデータの取得方法はこれに限定されない。例えば、CPU41はカメラによって撮影された画像からストロークデータを取得してもよい。第二メイン処理はカメラに搭載されたCPUが実行してもよい。スマートフォン19はカメラを搭載してもよい。
上記実施形態において、CPU21は、第一メイン処理において、S12、S17、及びS18の処理を実行しなくてもよい。つまり、追記指示をフラッシュメモリ23に記憶しなくてもよい。この場合、CPU41は、S83の処理において、S61で特定した線画が所定の形状を示すと判断した場合、追記指示を受け付けたと判断し、S85の処理を実行して画像ファイルを追記作成してもよい。CPU41は、S83の処理において、S61で特定した線画が所定の形状を示さないと判断した場合、S84の処理を実行して画像ファイルを追加作成してもよい。所定の形状を示すデータは、フラッシュメモリ43に予め記憶されてもよい。
上記の場合に用いられる用紙112及び所定の形状を、図13を参照して説明する。図13(a)及び図13(b)は、夫々、用紙112の右下角部を示している。用紙111と対応する構成には同一の符号を付して説明を省略する。用紙112は、上記実施形態の用紙111の通常チェックボックス55A及び追記チェックボックス55Bの代わりに、特定チェックボックス55Cを備える。特定チェックボックス55Cは、用紙112の右下角部に印刷されている。特定チェックボックス55Cの形状は、矩形状である。特定チェックボックス55Cは、筆記領域50に筆記された線画を確定させるためにユーザが線画を筆記する領域を示す。
例えば図13(a)に示すように、右斜め上に延びる線を示す線画が特定チェックボックス55Cに筆記された場合に、CPU41は、特定した線画が所定の形状を示すと判断してもよい。この場合、CPU41は受信したストロークデータを追記指示と対応付けてRAM42記憶する。図13(b)に示すように、右斜め下に延びる線を示す線画が特定チェックボックス55Cに筆記された場合に、CPU41は、特定した線画が所定の形状を示さないと判断してもよい。この場合、CPU41は作成したストロークデータを追記指示と対応付けずにフラッシュメモリ43に記憶する。なお、所定の形状は、数字、英字、記号等であってもよい。又、CPU41の代わりにCPU21が、特定した線画が所定の形状を示すと判断した場合、追記指示をRAM22に記憶してもよい。この場合、CPU21は、RAM22の第二領域に記憶した線分データに基づき、予め線画を特定すればよい。
上記の場合、CPU41は特定した線画が、所定の形状を示すかに基づいて、追記指示を受け付けたかを判断する。従って、筆記領域50は追記指示を受け付けるための領域と受け付けないための領域との2つの領域を含む必要がないため、スマートフォン19は筆記領域50のうち追記指示のための領域が占める割合を抑制できる。
更に、用紙112が使用される場合において、CPU41は、特定チェックボックス55Cに線画が筆記されたことを検出した場合、受信したストロークデータを追記指示と対応付けてRAM42に記憶してもよいし、追記指示と対応付けずにRAM42に記憶してもよい。特定チェックボックス55Cに線画が筆記された場合に作成されたストロークデータが追記指示と対応付けられてRAM42に記憶されるか否かは、予め設定されていればよい。この場合、CPU41はS83を実行しなくてもよい。手書入力システム1では、読取装置2又はスマートフォン19によって、特定チェックボックス55Cに線画が筆記された場合に、受信されたストロークデータが追記指示と対応付けられてRAM42に記憶されるか否かを、ユーザによって予め設定できてもよい。更に、これらの処理は読取装置2のCPU21が実行してもよい。
上記実施形態において、読取装置2のCPU21がS2及びS3を実行する代わりに、スマートフォン19のCPU41が媒体ID特定処理を実行してもよい。この場合には、用紙113が使用される。図14を参照し、用紙113を説明する。用紙113は、IDボックス53を有する。IDボックス53は、筆記領域50において、ページボックス52の左側に印刷されている。IDボックス53は、媒体IDを筆記するための領域を示す。本変形例では、媒体IDは1桁又は2桁の英字である。媒体IDは、1桁でもよいし、3桁以上であってもよい。媒体IDは英字に限定されず、数字でもよいし、記号等でもよいし、又はこれらの組み合わせでもよい。
IDボックス53は、第一IDボックス53Aと第二IDボックス53Bとを含む。第二IDボックス53Bは、第一IDボックス53Aの左側に設けられる。第一IDボックス53A、及び第二IDボックス53Bの形状は矩形状の1重線である。第一IDボックス53Aは、用紙113の媒体IDのうち、1桁目の英字を筆記するための領域である。第二IDボックス53Bは、用紙113の媒体IDのうち、2桁目の数字を筆記するための領域である。ユーザは用紙113のページボックス52に用紙113の媒体IDを電子ペン3で筆記する。例えば用紙113の媒体IDが「AB」である場合、ユーザは用紙113の第二IDボックス53Bに「A」を筆記し、第一IDボックス53Aに「B」を筆記する。第一IDボックス53Aを構成する矩形状の領域に対応する読取装置2の前面の領域を、第一ID領域という。第二IDボックス53Bを構成する矩形状の領域に対応する読取装置2の前面の領域を、第二ID領域という。
図15を参照し、媒体ID特定処理を説明する。媒体ID特定処理は、CPU41がS54の処理においてストロークデータ等を受信した場合に、ページ番号特定処理(S55)の前に実行される。CPU41は、RAM42に記憶したストロークデータに含まれる線分データに基づき、筆記された文字列を特定する(S101)。CPU41は、特定した文字列を示す線画データをRAM42に記憶する(S101)。
CPU41は、RAM42に記憶したストロークデータに含まれる複数の座標データに基づき、第一IDボックス53Aに線画が筆記されたかを判断する(S102)。具体的には、CPU41は、複数の座標データの少なくとも1つが、第一ID領域内の位置を示している場合、第一IDボックス53Aに線画が筆記されたと判断する(S102:YES)。一方、CPU41は、複数の座標データの全てが、第一ID領域外の位置を示している場合、第一IDボックス53Aに線画が筆記されていないと判断する(S102:NO)。
CPU41は、第一IDボックス53Aに線画が筆記されたと判断した場合(S102:YES)、S54でRAM42に記憶したストロークデータに含まれる複数の座標データに基づき、第二IDボックス53Bに線画が筆記されていないかを判断する(S103)。具体的には、CPU41は、複数の座標データの少なくとも1つが、第二ID領域内の位置を示している場合、第二IDボックス53Bに線画が筆記されたと判断する(S103:NO)。一方、CPU41は、複数の座標データの全てが、第二ID領域外の位置を示している場合、第二IDボックス53Bに線画が筆記されていないと判断する(S103:YES)。
CPU41は、第二IDボックス53Bに線画が筆記されたと判断した場合(S103:NO)、次のように媒体IDを特定する。CPU41は、媒体IDの1桁目及び2桁目を、夫々、第一IDボックス53A及び第二IDボックス53Bに筆記された英字又は「0」と特定する(S104,S105)。具体的には、CPU41は、RAM42に記憶した線画データから、第一ID線画データ及び第二ID線画データを夫々特定する。第一ID線画データ及び第二ID線画データは、夫々、第一ID領域内及び第二ID領域内の位置を示す座標データに対応する線画データである。CPU41は、媒体IDの1桁目及び2桁目を、夫々、第一ID線画データが示す英字及び第二ID線画データが示す英字又は「0」と特定する。これにより、S54で受信されたストロークデータの媒体IDが特定される。CPU41は、処理をS116に進める。
CPU41は、S103において、第二IDボックス53Bに線画が筆記されていないと判断した場合(S103:YES)、フラッシュメモリ43のID記憶領域(図示略)に記憶された媒体IDが2桁であるか判断する(S66)。フラッシュメモリ43のID記憶領域には、後述のS116において、媒体IDが上書き記憶されている。即ち、フラッシュメモリ43のID記憶領域には、前回受信したストロークデータの媒体IDのみが記憶されている。
CPU41は、2桁の媒体IDがフラッシュメモリ43のID記憶領域に記憶されていると判断した場合(S106:YES)、次のように媒体IDを特定する。CPU41は、媒体IDの1桁目及び2桁目を、夫々、第一ID線画データが示す英字及びID記憶領域に記憶された媒体IDの2桁目の英字と特定する(S107,S108)。これにより、S54で受信されたストロークデータの媒体IDが特定される。CPU41は、処理をS116に進める。
CPU41は、2桁の媒体IDがフラッシュメモリ43のID記憶領域に記憶されていないと判断した場合(S106:NO)、次のように媒体IDを特定する。CPU41は、媒体IDの1桁目及び2桁目を、夫々、第一ID線画データが示す英字及び「0」と特定する(S109,S110)。これにより、S54で受信されたストロークデータの媒体IDが特定される。CPU41は、処理をS116に進める。
CPU41は、S102において、第一IDボックス53Aに線画が筆記されていないと判断した場合(S102:NO)、媒体IDがフラッシュメモリ43のID記憶領域に記憶されているかを判断する(S111)。CPU41は、媒体IDがフラッシュメモリ43のID記憶領域に記憶されていると判断した場合(S111:YES)、次のように媒体IDを特定する。CPU41は、媒体IDの1桁目及び2桁目を、夫々、フラッシュメモリ43のID記憶領域に記憶されている媒体IDの1桁目及び2桁目と特定する(S112,S113)。すなわち、S54で受信されたストロークデータの媒体IDは、フラッシュメモリ43のID記憶領域に記憶されている媒体IDと同一であると特定される。CPU41は、処理をS116に進める。
CPU41は、媒体IDがフラッシュメモリ43のID記憶領域に記憶されていないと判断した場合(S111:NO)、次のように媒体IDを特定する。CPU41は、媒体IDの1桁目及び2桁目を、夫々、「A」及び「0」と特定する(S114,S115)。CPU41は、処理をS116に進める。
CPU41は、S116において、S104及びS105、S107及びS108、S109及びS110、S112及びS113、又はS114及びS115で特定した媒体IDをRAM42に記憶し、且つフラッシュメモリ43のID記憶領域に上書き記憶する(S116)。媒体IDがフラッシュメモリ43のID記憶領域に既に記憶されている場合、特定された媒体IDを、既に記憶されている媒体IDに上書きして記憶する。これにより、フラッシュメモリ43のID記憶領域には、前回特定した媒体IDが1つのみ記憶されている状態となる。CPU41は、媒体ID特定処理を終了し、処理を第二メイン処理(図9参照)に戻す。CPU41は、媒体ID特定処理の終了後、ページ番号特定処理(S55)を実行する。なお、CPU41は、S82、S84、S85の処理において、特定した媒体IDと、作成した画像ファイルと、RAM42に記憶したストロークデータと、RAM42に記憶したページデータとを対応付けて、対応テーブル135に格納する。
上記構成によれば、CPU41は受信したストロークデータに含まれる第一ID線画データ及び第二ID線画データに基づいて媒体IDを特定する。CPU41は受信したストロークデータを、特定した媒体ID毎に関連付けて対応テーブル135に記憶する。従って、CPU41は記憶されたストロークデータを媒体ID毎に管理できるため、ストロークデータを容易に管理できる。
CPU41は、第一IDボックス53Aに線画が筆記されていないと判断し、且つ媒体IDがフラッシュメモリ43のID記憶領域に記憶されていると判断した場合、ストロークデータの媒体IDを、フラッシュメモリ43のID記憶領域に記憶されている媒体IDと特定する。ユーザは、同じ紙媒体100を連続して使用する場合、1枚目の用紙113に媒体IDを筆記するだけで、2枚目以降の用紙113には媒体IDを筆記する必要がない。従って、スマートフォン19は、同じ紙媒体100が連続して使用される場合にユーザが媒体IDを筆記する手間を省略できる。
上記変形例において、第一ID領域及び第二ID領域が本発明の「特定領域」に相当する。第一ID領域内及び第二ID領域内の位置を示す座標データが本発明の「特定座標データ」に相当する。媒体IDが本発明の「特定データ」に相当する。図15のS102及びS103の処理が本発明の「第四判断ステップ」に相当する。図15のS104及びS105の処理が本発明の「第六特定ステップ」に相当する。