(57)【要約】【課題】手書き文字の文字画像の文字データの生成方法を提供する。【解決手段】文字データの生成方法は、複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得することと、複数の文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成することと、を含む。【選択図】図３
2019087132.tif 000002
【特許請求の範囲】
【請求項１】
複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得することと、
複数の前記文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成することと、
を含む文字データの生成方法。
【請求項２】
前記文字の画像を生成することは、当該文字の画像と当該文字が描かれた前記文字入力枠との位置関係について、当該文字の筆跡と当該文字が描かれた前記文字入力枠との位置関係が維持されるように、当該文字の画像を生成することを含み、
ユーザは、複数の前記文字入力枠内に第１側から第２側に向かって文字を描いており、
前記文字の画像のそれぞれについて、前記文字入力枠内に配置された当該文字の画像が、前記文字入力枠内の前記第２側の所定の領域内に含まれていない場合には、当該文字を行頭禁則文字であると判断し、前記文字入力枠内に配置された当該文字の画像が、前記文字入力枠内の前記第１側の所定の領域内に含まれていない場合には、当該文字を行末禁則文字であると判断する、ことを含む請求項１に記載の文字データの生成方法。
【請求項３】
前記文字入力枠内の前記第２側の所定の領域は、前記文字入力枠内の前記第２側の半分の領域である請求項２に記載の文字データの生成方法。
【請求項４】
前記文字入力枠内の前記第１側の所定の領域は、前記文字入力枠内の前記第１側の半分の領域である請求項２又は３に記載の文字データの生成方法。
【請求項５】
前記文字の画像のそれぞれは、当該文字の画像に対して当該文字が描かれた前記文字入力枠と同じ位置関係を有し、当該文字入力枠と同じ寸法を有する仮想ボディ領域と関連付けられており、
前記文字の画像を生成することは、前記文字の画像のそれぞれについて、当該文字が描かれた前記文字入力枠内に配置された当該文字の画像が、前記第１側から前記第２側に向かう方向において前記文字入力枠内に配置されていない領域を、当該文字の画像と関連付けられている前記仮想ボディ領域から除去することを含む請求項２〜４の何れか一項に記載の文字データの生成方法。
【請求項６】
ユーザが描く第１の文字の筆跡の始点が、第１の前記文字入力枠内に位置しており、当該第１の文字の筆跡の終点が、前記第１側から前記第２側に向かう方向において、第１の前記文字入力枠の次に配置される第２の前記文字入力枠内に位置している場合、
第２の前記文字の画像と関連付けられている前記仮想ボディ領域における前記第１側から前記第２側に向かう方向の寸法を、第２の前記文字入力枠内において第１の文字の筆跡が描かれている領域の前記第１側から前記第２側に向かう方向の寸法だけ、前記第２側から前記第１側に向かって拡張することを含む請求項５に記載の文字データの生成方法。
【請求項７】
第２の前記文字の画像と関連付けられている前記仮想ボディ領域の寸法が、第２の前記文字入力枠を超える場合、当該仮想ボディ領域が、第２の前記文字入力枠の寸法を超えた領域を、当該仮想ボディ領域から除去することを含む請求項６に記載の文字データの生成方法。
【請求項８】
ユーザが描く文字の筆跡の位置情報を前記順次取得することは、
１つの段落を形成する複数の文字を入力するための複数の前記文字入力枠内に、ユーザが描く文字の筆跡の位置情報を順次取得することを含む請求項１〜７の何れか一項に記載の文字データの生成方法。
【請求項９】
前記文字の画像を生成することは、
複数の前記文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字のベクタ画像を生成することを含む、請求項１〜８の何れか一項に記載の文字データの生成方法。
【請求項１０】
複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得する文字入力部と、
複数の前記文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成する処理部と、
を備える文字データの生成装置。
【請求項１１】
複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得することと、
複数の前記文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成することと、
をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字データの生成方法、文字データの生成装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来、メモ帳、日記帳等の紙媒体には、手書きの文字が筆記されて文字が記録されている。例えば、原稿用紙のマス目に文字を記載して、手書きで文章を作成することが行われている。
【０００３】
また、パーソナルコンピュータ、高機能携帯端末等の情報入力装置の普及と共に、キーボード、タッチパネル等の入力インタフェースを用いて、入力された文字が表示画面に活字として表示されて、活字による文章を作成することが行われている。
【０００４】
活字を用いて作成された文章と、手書き文字を用いて作成された文章とを比べると、手書き文字を用いて作成された文章の方が、読み手に対して強い印象を与えると考えられている。
【０００５】
これは、活字が、画一で機械的な印象を与えるのとは対照的に、手書き文字は、書き手によって異なり、個性的で人間的な印象を与えることが一因と考えられる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−３７４１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したように高機能携帯端末等では、タッチパネルを用いて手書き文字を入力し、入力された文字を活字に変換して、文章を作成することが提案されている。
【０００８】
しかし、手書き文字に基づいて作成されるのは、活字を用いて作成された文章であり、手書き文字の文字画像を用いた文章を作成するものではない。
【０００９】
また、特許文献１は、活字を用いて作成された文章が印刷された紙媒体に記載された手書きの文字のメモ情報を、電子書籍化された文章における対応する位置に配置する技術を提案している。
【００１０】
しかし、特許文献１が提案する技術も、手書き文字の文字画像を用いた文章を作成することは提案していない。
【００１１】
そこで、本明細書では、手書き文字の文字画像の文字データの生成方法、文字データの生成装置及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【００１２】
本明細書に開示する文字データの生成方法は、複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得することと、複数の文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成することと、を含む。
【００１３】
また、本明細書に開示する文字データの生成装置は、複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得する文字入力部と、複数の文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成する処理部と、を備える。
【００１４】
更に、本明細書に開示するコンピュータプログラムは、複数の文字入力枠内にユーザが描く文字の筆跡の位置情報を順次取得することと、複数の文字入力枠内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の画像を生成することと、をコンピュータに実行させる。
【発明の効果】
【００１５】
上述した文字データの生成方法によれば、手書きの文字を入力して、手書き文字の文字画像の文字データを生成できる。
【００１６】
また、上述した文字データの生成装置によれば、手書きの文字を入力して、手書き文字の文字画像の文字データを生成できる。
【００１７】
更に、上述したコンピュータプログラムによれば、手書きの文字を入力して、手書き文字の文字画像の文字データを生成できる。
【図面の簡単な説明】
【００１８】
【図１】本明細書に開示する文字データの生成装置の一実施形態を示す図である。
【図２】タッチパネルを示す図である。
【図３】本実施形態の文字データの生成装置の動作を説明するフローチャートである。
【図４】文字の筆跡の位置情報に基づいて、文字の画像を生成することを説明する図（その１）である。
【図５】文字の筆跡の位置情報に基づいて、文字の画像を生成することを説明する図（その２）である。
【図６】文字の筆跡の位置情報に基づいて、文字の画像を生成することを説明する図（その３）である。
【図７】禁則文字の判定を説明する図（その１）である。
【図８】禁則文字の判定を説明する図（その２）である。
【図９】仮想ボディ領域から余白領域を除去する処理を説明する図である。
【図１０】仮想ボディ領域を拡張する処理を説明する図である。
【図１１】仮想ボディ領域から重複領域を除去する処理を説明する図である。
【図１２】文字画像を表示する例を示す図である。
【図１３】文字データのデータ構造を説明する図である。
【図１４】本明細書に開示するシステムの一実施形態を示す図である。
【発明を実施するための形態】
【００１９】
以下、本明細書で開示する文字データの生成装置の好ましい一実施形態を、図を参照して説明する。但し、本発明の技術範囲はそれらの実施形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【００２０】
図１は、本明細書に開示する文字データの生成装置の一実施形態を示す図である。
【００２１】
本実施形態の文字データの生成装置（以下、単に装置ともいう）１０は、手書きの文字を入力し、入力された文字を画像化して文字データを生成して、手書き文字の文字画像のデータ構造を作成する。装置１０は手書きされた文字ごとに画像化するので、画像化された文字画像をリフロー表示することも可能である。
【００２２】
装置１０は、処理部１１と、メモリ１２と、タッチパネル１３と、通信部１４を有する。
【００２３】
処理部１１は、一つまたは複数の中央演算回路と、レジスタと、キャッシュメモリと、インタフェース等の周辺回路とを有する。処理部１１は、メモリ１２に予め記憶されている所定のコンピュータプログラムに従い、装置１０の各ハードウェア構成要素の制御及び各種処理を行い、処理中に生じるデータを一時的に保存するためにメモリ１２を利用する。
【００２４】
メモリ１２は、ランダムアクセスメモリ（ＲＡＭ）若しくはリードオンリーメモリ（ＲＯＭ）等の半導体メモリ、又は磁気ディスク若しくはフラッシュメモリ等の不揮発性メモリを有していてもよい。また、メモリ１２は、非一時的な記憶媒体１２ａに記憶されたコンピュータプログラムを、読み出し可能なドライブ（図示せず）を有していてもよい。
【００２５】
図２は、タッチパネルを示す図である。
【００２６】
タッチパネル１３は、処理部１１に制御されて、装置１０の動作に伴う各種の情報を画面上に表示可能である。図２に示すように、タッチパネル１３は、処理部１１に制御されて、複数の文字入力枠Ｆ１〜Ｆ８を表示する。
【００２７】
また、タッチパネル１３は、処理部１１に制御されて、タッチパネル１３に表示されている複数の文字入力枠内に、ユーザが描く文字の筆跡の位置情報を順次取得可能である。処理部１１は、タッチパネル１３が検知する筆跡の位置情報に基づいて、ユーザが描く文字の筆跡の描画速度を検知可能である。また、タッチパネル１３は、ユーザが描く文字の筆跡の位置の描画圧力を検知可能であることが好ましい。処理部１１は、筆跡の描画速度又は描画圧力に基づいて、文字の筆跡の太さを決定することができる。
【００２８】
複数の文字入力枠Ｆ１〜Ｆ８のそれぞれには、ユーザが描いた文字の筆跡が表示されている。
【００２９】
更に、タッチパネル１３は、処理部１１に制御されて、ユーザによる操作を入力可能であってもよい。
【００３０】
装置１０は、表示部及び文字入力部として機能するタッチパネル１３を有しているが、装置１０は、表示部及び文字入力部を、それぞれ別個のハードウェアとして有していてもよい。表示部として、例えば、液晶ディスプレイを用いることができる。また、文字入力部として、マウス、デジタイザ、ペンタブレットを用いることができる。装置１０は、例えば、表示部に表示された複数の文字入力枠内に、マウス、デジタイザ又はペンタブレットを用いて、ユーザが描く文字の筆跡の位置情報を順次取得してもよい。
【００３１】
通信部１４は、ネットワーク（図１４参照）を介して、サーバ（図１４参照）との間で情報の送受信を行うことができる。通信部１４は、信号の送受信を行う通信回路及び通信線を有する。処理部１１は、通信部１４を用いて、手書き文字画像の文字データをサーバへ送信し得る。
【００３２】
次に、上述した装置１０の動作を、図３に示すフローチャートを参照しながら、以下に説明する。
【００３３】
まず、ステップＳ３０１において、装置１０は、図４に示すように、タッチパネル１３に表示されている複数の文字入力枠Ｆ１〜Ｆ３内に、ユーザが描く文字の筆跡の位置情報を順次取得する。装置１０は、縦書きの文字を入力するように、複数の文字入力枠Ｆ１〜Ｆ３をタッチパネル１３に表示している。ユーザは、複数の文字入力枠Ｆ１〜Ｆ３内に、上側から下側に向かう縦方向に文字を描いていく。なお、装置１０は、横書きの文字を入力するように複数の文字入力枠を表示してもよい。この場合、ユーザは、複数の文字入力枠内に、左側から右側に向かう横方向に文字を描いていく。
【００３４】
例えば、装置１０は、１つの段落を形成する複数の文字を入力するための複数の文字入力枠内に、ユーザが描く文字の筆跡の位置情報を順次取得してもよい。これにより入力された複数の文字は、１つの段落を形成する一連の文字画像として記憶される。１つの段落を形成する複数の文字を入力するための複数の文字入力枠の内、タッチパネル１３に一度に表示しきれない文字入力枠は、例えば、タッチパネル１３に対するユーザの操作に基づいて、順次表示するようにしてもよい。
【００３５】
次に、ステップＳ３０３において、装置１０は、複数の文字入力枠Ｆ１〜Ｆ３内に描かれた文字のそれぞれについて、当該文字の筆跡の位置情報に基づいて、当該文字の文字画像を生成する。装置１０は、文字画像として、ベクタ画像又はラスタ画像を生成し得るが、ベクタ画像を生成することが、文字画像が拡大又は縮小して表示されたときに、滑らかな文字を表示する観点から好ましい。
【００３６】
装置１０は、文字画像のそれぞれを、文字画像を識別する文字画像コードを用いて、当該文字が入力された文字入力枠と同じ寸法を有する仮想ボディ領域と関連付ける。仮想ボディ領域は、文字の画像に対して当該文字が描かれた文字入力枠と同じ位置関係を有する。仮想ボディ領域は、文字画像を表示する時に、各文字画像が表示される領域を決定するために使用される。仮想ボディ領域の縦のサイズが、文字画像の縦のサイズに対応し、仮想ボディ領域の横のサイズが、文字画像の横のサイズに対応する。
【００３７】
図４に示す例では、文字入力枠Ｆ１に描かれた文字画像Ｇ１の仮想ボディ領域Ｂ１は、文字画像Ｇ１に対して当該文字が描かれた文字入力枠Ｆ１と同じ位置関係を有し、文字入力枠Ｆ１と同じ寸法を有する。仮想ボディ領域Ｂ１のサイズは、縦のサイズ及び横のサイズがある。同様に、文字入力枠Ｆ２に描かれた文字画像Ｇ２の仮想ボディ領域Ｂ２のサイズは、文字画像Ｇ２に対して当該文字が描かれた文字入力枠Ｆ２と同じ位置関係を有し、文字入力枠Ｆ１と同じ寸法を有する。文字入力枠Ｆ３に描かれた文字画像Ｇ３の仮想ボディ領域Ｂ３のサイズは、文字画像Ｇ３に対して当該文字が描かれた文字入力枠Ｆ３と同じ位置関係を有し、文字入力枠Ｆ１と同じ寸法を有する。装置１０は、文字画像のそれぞれについて、仮想ボディ領域のサイズ及び文字画像と仮想ボディ領域との位置関係を、文字画像を識別する文字画像コードと関連づけてメモリ１２に記憶する。
【００３８】
図５に示すように、装置１０は、文字入力枠Ｆ１内に始点を有する筆跡５０１の位置情報に基づいて、文字の画像と文字が描かれた文字入力枠Ｆ１との位置関係について、文字の筆跡５０１と当該文字が描かれた文字入力枠Ｆ１との位置関係が維持されるように、文字入力枠Ｆ１内に描かれた文字の文字画像５０３を生成する。この場合、筆跡５０１の終点が、文字入力枠Ｆ１ではなく、文字入力枠Ｆ１の下側に配置された文字入力枠Ｆ２内に位置していても、筆跡は、始点を有する文字入力枠Ｆ１内に描かれた文字として画像化される。
【００３９】
図４に示す例では、文字画像Ｇ１は、文字入力枠Ｆ１内に始点を有し、文字入力枠Ｆ２内に終点を有する筆跡に基づいて生成されている。
【００４０】
文字入力枠Ｆ１内に始点を有する複数の筆跡があれば、それぞれの筆跡は同じ文字入力枠Ｆ１に描かれた文字の文字画像として生成される。装置１０は、同じ文字入力枠に描かれた複数の筆跡の文字の文字画像を１つの文字画像に合成して、合成された文字画像を、文字画像を識別する文字画像コードと関連づけてメモリ１２に記憶する。例えば、図４に示す文字画像Ｇ１は、３つの筆跡の文字画像が合成されて生成され、文字画像Ｇ２は、２つの筆跡の文字画像が合成されて生成される。
【００４１】
また、装置１０は、図５に示すように、文字入力枠Ｆ２内に始点及び終点を有する筆跡５０２の位置情報に基づいて、文字の画像と文字が描かれた文字入力枠Ｆ２との位置関係について、文字の筆跡５０２と当該文字が描かれた文字入力枠Ｆ２との位置関係が維持されるように、文字入力枠Ｆ２内に描かれた文字の文字画像５０４を生成する。図４に示す例では、文字画像Ｇ２は、文字入力枠Ｆ２内に始点を有し且つ文字入力枠Ｆ２内に終点を有する筆跡に基づいて生成されている。
【００４２】
このように、文字入力枠に描かれた筆跡が１つであれば、装置１０は、筆跡を１つの文字画像として、文字画像を識別する文字画像コードと関連づけてメモリ１２に記憶する。例えば、図４に示す文字画像Ｇ３は、１つの筆跡の文字画像により生成される。
【００４３】
次に、装置１０が、文字入力枠内に描かれた筆跡に基づいて、文字画像を生成する動作について、図６を参照しながら、以下に説明する。
【００４４】
まず、装置１０は、タッチパネル１３を用いて取得された、文字入力枠内に始点を有する筆跡の位置情報に基づいて、入力点Ｐ１〜Ｐ５を取得する。筆跡の始点は、入力点Ｐ１であり、筆跡の終点は入力点Ｐ５である。入力点Ｐ１〜Ｐ５は、文字入力枠内に描かれた筆跡の全ての位置情報に基づいて取得される位置であってもよい。また、入力点Ｐ１〜Ｐ５は、文字入力枠内に描かれた筆跡の位置情報の中から所定の間隔で選択された複数の位置であってもよい。
【００４５】
次に、装置１０は、筆跡の始点Ｐ１及び終点Ｐ５を除いた入力点Ｐ２〜Ｐ４のそれぞれについて、当該入力点と隣接する２つの入力点とを結ぶことにより形成される角度を２等分する２等分線Ａ２〜Ａ４を生成する。例えば、入力点Ｐ１と入力点Ｐ２と入力点Ｐ３とを結ぶことにより、入力点Ｐ２では、１８０度よりも大きい角度と、１８０度よりも小さい角度が形成される。２等分線Ａ２は、入力点Ｐ２に形成される２つの角度のそれぞれを２等分する。
【００４６】
そして、装置１０は、入力点Ｐ２〜Ｐ４のそれぞれについて、当該入力点から当該入力点の筆跡の太さに対応する長さだけ離れた両側の２等分線Ａ２〜Ａ４上の位置に制御点を配置する。装置１０は、筆跡の太さに対応する長さを、例えば、メモリ１２に記憶された、筆跡の太さと、対応する長さとの関係を有するテーブルを参照して求めてもよい。２等分線Ａ２には、入力点Ｐ２の両側に制御点Ｃ２ａ、Ｃ２ｂが配置される。同様に、２等分線Ａ３には、入力点Ｐ３の両側に制御点Ｃ３ａ、Ｃ３ｂが配置され、２等分線Ａ４には、入力点Ｐ４の両側に制御点Ｃ４ａ、Ｃ４ｂが配置される。入力点における筆跡の太さは、装置１０が検知したユーザが描く文字の筆跡の描画速度又は描画圧力に基づいて決定され得る。例えば、装置１０は、筆跡の描画速度が遅い程、筆跡の太さを太くしてもよい。また、装置１０は、筆跡の描画圧力が高い程、筆跡の太さを太くしてもよい。なお、入力点における筆跡の太さとして、固定値を用いてもよい。
【００４７】
次に、装置１０は、文字画像の開始点Ｓを配置する。装置１０は、筆跡の始点である入力点Ｐ１と入力点Ｐ２とを結ぶ直線を、入力点Ｐ１から入力点Ｐ２とは反対側に延長し、入力点Ｐ１から入力点Ｐ１における筆跡の太さに対応する長さだけ離れた直線上の位置に開始点Ｓを配置する。
【００４８】
また、装置１０は、文字画像の終了点Ｅを配置する。装置１０は、筆跡の終点である入力点Ｐ５と入力点Ｐ４とを結ぶ直線を、入力点Ｐ５から入力点Ｐ４とは反対側に延長し、入力点Ｐ５から入力点Ｐ５の筆跡の太さに対応する長さだけ離れた直線上の位置に終了点Ｅを配置する。
【００４９】
次に、装置１０は、開始点Ｓと、制御点Ｃ２ａ〜Ｃ４ａと、終了点Ｅとを結ぶ曲線Ｍａを作成する。同様に、装置１０は、開始点Ｓと、制御点Ｃ２ｂ〜Ｃ４ｂと、終了点Ｅとを結ぶ曲線Ｍｂを作成する。本実施形態では、装置１０は、公知の曲線補間アルゴリズムを用いて、２次のペジェ曲線Ｍａ及びＭｂを作成する。ここで、装置１０は、２つの制御点間の中点を通るように２次のペジェ曲線Ｍａ、Ｍｂを作成することが好ましい。
【００５０】
次に、装置１０は、２つのペジェ曲線Ｍａ、Ｍｂにより囲まれる領域を所定の色で塗りつぶして、筆跡の画像を生成する。本実施形態では、装置１０は、文字入力枠に描かれた筆跡のベクタ画像を生成する。以上が、装置１０が、文字入力枠内に描かれた筆跡に基づいて、文字画像を生成する動作の説明である。
【００５１】
図４に示す文字画像Ｇ１〜Ｇ３は、上述した処理により生成されて、タッチパネル１３に表示されている。
【００５２】
次に、ステップＳ３０５において、装置１０は、複数の文字入力枠に描かれた文字画像について、禁則文字判断を行う。装置１０は、文字画像のそれぞれについて、文字入力枠内に配置された文字画像が、文字入力枠内の下側の所定の領域内に含まれていない場合には、文字画像の文字を行頭禁則文字であると判断する。行頭禁則文字は、直前に位置する文字と分割して表示されることが禁止される文字である。行頭禁則文字として、”、”、”？”、”。”、”」”、”）”等が挙げられる。
【００５３】
図７では、文字入力枠７００内に文字画像７０１が配置されている。文字画像７０１は、行頭禁則文字の句点”。”である。文字入力枠７００は、矩形であり、左上の隅が原点（０，０）であり、原点から右に向かってＸ方向、原点から下に向かってＹ方向が定められている。文字入力枠７００の右上の隅の座標は（Ｈ，０）、左下の隅の座標は（０、Ｌ）、右下の隅の座標は（Ｈ，Ｌ）である。
【００５４】
装置１０は、文字入力枠７００内に配置された文字画像７０１が、文字入力枠７００内の下側の半分の領域内に含まれていない場合には、文字を行頭禁則文字であると判断する。文字画像７０１は、文字入力枠７００のＹ座標がＬ／２〜Ｌの領域内には含まれないので、装置１０は、文字画像７０１の文字を、行頭禁則文字であると判断する。装置１０は、文字画像７０１が行頭禁則文字であることを、文字画像を識別する文字画像コードと関連づけてメモリ１２に記憶する。
【００５５】
図４に示す例では、装置１０は、文字画像Ｇ３を、文字を行頭禁則文字であると判断する。
【００５６】
また、装置１０は、文字画像のそれぞれについて、文字入力枠内に配置された文字画像が、文字入力枠内の上側の所定の領域内に含まれていない場合には、文字画像の文字を行末禁則文字であると判断する。行末禁則文字は、直後に位置する文字と分割して表示されることが禁止される文字である。行末禁則文字として、”「”、”（”等が挙げられる。
【００５７】
図８では、文字入力枠８００内に文字画像８０１が配置されている。文字画像８０１は、行末禁則文字の括弧開き”（”である。
【００５８】
装置１０は、文字入力枠８００内に配置された文字画像８０１が、文字入力枠８００内の上側の半分の領域内に含まれていない場合には、文字を行末禁則文字であると判断する。文字画像８０１は、文字入力枠８００のＹ座標が０〜Ｌ／２の領域内には含まれないので、装置１０は、文字画像８０１の文字を、行末禁則文字であると判断する。装置１０は、文字画像８０１が行末禁則文字であることを、文字画像を識別する文字画像コードと関連づけられてメモリ１２に記憶する。
【００５９】
なお、手書き文字が横書きで入力される場合には、装置１０は、文字画像のそれぞれについて、文字入力枠内に配置された文字画像が、文字入力枠内の右側の所定の領域内（例えば、Ｘ座標がＨ／２〜Ｈの領域内）に含まれていない場合には、文字画像の文字を行頭禁則文字であると判断する。また、装置１０は、文字画像のそれぞれについて、文字入力枠内に配置された文字画像が、文字入力枠内の左側の所定の領域内（例えば、Ｘ座標が０〜Ｈ／２の領域内）に含まれていない場合には、文字画像の文字を行末禁則文字であると判断する。
【００６０】
次に、ステップＳ３０７において、装置１０は、文字画像のそれぞれについて、仮想ボディ領域の余白領域を削除する。
【００６１】
以下、図９に示す３つの文字画像Ｇ１〜Ｇ３を例にして、装置１０のステップＳ３０７の動作を説明する。
【００６２】
装置１０は、文字画像Ｇ１について、文字画像Ｇ１が描かれた文字入力枠Ｆ１内に配置された当該文字の文字画像Ｇ１が、上側から下側に向かう縦方向において文字入力枠Ｆ１内に配置されていない余白領域Ｒ１を、文字画像Ｇ１と関連付けられている仮想ボディ領域Ｂ１から除去する。この結果、仮想ボディ領域Ｂ１の縦のサイズＬ１は、文字入力枠Ｆ１よりも減少する。ここで、図９に示すように、装置１０は、文字画像Ｇ１と、余白領域Ｒ１以外の仮想ボディ領域Ｂ１の部分との位置関係が維持されるように、仮想ボディ領域Ｂ１から余白領域Ｒ１を除去する。
【００６３】
同様に、装置１０は、文字画像Ｇ２について、文字画像Ｇ２が描かれた文字入力枠Ｆ２内に配置された当該文字の文字画像Ｇ２が、上側から下側に向かう縦方向において文字入力枠Ｆ２内に配置されていない余白領域Ｒ２及びＲ３を、文字画像Ｇ２と関連付けられている仮想ボディ領域Ｂ２から除去する。この結果、仮想ボディ領域Ｂ２の縦のサイズＬ２は、文字入力枠Ｆ２よりも減少する。ここで、図９に示すように、装置１０は、文字画像Ｇ２と、余白領域Ｒ２及びＲ３以外の仮想ボディ領域Ｂ２の部分との位置関係が維持されるように、仮想ボディ領域Ｂ２から余白領域Ｒ２及びＲ３を除去する。
【００６４】
また、装置１０は、文字画像Ｇ３について、文字画像Ｇ３が描かれた文字入力枠Ｆ３内に配置された当該文字の文字画像Ｇ３が、上側から下側に向かう縦方向において文字入力枠Ｆ３内に配置されていない余白領域Ｒ４を、文字画像Ｇ３と関連付けられている仮想ボディ領域Ｂ３から除去する。この結果、仮想ボディ領域Ｂ３の縦のサイズＬ３は、文字入力枠Ｆ３よりも減少する。ここで、図９に示すように、装置１０は、文字画像Ｇ３と、余白領域Ｒ４以外の仮想ボディ領域Ｂ３の部分との位置関係が維持されるように、仮想ボディ領域Ｂ３から余白領域Ｒ４を除去する。
【００６５】
装置１０は、仮想ボディ領域Ｂ１〜Ｂ３のそれぞれのサイズ及び文字画像Ｇ１〜Ｇ３と仮想ボディ領域Ｂ１〜Ｂ３との位置関係を、文字画像Ｇ１〜Ｇ３を識別する文字画像コードと関連づけてメモリ１２に記憶する。
【００６６】
これにより、複数の文字画像が並べて表示される時に、文字画像と文字画像との間が詰まって表示されるので、ユーザが各文字を視認し易くなる。
【００６７】
次に、ステップＳ３０９において、装置１０は、複数の文字入力枠のそれぞれについて、文字入力枠を超えて文字画像が描かれている場合、次の文字画像の仮想ボディ領域のサイズを、文字入力枠を超えて文字が描かれている分だけ拡張する。
【００６８】
以下、図１０に示す文字入力枠Ｆ１を例にして、装置１０のステップＳ３０９の動作を説明する。
【００６９】
装置１０は、文字入力枠Ｆ１について、ユーザが描く文字「大」の筆跡の始点が、文字入力枠Ｆ１内に位置しており、文字「大」の筆跡の終点が、上側から下側に向かう縦方向において、文字入力枠Ｆ１の次に配置される文字入力枠Ｆ２内に位置していると判断する。文字「大」は、複数の筆跡が合成されて生成された画像であるが、文字「大」の元となった筆跡の内の１つの終点が文字入力枠Ｆ２内に位置していれば、装置１０は、文字「大」の筆跡の終点が、文字入力枠Ｆ２内に位置していると判断する。
【００７０】
この場合、装置１０は、文字入力枠Ｆ２に描かれた文字画像「人」と関連付けられている仮想ボディ領域Ｂ２における縦方向の寸法を、文字入力枠Ｆ２内において文字「大」の筆跡が描かれている延出領域Ｅ１の上側から下側に向かう縦方向の寸法だけ、下側から上側に向かって拡張する。この結果、仮想ボディ領域Ｂ２の縦のサイズＬ２が増加する。ここで、図９に示すように、装置１０は、文字画像Ｇ２と、仮想ボディ領域Ｂ２の拡張されない部分との位置関係が維持されるように、仮想ボディ領域Ｂ２を拡張する。装置１０は、仮想ボディ領域Ｂ２のサイズ及び文字画像Ｇ２と仮想ボディ領域Ｂ２との位置関係を、文字画像Ｇ２を識別する文字画像コードと関連づけてメモリ１２に記憶する。
【００７１】
ここで、文字入力枠Ｆ２及びＦ３については、文字が文字入力枠を超えて描かれていないので、ステップ３０９の処理は行われない。
【００７２】
次に、ステップＳ３１１において、装置１０は、ステップＳ３０９において縦方向の寸法が拡張された仮想ボディ領域のサイズが文字入力枠を超えている場合、仮想ボディ領域が、文字入力枠のサイズを超えた領域を、仮想ボディ領域から除去する。
【００７３】
以下、図１１に示す文字入力枠Ｆ２を例にして、装置１０のステップＳ３０９の動作を説明する。
【００７４】
装置１０は、文字画像Ｇ２と関連付けられている仮想ボディ領域Ｂ２が、仮想ボディ領域Ｂ２における文字入力枠Ｆ２のサイズを超えた延出領域Ｅ２を、仮想ボディ領域Ｂ２から除去する。この結果、仮想ボディ領域Ｂ２の縦のサイズＬ２が減少する。ここで、図１１に示すように、装置１０は、文字画像Ｇ２と、仮想ボディ領域Ｂ２の除去されない部分との位置関係が維持されるように、仮想ボディ領域Ｂ２から延出領域Ｅ２を除去する。装置１０は、仮想ボディ領域Ｂ２のサイズ及び文字画像Ｇ２と仮想ボディ領域Ｂ２との位置関係を、文字画像Ｇ２を識別する文字画像コードと関連づけてメモリ１２に記憶する。
【００７５】
本実施形態のように、縦方向に配置された複数の文字入力枠Ｆ１〜Ｆ３を用いて、縦書きの文字を入力する場合には、仮想ボディ領域の縦のサイズが変更されるが、仮想ボディ領域の横のサイズは変更されない。一方、横方向に配置された複数の文字入力枠Ｆ１〜Ｆ３を用いて、横書きの文字を入力する場合には、仮想ボディ領域の横のサイズが変更されるが、縦のサイズは変更されない。
【００７６】
上述したように生成された文字画像Ｇ１〜Ｇ３及び文字画像Ｇ１〜Ｇ３と関連づけられた仮想ボディ領域Ｂ１〜Ｂ３を用いて、文字画像Ｇ１〜Ｇ３を表示する例を図１２に示す。
【００７７】
まず、３つの文字画像Ｇ１〜Ｇ３が配置される領域として、３つの仮想ボディ領域Ｂ１〜Ｂ３が隙間無く順番に縦方向に配置される。仮想ボディ領域Ｂ１の縦のサイズはＬ１であり、仮想ボディ領域Ｂ２の縦のサイズはＬ２であり、仮想ボディ領域Ｂ３の縦のサイズはＬ３である。３つの仮想ボディ領域Ｂ１〜Ｂ３のそれぞれは、幅が一致するように、縦方向に並べて配置される。
【００７８】
次に、文字画像Ｇ１は、文字画像Ｇ１と仮想ボディ領域Ｂ１との位置関係に基づいて、仮想ボディ領域Ｂ１に対して配置される。同様に、文字画像Ｇ２は、文字画像Ｇ２と仮想ボディ領域Ｂ２との位置関係に基づいて、仮想ボディ領域Ｂ２に対して配置され、文字画像Ｇ３は、文字画像Ｇ３と仮想ボディ領域Ｂ３との位置関係に基づいて、仮想ボディ領域Ｂ３に対して配置される。このようにして、図１２に示すように、仮想ボディ領域Ｂ１〜Ｂ３に基づいて、文字画像Ｇ１〜Ｇ３が表示される。
【００７９】
次に、ステップＳ３１３において、装置１０は、上述したように生成した文字画像に基づいて、文字データのデータ構造を生成する。
【００８０】
図１３は、文字データのデータ構造を説明する図である。
【００８１】
データ構造１３００は、コンテナデータ１と、文字画像テーブル１３１０と、オブジェクトサイズ情報テーブル１３２０を有する。
【００８２】
コンテナデータは、複数の文字画像を有する１又は複数の段落の配置情報を有する。一の段落に対応して、１つのブロックデータが配置される。装置１０は、文字の組方向（縦書き、横書き）に対応して、コンテナデータ内のブロックデータの順番及び配置関係を決定する。コンテナデータは、１又は複数の段落の配置情報を、１又は複数のブロックデータの配置情報として有する。複数の段落の配置情報としては、例えば、各段落が配置される順番及び組方向が挙げられる。
【００８３】
図１３に示すデータ構造１３００では、コンテナデータ１は、３つのブロックデータ１〜３を有する。ブロックデータ１〜３は、段落に含まれる文字画像の配置情報を有する。複数の文字画像の配置情報としては、例えば、各文字画像が配置される順番及び組方向が挙げられる。
【００８４】
図１３に示すブロックデータ１は、文字画像コード１〜４の配置情報と、コンテナデータ２の配置情報を有する。文字画像コードは、文字画像を識別する識別情報である。
【００８５】
コンテナデータ２は、コンテナデータ１とは異なり、段落の配置情報を有するものではない。コンテナデータ２は、行頭禁止文字である「。」の文字画像コード、及び「。」の直前の文字の文字画像コードの配置情報を含むコンテナデータとして生成される。装置１０は、行頭禁止文字であることが関連づけられている文字画像コードに対して、直前の文字の文字画像コードの配置情報を含むコンテナデータ２を生成する。これにより、ブロックデータ１が表示される時に、コンテナデータ２内の２つの文字画像コードの文字画像を、同じ行に表示して、行頭禁止文字と直前の文字とが、異なる行に表示されないようにすることができる。
【００８６】
同様に、装置１０は、行末禁止文字であることが関連づけられている文字画像コードに対して、行末禁止文字の文字画像コード、直後の文字の文字画像コードの配置情報を含むコンテナデータをブロックデータ内に生成する。これにより、ブロックデータが表示される時に、コンテナデータ内の複数の文字画像コードの文字画像を、同じ行に表示することにより、行末禁止文字と直後の文字とが、異なる行に表示されないようにすることができる。
【００８７】
ブロックデータ２は、文字画像コード７〜文字画像コード９の配置情報を有する。ブロックデータ３は、文字画像コード１０及び文字画像コード１１の配置情報を有する。
【００８８】
文字画像テーブル１３１０には、データ構造１３００に含まれる文字画像コードと関連付けられた文字画像が、文字画像コードと関連づけられて登録される。
【００８９】
オブジェクトサイズ情報テーブル１３２０には、文字画像コードのそれぞれに対して、仮想ボディ領域のサイズ及び文字画像と仮想ボディ領域との位置関係が、文字画像コードと関連づけられて登録される。
【００９０】
図１４は、本明細書に開示するシステムの一実施形態を示す図である。
【００９１】
本実施形態のシステム１は、上述した装置１０と、サーバ２０と、端末３０を備える。装置１０とサーバ２０とは、ネットワークＮを介して、通信可能に接続される。また、サーバ２０と端末３０とは、ネットワークＮを介して、通信可能に接続される。更に、装置１０と端末３０とは、ネットワークＮを介して、通信可能に接続されていてもよい。
【００９２】
装置１０は、文字データを有するデータ構造を、ネットワークＮを介して、サーバ２０へ送信する。サーバ２０は、データ構造を記憶する。
【００９３】
サーバ２０は、端末３０からの要求に応じて、文字データを有するデータ構造を、ネットワークＮを介して、端末３０へ送信する。端末３０は、文字データを有するデータ構造を表示して、ユーザが文字データを閲覧する。
【００９４】
上述した本実施形態の装置１０によれば、手書きの文字を入力して、手書き文字の文字画像の文字データを生成できる。また、本実施形態の装置１０によれば、１文字１文字ごとに画像化して保存するため手書き入力した文章を文字の大きさ、行数、配置を端末側で自由に変更可能にリフロー表示させることができる。
【００９５】
本発明では、上述した実施形態の手書き文字の文章を作成する文字データの生成方法、文字データの生成装置及びコンピュータプログラムは、本発明の趣旨を逸脱しない限り適宜変更が可能である。
【符号の説明】
【００９６】
１    システム
１０    文字データの生成装置
１１    処理部
１２    メモリ
１２ａ    記憶媒体
１３    タッチパネル
１４    通信部
２０    サーバ
３０    端末
Ｂ１〜Ｂ３    仮想ボディ領域
Ｆ１〜Ｆ８    文字入力枠
Ｇ１〜Ｇ３    文字画像
Ｐ１〜Ｐ４    入力点
Ｃ１ａ〜Ｃ３ｂ    制御点
Ｍａ、Ｍｂ    ペジェ曲線
Ｎ    ネットワーク
Ｌ１〜Ｌ３    仮想ボディ領域の縦のサイズ
Ｒ１〜Ｒ４    余白領域
Ｅ１    延出領域
Ｅ２    延出領域
【図１】
2019087132.tif 000003
【図２】
2019087132.tif 000004
【図３】
2019087132.tif 000005
【図４】
2019087132.tif 000006
【図５】
2019087132.tif 000007
【図６】
2019087132.tif 000008
【図７】
2019087132.tif 000009
【図８】
2019087132.tif 000010
【図９】
2019087132.tif 000011
【図１０】
2019087132.tif 000012
【図１１】
2019087132.tif 000013
【図１２】
2019087132.tif 000014
【図１３】
2019087132.tif 000015
【図１４】
2019087132.tif 000016