以下、添付図面を参照しながら、本発明に係る筆記システム1の好適な実施形態について詳細に説明する。
図1は、本発明に係る筆記システム1の構成の一例を示す図である。
図1に示すように、例えば、1又は複数のデジタルペン100(例えばユーザに1台ずつ)、1又は複数の通信中継ユニット300(例えばフロアに1台ずつ)が無線通信によって接続される。また、上記通信中継ユニット300、1又は複数の帳票管理サーバ200(例えば拠点毎に設置)がLAN(Local Area Network)900によって接続される。
デジタルペン100は、通常のインクペンと同様のペン先部を備えており、利用者は通常のインクペンと同様のやり方で用紙に文字などを書くことができる。また、詳細は後述するが、デジタルペン100はドットパターンが形成された専用用紙10と組み合わせて使用される。この専用用紙10を使用することで、デジタルペン100は筆記した内容をデータ化し記憶することができる。
デジタルペン100は、近年、様々な方式を用いたデバイスが登場しており、その代表的なものとしてスウェーデン国Anoto(登録商標)社が開発したアノト(登録商標)方式デジタルペン(Anoto
pen)」が知られている。アノトペンは、所定のドットパターンが形成された専用紙(以下、「専用用紙」と呼ぶ)とペアで使用される。アノトペンは、通常のインクタイプのペン先に加えて、専用用紙上のドットパターンを読み取るための小型カメラと、Bluetooth(登録商標)対応の通信ユニットを搭載している。利用者が専用用紙上にアノトペンで文字などを書くと、ペンの移動に伴って小型カメラが専用用紙上のドットパターンを検出し、利用者が書き込んだ文字などの入力データが取得される。このデータがBluetooth(登録商標)対応の通信ユニットによりアノトペン近くのパーソナルコンピュータや携帯電話などの端末に送信される。
このアノトペンを利用したシステムは、キーボードやマウスポインタに代わる入力デバイスとして利用することが可能であり、上述のパーソナルコンピュータやキーボードの使用が苦手な利用者にとっては非常に使いやすい。
一方、官公庁や金融機関などの書類提出先でも、利用者の記入事項は従来のように紙の書類としてではなく、入力された電子データとして取得することができるので、そのままその後の電子的な処理を行なうことができるメリットがある。(特許文献1参照)
帳票管理サーバ200は、各種申請書や登録書などの帳票データを管理するためのサーバである。無線通信機能を有しており、デジタルペン100と通信を行うことができる。無線通信機能により、帳票データをデジタルペン100に送信したり、デジタルペン100から筆記データを受け取ったりすることができる。帳票管理サーバ200は、1つのサーバで構成しても良い。また、帳票管理サーバ200は、プライマリおよびセカンダリの2つのサーバによって構成しても良い。また、帳票管理サーバ200は、3つ以上のサーバによって構成しても良い。
通信中継ユニット300は、デジタルペン100と帳票管理サーバ200との通信を中継するための機器である。通信中継ユニット300は、無線通信機能と有線通信機能を備える。無線通信はデジタルペン100のような移動端末の通信手段として適しているが、その性質上、通信距離が短いゆえに通信端末同士が近距離に存在する必要がある。しかし、帳票管理サーバ200のように拠点に1台しかないようなサーバと通信したい場合は、無線通信は適さない。よって通信中継ユニット300は、デジタルペン100と無線通信を行い、帳票管理サーバ200と有線通信を行うことで、無線通信のメリットを活かしつつ、デメリットを解消することを目的としている。なお、通信中継ユニット300は、このように通信を行うことを目的としているため、デジタルペン100と帳票管理サーバ200とが直接通信を行える環境では、通信中継ユニット300は必ずしも必要がない。
また、通信中継ユニット300は、デジタルペンからの入力データからユーザと関連サービスを割り出し、該当サービスに送信するための認識システム「Paper Look−up Service」(PLSとも呼ばれる)の機能を備えていてもよい。その場合、PLS機能を有する通信中継ユニット300は、デジタルペン100から送信されてきた入力データに従って、適切なサービス(サーバ)を特定することができ、本実施形態の場合、帳票管理サーバ200を割り出して、入力データを送信することができるし、また、割り出した帳票管理サーバ200の通信ポートをデジタルペン100に返送し、デジタルペン100と帳票管理サーバ200が直接通信できるようにすることも可能である。なお、本実施形態においては、デジタルペンサービスは帳票管理サーバ200だけを想定しているため、PLS機能を用いずに必ず帳票管理サーバ200に送信するように構成してもよい。
次に、図2、3を参照しながら、デジタルペン100、帳票管理サーバ200について説明する。
図2は、デジタルペン100のハードウエア構成を示す図、図3は、帳票管理サーバ200のハードウエア構成を示す図である。
図2に示すように、デジタルペン100は、その内部に、メモリ1001、ボタン1002、LED(Light Emitting Diode)1003、スピーカ1004、プロセッサ1005、無線通信I/Fコントローラ1006、圧力センサ1007、赤外線LED1008、カメラ1009、バッテリ1010、カートリッジ1011を備える。
メモリ1001は、デジタルペン100を制御するための所定のアプリケーションプログラムが記憶されている。またアプリケーションで利用するデジタルペンデータ110(図13)も保持する。さらに、デジタルペン100自体及びその所有者に関するプロパティ情報(ペン情報及びペン所有者情報)を保持することができ、アプリケーションから参照することができる。ペン情報としては、バッテリーレベル、ペンID、ペン製造者番号、ペンソフトウエアのバージョン、サブスクリプションプロバイダIDなどがある。そして、デジタルペン100のメモリ1001には更に、所定のアプリケーションプログラムでデジタルペン100の専用用紙上の位置(座標)を特定するために、専用用紙のドットパターン配列を記憶している。なお、アノト技術における専用用紙のドットパターン配列の領域は、面積にすると6000万平方Km分用意されており、デジタルペン100では、ドットパターンを読み取ることで、どの専用用紙のどの位置(座標)にデジタルペンが差されているかを即時に判別することが可能となっている。
また、ペン所有者情報としては、国籍、言語、タイムゾーン、メールアドレス、空きメモリ容量、名前、住所、ファクス、電話番号、携帯電話番号などがある。このペン所有者情報は、所定のアプリケーションから設定値を指定して、無線通信することで設定値をデジタルペン100側に送信され記憶される。
ボタン1002は、利用者からの指示を受け付ける。ボタン1002の押下はプロセッサ1005に通知される。よってデジタルペン100に搭載されるアプリケーションはボタン1002の押下イベントを検知することができる。後述するように、このボタン1002が押下されることにより、通知データのメッセージがデジタルペン100で音声再生され、スピーカ1004から音声出力される。
LED1003は、プロセッサ1005によって制御され、オン/オフを行う。
スピーカ1004は、プロセッサ1005によって制御され、指定された音声データを発音する。
ボタン1002、LED1003、スピーカ1004が協働することで、デジタルペン100は利用者と双方向コミュニケーションを行うことができる。具体的には、LED1003が光っているときにボタン1002を押すとスピーカ1004からメッセージが流れる、というような処理が可能となる。
プロセッサ1005は、デジタルペン100内の各デバイスやコントローラを統括的に制御する。
無線通信I/Fコントローラ1006は、光や電波による無線での通信を行うことで、外部機器と接続・通信することができる。無線通信I/Fコントローラ2012は、例えば、IrDA(Infrared Data Association)通信、Bluetooth(登録商標)通信、IEEE802.11規格を用いた通信等が可能である。
圧力センサ1007は、利用者がデジタルペン100により専用用紙10上に文字などを書く際にペン先部に与えられる圧力、即ち筆圧を検出し、プロセッサ1005へ供給する。
赤外線LED1008は、カメラ1009の撮影領域を照射する。
情報処理読取部であるカメラ1009は、専用用紙10上のドットパターンを読み取り、そのパターンデータをプロセッサ1005に供給する。
圧力センサ1007、赤外線LED1008、カメラ1009が協働することで、利用者の筆記データ(図14)を記録することができる。具体的には、プロセッサ1005は、圧力センサ1007から与えられる筆圧データに基づいて、赤外線LED1008及びカメラ1009のスイッチオン/オフの切換を行う。即ち、利用者がデジタルペン100で専用用紙10上に文字などを書くと、ペン先部には筆圧がかかる。よって、所定値以上の筆圧が検出された時に、利用者が記述を開始したと判定して、赤外線LED1008及びカメラ1009を作動する。
バッテリ1010は、デジタルペン100内の各要素に電源供給するためのものであり、例えばデジタルペン100のキャップ(図示しない)の取り付け、取り外しによりデジタルペン100自体の電源オン/オフを行うことができる。
カートリッジ1011は、通常のインクペンと同様の構成要素であり、圧力がかけられると内部のインクを接地面に塗布する。
次に、デジタルペン100により利用者が記述した内容のX/Yデータを取得する方法について説明する。
前述のように専用用紙10には、所定のドットパターンが形成されている。デジタルペン100のカメラ1009は、利用者が専用用紙10上に記述したインクの軌跡を読み取るのではなく、専用用紙10上のドットパターンを読み取る。実際、赤外線LED1008による照明領域及びカメラ1009の撮影領域(照明領域に位置する)は、ペン先部が専用用紙10に接触する位置と微少に異なっている。
ドットパターンは、カーボンを含む専用インキなどで形成されており、カメラ1009はその専用インキによるパターンのみを認識することができる。専用インキ以外のインキ(カーボンを含まない)により、専用用紙10上に罫線や枠などを形成しても、電子ペンはそれらを認識することはない。よって、専用用紙10を利用して各種申込書などの用紙を作成する際は、専用インキ以外のインキで入力枠や罫線、注意書きなどを形成する。
このように、デジタルペン100は利用者が専用用紙10上に記述した文字などに対応する座標データ及び筆圧データを取得して近傍の通信中継ユニット300へ送信する機能を有するが、デジタルペン100のペン先部は通常のインクペンとなっているため、専用用紙10上に記述した内容はオリジナルの原本として残るという特徴がある。即ち、紙の原本に対して記述するのと同時に、その内容を座標データなどの形態でリアルタイムに電子化することができる。
図3に示すように、帳票管理サーバ200では、システムバス2004を介してCPU(Central Processing Unit)2001、RAM(Random Access Memory)2002、ROM(Read Only Memory)2003、入力コントローラ2005、ビデオコントローラ2006、メモリコントローラ2007、通信I/Fコントローラ2008、無線通信I/Fコントローラ2012が接続される。
CPU2001は、システムバス2004に接続される各デバイスやコントローラを統括的に制御する。
ROM2003あるいは外部メモリ2011は、CPU2001の制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、各サーバあるいは各PCが実行する各種プログラム等を保持している。
RAM2002は、CPU2001の主メモリ、ワークエリア等として機能する。CPU2001は、処理の実行に際して必要なプログラム等をROM2003あるいは外部メモリ2011からRAM2002にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ2005は、キーボード(KB)2009やマウス(図示しない)等のポインティングデバイス等からの入力を制御する。
ビデオコントローラ2006は、CRT(Cathode Ray Tube)2010等の表示器への表示を制御する。表示器はCRTに限らず、液晶ディスプレイ等の他の表示器でもよい。これらは、必要に応じて管理者が使用する。
メモリコントローラ2007は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、あるいは、PCMCIA(Personal Computer Memory Card International Association)カードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ、SSD(Solid State Drive)等の外部メモリ2011へのアクセスを制御する。
通信I/Fコントローラ2008は、LAN(Local Area Network)900のようなネットワークを介して外部機器と接続・通信し、ネットワーク上での通信制御処理を実行する。通信I/Fコントローラ2008は、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)、UDP(User Datagram Protocol)を用いた通信等が可能である。
CPU2001は、例えばRAM2002内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT2010上に表示することが可能である。また、CPU2001は、CRT2010上のマウスカーソル(図示しない)等によるユーザ指示を可能とする。
帳票管理サーバ200のハードウエア上で動作する各種プログラムは、外部メモリ2011に記録されており、必要に応じてRAM2002にロードされ、CPU2001により実行される。プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等は、外部メモリ2011に格納されている。
次に、図3、4、5を参照しながら、専用用紙10に形成されるドットパターンの説明と、専用用紙の構成について説明する。
図4は、専用用紙に形成されたドットパターンによる情報の表現方法を説明する図である。ドットパターンは、図4に例示するように、各ドットの位置がデータに対応付けされている。
図4の例では、ドットの位置を格子の基準位置(縦線及び横線の交差点)から上下左右にシフトすることにより、0〜3の2ビット情報(「00」から「11」)を表示した例である。このようにして表現された情報の組み合せをデジタルペンが読み取り、その読み取った情報を専用用紙10のドットパターンに対応する情報と比較することにより、専用用紙10上の位置座標が決定される。
図5は、ドットパターン及びそれに対応する情報の例を示す図である。図5(a)に例示するように、ドットパターンは縦横約2mmの範囲内に36個のドットが格子状に配置され、これらのドットにより示されるデータの配列(図5(b))が、専用用紙10上の位置座標を対応付けしている。
よって、デジタルペン100のカメラ1009から入力されるドットパターンを撮影すると、プロセッサ1005はカメラ1009から入力されるドットパターンのデータに基づいて、図5(b)に示すデータ配列を取得し、それに対応する専用用紙10上の位置座標(即ち、そのドットパターンがその専用用紙上のどの位置にあるか)を、メモリ1001に記憶されている所定のアプリケーションを用いてリアルタイムで算出することができる。なお、ドットパターンを認識する最小単位は2mm×2mmであり、カメラ1009は毎秒100回程度の撮影を行なう。なお、カメラ1009で読み取ったドットパターンのデータから、専用用紙10上の位置座標を求める技術は、アノト技術として既知の技術であるため、プロセッサ1005による所定のアプリケーションプログラムにおける詳細な説明は省略する。
図6は専用用紙の構造の一例を示す図である。図示のように、専用用紙10は、台紙11上にドットパターン13が形成され、その上に罫線などの図案12が形成されている。台紙11は通常の紙であり、ドットパターン13は前述のようにカーボンを含んだ専用インキにより形成されている。また、通常のインキなどにより図案12が形成されている。ドットパターン13と図案とは、同時に形成してもよいし、いずれかを先に形成してもよい。また、ドットパターン13は、台紙11の全面に形成した例を示したが、台紙の一部に形成するようにしてもよい。
ドットパターン13の割り当ては、通常、用紙(専用用紙)の種類毎に行なわれる。即ち、用紙内のドットパターンは一枚の用紙の中で重複することはないが、同じ種類(同じ帳票)の用紙には全て同じドットパターン13が形成されている。また、前述のようにドットパターン13の形成されているエリアは何を意味するのかが予め定義されている。よって、利用者がデジタルペン100で専用用紙10に必要事項を入力すると、その入力事項がその用紙のどの項目に対応するものであるかを、用紙上の座標データから特定することができる。
このように、ドットパターン13を形成した専用用紙10上に、用紙として必要な記入部14を含む図案12をデザインし形成することにより、デジタルペン100により記入部14に何らかの筆記記入することで、記入した情報を自動的に電子データ化可能な用紙が作成できる。
なお、ドットパターン13の形成、あるいは記入部14、その他必要な情報の形成は、予め製版された印刷版をオフセット印刷機等の所謂印刷装置を用いて印刷形成する手段(以下、単に「印刷」または「印刷形成」という)、またはコンピュータに接続され制御される所謂プリンタ装置に、該コンピュータからのデータを送りプリント形成する手段(以下、単に「プリント」または「プリント形成」という。)により行なわれる。
印刷機による印刷は、大量に同じものを製造するのに適する。よって、印刷により本発明の用紙を作成する場合は、同じ種類の用紙であれば、通常は同じドットパターン13を形成することになる。
なお、全ての用紙に同一のドットパターンを形成する場合であってもプリンタ装置でプリント形成してもよいことは言うまでもない。
プリンタ装置により本発明の用紙をプリント形成する場合は、プリンタ装置に送るデータを用紙毎にユニークなものを用意しておけば、用紙毎にユニークなドットパターン13を定め、これをプリント形成することで可能となる。この場合は、本発明の専用用紙10に形成される任意の位置のドットパターン13をデジタルペン100で読み取るだけで用紙一枚毎に用紙の特定ができる。例えば、配送伝票のように予め用紙に連続番号を付与するようなもの、あるいは、用紙毎に利用者の個人情報を印字し、個々の用紙を特定したい場合に利用できる。
次に、図7、図13、図14、図15、図16、図17、図18、図19、図20、図21、図22、図25を参照しながら、筆記システム1の機能と利用するデータについて説明する。
図7は、本発明に係る筆記システム1の機能構成を示すブロック図であり、図13は、デジタルペンデータ110の一例を示す図であり、図14は、筆記データ120の一例を示す図である。また、図15は、帳票共通データ130の一例を示す図であり、図16は、領域データ140の一例を示す図であり、図17は、帳票定義DB207(帳票定義記憶部)の一例を示す図であり、図18は、帳票定義データ260の一例を示す図である。また、図19は、領域属性132の一例を示す図であり、図20は、帳票チェックデータ270の一例を示す図であり、図21は、帳票データDB208の一例を示す図であり、図22は、帳票データ282の一例を示す図であり、図25は紙に出力された帳票の一例を示す図である。
図13のデジタルペンデータ110は、デジタルペン100のメモリ1001に記憶されているデータである。デジタルペンデータ110には、カメラ1009による撮影回数111、カメラ1009で読み取った現在のデータID112、デジタルペン100で記入された筆記データ120(図14)、帳票共通データ130(図15)、帳票ID113(帳票識別情報)、帳票定義データ114(図18、260と同様)を有している。
図14の筆記データ120は、デジタルペン100で記入された時刻121、記入された位置を示す座標122、記入されたときの筆圧123を有している。これらの情報は、デジタルペン100を用いてユーザが文字を記入することで自動的に記憶されることになる。なお、筆記データ120は座標の集合なので、その集合の中から、時刻と座標が連続している領域の座標の集合を領域データ140とする。
図15の帳票共通データ130は、デジタルペン100のメモリ1001に予め記憶されているデータであり、データID131、領域属性132、領域133を有している。これらの情報は、デジタルペン100のメモリ1001に記憶されている所定のアプリケーションプログラムにより利用されるデータであり、これらの情報を用いることにより、デジタルペン100が差している専用用紙上の位置(座標)を特定することができる。
図16の領域データは、図14の筆記データの集合であるが、デジタルペン100のプロセッサ1005が所定のアプリケーションプログラムを動作させることにより、連続している筆記データの領域141とストロークデータ142が得られる。領域とは、筆記データにより得られるユーザが記入した文字の領域であり、ストロークデータとは、その領域中にユーザが記入した文字を示すデータであり、例えばビットマップ画像である。
図17の帳票定義DB207は、帳票サーバ200が有しているデータベースであり、帳票ID250、帳票定義データ260(図18)、帳票チェックデータ270(図20)を有している。
図18の帳票定義データ260は、データID261、領域属性132(図19)、領域263、通知状態264、通知データ265を有している。
図19の領域属性132には、「開始」「終了」「通知」「未通知」の4つの属性がある。図18の領域263の複数の値は、「開始点のX座標、開始点のY座標、幅、高さ」をそれぞれ示している。
図20の帳票チェックデータ270は、データID271、必須272、チェック273の3つの項目を有している。
図21の帳票データDB208は、帳票サーバが有しているデータベースであり、帳票データID280、帳票ID281、帳票データ282(図22で後述)を有している。これの詳細については後述する。
図7を用いて、本実施形態の各装置の機能について説明する。まず、デジタルペン100の処理を実行するための機能について説明する。
デジタルペン100は、筆記記憶部101、無線通信部102、音声通知部103、LED通知部104、ボタン制御部105、データ管理部106、領域判定部107、デジタルペンデータ110等を有する。
筆記記憶部101は、圧力センサ1007、赤外線LED1008、カメラ1009を制御し、筆記データを記録する。圧力センサ1007が筆圧を検出すると撮影領域に対して赤外線LED1008を照射し、カメラ1009で撮影する。圧力センサ1007が筆圧を検出している間は毎秒100回程度の撮影を行い、筆圧を検知しなくなると撮影を終了する。撮影したデータは筆記データ120として、デジタルペンデータ110に格納される。
筆記データ120は、時刻121、座標122、筆圧123などから構成される。時刻121は、毎秒100回単位の撮影を時系列で管理するための識別情報であり、撮影された時点のタイムスタンプが記憶される。座標122は、撮影された絶対座標を示すもので、撮影したドットパターンから座標を特定する。筆圧123は、圧力センサ1007で検知したデータを格納する。
なお、筆記データ120には、これらの情報以外にも不図示の加速度センサを使って速度やペンの傾きなども記憶される。
また、この筆記データを分析することで、用紙に書かれた筆跡を再現することができる。また、座標が特定できるので、利用者が用紙のどの領域に筆記しているのか、という情報をリアルタイムに取得することができる。
無線通信部102は、光や電波で外部機器と通信する機能を持つ。具体的には、IrDA(Infrared Data Association)やBluetooth(登録商標)などの無線技術を使って外部機器と通信を行う。
音声通知部103は、スピーカ1004を制御して音声を通知する。通知対象のデータが音声データの場合は、音声データを解析して、音声データの表現する周波数の音声をスピーカ1004から出力する。また、通知対象のデータは、音声データではなくテキストデータであってもよい。この場合、音声通知部103はTTS(Text To Speech)システムを用いてテキストデータを音声データに変換する。TTSシステムの具体例としては、音声データにSMAF(Synthetic Mobile Application Format(登録商標))を用いるHVScript(Humanoid Voice Script)や、テキストをマークアップして音声を表現するVoiceXMLなどがある。
LED通知部104は、LED1003を制御する。特定の条件下でLEDをオンにして利用者に注意を促すことができる。
ボタン制御部105は、ボタン1002を制御する。利用者によってボタン1002が押されたことを検知する。
データ管理部106は、メモリ1001に格納された図13のデジタルペンデータ110を管理する。メモリ1001にアクセスし、データの読み書きや更新を行うことができる。
領域判定部107は、デジタルペン100で筆記している座標がどの領域なのかを判定する。領域の判定にあたっては、デジタルペンデータ110にあらかじめ登録されている帳票共通データ130や、帳票管理サーバ200から取得する帳票定義データ114を利用する。帳票共通データ130には領域133が複数登録されているので、取得した座標が、帳票共通データ130のいずれかの領域133に含まれるかどうか、を判定する。
図13のデジタルペンデータ110は、筆記に係るデータを格納するもので、メモリ1001で保持されるデータである。
デジタルペンデータ110は、撮影回数111、現在のデータID112、筆記データ120、帳票共通データ130、帳票ID113、帳票定義データ114から構成される。
撮影回数111は、撮影回数を一時的にカウントするためのデータである。撮影頻度と領域判定頻度は異なるため、その頻度を調整するために使用される。
現在のデータID112は、現在デジタルペン100が位置している座標がどの領域にあるか、を記憶する情報である。
帳票共通データ130は、すべての帳票で共通の領域を定義したデータである。このデータはデジタルペン100にあらかじめ登録されており、データID131、領域属性132、領域133から構成される。
データID131は、領域を一意に識別するためのIDである。領域属性132は、図19に示されるように、その領域の属性を表わすデータである。領域属性132は、開始、終了、通知、未通知の種類がある。なお、帳票共通データ130ではすべての種類を使用できるが、帳票定義データ260では、通知しか使用することができない。各領域の意味は次の通りである。開始領域に筆記されると、デジタルペン100は帳票定義サーバ200から特定の帳票定義データ260を取得してくる。終了領域に筆記されると、デジタルペン100は、帳票管理サーバ200に筆記データ120を送信する。通知領域に筆記されると、デジタルペン100は利用者に音声通知を行う。未通知領域に筆記された場合は、デジタルペン100は何も処理を行わない。領域133は、帳票内の範囲を表わす情報である。X、Y、長さ、高さの情報で矩形を表現してもよいし、式を使って円を表現してもよい。
帳票ID113は、帳票を識別するためのIDである。
帳票定義データ114は、帳票特有の領域を定義したデータであり、帳票管理サーバ200から取得する。具体的には、帳票管理サーバ200の帳票定義DB207に格納される任意の帳票定義データ260を格納する。
次に、帳票管理サーバ200の処理を実行するための機能について説明する。
帳票管理サーバ200は、有線通信部201、文字認識部202、データチェック部203、帳票定義管理部204、帳票データ管理部205、領域計算部206、帳票定義DB207、帳票データDB208等を有する。
有線通信部201は、LAN900等のネットワークを介して外部機器と接続・通信を行うもので、TCP/IPやUDPなどの通信プロトコルに従って通信を制御する。これにより帳票管理サーバ200は、同じくLAN900に接続された通信中継ユニット300等と通信が可能となる。
文字認識部202は、デジタルペン100から送られてきた筆記データ120を帳票データ282に変換する。帳票定義データ260に各データ領域が定義されているので、その情報を使って筆記データから領域データ140を取り出す。取り出した領域データ140のストロークデータ142を既知の技術を使って画像データからテキストデータへと変換する。なお、ストロークデータ142には、座標の集合、例えばビットマップのような形式としてデータが保存される。
データチェック部203は、帳票データ282が正しいフォーマットかどうか帳票チェックデータ270を使って判定する。
帳票定義管理部204は、帳票定義DB207で帳票定義データ260を管理する。具体的には、帳票定義データ260の読み込み、書き込み、更新、削除などを行う。
帳票データ管理部205は、帳票データDB208で帳票データ282を管理する。具体的には、帳票データ282の読み込み、書き込み、更新、削除などを行う。
領域計算部206は、筆記データ120から領域データ140中のストロークデータ142を取得する。
図17の帳票定義DB207は、外部メモリ2011で管理される情報である。帳票定義DB207は、帳票ID250、帳票定義データ260、帳票チェックデータ270のセットから構成される。これらのセットが帳票のテンプレートの数分格納されている。帳票ID250は帳票テンプレートを識別するためのIDである。帳票定義データ260は、帳票の各領域を定義したデータである。帳票チェックデータ270は、帳票の各領域に含まれる値が満たすべき値を定義してデータである。
図18の帳票定義データ260には、データID261、領域属性132、領域263、通知状態264、通知データ265等が含まれる。データID261は、データを識別するためのIDである。データは、「名前」や「住所」などの情報の最小単位であり、帳票定義データ260、帳票チェックデータ270、帳票データ282などの各種データで扱われる。これら異なるデータ間で同じ情報を扱うためにデータIDを用いる。領域属性132は、その領域の属性を表わすデータである。なお、帳票定義データ260に含まれる領域属性は、開始や終了、未通知を定義することはできない。帳票定義データ260の領域属性は必ず「通知」であるものとする。領域263は、帳票内の範囲を表わす情報である。開始点のX座標、開始点のY座標、長さ(X軸方向の幅)、高さ(Y軸方向の高さ)の情報で矩形を表現してもよいし、式を使って円を表現してもよい。通知状態264は、通知データ265を利用者に通知したか否かを表わす情報である。「未」、「済」の情報で表わされる。なお、通知データ265のデフォルト値は「未」である。通知データ265は、利用者に音声通知するデータを表わす。このデータは音声データそのものであってもよいし、テキストデータであってもよい。どちらのデータであってもデジタルペン100の音声通知部103により適切に処理されて音声出力される。なお、通知状態264および通知データ265は、帳票管理サーバ200では直接使用されない。帳票定義データ260は、デジタルペンデータ110にコピーされ、デジタルペン100で使用される。
図20の帳票チェックデータ270には、データID271、必須項目272、チェック項目273等が含まれる。データID271は、データを識別するための一意な値である。必須項目272は、「必須」、「任意」の値が設定されており、値が必須かどうか、を意味する。チェック項目273は、その属性の値が満たすべき条件を意味する。例えば「数字のみ可」や「数字とハイフンのみ可」という条件が指定される。これらの値は、一般的な正規表現であってもよいし、データチェック部203が解釈できる独自の形式であってもよい。
図21の帳票データDB208は、外部メモリ2011で管理される情報であり、複数の帳票データ282を格納する。なお、帳票定義DB207で管理される情報は帳票のテンプレートであり、帳票データDB208で管理される情報は帳票テンプレートを使った実データである。
図21の帳票データDB208は、帳票データID280、帳票ID281、帳票データ282のセットから構成される。これらのセットが帳票データの数分格納される。帳票データID280は帳票データを識別するためのIDである。帳票ID281は、帳票定義データ260で管理される帳票テンプレート情報を特定するためのIDである。図22の帳票データ282は、帳票の実データであり、データID283、データ値284等から構成される。なお、図22の帳票データ282は、デジタルペン100で記入された文字を座標から算出した領域データ140に基づいて帳票サーバ200で管理されるデータである。
図25に示すように、紙帳票500は、紙に出力された帳票の一例を示した図である。
紙帳票500は、ID領域501、開始領域502、情報記入領域503、終了領域504等から構成される。なお、ID領域501、開始領域502、終了領域504は、すべての帳票で共通の領域であり、帳票共通データ130としてあらかじめ領域情報がデジタルペンデータ110に格納されている。つまり、帳票管理サーバ200と通信しなくても、デジタルペン100はこれらの領域を識別できる。一方、情報記入領域503に関しては、帳票特有の領域であるため、デジタルペン100は、帳票管理サーバ200から帳票定義データ260を取得しないと、領域を識別することができない。
ID領域501は、帳票IDを利用者が記入する領域である。あらかじめ記載されている帳票IDをID領域501に利用者が転記することで、デジタルペン100は帳票IDを認識することができる。なおここでは、デジタルペン100が帳票を識別する方法として、帳票IDを書き写す方法を提示したが、他の方法で帳票を識別してもよい。例えば、帳票毎にデジタルペン100を用意し、あらかじめ帳票定義データ260をデジタルペン100に記憶しておく方法が考えられる。また、帳票毎にユニークなドットパターンを定めておき、読み取ったドットパターンによって帳票IDを識別する方法も考えられる。
開始領域502は、デジタルペン100が帳票定義データ260を帳票管理サーバ200から取得するためのトリガとなる領域である。この領域に筆記されるとデジタルペン100は、帳票管理サーバ200にID領域に筆記された情報を送信する。これによりデジタルペン100は帳票管理サーバ200から帳票定義データ260を取得することができる。開始領域に筆記する例としては、レ点を記す方法などがある。
終了領域504は、デジタルペン100が帳票管理サーバ200に筆記データ120を送信し、帳票記入を終了するための領域である。終了領域に筆記する例としては、レ点を記す方法などがある。
次に、図8を参照しながら、本発明に係る筆記システム1の処理概要について説明する。図8は、筆記システム1の処理概要図である。
図8では、デジタルペン100と帳票管理サーバ200が直接通信を行っているが、前述したように、デジタルペン100が無線で通信中継ユニット300と通信を行い、その後、通信中継ユニット300が有線で帳票管理サーバ200と通信を行ってもよい。ここでは、通信中継ユニット300の中継は省略して説明する。
まず、利用者によって帳票IDが記入され(1−1)、開始領域にチェックが入れられると、デジタルペン100は記入された帳票IDを帳票管理サーバ200に送信する(1−2)。具体的には、開始領域にチェックが入れられると、デジタルペン100のプロセッサ1005がメモリ1001に記憶されているドットパターン配置と読み取ったドットパターンとを比較して開始領域にチェックがなされたことを検出する。開始領域にチェックがなされたことを検出すると、帳票IDの記入領域に記入された筆記データ(実際にデジタルペンで記入されたデータ。例えばビットマップデータやストロークデータ)を帳票サーバ200に送信する。なお、アノト技術によるアノトペーパーを用いれば、専用用紙のドットパターン配列がどの帳票と対応づいているかを一意に特定できるため、デジタルペン100のカメラ1009で読み取ったドットパターンからどの帳票であるかを一意に特定できる。この場合には、図8にあるように帳票IDの記入は不要となり、開始領域にデジタルペン100でチェックを入れるだけで、ドットパターンから特定された帳票(帳票ID)を帳票サーバ200に送信することができる。よって、帳票ID記入領域に帳票IDをユーザが記入することは必須要件ではない。また、開始領域にデジタルペン100でチェックを入れることで、プロセッサ1005がメモリ1001に記憶されている所定のアプリケーションプログラムを用いて開始領域のチェックを検出して、帳票IDの送信を行っているが、これに限るものではなく、開始領域にチェック後にボタン1002が押下されることにより、直前に読み取った記憶されている筆記データ(開始領域へのチェック)を帳票サーバ200へ送信するように構成してもよい。
帳票管理サーバ200は、帳票定義DB207の中から、帳票IDに一致する帳票定義データ260を検索し(1−3)、デジタルペン100に送信する(1−4)。
次に、利用者が情報記入欄にデジタルペン100で情報を記入すると、デジタルペン100はドットパターン13を読み取って記入した座標をアノト技術により瞬時に判断する。デジタルペン100は、帳票管理サーバ200から受信した帳票定義データ260(図18の通知データ265)を使って、利用者が記入した領域を判定し、その領域に応じた音声メッセージを流す(2−1)。なお、通知データ265は、音声データであり、プロセッサ1005は、メモリ1001に記憶されている所定のアプリケーションプログラムを用いて、音声データを再生することができ、スピーカ1004から音声メッセージが出力される。そして、情報記入欄にデジタルペン100で記入された筆記データは、メモリ1001に記憶されるものとする。
終了領域にチェックが入れられると、デジタルペン100は記憶していた筆記データ120を帳票管理サーバ200に送信する(3−1)。この処理もまた、終了領域にデジタルペン100でチェックを入れることで、プロセッサ1005がメモリ1001に記憶されている所定のアプリケーションプログラムを用いて終了領域のチェックを検出して、帳票IDの送信を行っている。しかし、これに限るものではなく、終了領域にチェック後にボタン1002が押下されることにより、直前に読み取った記憶されている筆記データ(終了領域へのチェック)を帳票サーバ200へ送信するように構成してもよい。
帳票管理サーバ200は、筆記データ120を受け付けて、画像データからテキストデータに変換し(3−2)、そのテキストデータがチェック条件に適合しているかどうかを確認する(3−3)。適合しない場合は、デジタルペン100にエラーを通知し、デジタルペン100は利用者にエラー情報を音声通知する。なお適合しない例としては、必須項目が記入されていなかったり、数字のみの項目にひらがなが記入されていたりする場合がある。チェック項目に適合した場合は、帳票管理サーバ200は帳票データ282を帳票データDB208に登録する(3−4)。
次に、図9、10、11、12、23、24を参照しながら、本発明に係る筆記システム1の詳細な処理について説明する。
図9は、筆記システム1の領域取得処理の一例を示すフローチャート、図10は、筆記システム1の開始処理の一例を示すフローチャート、図11は、筆記システム1の通知処理の一例を示すフローチャート、図12は、筆記システム1の終了処理の一例を示すフローチャート、図23は、エラーメッセージ290の一例を示す図、図24は、メッセージ291の一例を示す図である。
まず、図9を参照しながら、筆記システム1の領域取得処理について説明する。
図9では、デジタルペン100は、利用者の筆記状態を判定して筆記データを記憶したり、筆記された領域に応じた処理を行ったりする。
図9に示すように、デジタルペン100は、筆圧センサー(逗子省略)を用いて筆圧を検知する(ステップS100)。筆圧が検知できなければ、検知できるまで待機する。これは、筆記されていない時にカメラ撮影を行って、バッテリや記憶領域を無駄に消費してしまうことを防ぐためである。よって筆圧の検知有無によって筆記状態の確認を行っている。
デジタルペン100は、筆圧が検知できると、筆記データ120を記憶する(ステップS101)。なお、筆記データ120としては、タイムスタンプを取得して時刻121とし、カメラで撮影した画像からドットパターンを取得して座標122を割り出し、圧力センサから得られる情報をもとに筆圧123を取得する。
デジタルペン100は、撮影回数111が規定回数に達したかどうか、を判定する(ステップS102)。前述のとおり、デジタルペン100は筆圧を検知すると毎秒100回程度撮影を行っている。座標はその都度取得できるが、人間が筆記する速度を考えると撮影の都度領域を判定する必要はない。速記や文字ではない無意味な図形などの筆記においてはこの限りではないが、申請書や登録書に意味ある文字を書くことを考えると、毎秒100回判定したところで、その1/100秒の間で領域がかわることはあまりない。また、毎秒100回も領域判定を行っていると、プロセッサ1005にかなりの負荷を与えてしまう。よって撮影回数111がある一定数に達したときだけ領域判定を行うことで、処理パフォーマンスを向上させ、利用者が使いやすいシステムを実現している。
デジタルペン100は、撮影回数111が規定の回数に達していない場合は、撮影回数111をカウントアップする(ステップS103)。
デジタルペン100は、撮影回数111が規定の回数に達すると、領域判定を行う。例えば、毎秒100回撮影で、領域判定は毎秒2回行うとした場合は、規定回数は50回となる。この値はあらかじめ設定されているものとする。また、再度同じ頻度で領域判定を行うために、デジタルペン100は、撮影回数111が規定回数に達すると、撮影回数111をリセットする(ステップS104)。
デジタルペン100は、領域を判定するために、ステップS101で記憶した筆記データ120の座標122を元にデータIDの取得を行う。具体的には、まずあらかじめ登録されている帳票共通データ130の各領域に、現在の座標が含まれているかどうかを判定し、座標がいずれかの領域に含まれていればその領域が示すデータID131を取得する。どの領域にも現在の座標が含まれていなければ、帳票管理サーバ200から取得した帳票定義データ114の各領域に現在の座標が含まれているかどうかを判定し、座標がいずれかの領域に含まれていれば、その領域が示すデータID261を取得する。なお、帳票管理サーバ200から帳票定義データ114を取得していない場合、この判定は行わない。
デジタルペン100は、前段の処理にてデータIDが取得できたかどうか、を判定する(ステップS106)。データIDが取得できなかった場合、デジタルペン100は、現在のデータID112をリセットする(ステップS107)。一方、データIDが取得できた場合は、取得できたデータIDが現在のデータID112と同じかどうかを判定する(ステップS108)。この判定結果、同じであれば何も処理を行わずに筆圧検知を再度行う。一方、同じでなければデータIDを現在のデータID112として記憶する(ステップS109)。
現在のデータID112を記憶することで、ある領域に入った瞬間に音声通知を行い、その後領域を出るまでは音声通知をしない、ということが可能になる。現在のデータID112を記憶していないと、ある領域に筆記している間は同じ音声が流れ続けてしまい、利用者にとって不便になってしまうためである。
デジタルペン100は、領域属性の判定を行う(ステップS110)。ステップS105にて現在のデータID112を帳票共通データ130から取得した場合は、帳票共通データ130のデータID131に一致するデータの領域属性132を取得して判定する。ステップS105にて現在のデータID112を帳票定義データ114から取得した場合は、帳票定義データ260のデータID261に一致するデータの領域属性132を取得して判定する。
判定した領域属性が「開始」の場合、デジタルペン100は、図10に示す開始処理を行う(ステップS111)。
判定した領域属性が「通知」の場合、デジタルペン100は、図11に示す通知処理を行う(ステップS112)。
判定した領域属性が「終了」の場合、デジタルペン100は、図12に示す通知処理を行う(ステップS113)。
判定した領域属性が「未通知」の場合、デジタルペン100は、ステップS100に戻って再び筆圧検知を行う。
このように領域に応じて異なる処理を行うことで、利用者と様々な双方向コミュニケーションが図れるシステムを実現している。
次に、図10を参照しながら、筆記システム1の開始処理について説明する。
図10では、デジタルペン100が帳票管理サーバ200から帳票定義データ260を取得する。なお、実際の通信はデジタルペン100が無線で通信中継ユニット300と通信を行い、その後、通信中継ユニット300が有線で帳票管理サーバ200と通信を行う。ここでは、通信中継ユニット300の中継は省略して説明する。
図10に示すように、デジタルペン100は筆記データ120から帳票ID領域データを取得する(ステップS200)。筆記データ120は座標の集合なので、その集合の中から、帳票共通データ130のID領域で指定される領域の座標の集合を取得する。取得したデータは領域データ140として取得される。領域データ140の領域141には、筆記データ120から切り取った領域が格納され、領域データ140のストロークデータ142には、筆記データ120から切り取った領域にある座標の集合が画像データとして格納される。
デジタルペン100は、前段で取得した領域データ140のストロークデータ142の判定を行う(ステップS201)。ストロークデータ142として取得された画像データが空白の場合、ID領域に帳票IDが記入されていないとみなして、帳票ID領域データ取得エラーを通知する(ステップS202)。具体的には、図23に示すエラーメッセージのERR01のメッセージを選択し、「帳票IDが記入されていません。」というメッセージを音声通知する。例えばこの音声通知がなされる場合としては、帳票ID領域に何も記載しないまま開始領域に筆記を行った場合が考えられる。このように利用者が正しくない手順で筆記を行ったときには、音声通知を行うことで動的に喚起を促すことができる。
ステップS201の判断結果、領域データ140に何らかの文字が筆記されていると認められた場合、つまり領域内に筆記の座標データが存在する場合、デジタルペン100は、領域データ140を帳票管理サーバ200に送信する(ステップS203)。
また、前述したように、アノト技術によるアノトペーパーを用いれば、専用用紙のドットパターン配列がどの帳票と対応づいているかを一意に特定できる。そのため、デジタルペン100のカメラ1009で読み取ったドットパターンからどの帳票であるかを一意に特定してもよい。この場合には、帳票ID領域データは不要となり、開始領域にデジタルペン100でチェックを入れるだけで、ドットパターンから特定された帳票(帳票ID)を帳票サーバ200に送信することができる。よって、帳票ID記入領域に帳票IDをユーザが記入することによるステップS200は不要となり、この代わりに、読み取ったドットパターンからどの帳票であるかを一意に特定する処理が必要となる。なお、以下の説明では、帳票ID領域の領域データを用いて説明するが、カメラ1009で読み取ったドットパターンから一意に特定される帳票IDをこの帳票ID領域データとしてもよく、発明はいずれか一方の手法に限定されない。また、ステップS201とステップS203の間に、ボタン1002が押下されたかを判定するステップを設けてもよい。
帳票管理サーバ200は、デジタルペン100から送信された帳票ID領域の領域データ140を受け取り(ステップS204)、その領域データ140に含まれるストロークデータ142を解析する(ステップS205)。具体的には、ストロークデータ142は例えばビットマップ形式のような座標の集合の画像データとして記述されているので、それを既知の技術によって解析し、テキストデータに変換する。なお、デジタルペン100から一意に特定された帳票IDが送信されてくる場合には、ステップS204の処理は不要となる。
帳票管理サーバ200は、帳票定義DB207の中から帳票定義データ260を検索する(ステップS206)。なお、検索の条件としては、帳票ID250と前段で取得したテキストデータが一致することとする。
帳票管理サーバ200は、帳票定義DB207に指定されたテキストデータに一致する帳票定義データ260が見つかったかどうか、を判定する(ステップS207)。
ステップS207の判断結果、帳票定義データ260が見つからなかった場合、帳票管理サーバ200は、帳票定義データ取得エラーをデジタルペン100に送信する(ステップS208)。
デジタルペン100は、帳票定義データ取得エラーを受け付け(ステップS209)、帳票定義データ取得エラーを通知する(ステップS210)。具体的には、図23に示すエラーメッセージのERR02のメッセージを選択し、「帳票定義データが見つかりません。」というメッセージを音声通知する。例えばこの音声通知がなされる場合としては、帳票ID領域に不正な帳票IDを記載していたり、帳票IDを転記間違いしていたりすることが考えられる。このように利用者が正しくない手順で筆記を行ったときには、音声通知を行うことで動的に喚起を促すことができる。
ステップS207の判断結果、帳票定義データ260が見つかった場合、帳票管理サーバ200は、見つかった帳票定義データ260をデジタルペン100に送信する(ステップS211)。
デジタルペン100は、帳票管理サーバ200から帳票定義データ260を受け付け(ステップS212)、デジタルペンデータ110の帳票定義データ114として格納する(ステップS213)。なお、このときすでに格納されている帳票定義データ114が存在した場合はそのデータを上書きする。
デジタルペン100は、帳票IDをデジタルペンデータ110に帳票ID113として記憶(ステップS214)し、これまで記憶していた筆記データ120を初期化する(ステップS215)。
次に、図11を参照しながら、筆記システム1の通知処理について説明する。図11では、デジタルペン100は、筆記された領域に応じた音声通知を行う。
図11に示すように、デジタルペン100は、通知状態の取得を行う(ステップS300)。具体的には、デジタルペンデータ110の帳票定義データ114から、デジタルペンデータ110の現在のデータID112に一致するデータID261を持った行を取得し、その通知状態264を取得する。
デジタルペン100は、取得した通知状態264をチェックする(ステップS301)。
ステップS301の判定結果、通知状態264が「未」であった場合、デジタルペン100は、通知データ265の通知を行い(ステップS302)、通知状態264を「済」にする(ステップS303)。通知データ265の通知処理は、具体的には音声データである通知データ265を、プロセッサ1005が所定のアプリケーションプログラムに従って音声再生し、スピーカ1004で音声出力する処理である。
ステップS301の判定結果、通知状態264が「済」であった場合、デジタルペン100は、通知データ265による音声再生を保留して、LED1003を点灯させる(ステップS304)。
デジタルペン100は、ボタン1002が押されたかどうか、を判定し(ステップS305)、ボタン1002が押されていればステップS302へ進み、音声通知を行う。
これにより、利用者の筆記状態に応じて必要な注意喚起を動的に行うことができ、より利用者が使いやすいシステムを実現している。
デジタルペン100は、ボタン1002が押されていなければ、所定時間経過したかどうか判定し(ステップS306)、所定時間経過していなければ、再びボタン1002が押されたかどうかの判定を行う。
ここで、通知状態264が「済」の場合に、音声通知を開始せずにLED表示を行う理由は以下である。通知した音声データが毎回再生されるのは利用者にとっては煩わしいだけで、利用しやすいシステムとは言えない。しかし、たまたま間違って他の領域に筆記してしまった場合や、音声通知を聞き逃した場合はもう一度音声通知を聞きたい、と思うことがある。そこで、音声通知した領域に関してはLEDを点灯し、一定時間内にボタンが押されれば、もう一度音声通知を再生紙、押されなければそのまま処理を続行する、とすることで、簡便性と利便性と保った使いやすいシステムを実現している。
次に、図12を参照しながら、筆記システム1の終了処理について説明する。
図12では、デジタルペン100は、帳票管理サーバ200へ筆記データ120を送信する。なお、実際の通信はデジタルペン100が無線で通信中継ユニット300と通信を行い、その後、通信中継ユニット300が有線で帳票管理サーバ200と通信を行う。ここでは、通信中継ユニット300の中継は省略して説明する。
図12に示すように、デジタルペン100は、デジタルペンデータ110に記憶している帳票ID113と筆記データ120を帳票管理サーバ200に送信する(ステップS400)。
帳票管理サーバ200は、デジタルペン100から帳票ID113と筆記データ120を受け付け(ステップS401)、受け取った帳票ID113をキーにして、帳票定義DB207から帳票定義データ260と帳票チェックデータ270を取得する(ステップS402)。
帳票管理サーバ200は、各領域データ140を取得する(ステップS403)。具体的には、まず帳票定義データ260で定義されている各領域263を筆記データ120から領域データ140として取り出す。
帳票管理サーバ200は、各領域データ140を解析して帳票データ282を取得する(ステップS404)。具体的には、前段で取得した各領域データ140のストロークデータ142を既知の技術を使って画像データからテキストデータへと変換する。このテキストデータを帳票データ282のデータ値281とする。また、帳票データ282のデータID281は、領域取り出しに使用した帳票定義データ260のデータID261を使用する。
帳票管理サーバ200は、帳票チェックデータ270を使って帳票データ282をチェックする(ステップS405)。具体的にはまず帳票チェックデータ270のデータID271と帳票データ282のデータID281が一致する行を取り出す。ここでデータ値282のチェックは2段階で行われる。最初に必須項目272のチェックを行う。帳票チェックデータ270の必須項目272が「任意」であれば何もチェックしない。一方、「必須」であればデータ値282に何らかのデータがあるかどうかをチェックする。次にフォーマットのチェックを行う。チェック項目273にチェック内容が存在しなければ何もチェックしない。一方、何らかのチェック内容があればデータ値282がそのチェック内容を満たしているかどうか、をチェックする。例えば、このチェック内容は数字のみ、や特定の記号を許可しない、というような内容が考えられる。またチェック内容の記述方法としては正規表現などが考えられる。
ステップS405の判定で、チェックにひっかかった場合、帳票管理サーバ200は、デジタルペン100に帳票データチェックエラーを送信する(ステップS406)。
デジタルペン100は、帳票管理サーバ200から帳票データチェックエラーを受け付け(ステップS407)、帳票データチェックエラーを通知する(ステップS408)。具体的には、図23に示すエラーメッセージのERR03もしくはERR04のメッセージを選択し、「必須項目が記入されていません。」もしくは「記入された項目が不正です。」というメッセージを音声通知する。例えばこの音声通知がなされる場合としては、必須項目の氏名が記入されていなかったり、数字とハイフン以外使えない電話番号の項目に誤って住所が記入されていたりした場合が考えられる。
従来、このようなケースでは、利用者が記入時にはチェックすることができなかった。利用者が記入した申請書を送り、チェック担当者がチェックするまで誤りがわからなかったので、登録までに手間がかかっていた。上記のように、動的にチェックを行うことで、利用者の際記入の手間やチェック担当者のチェックの手間を省くことができる。また、再記入や修正記入のやりとりに係る時間を削減し、登録までの時間を短縮することができる。
ステップS405の判定で、チェックが問題なかった場合、帳票管理サーバ200は帳票データ282を帳票データDB208に登録する(ステップS409)。なお、このとき帳票データID280は自動で採番し、一意の値を割り振る。また、帳票ID281は、ステップS401でデジタルペン100から受け付けた帳票IDを使用する。この処理によって、利用者が紙に記入した内容がデータとして登録され、再利用することが可能になる。
帳票管理サーバ200は、デジタルペン100に完了通知を送信する(ステップS410)。
デジタルペン100は、帳票管理サーバ200から完了通知を受け付け(ステップS411)、利用者に完了通知を行う(ステップS412)。具体的には、図24に示すメッセージのMSG01のメッセージを選択し、「データ登録が完了しました。」というメッセージを音声通知する。
デジタルペン100は、デジタルペンデータ110の各種データの初期化を行う(ステップS413)。具体的には、帳票定義データ114、帳票ID113、筆記データ120を初期化する。
なお、デジタルペン100に文字認識部を具備させて、さらにデジタルペン100に帳票定義データ260を受信する際に帳票チェックデータ270も受信させるようにすることで、ステップS403〜ステップS406の処理をデジタルペン100で処理するようにしてもよい。
次に本発明に係る筆記システム2の好適な実施形態について詳細に説明する。
筆記システム1では、利用者が開始領域や終了領域に筆記することで、デジタルペン100と帳票管理サーバ200との通信が行われる。なお、特定の領域に対する音声通知は、帳票管理サーバ200から受信した帳票定義データ260に従って行われる。
筆記システム2では、利用者が複合機400にデジタルペン100をかざすことで、複合機400を介してデジタルペン100と帳票管理サーバとが通信を行う。なお、特定の領域に対する音声通知は、帳票管理サーバ200から受信した帳票定義データ260に従って行われる。
このように、筆記システム2は、筆記システム1と同様に、特定の領域に対する音声通知を提供するものであるが、筆記システム1とは異なって複合機400と連携することで、より利便性の高いシステムを提供するものである。具体的には、以下のような利点がある。
複合機400の開始画面で帳票を選択し、デジタルペン100を複合機400にかざすことで申請書の印刷が行えるので、あらかじめ申請書を用意する必要がない。
また、複合機400の開始画面で帳票を選択し、デジタルペン100を複合機400にかざすことで、複合機400を介して帳票管理サーバ200から帳票定義データ260を受信するので、帳票IDを転記したり、開始領域に筆記したりする必要がないので、利用者にはわかりやすい。
また、複合機400の終了画面で、デジタルペン100を複合機400にかざすことで、複合機400を介して帳票管理サーバ200にデータを送ることができる。この際に複合機400で印刷を行うことで、データ送信と同時に控えを印刷することができ、より利便性の高いシステムを提供できる。
さらに帳票に開始領域や終了領域を印字しなくてよいので、帳票のレイアウトの自由度が高まる。さらに開始領域や終了領域が不要なのでデジタルペンデータ110に帳票共通データ130を備える必要がないので、デジタルペン100のメモリ1001をより多く使うことができるので、より多くの筆記データ120を記憶したり、複雑な帳票定義データ260を記憶したりすることができる。
以下、図26〜37を参照しながら実施形態2について説明する。
なお、筆記システム1の図1は、図26に置き換える。筆記システム1の図7は、図28に置き換える。筆記システム1の図8は、図29に置き換える。筆記システム1の図9は、図30に置き換える。筆記システム1の図10は、図31に置き換える。筆記システム1の図12は、図32に置き換える。筆記システム1の図13は、図34に置き換える。筆記システム1の図17は、図35に置き換える。筆記システム1の図25は、図37に置き換えることで実現可能である。
その他の図面に関しては、筆記システム1と筆記システム2では同等のものとし、説明は省略する。
次に、図26を参照しながら、筆記システム2の構成について説明する。
図26は、本発明に係る筆記システム2の構成の一例を示す図である。
筆記システム1の図1では、通信中継サーバ300が存在するが、筆記システム2の図26では、通信中継サーバ300が存在しないかわりに複合機400が存在する。その他の構成物については、筆記システム1と筆記システム2では同等のものとし、説明は省略する。
図26に示すように、例えば、1又は複数のデジタルペン100(例えばユーザに1台ずつ)、1又は複数の複合機400(例えばフロアに1台ずつ)が無線通信によって接続される。また、複合機400、1又は複数の帳票管理サーバ200(例えば拠点毎に設置)がLAN(Local Area Network)900によって接続される。
複合機400は、プリンタ、スキャナ、コピー、ファクシミリ等の機能を有する画像形成装置である。また、カードリーダ3040で読み取られたカードIDに応じた利用権限に従って、プリンタ、スキャナ、コピー、ファクシミリの各機能のユーザ利用を制限することが可能である。
次に、図27を参照しながら、複合機400について説明する。
図27は、複合機400のハードウエア構成を示す図である。
図27に示すように、複合機400は、コントローラユニット3020と、操作部3030と、カードリーダ3040と、プリンタ3050と、スキャナ3060の各ハードウエア構成を有して構成されている。
また、コントローラユニット3020は、CPU3001と、RAM3002と、ROM3003と、ハードディスクドライブ(HDD)3004と、ネットワークインタフェース(Network I/F)3005と、モデム(MODEM)3006と、操作部インタフェース(操作部I/F)3007と、イメージバスインタフェース(IMAGE BUS I/F)3008と、外部インタフェース(外部I/F)3009と、システムバス3010と、ラスタイメージプロセッサ(RIP)3011と、プリンタインタフェース(プリンタI/F)3012と、スキャナインタフェース(スキャナI/F)3013と、画像処理部3014と、画像バス3015、無線通信I/F3016の各ハードウエア構成を有して構成されている。
コントローラユニット3020は、画像入力デバイスとして機能するスキャナ3060や、画像出力デバイスとして機能するプリンタ3050と接続する一方、ネットワーク110や、例えばPSTN(Public Switched Telephone Network)またはISDN(Integrated Services Digital Network)等の公衆回線網(WAN)と接続することで、画像データやデバイス情報の入出力を行う。
CPU3001は、システムバス3010及び画像バス3015に接続される各デバイスを統括的に制御するプロセッサである。
RAM3002は、CPU3001が動作するためのワークメモリであり、また、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリの機能も有する。例えば、カードリーダ3040で読み取ったカードIDなどが記憶される。
ROM3003は、システムのブートプログラムや各種の制御プログラムが格納されている。HDD3004は、システムを制御するための各種のプログラム及び画像データ等を格納する。なお、ROM3003またはHDD3004には、図36に示す帳票情報406が格納されている。なお、HDD3004は情報を永続的に記憶するための媒体であって、その形態をHDDに限定するものではない。例えば、SSD(Solid State Drive)などの媒体であってもよい。
Network I/F3005は、LAN900に接続し、データ入出力を行う。MODEM3006は、公衆回線網に接続し、FAXにおける送受信等のデータの入出力を行う。
操作部I/F3007は、ユーザインタフェース(UI)である操作部3030におけるインタフェースであり、操作部3030に表示する画像データを操作部3030に対して出力する。また、操作部I/F3007は、本システムのユーザが操作部3030から入力した情報(例えば、ユーザ情報等)をCPU3001に伝える役割をする。なお、操作部3030は、キーボードに相当するタッチパネルを有する表示部を備え、当該表示部に表示されたキーボードのボタンを、ユーザが押下(指等でタッチ)することにより、各種の指示を行うことができる。
IMAGE BUS I/F3008は、システムバス3010と、画像データを高速で転送する画像バス3015とを接続し、データ構造を変換するバスブリッジである。
外部I/F3009は、USB、IEEE1394、プリンタポート、RS−232C等の外部入力を受け付けるインタフェースである。例えば、外部I/F3009には、ICカード認証で必要となるICカードの情報を読み取るためのカードリーダ3040が接続される。そして、CPU3001は、この外部I/F3009を介してカードリーダ3040によるICカードからの情報の読み取りを制御し、当該ICカードから読み取られた情報を取得可能となっている。
無線通信I/F3016は、光や電波による無線での通信を行うことで、外部機器と接続・通信することができる。無線通信I/Fコントローラ2012は、例えば、IrDA(Infrared Data Association)通信、Bluetooth(登録商標)通信、IEEE802.11規格を用いた通信等が可能である。
以上の3001〜3009、3016に示すデバイスがシステムバス3010上に配置され、相互に通信可能となっている。
RIP3011は、例えば、PDLコードや、XPSデータ内のXML形式のページデータ等のベクトルデータをビットマップイメージに展開する。
プリンタI/F3012は、プリンタ3050とコントローラユニット3020とを接続し、画像データの同期系/非同期系の変換を行う。
スキャナI/F3013は、スキャナ3060とコントローラユニット3020とを接続し、画像データの同期系/非同期系の変換を行う。
画像処理部3014は、入力画像データに対して、補正処理、加工処理、編集処理を行ったり、プリント出力画像データに対して、プリンタの補正処理、解像度変換処理等を行ったりする。また、画像処理部3014は、これらの処理に加えて、画像データの回転処理や、多値画像データに対してはJPEG、2値画像データに対してはJBIG、MMR、MH等の圧縮伸張処理を行う。
以上の3008、3011〜3014に示すデバイスが画像バス3015上に配置され、相互に通信可能となっている。画像バス3015は、例えば、PCI(Peripheral Component Interconnect)バスまたはIEEE1394で構成されている。
操作部3030は、具体的に、LCD(Liquid Crystal Display)表示部を有し、当該LCD表示部上にタッチパネルシートが貼られており、本システムの操作画面を表示するとともに、表示した操作画面のキー(ボタン)が押されると、その位置情報が操作部I/F3007を介してCPU3001に伝えられる。また、操作部3030は、各種の操作キーとして、例えば、スタートキー、ストップキー、IDキー、リセットキー等のキーボード機能を備える。
ここで、操作部3030のスタートキーは、例えば、原稿画像の読み取り動作を開始する際などに操作される。このスタートキーの中央部には、例えば、緑と赤の2色のLED(Light Emitting Diode)があり、その各色の発光によってスタートキーが使える状態にあるかどうかが示される。また、操作部3030のストップキーは、例えば、稼働中の動作を止める際などに操作される。また、操作部3030のIDキーは、例えば、ユーザ(使用者)のユーザIDを入力する際などに操作される。また、操作部3030のリセットキーは、例えば、操作部3030による設定を初期化する際などに操作される。
カードリーダ3040は、CPU3001からの制御により、認証カードに相当するICカード(例えば、ソニー(登録商標)社のフェリカ(FeliCa)(登録商標))内に記憶されているユーザ識別情報を読み取るものである。カードリーダ3040で読み取られたユーザ識別情報は、外部I/F3009を介してCPU3001へ通知される。
プリンタ3050は、例えば、ラスタイメージデータを用紙上に画像として変換するものである。その変換方式としては、感光体ドラムや感光体ベルトを用いた電子写真方式や、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの変換方式を用いても構わない。プリンタ3050のプリント動作の起動は、CPU3001からの指示によって開始される。なお、プリンタ3050には、異なる用紙のサイズまたは異なる用紙の向きを選択できるように複数の給紙段が構成されており、それぞれの給紙段に対応した用紙カセットが設けられている。
スキャナ3060は、原稿となる紙上の画像を照明し、CCD(Charge Coupled Device)ラインセンサを用いて原稿を走査することで、原稿の画像をラスタイメージデータとして電気信号に変換する。原稿用紙は原稿フィーダのトレイにセットされ、複合機400のユーザが操作部3030から読み取り起動指示を行うことにより、CPU3001がスキャナ3060に指示を与え、フィーダは、原稿用紙を1枚ずつフィードして原稿の画像の読み取り動作を行う。
以上のような構成によって、複合機400は、スキャナ3060から読み込んだ画像データをLAN900上に送信したり、LAN900から受信した印刷データをプリンタ3050で印刷出力したりすることができる。また、複合機400は、スキャナ3060から読み込んだ画像データをMODEM3006から公衆回線網上にFAX送信したり、公衆回線網からFAX受信した画像データをプリンタ3050で印刷出力したりすることができる。
次に、図28、33、34、35、36、37を参照しながら、筆記システム2の機能と利用するデータについて説明する。
図28は、本発明に係る筆記システム2の機能構成を示すブロック図、図33は、複合機400の操作部3030に表示する画面の一例を示すイメージ図、図34は、筆記システム2のデジタルペンデータ110の一例を示す図、図35は、筆記システム2の帳票定義DB207の一例を示す図、図36は、筆記システム2の帳票情報406の一例を示す図、図37は、筆記システム2の紙に出力された帳票の一例を示す図である。
まず、デジタルペン100の処理を実行するための機能について説明する。
デジタルペン100は、筆記記憶部101、無線通信部102、音声通知部103、LED通知部104、ボタン制御部105、データ管理部106、領域判定部107、デジタルペンデータ110等を有する。
なお、筆記記憶部101、無線通信部102、音声通知部103、LED通知部104、ボタン制御部105、データ管理部106、領域判定部107は、筆記システム1と同じであるため説明は省略する。
デジタルペンデータ110は、筆記システム1と異なり、帳票共通データ130を持たない。これは、開始処理や終了処理を、複合機400を介して行うため、帳票に開始領域や終了領域を持つ必要がないためである。
次に、帳票管理サーバ200の処理を実行するための機能について説明する。
帳票管理サーバ200は、有線通信部201、文字認識部202、データチェック部203、帳票定義管理部204、帳票データ管理部205、領域計算部206、帳票定義DB207、帳票データDB208、プリンタドライバ部209等を有する。
なお、有線通信部201、文字認識部202、データチェック部203、帳票定義管理部204、帳票データ管理部205、領域計算部206、帳票データDB208は、筆記システム1と同じであるため、説明は省略する。
帳票定義DB207は、筆記システム1と異なり、帳票レイアウト295を有する。帳票レイアウト295は、紙に帳票レイアウトを出力するためのデータである。言い換えると図案12の電子データである。例えば、図37に示す帳票例のようなレイアウトをベクターデータやテキストデータとして保持している。
プリンタドライバ部209は、アプリケーションが生成した画像データを複合機400で印刷可能なページ記述言語(PDL)データに変換する。例えば、帳票レイアウト295をPDLデータに変換したりする。
次に、複合機400の処理を実行するための機能について説明する。
複合機400は、無線通信部401、有線通信部402、画面制御部403、帳票情報管理部404、印刷部405、帳票情報406等を有する。
無線通信部401は、光や電波で外部機器と通信する機能を持つ。具体的には、IrDA(Infrared Data Association)やBluetooth(登録商標)などの無線技術を使って外部機器と通信を行う。これにより、同じく無線通信機能を有するデジタルペン100と通信することができる。
有線通信部402は、LAN900等のネットワークを介して外部機器と接続・通信を行うもので、TCP/IPやUDPなどの通信プロトコルに従って通信を制御する。これにより複合機400は、同じくLAN900に接続された帳票管理サーバ200等と通信が可能となる。
画面制御部403は、複合機400の操作部3030にユーザが複合機400を操作するための画面を表示するためのものである。図33に示すように、初期画面4000、開始画面4100、終了画面4200、ダイアログ4300などの画面を表示する。
初期画面4000は、コピーボタン4001、スキャンボタン4002、プリントボタン4003、デジタルペンボタン4004、開始ボタン4005、終了ボタン4006等から構成される。コピーボタン4001、スキャンボタン4002、プリントボタン4003、デジタルペンボタン4004は各機能のメニューボタンになっており、すべての画面で共通に表示されるものである。これらのボタンをタッチすると、それぞれの機能画面へ遷移する。また、初期画面4000は、デジタルペン機能の初期画面であるため、コピー、スキャン、プリントの各画面からデジタルペン画面へ遷移した際に最初に表示される画面となる。開始ボタン4005にタッチすると、開始画面4100に遷移し、終了ボタン4006にタッチすると、終了画面4200に遷移する。
開始画面4100は、戻るボタン4101、帳票ボタン4102等から構成される。戻るボタン4101にタッチすると初期画面4000へ遷移する。帳票ボタン4102は、1または複数表示される。帳票ボタン4102は、帳票情報406に格納されている帳票の数分表示される。なお、デジタルペン100が複合機400にかざされている状態で帳票ボタン4102がタッチされると、複合機400は開始処理を行う。デジタルペン100がかざされていない状態で帳票ボタン4102がタッチされた場合、ダイアログ4300を表示され「デジタルペンをかざして再度帳票を選択してください。」というメッセージが表示される。
終了画面4200は、戻るボタン4201等から構成される。戻るボタン4201にタッチすると初期画面4000へ遷移する。なお、終了画面4200が表示されているときにデジタルペン100が複合機400にかざされると、複合機400は終了処理を行う。
ダイアログ4300は、メッセージ4301、OKボタン4302等から構成される。ダイアログ4300は単体で画面として成立するものではなく、初期画面4000、開始画面4100、終了画面4200にポップアップで表示されるものであり、利用者になんらかの注意喚起を促すために使用される。メッセージ4301には、利用者に伝えたいメッセージが表示される。また、OKボタン4302をタッチすることで、ダイアログ4300を閉じることができる。図33の例では、「必須項目が記入されていません。」とメッセージ表示されているが、これに限るものではなく、前述したように、「デジタルペンをかざして再度帳票を選択してください。」というメッセージが表示されることもある。
帳票情報管理部404は、HDD3004に格納された帳票情報406を管理する。HDD3004にアクセスし、データの読み書きや更新を行うことができる。
印刷部405は、複合機400のプリンタ3050を制御するためのものである。指定された印刷データ解析してビットマップ画像に変換し、既知の印刷技術により用紙等のメディアに印刷を行う。
帳票情報406は、帳票ID410、帳票名411のセットを1又は複数管理している。帳票ID410は、帳票管理サーバ200の帳票定義DB207で管理されている帳票を特定するためのIDである。帳票名411は、複合機400の画面に表示するための名称である。具体的には、開始画面4100の帳票ボタン4102の名称として用いられる。なお、帳票情報406はあらかじめ管理者によって複合機400に設定されているものとする。
図37に示すように、紙帳票500は、筆記システム2における紙に出力された帳票の一例を示した図である。
紙帳票500は、情報記入領域503等から構成される。筆記システム1と異なり、ID領域501、開始領域502、終了領域504は持たない。これは、複合機400を介して開始処理、終了処理を行うためである。よって、帳票に開始領域や終了領域のような帳票共通領域を持つ必要がない。そのため、帳票レイアウトの自由度が上がるというメリットがある。
次に、図29を参照しながら、本発明に係る筆記システム2の処理概要について説明する。
図29は、筆記システム2の処理概要図である。
まず、利用者によって複合機400の開始画面4100上の帳票が選択されると(1−1)、複合機400は選択された帳票の帳票IDを帳票管理サーバ200に送信する(1−2)。
帳票管理サーバ200は、帳票定義DB207の中から、帳票IDに一致する帳票定義データ260を検索し(1−3)、複合機400に送信する(1−4)。
複合機400は、利用者によって複合機400と無線通信可能な状態にされたデジタルペン100に対して、帳票定義データ260を送信する(1−5)。
複合機400は、帳票管理サーバ200から帳票レイアウト295を取得し、それを印刷する(1−6)。
利用者が用紙に記入すると、デジタルペン100はカメラ1009を用いてドットパターン13を読み取って記入した座標を、アノト技術を用いて判断する。デジタルペン100は、帳票管理サーバ200から受信した帳票定義データ260を使って、利用者が記入しようとした領域を判定し、その領域に応じた音声メッセージを流す(2−1)。
複合機400の終了画面4200が表示された状態で、デジタルペン100がかざされると、デジタルペン100は記憶していた筆記データ120を複合機400に送信する(3−1)。なお、デジタルペン100がかざされることで通信可能な場合はこの処理となるが、トリガーとしては、デジタルペン100のボタン1002が押下されることで、デジタルペン100と複合機400が通信を開始して筆記データ120を送信してもよい。
複合機400は、筆記データ120を受け付けて、帳票管理サーバ200に送信する(3−2)。
帳票管理サーバ200は、筆記データ120を受け付けて、画像データからテキストデータに変換し(3−3)、そのテキストデータがチェック条件に適合しているかどうかを確認する(3−4)。適合しない場合は、複合機400にエラーを通知し、複合機400はダイアログ4300を表示してエラーを通知する。なお適合しない例としては、必須項目が記入されていなかったり、数字のみの項目にひらがなが記入されていたりする場合がある。チェック項目に適合した場合は、帳票管理サーバ200は帳票データ282を帳票データDB208に登録する(3−5)。
複合機400は、帳票管理サーバ200から取得した帳票レイアウトと帳票データを合成して控えとして印刷する(3−6)。
次に、図30、31、32を参照しながら、本発明に係る筆記システム2の詳細な処理について説明する。
図30は、筆記システム2の領域取得処理の一例を示すフローチャート、図31は、筆記システム2の開始処理の一例を示すフローチャート、図32は、筆記システム1の終了処理の一例を示すフローチャートである。
なお、通知処理については筆記システム1と筆記システム2とは同じ処理手順のため説明を省略する。また、筆記システム1では、処理の順番として領域取得処理を行ってから開始処理を行っていた。しかし、筆記システム2では、開始処理を行ってから、領域取得処理を行う。
まず、図30を参照しながら、筆記システム2の領域取得処理について説明する。
図30では、デジタルペン100は、利用者の筆記状態を判定して筆記データを記憶したり、筆記された領域に応じた処理を行ったりする。
筆記システム1との違いは、ステップS110、ステップS111、ステップS112が存在しないことである。これは、これは、開始処理や終了処理を、複合機400を介して行うため、帳票に開始領域や終了領域を持つ必要がないためである。
なお、その他のステップに関しては、筆記システム1と同等の処理のため説明は省略する。
次に、図31を参照しながら、筆記システム2の開始処理について説明する。
図31では、複合機400は帳票管理サーバ200と通信し、複合機400の画面で選択された帳票に一致する帳票定義データ260を取得する。また、複合機400は、取得した帳票定義データ260をデジタルペン100に送信し、同時に帳票レイアウトを印刷する。なお、開始処理の開始時点では、複合機400の開始画面4100で、帳票ボタン4102が押下された状態であることとする。
なお、ステップS206〜S208、ステップS211〜S215は筆記システム1と同等なため説明は省略する。
図31に示すように、複合機400はデジタルペン100と通信開始されたかどうかを判定する(ステップS250)。具体的には、Bluetooth(登録商標)などの無線通信手段を用いて、複合機400とデジタルペン100が互いに通信を確立し、互いを認識した状態に入っていると、通信開始されたと判断する。
ステップS250の判定結果、通信開始されたと判断した場合、複合機400は選択されている帳票IDを取得する(ステップS251)。なお、帳票ボタン4102には、帳票情報406の帳票名411が割り当てられている。よって、複合機400は、選択されている帳票ボタン4102からボタンの名称を取り出し、帳票情報406から一致する帳票名411を検索し、それと対応する帳票ID410を取得する。
複合機400は、帳票IDを帳票管理サーバ200に送信する(ステップS252)。
帳票管理サーバ200は、複合機400から帳票IDを受け付ける(ステップS253)。
複合機400は、帳票管理サーバ200から帳票定義データ取得エラーを受け付け(ステップS254)、エラーを通知する(ステップS255)。具体的には、開始画面4100にダイアログ4300を表示する。このときダイアログ4300のメッセージ4301に図23に示すエラーメッセージからERR02を選択し、「帳票定義データが見つかりません。」と表示する。
なお、このエラーは通常の運用で発生することはほとんどない。このエラーが発生するのは、管理者があらかじめ登録した帳票情報406と、帳票管理サーバ200の帳票定義DB207との不整合が起こっている場合である。本実施例はこのような管理不備があった場合でもシステムが安全に動くように構成されている。
複合機400は、帳票管理サーバ200から帳票定義データ260を受け付け(ステップS256)、無線で通信可能な状態になっているデジタルペン100に帳票定義データ260を送信する(ステップS257)。
デジタルペン100は、帳票定義データ260の受信が完了したことを複合機400に通知する(ステップS258)。
複合機400は、デジタルペン100から受信完了通知を受け付け(ステップS259)、帳票管理サーバ200に印刷要求を発行する(ステップS260)。
このとき、ステップS252で使った帳票IDも送信する。
帳票管理サーバ200は、複合機400から帳票IDとともに印刷要求を受け付け(ステップS261)、帳票レイアウトを取得する(ステップS262)。具体的には、帳票管理サーバ200は、帳票定義DB207から帳票IDをキーにして帳票レイアウト295を検索する。
帳票管理サーバ200は、複合機400に対して帳票レイアウト295の印刷指示をする(ステップS263)。具体的には、帳票管理サーバ200は、プリンタドライバ部209を利用して、帳票レイアウト295をPDLに変換し、RAWやLPR(Line PRinter daemon)などの印刷プロトコルを使って、複合機400に送信する。
複合機400は、帳票管理サーバ200から印刷指示を受け付けて、帳票レイアウト295を既知の技術を用いて、用紙などのメディアに印刷する(ステップS264)。なお、このときドットパターン13も同時に印刷する。または、あらかじめドットパターン13を印刷した用紙を用意しておき、その用紙に対して帳票レイアウト295を印刷してもよい。
このように、デジタルペン100を複合機400にかざすだけで所望の帳票用紙を印刷することができる。よって、あらかじめ用紙を用意しておく必要がないので、管理コストを削減することができる。
次に、図32を参照しながら、筆記システム2の終了処理について説明する。
図32では、複合機400はデジタルペン100から筆記データ120を受け付け、帳票管理サーバ200に送信する。帳票管理サーバ200は筆記データ120を解析して帳票データDB208に登録する。また、登録が終了すると、複合機400から帳票の控えを印刷する。なお、終了処理の開始時点では、複合機400の終了画面4200であることとする。
なお、ステップS401〜S406、ステップS409〜S410は筆記システム1と同等なため説明は省略する。
図32に示すように、複合機400はデジタルペン100と通信開始されたかどうかを判定する(ステップS450)。具体的には、Bluetooth(登録商標)などの無線通信手段を用いて、複合機400とデジタルペン100が互いに通信を確立し、互いを認識した状態に入っていると、通信開始されたと判断する。
ステップS450の判定結果、通信開始されたと判断した場合、複合機400は、デジタルペン100に帳票IDと筆記データ120を要求する(ステップS451)。
デジタルペン100は、複合機400から帳票IDおよび筆記データ120の要求を受け付け(ステップS452)、デジタルペンデータ110に格納している帳票ID113と筆記データ120を複合機400に送信する(ステップS453)。
複合機400は、デジタルペン100から帳票IDと筆記データ120を受け付け(ステップS454)、そのまま帳票管理サーバ200に送信する(ステップS455)。
複合機400は、帳票管理サーバ200から領域データチェックエラーを受け付け(ステップS456)、エラーを通知する(ステップS457)。具体的には、終了画面4200にダイアログ4300を表示する。このときダイアログ4300のメッセージ4301に図23に示すエラーメッセージからERR03乃至ERR04を選択し、「必須項目が記入されていません。」乃至「記入された項目が不正です。」と表示する。
複合機400は、帳票管理サーバ200から完了通知を受け付け(ステップS458)、デジタルペン100に終了要求を行う(ステップS459)。
デジタルペン100は、複合機400から終了要求を受け付け(ステップS460)、デジタルペンデータ110の各種データの初期化を行う(ステップS461)。具体的には、帳票定義データ114、帳票ID113、筆記データ120を初期化する。
デジタルペン100は、複合機400に完了通知を行う(ステップS462)。
複合機400は、デジタルペン100から完了通知を受け付け(ステップS463)、帳票管理サーバ200に控え書類に関する印刷要求発行を行うことができる(ステップS464)。このとき、ステップS454で使った帳票IDも送信する。なお、控え書類に関する印刷要求は、ユーザが複合機400の操作パネルを介して指示することにより行われるものとする。
帳票管理サーバ200は、複合機400から帳票IDとともに印刷要求発行を受け付ける(ステップS465)。
帳票管理サーバ200は、帳票データDB208から帳票IDに一致する帳票データ282を取得する。この帳票データ282は、ユーザがユーザ登録書(図37)の記入欄503にデジタルペン100で記入した記入内容であり、ビットマップデータであってもよいし、OCR処理されたテキストデータであってもよい。同時に、帳票管理サーバ200は、帳票定義DB207から帳票IDに一致する帳票レイアウト295を取得する。この二つのデータを既知の技術を用いてフォーム合成し(ステップS466)、複合機400に印刷指示を行う(ステップS467)。
複合機400は、帳票管理サーバ200から印刷指示を受け付けて、既知の技術を用いて用紙等のメディアにデータを印刷する(ステップS468)。
これにより、利用者は申請書筆記終了時に自動で控えを取得することができる。従来のように筆記した用紙をスキャンさせる必要がないので、利用者の手間を省くことができる。また、近年、複合機でもスキャナ機能のついていないシンプル機などが存在する。オフィスのコストダウンのため、もしくはオフィススペースの有効利用のために、このような安価で小さいシンプル機を使う企業も多い。本実施形態によれば、このようなシンプル機であっても、控えを取得することができる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
次に本発明に係る筆記システム3の好適な実施形態について詳細に説明する。
前述したように筆記システム1では、利用者が開始領域や終了領域に筆記することで、デジタルペン100と帳票管理サーバ200との通信が行われる。なお、特定の領域に対する音声通知は、帳票管理サーバ200から受信した帳票定義データ260に従って行われる。
そして、筆記システム2では、利用者が複合機400にデジタルペン100をかざすことで、複合機400を介してデジタルペン100と帳票管理サーバ200とが通信を行う。複合機400は、筆記したデータを帳票管理サーバ200に登録すると、控えを印刷する。
筆記システム2で印刷される控え印刷物では、デジタルペンでユーザが入力した内容が帳票とオーバレイ(重ね合わせ)処理されて印刷されている。
本筆記システム3では、利用者がデジタルペン100を用いて筆記したデータを帳票管理サーバ200に登録すると、控えを印刷する。このとき、複合機400は、控え印刷時に帳票定義データと連携して控え禁止項目を出力しないことで、申請書類と控え書類(控え印刷物)とを識別できるようにする仕組みを筆記システム3で説明する。また、筆記内容に応じて証憑スキャンの画面を表示する仕組みについても説明する。
このように、筆記システム3は、筆記システム2と同様に、複合機400と連携することで、筆記データ登録後に控えを印刷できるという利便性の高いシステムを提供するものであるが、筆記システム2とは異なって、控え印刷時に帳票定義データと連携したり、控え印刷後に複合機400と連携したりすることで、より利便性の高いシステムを提供するものである。具体的には、以下のような利点がある。
控え印刷時に、あらかじめ控え印刷禁止と定義された項目に関しては印刷しないので、セキュリティが高くプライバシーに配慮したシステムを提供できる。
例えば、ユーザ登録申請では、申請用紙にパスワードを記載するケースがあり、このとき、申請用紙の原本は記入者が保持しておき、申請用紙の控えは申請を受け付けた人が保持する。
すなわち、筆記システム3の実施形態によれば、パスワードの項目を印刷禁止とあらかじめ定義しておくことで、控え印刷時にパスワード項目は印刷させないようにすることができる。
また、筆記データ以外に証書を必要とする場合、控え印刷後にスキャン画面に遷移し、スキャンしたデータは帳票データに紐づけて管理するので、記入・記入内容に応じた証書要否判断・証書スキャン・証書データ格納という一連の流れが自動化されるので利用者に使い勝手のよいシステムとなる。
また、上記に関連して、証書の要否判断を自動で行うことにより、人の判断による間違いを防ぐことができる。
また、上記に関連して、証書データ格納を自動で行うことにより、格納忘れや格納場所間違いを防ぐことができる。
例えば、商品購入の申し込みでは、申込者が未成年であれば保護者の同意書を必要とするようなケースがあり、このとき、申込を受け付けた人、もしくは申し込みを行う人が、記載内容を判断して、保護者の同意書が必要かどうかを判断する。このとき、保護者の同意書が必要だと判断した場合は、申請を受け付けた人は、保護者の同意書を電子化してシステムに取り込み、申請データと紐づけて格納しなければならない。
更に筆記システム3によれば、用紙に記載された年齢が未成年であるかどうかという保護者の同意書が必要となる条件をあらかじめ定義しておき、さらに複合機のスキャン機能と連携することで、これら一連の処理を自動化することができる。
また、上記のような例としては、住民異動の申請にあたって区外からの異動者に関しては住民票が必要なケースであったり、交通費申請にあたってタクシー利用の場合は領収書が必要なケースであったり、備品購入の申請にあたって一定金額以上は上司の印やサインが必要なケースがある。このように筆記した内容に応じてスキャン要否がわかれるというケースが多く存在する。
以下、図38〜45を参照しながら実施形態3について説明する。
なお、筆記システム2の図28は、図38に置き換える。筆記システム2の図29は、図39に置き換える。筆記システム2の図32は、図40、図41に置き換える。筆記システム2の図35は、図43に置き換える。筆記システム1および2の図18は、図44に置き換える。筆記システム1および2の図21は、図45に置き換えることで実現可能である。
その他の図面に関しては、筆記システム2と筆記システム3では同等のものとし、繰り返しになるため再度の説明は省略する。
次に、図38、42、43、44、45を参照しながら、筆記システム3の機能と利用するデータについて説明する。
図38は、本発明に係る筆記システム3の機能構成を示すブロック図であり、図42は、複合機400の操作部3030に表示する画面の一例を示すイメージ図であり、図43は、筆記システム3の帳票定義DB207の一例を示す図である。そして、図44は、筆記システム3の帳票定義データ260の一例を示す図であり、図45は、筆記システム3の帳票データDB208の一例を示す図である。
なお、図38のデジタルペン100の機能構成については、図28の筆記システム2と同等のものであるため、繰り返しになるため再度の説明は省略する。
まず、複合機400の処理を実行するための機能について説明する。
複合機400は、無線通信部401、有線通信部402、画面制御部403、帳票情報管理部404、印刷部405、帳票情報406を有し、ここまでの各機能構成は図28の筆記システム2と同様である。違いは、スキャン送信部407を有する点である。
スキャン送信部407は、複合機400のスキャナ3060を制御して、原稿となる紙上の画像をデジタル化し、任意の画像形式に変換して、任意のサーバの任意のフォルダに送信する機能を提供する。ファイル形式について、例えば、JPEG(Joint Photographic Expert Group)、TIFF(Taged Image File Format)、PDF(Portable Document Format)、XPS(XML Paper Specification)、OOXML(Office Open XML)などがある。
また、スキャンして生成したファイルをSMB(Server Message Block)、WebDAV(Web―based Distributed Authoring and Versioning)、FTP(File Transfer Protocol)などのプロトコルを用いて外部装置にファイル送信を行う処理も行う。
ここで図42は、複合機400の操作部3030に表示される、スキャン画面4400の一例を示す図である。
図42に示されるように、スキャン画面4400は、スキャンボタン4401等から構成される。スキャン画面4400は、控え印刷後、証書のスキャンが必要な場合に表示される画面であり、ユーザはこの画面が表示されると、画面に書かれている証書を複合機400にセットし、スキャンボタン4401を押下する。
なお、複合機400を構成するその他の機能については、筆記システム2と同等のため、説明を省略する。
次に、帳票管理サーバ200の処理を実行するための機能について説明する。
帳票管理サーバ200は、有線通信部201、文字認識部202、データチェック部203、帳票定義管理部204、帳票データ管理部205、領域計算部206、帳票定義DB207、帳票データDB208、プリンタドライバ部209、帳票条件判定部210等を有する。
帳票条件判定部210は、帳票定義DB207のスキャン条件296を判定して、控え印刷後に証書のスキャンが必要かどうかを判断し、必要であれば控え印刷後にスキャンを行うように制御する。また、帳票定義データ260の控え禁止フラグ266を判定して、控え禁止項目であれば、控え印刷のデータには該当項目を出力しないように制御する。
帳票定義DB207は、帳票ID250、帳票定義データ260、帳票チェックデータ270、帳票レイアウト295、スキャン条件296等から構成される。スキャン条件296は、この帳票の控え印刷後に証書のスキャンが必要かどうかを判断するための項目である。例えば、筆記された情報に基づいて証書の要否を判断する場合には、「年齢という項目が20以上である」というような条件が設定される。実際には、年齢という項目の帳票定義データID261が「999」であった場合、「999>20」というような数式で表記される。例えば、筆記された情報によらず帳票の種類に応じて証書の要否を判断する場合には、「*」や「−」というような条件が設定される。
帳票定義DB207を構成するその他の項目については、筆記システム2と同等のため、説明を省略する。
帳票定義データ260は、データID261、領域属性132、領域263、通知状態264、通知データ265、控え禁止フラグ266等から構成される。控え禁止フラグ266は、この帳票データ項目を控え印刷するときに出力するかどうかを判断するための項目である。具体的には、「true」もしくは「false」が設定され、「true」であれば控え印刷禁止、「false」であれば控え印刷可能であるとする。例えば、パスワードのような機密性の高い項目に関しては、この値を「true」とするようなケースが考えられる。
帳票定義データ260を構成するその他の項目については、筆記システム2と同等のため、説明を省略する。
帳票データDB208は、帳票データID280、帳票ID281、帳票データ282、スキャンデータ283等から構成される。スキャンデータ283は、控え印刷後に証書がスキャンされた場合に、そのスキャンデータを格納する場所となる。ここにスキャンデータを格納することで、証書が必要となった帳票データと紐づけて管理することが可能となる。
帳票データDB208を構成するその他の項目については、筆記システム2と同等のため、説明を省略する。
なお、帳票管理サーバ200を構成するその他の機能については、筆記システム2と同等のため、説明を省略する。
次に、図39を参照しながら、本発明に係る筆記システム3の処理概要について説明する。
図39は、筆記システム3の処理概要図である。なお、1−1〜3−5までの処理については、筆記システム2と同等のため、説明を省略する。
帳票管理サーバ200は、登録された帳票データ208に控え禁止項目がないかどうか判定する(3−6)。判定結果、控え禁止項目があった場合は、該当項目の帳票データ282(筆記データ)を空文字にしたり、隠し文字(*や●)にしたりする。また、帳票管理サーバ200は、当該帳票定義207のスキャン条件を判定し(3−7)、登録された帳票データ208がスキャン条件を満たしていれば、複合機400に帳票情報を送信し印刷スキャン指示を発行する。
複合機400は、帳票管理サーバ200の指示に基づいて、控え禁止項目が隠された帳票情報を出力する(3−8)。
また、複合機400は、帳票管理サーバ200の指示に基づいて、ユーザに証書をスキャンさせる画面を表示させ、ユーザからの証書スキャンを受け付け(3−9)、スキャンしたデータを帳票データ208に格納する(3−10)。
次に、図40、41を参照しながら、本発明に係る筆記システム3の詳細な処理について説明する。
図40は、筆記システム3の終了処理の一例を示すフローチャート、図41は、筆記システム3の終了処理の一例を示すフローチャートである。
なお、通知処理、領域取得処理、開始処理については筆記システム2と筆記システム3とは同じ処理手順のため説明を省略する。
まず、図40を参照しながら、筆記システム3の終了処理について説明する。
図40では、複合機400はデジタルペン100から筆記データ120を受け付け、帳票管理サーバ200に送信する。帳票管理サーバ200は筆記データ120を解析して帳票データ282に変換し、帳票データDB208に登録する。また、登録が終了すると、複合機400から帳票管理サーバ200へ帳票の控え印刷の要求が発行される。
筆記システム2との違いは、ステップS466、ステップS467、ステップS468の代わりに図41の処理を追加したことである。筆記システム3では、控え印刷時の制御を行うための処理の詳細を図41として図示している。
なお、その他のステップに関しては筆記システム2と同等なため説明は省略する。
次に、図41を参照しながら、筆記システム3の終了処理について説明する。
図41では、帳票管理サーバ200は、スキャンが必要かどうかの判定を行って複合機100にスキャン指示を行う。また、帳票管理サーバ200は、控え禁止項目があるかどうかを判定して、控え禁止項目があれば、その項目は出力しないようにする。
図41に示すように、帳票管理サーバ200は、当該帳票定義が保持している1又は複数の帳票定義データ260に控え禁止フラグがtrue(値が“1”)に設定されている項目があるかどうか、を判定する(ステップS500)。
ステップS500の判定結果、控え禁止フラグがtrue(値が“1”)に設定されている項目があった場合、帳票管理サーバ200は、控え禁止フラグがtrueである帳票定義データ260のデータID282と一致する帳票データ282のデータ値を空文字や隠し文字(*や●)などに一時的に置き換える(ステップS501)。
これにより、パスワードのような機密性が高い項目については控え印刷時に出力させないことができるので、セキュリティの高いシステムを実現できる。
一方、ステップS500の判定結果、控え禁止フラグがFalse(値が“0”)に設定されている項目についてはステップS501の置き換え処理を飛ばしてステップS502に処理を進める。なお、ステップS500乃至S502の処理は、1つの帳票について、全項目(帳票データが入る全部の領域)についてループ処理されるものとする。
帳票管理サーバ200は、帳票データ282と、帳票レイアウト295の二つのデータを既知の技術を用いてオーバレイする(ステップS502)。なお、オーバレイが終了すると、前段で置き換えた帳票データ282のデータ値をもとの値に戻す。なお、本処理では、帳票データ282のデータ値を所定のデータ値に変換してオーバレイ処理することにより実現したが、これに限るものではなく、帳票データ282のデータ値がそのまま印刷されないようにすればよい。すなわち、空白文字にして印刷しないようにしてもよい。
帳票管理サーバ200は、前段(ステップS409)において登録された帳票データ282が、当該帳票定義207のスキャン条件296を満たしているかどうかを判定する(ステップS503)。
ステップS503の判定結果、スキャン条件296を満たしていなかった場合、帳票管理サーバ200は、複合機400に印刷指示を行う(ステップS504)。この印刷指示は、具体的には、ステップS502で帳票データ282と、帳票レイアウト295の二つのデータを既知の技術を用いてオーバレイすることにより合成されて生成された印刷データ
複合機400は、帳票管理サーバ200から印刷指示を受け付けて、既知の技術を用いて用紙等のメディアにデータを印刷する(ステップS505)。
ステップS503の判定結果、スキャン条件296を満たしていた場合、帳票管理サーバ200は、複合機400に印刷スキャン指示を行う(ステップS506)。この印刷スキャン指示は、具体的には、ステップS502で帳票データ282と、帳票レイアウト295の二つのデータを既知の技術を用いてオーバレイすることにより合成されて生成された印刷データと、該印刷データを印刷した後にスキャン画面を複合機に表示させるための指示コマンドとスキャンIDとを含んでいる。
このように、帳票管理サーバ200が、ユーザが筆記した情報に基づいてスキャンの必要、不必要を判定するので、ユーザによる証書要否の判定間違いを防ぐことができる。たとえば、デジタルペンで操作者により入力された年齢が20歳未満(スキャン条件)である場合に、身分証を複合機でスキャンして帳票管理サーバに登録させるような運用を自動的に実現することができる。
複合機400は、帳票管理サーバ200から印刷スキャン指示を受け付けて、既知の技術を用いて用紙等のメディアに該印刷スキャン指示に含まれる印刷データを印刷する(ステップS507)。
複合機400は、操作部3030にスキャン画面4400(図42)を表示し(ステップS508)する。そして、ユーザがスキャンボタン4401を押下することによりスキャン指示を受け付けると、複合機400は、原稿台に置かれている原稿(証明書)のスキャン処理を実行し(ステップS509)、スキャンすることにより読み取られたデータを印刷スキャン指示に含まれるスキャンIDと共に帳票管理サーバ200に送信する(ステップS510)。
帳票管理サーバ200は、複合機400からスキャンIDと読み取られたデータ(スキャンデータ)を含むスキャンデータ送信を受け付け(ステップS511)、帳票データ208のスキャンデータ283に格納する(ステップS512)。
これにより、スキャンを行ったユーザは何も意識することなく、筆記したデータとスキャンしたデータが自動で紐づけられて格納されるので、スキャンデータの格納を忘れたり、スキャンデータの格納場所を間違えたり、というミスをなくすことができる。またスキャンデータ格納の手間をなくすことができる。
なお、本実施形態では、控え印刷後にスキャンを実施する形態としたが、スキャン実施後に控え印刷を行う順番で処理してもよい。この場合、控え印刷には証書のコピーも印字されるため、証書のコピーが必要なケースではより使いやすいシステムとなる。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図9〜図12、図30〜図32に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図9〜図12、図30〜図32の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図9〜図12、図30〜図32の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク、ソリッドステートドライブ等を用いることができる。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。