(57)【特許請求の範囲】
【請求項１】
帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を格納する帳票定義格納部と、
データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを格納する帳票出力データ格納部と、
前記帳票定義格納部から読み出した前記帳票定義情報の前記複数の部分定義情報と、前記帳票出力データ格納部から読み出した前記帳票出力データの前記複数の部分出力データとの同定を行う同定処理部と、
前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む埋め込み処理部とを含む
ことを特徴とする帳票作成装置。
【請求項２】
前記同定処理部において部分定義情報と部分出力データとが同定された場合に、前記埋め込み処理部が、前記部分出力データに同定された前記部分定義情報から前記メタ情報を抽出し、抽出した前記メタ情報を、前記部分定義情報に同定された前記部分出力データに埋め込む
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項３】
前記帳票作成装置が、更に、
前記データを格納するデータ格納部と、
前記データと前記帳票定義情報とに基づいて、前記帳票出力データを作成する作成部とを含む
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項４】
前記帳票定義情報が、前記複数の部分定義情報として、複数の罫線座標値と、複数の文字列情報とを含み、
前記帳票出力データが、前記複数の部分出力データとして、複数の罫線と、複数の文字列とを含み、
前記同定処理部が、前記罫線座標値と前記罫線との同定を行い、前記文字列情報と前記文字列との同定を行う
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項５】
前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報における予め定められた位置の第１の座標を抽出し、前記帳票出力データ格納部から読み出した前記帳票出力データにおける予め定められた位置の第２の座標を抽出し、前記第１の座標と前記第２の座標との誤差を算出し、前記誤差に基づいて、前記帳票定義格納部から読み出した前記帳票定義情報を補正した後に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項６】
前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報から第１の用紙サイズを算出し、前記帳票出力データ格納部から読み出した前記帳票出力データから第２の用紙サイズを算出し、前記第１の用紙サイズと前記第２の用紙サイズとが一致する場合に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項７】
前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報において、最初に現れる第１の罫線から次に存在する第２の罫線までの第１の距離を算出し、前記帳票出力データ格納部から読み出した前記帳票出力データにおいて、最初に現れる第３の罫線から次に存在する第４の罫線までの第２の距離を算出し、前記第１の距離と前記第２の距離との比を算出し、前記比に基づいて、前記帳票定義格納部から読み出した前記帳票定義情報を補正した後に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
ことを特徴とする請求項１に記載の帳票作成装置。
【請求項８】
帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を読み出し、
データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを読み出し、
読み出した前記帳票定義情報の前記複数の部分定義情報と、読み出した前記帳票出力データの前記複数の部分出力データとの同定を行い、
前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報と同定された部分出力データに埋め込む
ことを特徴とする、コンピュータが実行する帳票作成方法。
【請求項９】
帳票作成装置を実現するプログラムであって、
前記プログラムは、コンピュータに、
帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を読み出す処理と、
データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを読み出す処理と、
読み出した前記帳票定義情報の前記複数の部分定義情報と、読み出した前記帳票出力データの前記複数の部分出力データとの同定を行う処理と、
前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報と同定された部分出力データに埋め込む処理とを実行させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票作成装置、帳票作成方法、プログラムに関する。
【背景技術】
【０００２】
帳票は、帳票作成装置によって作成され、紙の上に印刷出力される。また、いわゆる電子帳票が、帳票作成装置によって作成される場合もある。
【０００３】
帳票は、本来の帳票として利用される以外に、検索、仕分け、マージ、帳票保管等の目的で使用される、換言すれば、２次利用される場合がある。２次利用のためには、帳票それ自体の電子データ又は電子帳票とは別に、帳票又は電子帳票に記載される文字列の位置を示す位置情報や、帳票の定型的な書式構造を示す書式情報が必要となる。そこで、２次利用のための情報が、印刷出力された帳票から抽出される。
【０００４】
例えば、画像入力部より生成される帳票の入力画像に対して、特徴抽出部より抽出された図形特徴量を特徴構造化部でグループ化し、それぞれの特徴間の関係を抽出・管理し、構造化特徴と、書式構造種別同定部で予め登録されている処理対象文書の書式構造に関する情報（書式構造モデル）を用いて入力文書の書式構造の種別を推定し、書式構造情報照合部は、推定された書式構造の種別に対応する書式構造モデルと入力文書の構造化特徴の間で、詳細な対応関係を抽出し、未対応・矛盾対応発見修正部で対応関係の整合を得た後、文書構造獲得部でその対応関係に基づき予め登録されている書式構造モデルに関する情報を入力文書にコピーすることで入力文書の構造及び関連知識を獲得することが提案されている。
【０００５】
また、帳票からファイル情報または画像情報を入力し、入力された帳票の記入領域を抽出して取得し、取得した記入領域内の文字または記号情報から帳票に記入する情報の内容を暗示するラベル名を取得し、ラベル名とそれに対応する記入領域の書式設定の情報を有する書式情報テーブルを保持し、ラベル名から書式情報テーブルを探索して、ラベル名に対応する帳票の記入領域の書式設定を取得し、取得した記入領域とラベル名と書式設定とを出力することが提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−０７７２９４号公報
【特許文献２】特開２００９−２３８２１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したように、帳票のいずれかの項目についての２次利用のための情報は、印刷出力された帳票から抽出することができる。しかし、２次利用する項目についてのみ、２次利用のための情報が抽出される。換言すれば、指定された項目についてのみ２次利用のための情報が抽出され、指定から漏れた項目については２次利用のための情報が抽出されない。後発的に２次利用したい項目が発生した場合には、２次利用のための情報を抽出する処理を、再度、実行する必要がある。更に、抽出された帳票の２次利用のための情報は、帳票出力データを格納するファイルとは別のファイルに格納され、別のデータとして保管されるのみであり、管理が不便である。
【０００８】
また、帳票のいずれかの項目についての２次利用のための情報は、例えば表示装置の画面上に表示された帳票から抽出することができる。しかし、この場合にも、前述の問題があることに加えて、帳票を画面表示させた状態で、オペレータが、個々の項目毎に２次利用のための情報を抽出する必要があるので、作業が煩わしい。
【０００９】
本発明は、1側面では、帳票出力データに当該帳票のメタ情報を埋め込むことができる帳票作成装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
１態様では、帳票作成装置は、帳票定義格納部と、帳票出力データ格納部と、同定処理部と、埋め込み処理部とを含む。帳票定義格納部は、帳票を定義する情報であって、複数の部分定義情報を含み、複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を格納する。帳票出力データ格納部は、データと帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを格納する。同定処理部は、帳票定義格納部から読み出した帳票定義情報の複数の部分定義情報と、帳票出力データ格納部から読み出した帳票出力データの複数の部分出力データとの同定を行う。埋め込み処理部は、帳票定義情報の複数の部分定義情報からメタ情報を抽出し、同定の結果に基づいて、抽出したメタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む。
【発明の効果】
【００１１】
帳票出力データに当該帳票のメタ情報を埋め込むことができる。
【図面の簡単な説明】
【００１２】
【図１】帳票作成装置の構成の一例等についての説明図である。
【図２】帳票作成装置の構成の一例を示す図である。
【図３】帳票の一例を示す図である。
【図４】帳票定義情報の一例を示す図である。
【図５】帳票定義情報の一例を示す図である。
【図６】帳票定義情報の説明図である。
【図７】帳票出力データの説明図である。
【図８】帳票定義情報の説明図である。
【図９】帳票出力データの説明図である。
【図１０】帳票定義情報の一例を示す図である。
【図１１】帳票定義情報の一例を示す図である。
【図１２】帳票出力データの一例を示す図である。
【図１３】メタ情報の埋め込み処理の説明図である。
【図１４】メタ情報の埋め込み処理の説明図である。
【図１５】メタ情報の埋め込み処理の説明図である。
【図１６】メタ情報の埋め込み処理フローである。
【図１７】同定処理フローである。
【図１８】同定処理フローである。
【発明を実施するための形態】
【００１３】
図１は、帳票作成装置の構成の一例を示す図である。
【００１４】
帳票作成装置１は、帳票定義格納部２と、データ格納部３と、作成部４と、帳票出力データ格納部５と、メタ情報処理部６と、メタ情報付き帳票格納部９とを含む。メタ情報処理部６は、同定処理部７と、埋め込み処理部８とを含む。メタ情報付き帳票格納部９は、メタ情報付き換言すればメタ情報を埋め込まれた帳票出力データ９０、メタ情報９１を含む。
【００１５】
帳票定義格納部２は、帳票を定義する情報である帳票定義情報を格納する。帳票定義情報は、複数の部分定義情報を含む。複数の部分定義情報は、例えば、複数の罫線座標値と、複数の文字列情報を含む。換言すれば、１本の罫線について、その始点を表す座標値とその終点を表す座標値の対を含む、１個の部分定義情報が存在する。また、１個の文字列について、１個の部分定義情報が存在する。また、帳票定義情報は、複数の部分定義情報の各々に対応するメタ情報を含む。帳票定義格納部２に格納された帳票定義情報は、作成部４に読み出され、帳票出力データの作成処理に用いられる。また、帳票定義格納部２に格納された帳票定義情報は、メタ情報処理部６に読み出され、メタ情報の同定処理及び埋め込み処理に用いられる。
【００１６】
データ格納部３は、データを格納する。データは、帳票の作成のためのデータであって、例えば、売上を示す数値や、「売上日」のような文字列である。データは、実際に帳票を印刷出力するためのデータである帳票出力データと区別される。データ格納部３に格納されたデータは、作成部４に読み出され、帳票出力データの作成処理に用いられる。
【００１７】
作成部４は、データ格納部３から読み出したデータと、帳票定義格納部２から読み出した帳票定義情報とに基づいて、帳票出力データを作成する。作成された帳票出力データは、帳票出力データ格納部５に格納される。帳票出力データは、前述したように、実際に帳票を印刷出力するためのデータであり、電子帳票であると考えても良い。
【００１８】
作成部４は、作成された帳票出力データを、例えばプリンタから印刷出力する。換言すれば、作成部４は、帳票を紙の上に印刷出力する。なお、作成部４による印刷出力を省略するようにしても良い。
【００１９】
帳票出力データ格納部５は、データと帳票定義情報とに基づいて作成された帳票出力データを格納する。帳票出力データは、複数の部分出力データを含む。複数の部分帳票出力情報は、例えば、複数の罫線についての情報と、複数の文字列についての情報を含む。換言すれば、１本の罫線について、１個の部分帳票出力情報が存在する。また、１個の文字列について、１個の部分帳票出力情報が存在する。
【００２０】
なお、帳票出力データは、作成部４以外の他の文書作成装置により作成されたものを、帳票出力データ格納部５に読み込んだものであっても良い。また、帳票出力データは、作成部４により作成されたものを、スキャナ装置により読み込んで文字認識することにより得たものであっても良い。
【００２１】
メタ情報処理部６は、帳票定義格納部２から読み出した帳票定義情報からメタ情報を抽出して、抽出したメタ情報を帳票出力データ格納部５から読み出した帳票出力データに埋め込む。これにより、メタ情報を埋め込まれた帳票出力データ９０が生成される。メタ情報を埋め込まれた帳票出力データ９０は、メタ情報付き帳票格納部９に格納される。
【００２２】
メタ情報処理部６において、同定処理部７は、帳票定義格納部２から読み出した帳票定義情報に含まれる複数の部分定義情報と、帳票出力データ格納部５から読み出した帳票出力データに含まれる複数の部分出力データとの同定を行う。この時、同定処理部７は、罫線座標値と罫線とを相互に同定し、文字列情報と文字列とを相互に同定する。
【００２３】
ここで、部分定義情報と部分出力データとの同定とは、部分定義情報と部分出力データとを比較して、相互に一致するものを抽出することである。換言すれば、部分定義情報に同定された部分出力データは、部分定義情報と一致した部分出力データであり、部分出力データに同定された部分定義情報は、部分出力データと一致した部分定義情報である。部分定義情報と部分出力データとが一致するか否かは、後述するように、同定処理部７において、部分定義情報の特徴情報と、部分出力データの特徴情報とを用いて判断される。
【００２４】
メタ情報処理部６において、埋め込み処理部８は、帳票定義情報の複数の部分定義情報からメタ情報を抽出し、同定の結果に基づいて、抽出したメタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む。
【００２５】
メタ情報は、帳票定義情報に含まれる情報であって、当該帳票又は帳票出力データのデザインに用いられる情報である。メタ情報の一例を挙げると、メタ情報には、例えば、後述するように、項目名、項目種別、罫線の座標、文字列の座標原点、文字列の領域長等が含まれる。メタ情報は、当該帳票又は帳票出力データのデザインに用いられる情報であれば、項目名等以外の情報であっても良い。
【００２６】
この時、埋め込み処理部８は、同定処理部７において部分定義情報と部分出力データとが同定された場合に、部分出力データに同定された部分定義情報からメタ情報を抽出し、抽出したメタ情報を、部分定義情報に同定された部分出力データに埋め込む。従って、部分出力データに同定されない部分定義情報からはメタ情報は抽出されず、また、部分定義情報に同定されない部分出力データにはメタ情報は埋め込まれない。
【００２７】
メタ情報付き帳票格納部９は、メタ情報９１を含む、換言すれば、メタ情報が埋め込まれた帳票出力データ９０を格納する。メタ情報９１は、相互に同定された部分定義情報から抽出され、相互に同定された部分出力データに埋め込まれる。従って、メタ情報９１は、実際には、メタ情報付き帳票格納部９において１個存在するのではなく、部分出力データ毎に、部分出力データに埋め込まれた形式で存在する。
【００２８】
図２は、帳票作成装置のハードウェア構成の一例を示す図である。
【００２９】
ＣＰＵ１１は、ＲＯＭ１３に格納された制御プログラムに従って、帳票作成装置１を制御する。ＣＰＵ１１は、例えば主メモリであるＲＡＭ１２上の帳票作成プログラムを実行する。換言すれば、作成部４及びメタ情報処理部６が実現される。帳票作成プログラムは、例えば、ＣＤ−ＲＯＭやＤＶＤ等の記録媒体１７に格納され、記録媒体１７からハードディスク１６に入力され、ハードディスク１６からＲＡＭ１２にロードされる。
【００３０】
帳票定義格納部２、データ格納部３、帳票出力データ格納部５、メタ情報付き帳票格納部９は、例えばハードディスク１６に設けられる。換言すれば、帳票定義情報、データ、帳票出力データ、及び、メタ情報を埋め込まれた帳票出力データ９０は、例えばハードディスク１６に格納される。帳票定義情報、データ、及び、帳票出力データは、例えば、ＣＤ−ＲＯＭやＤＶＤ等の記録媒体１７に格納され、記録媒体１７からハードディスク１６に入力され、必要に応じてハードディスク１６からＲＡＭ１２にロードされ、作成部４及びメタ情報処理部６により処理される。メタ情報を埋め込まれた帳票出力データ９０は、例えばハードディスク１６から記録媒体１７に出力される。
【００３１】
入力装置１４は、例えばキーボードであり、マウス等を含んでも良い。出力装置１５は、例えばディスプレイであり、プリンタ等の出力装置を含んでも良い。ＣＰＵ１１、ＲＯＭ１３、ＲＡＭ１２、入力装置１４、出力装置１５、及び、ハードディスク１６は、バス１８を介して、相互に接続される。
【００３２】
次に、作成部４による、帳票出力データの作成について、図３〜図５を参照して、簡単に説明する。前述したように、帳票出力データ格納部５に格納される帳票出力データは、帳票定義格納部２に格納された帳票定義情報とデータ格納部３に格納されたデータとに基づいて作成され、帳票出力データ格納部５に格納される。
【００３３】
図３は、帳票の一例を示す図である。換言すれば、図３は、図３の帳票を出力する帳票出力データであって、帳票出力データ格納部５に格納された帳票出力データの一例を示すと考えて良い。
【００３４】
図３の帳票又は帳票出力データは、前述したように、データと帳票定義情報とに基づいて作成される。データは、データ格納部３から作成部４により読み出される。帳票定義情報は、帳票定義格納部２から作成部４により読み出される。
【００３５】
データは、例えば数値である。数値は、例えば、売上日である「  １／  ５」のような数値、売上げである「３，５００，０００」のような数値を含む。従って、データ格納部３が格納するデータは、図３の帳票又は帳票出力データにおける数値である。データ格納部３が格納するデータにおいて、数値は、対応する項目名に対応して格納される。これにより、後述するように、データ格納部３が格納するデータが、図３の帳票又は帳票出力データに示すように、予め定められた位置に格納される。
【００３６】
帳票定義情報は、例えば罫線の位置、矩形の位置、角丸矩形の位置、数値の位置、文字列及びその位置、画像の位置等である。帳票定義情報は、例えば座標値で定義される。文字列は、図３に示すように、「部署別売上げ一覧」「売上げ集計表」「売上日」等の項目名である。
【００３７】
図３の帳票又は帳票出力データは、前述したように、複数の部分出力データを含む。換言すれば、帳票出力データは、各々が別個の複数の部分出力データの集合である。複数の部分出力データは、複数の罫線と、複数の文字列とを含む。例えば、「売上日」と言う項目名を囲む矩形は、４本の罫線を含む。これらの４本の罫線の各々が、部分出力データである。また、「  １／  ５」のような数値等の各々、及び、「売上日」等の項目名の各々が、１個の部分出力データである。
【００３８】
なお、図３の帳票又は帳票出力データにおいては、文字列の検索のみが可能である。例えば、図３の帳票又は帳票出力データにおける、「営業１課」「３，０００，０００」という文字列は、検索することができる。しかし、図３の帳票又は帳票出力データにおいて、例えば営業１課について３，０００，０００円「以上」の売上げのある日という指定した範囲についての検索は、不可能である。
【００３９】
図４は、帳票定義情報の一例を示す図である。実際には、図４は、図３の帳票を定義する帳票定義情報であって、帳票定義格納部２に格納された帳票定義情報により定義された画面を示す。図４の画面と帳票定義情報とは１対１に対応するので、図４は、帳票定義情報の一例を示すと考えて良い。
【００４０】
図４の帳票定義情報は、前述したように、例えば罫線の位置、矩形の位置、角丸矩形の位置、数値の位置、文字列及びその位置、画像の位置等を含む。帳票定義情報は、例えば座標値、換言すれば、ドットの位置で定義される。文字列は、図４に示すように、「部署別売上げ一覧」「売上げ集計表」「売上日」等の項目名である。
【００４１】
例えば、罫線の位置は、その始点の座標値と、終点の座標値とにより定義される。矩形の位置は、その原点の座標値と、原点の対角の座標値とにより定義される。角丸矩形の位置は、当該角丸矩形の要素である４本の直線により定義され、４角の丸い部分は定義に使用されない。当該４本の直線の位置は、各々、その始点の座標値と、終点の座標値とにより定義される。数値の位置は、その始点の座標値と、終点の座標値とにより定義される。文字列の位置は、その始点の座標値と、終点の座標値とにより定義される。画像の位置は、その原点の座標値と、原点の対角の座標値とにより定義される。
【００４２】
図４の帳票定義情報は、前述したように、複数の部分定義情報を含む。換言すれば、帳票定義情報は、各々が別個に定義された、複数の部分定義情報の集合である。複数の部分定義情報は、複数の罫線座標値と、複数の文字列とを含む。例えば、「売上日」と言う項目名を囲む矩形は、４本の罫線を含む。これらの４本の罫線の座標値の各々が、部分定義情報である。また、「売上日」等の項目名の各々が、１個の部分定義情報である。
【００４３】
例えば、図５（Ａ）及び図５（Ｂ）は、図４において「営業１課」の売上日「Ｚ９／Ｚ９」における売上げ「￥−−，−−−，−−９」についての部分定義情報を示す。なお、「￥−−，−−−，−−９」の末尾の数字「９」は、当該行が売上日の数だけ繰返すことが可能であることを示す制御記号である。
【００４４】
図５（Ａ）は、「￥−−，−−−，−−９」についての部分定義情報において、項目名が「営業１課売上げ」であること、小数部の桁数が「０」であること、項目長が「７」であること、文字列の座標原点が（９０，９２６）であること、文字列の領域長が「１１７６」であること等を定義する情報を含むことを示す。文字列の座標原点は、当該帳票の原点Ｏを基準とした場合における、原点から当該文字列までの距離を表し、当該文字列が印刷出力される矩形の原点、換言すれば、当該矩形の左上の角の座標を表す。当該帳票の原点Ｏは、図４において、項目名「部署別売上げ一覧」のすぐ上の実線の罫線において、Ｙ座標値が「０」の位置である。文字列の座標原点において、「９０」はＸ座標、換言すれば、縦方向の座標を表し、「９２６」はＹ座標、換言すれば、横方向の座標を表す。文字列の座標原点及び文字列の領域長の単位は、「ドット」である。
【００４５】
また、図５（Ｂ）は、当該部分定義情報が、項目分類が「通貨」であること、編集形式が「￥−−−，−−９」であること、負の数は「−」で表示されること、通貨記号は「￥」であること等を定義する情報を含むことを示す。
【００４６】
なお、図５（Ａ）は、タブ「プロパティ」に属する項目について示す。また、図５（Ｂ）は、タブ「編集形式」に属する項目について示す。従って、項目名「営業１課売上げ」についての部分定義情報は、実際には、例えばタブ「フォント」に属する項目等によっても定義される。従って、「￥−−，−−−，−−９」についての部分定義情報は、実際には、例えばタブ「プロパティ」に属する項目等によっても定義される。
【００４７】
図４の帳票定義情報において、抽出可能な情報は、「売上日」「営業１課」等の項目名、項目種別、罫線の座標、文字列の座標原点、文字列の領域長等である。
【００４８】
具体的には、図５（Ａ）において、例えば、「営業１課売上げ」という項目名、「営業１課売上げ」という文字列の座標原点（９０，９２６）、「営業１課売上げ」という文字列の領域長「１１７６」が、抽出可能な情報である。また、図５（Ｂ）において、例えば、「通貨」という項目分類、編集形式「￥−−，−−−，−−９」、通貨記号「￥」が、抽出可能な情報である。この例では、例えば「営業１課売上げ」という項目名、「通貨」という項目分類、換言すれば、項目種別が、メタ情報として抽出される。なお、項目名や項目種別以外の情報をメタ情報として抽出するようにしても良い。
【００４９】
例えば、作成部４は、帳票定義格納部２から読み出した帳票定義情報に基づいて、図３の帳票又は帳票出力データのフォーマットを生成する。例えば、「営業１課売上げ」という文字列が、その部分定義情報に従って、座標原点（９０，９２６）の矩形に配置される。また、複数の罫線が、それらの部分定義情報に従って、配置される。
【００５０】
更に、例えば、作成部４は、データ格納部３から読み出したデータに基づいて、図３の帳票又は帳票出力データのフォーマットに数値を当て嵌める。例えば、記号「／」を２桁の数字で挟んだ形式のデータが、売上日「Ｚ９／Ｚ９」に当て嵌められる。また、先頭の記号「￥」に７桁の数字が続く形式のデータが、売上げ「￥−−，−−−，−−９」に嵌められる。
【００５１】
ここで、部分定義情報は、図４に示すように、「Ｚ９／Ｚ９」「￥−−，−−−，−−９」・・・の１行しか存在しない。一方、部分出力データは、図３に示すように、「  １／  ５」〜「  １／１９」の１０行分が存在する。なお、これは、後述するように、帳票定義情報と帳票出力データとを直接対比できない一因となる。
【００５２】
実際には、作成部４は、データ格納部３から読み出したデータにおいて、例えば「営業１課売上げ」と「  １／  ５」と「￥３，５００，０００」とが記号「，」で区切られている場合に、「営業１課売上げ」の「  １／  ５」の欄に「３，５００，０００」を当て嵌める。そして、更に、その次に、「営業１課売上げ」と「  １／  ９」と「￥１，０００，０００」とが記号「，」で区切られている場合に、「営業１課売上げ」の「  １／  ９」の欄に「１，０００，０００」を当て嵌める。これにより、１行の部分定義情報に対応して、複数の部分出力データが生成される。
【００５３】
次に、メタ情報処理部６による、メタ情報を埋め込まれた帳票出力データ９０の作成について、図６〜図１５を参照して、説明する。前述したように、メタ情報付き帳票格納部９に格納されるメタ情報を埋め込まれた帳票出力データ９０は、帳票定義格納部２に格納された帳票定義情報と帳票出力データ格納部５に格納された帳票出力データとに基づいて作成され、メタ情報付き帳票格納部９に格納される。
【００５４】
実際の同定処理に先立って、同定処理部７は、同定処理の前処理を実行する。同定処理の前処理としては、用紙サイズについての処理、余白についての処理、及び、拡大縮小についての処理がある。同定処理の前処理は、メタ情報処理部６が実行するようにしても良い。
【００５５】
同定処理の前処理において、同定処理部７は、用紙サイズについての処理を実行する。例えば、帳票定義情報がＡ４版の帳票について定義しており、一方、帳票出力データがＢ５版の帳票についてのものであるとする。この場合、両者は、異なる帳票についての情報又はデータである可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部７は、帳票定義情報の用紙サイズと帳票出力データの用紙サイズとが一致する場合に、同定処理を実行する。用紙の大きさは、例えば、帳票定義情報及び帳票出力データにおいて、用紙の版数を用いて規定される。
【００５６】
具体的には、同定処理部７は、帳票定義格納部２から読み出した帳票定義情報から、用紙の版数に基づいて、第１の用紙サイズを算出する。また、同定処理部７は、帳票出力データ格納部５から読み出した帳票出力データから、用紙の版数に基づいて、第２の用紙サイズを算出する。第１の用紙サイズと第２の用紙サイズとが一致する場合に、同定処理部７は、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
【００５７】
また、同定処理の前処理において、同定処理部７は、余白についての処理を実行する。例えば、帳票定義情報には存在しない余白が、帳票出力データに付加される場合がある。これは、例えば、帳票出力データを印刷出力する形式に変換する場合に、プリンタにより付加される領域であり、印刷が不可能な領域である。
【００５８】
この余白の存在により、図６及び図７に示すように、帳票定義情報における罫線の開始位置と、帳票出力データにおける罫線の開始位置とが異なる場合がある。罫線の開始位置とは、図６の帳票定義情報における罫線の左上の角の位置、又は、図７の帳票出力データにおける罫線の左上の角の位置である。具体的には、図６及び図７において、丸で囲んだ数字１により示すように、帳票定義情報の原点座標から罫線の開始位置までの距離と、帳票出力データの原点座標から罫線の開始位置までの距離とが異なる場合がある。
【００５９】
なお、例えば、図面において丸で囲んだ「数字１」を、明細書においては「符号＃１」ということとする。他の丸で囲んだ数字についても、同様である。
【００６０】
この場合、帳票定義情報に含まれる部分定義情報と、帳票出力データに含まれる部分出力データとを、直接比較しても、両者が一致しない可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部７は、帳票定義情報における罫線の開始位置左上の角の位置と、帳票出力データにおける罫線の開始位置とが一致する場合に、同定処理を実行する。
【００６１】
具体的には、同定処理部７は、帳票定義格納部２から読み出した帳票定義情報における予め定められた位置の第１の座標を抽出する。第１の座標は、例えば、図６の帳票定義情報において最初に現れる罫線の開始位置である。また、同定処理部７は、帳票出力データ格納部５から読み出した帳票出力データにおける予め定められた位置の第２の座標を抽出する。第２の座標は、例えば、図７の帳票出力データおいて最初に現れる罫線の開始位置である。
【００６２】
最初に現れる罫線は、帳票定義情報又は帳票出力データにおいて、最小のＸ座標を有し、かつ、最小のＹ座標を有する罫線である。以上は、文字列等の罫線以外のものの抽出についても同様である。
【００６３】
更に、同定処理部７は、第１の座標と第２の座標との誤差を算出する。この誤差が余白に相当する。更に、同定処理部７は、誤差に基づいて、帳票定義格納部２から読み出した帳票定義情報を補正した後に、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
【００６４】
更に、同定処理の前処理において、同定処理部７は、拡大縮小についての処理を実行する。例えば、帳票定義情報において定義されたサイズよりも、帳票出力データが拡大又は縮小されている場合がある。
【００６５】
この拡大又は縮小により、図６の帳票定義情報における罫線の定義された位置と、図７の帳票出力データにおける罫線の位置とが異なる場合がある。具体的には、図６及び図７において符号＃１により示すように、帳票定義情報の原点座標から罫線の開始位置までの距離と、帳票出力データの原点座標から罫線の開始位置までの距離とが異なる場合がある。
【００６６】
この場合、帳票定義情報に含まれる部分定義情報と、帳票出力データに含まれる部分出力データとを、直接比較しても、両者が一致しない可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部７は、帳票定義情報における罫線の位置と、帳票出力データにおける罫線の位置とが一致する場合に、同定処理を実行する。
【００６７】
具体的には、同定処理部７は、帳票定義格納部２から読み出した帳票定義情報において、最初に現れる第１の罫線から次に存在する第２の罫線までの第１の距離を算出する。第１の距離は、例えば、図６の帳票定義情報において、最初に現れる縦方向の罫線と、次に現れる縦方向の罫線との間の距離である。換言すれば、第１の距離は、図６において、文字列「売上日」を挟む左右の罫線の距離である。また、同定処理部７は、帳票出力データ格納部５から読み出した帳票出力データにおいて、最初に現れる第３の罫線から次に存在する第４の罫線までの第２の距離を算出する。第２の距離は、例えば、図７の帳票出力データにおいて、最初に現れる縦方向の罫線と、次に現れる縦方向の罫線との間の距離である。換言すれば、第２の距離は、図７において、文字列「売上日」を挟む左右の罫線の距離である。
【００６８】
なお、第１の距離として、図６の帳票定義情報において、最初に現れる横方向の罫線と、次に現れる横方向の罫線との間の距離を用いるようにしても良い。この場合、第２の距離として、図７の帳票出力データにおいて、最初に現れる横方向の罫線と、次に現れる横方向の罫線との間の距離が用いられる。
【００６９】
更に、同定処理部７は、第１の距離と第２の距離との比を算出する。更に、同定処理部７は、この比に基づいて、帳票定義格納部２から読み出した帳票定義情報を補正した後に、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
【００７０】
同定処理の前処理の後に、同定処理部７は、図６及び図７に示すように、例えば罫線についての同定処理を実行する。帳票定義情報又は帳票出力データのいずれかに全く罫線が存在しない場合、罫線についての同定処理は実行されない。
【００７１】
具体的には、同定処理部７は、予め定められた順で、図６の帳票定義情報における罫線についての部分定義情報と、図７の帳票出力データにおける罫線についての部分帳票出力データとの同定を行う。ここで、前述したように、例えば、図６における「売上日」の行数よりも図７における「売上日」の行数が多く、従って、図６の罫線の数よりも図７の罫線の数が多い。このため、同定処理部７は、実際には、図７の帳票出力データにおける罫線についての部分帳票出力データを１個取り出して、図６の帳票定義情報における罫線についての部分定義情報と比較する。
【００７２】
例えば、同定処理部７は、縦方向の罫線についての同定処理を実行し、その後、横方向の罫線についての同定処理を実行する。横方向の罫線についての同定処理を先に実行するようにしても良い。更に、縦方向の罫線についての同定処理において、同定処理部７は、図６及び図７において符号＃１〜＃３により示すように、始点のＹ座標の値が小さい罫線から順に同定処理を実行し、始点のＹ座標の値が同一である場合には、始点のＸ座標の値が小さい罫線から順に同定処理を実行する。また、横方向の罫線についての同定処理において、同定処理部７は、始点のＸ座標の値が小さい罫線から順に同定処理を実行し、始点のＸ座標の値が同一である場合には、始点のＹ座標の値が小さい罫線から順に同定処理を実行する。
【００７３】
Ｘ座標及びＹ座標は、後述するように、部分定義情報又は部分出力データに含まれる。Ｘ座標及びＹ座標は、原点座標からのＸ方向及びＹ方向の距離を表す。帳票定義情報の原点座標は、帳票定義情報に含まれる。帳票出力データの原点座標は、帳票出力データに含まれる。
【００７４】
以上から、同定処理部７は、最初に、図７の帳票出力データにおいて、項目名「売上日」の矩形の左辺である罫線、「  １／  ５」の矩形の左辺である罫線、・・の順で、このＹ座標を有する縦方向の罫線について、同定処理を実行する。この後、同定処理部７は、図７の帳票出力データにおいて、項目名「売上日」の矩形の右辺である罫線、「  １／  ５」の矩形の右辺である罫線、・・の順で、このＹ座標を有する縦方向の罫線について、同定処理を実行する。
【００７５】
また、前述したように、部分定義情報における「Ｚ９／Ｚ９」の１行に対して、部分出力データは、「  １／  ５」〜「  １／１９」の１０行分が存在する。従って、「Ｚ９／Ｚ９」についての１個の部分定義情報に対して、複数の罫線についての部分出力データが同定されることになる。この場合、同定処理部７は、帳票出力データにおいて、複数の罫線についての部分出力データに対して、同一の罫線名に罫線番号を付加して区別する。文字列等の罫線以外の物についても同様である。
【００７６】
更に、同定処理部７は、図７の帳票出力データにおいて、Ｙ座標の最も大きい縦方向の罫線について同定処理を終了した後、更に、図７の帳票出力データにおいて、項目名「部署別売上げ一覧」の下線である罫線、項目名「売上日」の矩形の上辺である罫線、「営業１課」の矩形の上辺である罫線、・・の順で、このＸ座標を有する横方向の罫線について、同定処理を実行する。この後、同定処理部７は、図７の帳票出力データにおいて、項目名「  １／  ５」の矩形の上辺である罫線、「￥３，５００，０００」の矩形の上辺である罫線、・・の順で、このＸ座標を有する横方向の罫線について、同定処理を実行する。
【００７７】
前述したように、帳票定義情報における文字列と帳票出力データにおける文字列が一致するとしても、余白や拡大縮小により、両者の位置が異なる場合がある。また、例えば、部分定義情報「Ｚ９／Ｚ９」と部分出力データ「  １／  ５」とは、文字列としては、直接には一致しない。このような場合でも、全ての罫線について同定処理を実行することにより、罫線についての同定処理に基づいて、文字列の同定を容易にすることができる。
【００７８】
同定処理の前処理の後であって、罫線についての同定処理の後、同定処理部７は、図８及び図９に示すように、例えば文字列についての同定処理を実行する。
【００７９】
具体的には、同定処理部７は、予め定められた順で、図８の帳票定義情報における文字列についての部分定義情報と、図９の帳票出力データにおける文字列についての部分帳票出力データとの同定を行う。ここで、前述したように、例えば、図８における「売上日」の行数よりも図９における「売上日」の行数が多い。このため、同定処理部７は、実際には、図９の帳票出力データにおける文字列についての部分帳票出力データを１個取り出して、図８の帳票定義情報における文字列についての部分定義情報と比較する。
【００８０】
例えば、同定処理部７は、図９において符号＃１〜＃３により示すように、上の行から下の行の方向へ、順に文字列についての同定処理を実行する。換言すれば、Ｘ座標の小さい順に同定処理が実行される。更に、同定処理部７は、同一の行において、左から右の方向へ、順に同定処理を実行する。換言すれば、Ｘ座標が同一である場合には、Ｙ座標の小さい順に同定処理が実行される。
【００８１】
この時、文字列についての同定処理において、罫線についての同定処理の結果が用いられる。帳票定義情報及び帳票出力データにおいて、相互に同定された２本の罫線に挟まれた文字列は、同一の文字列である可能性が高い。一方、本来は同一の文字列であるにも拘わらず、帳票定義情報における文字列と帳票出力データにおける文字列とが異なる場合がある。そこで、同定処理部７は、異なる文字を含む文字列であっても、当該文字列が帳票定義情報及び帳票出力データにおいて相互に同定された２本の罫線に挟まれている場合には、当該文字列の同定を行う。
【００８２】
以上から、同定処理部７は、最初に、図９の帳票出力データにおいて、文字列「部署別売上げ一覧」「○○○○株式会社」「売上げ集計表」「単位：円」「売上日」「営業１課」「営業２課」・・の順で、同定処理を実行する。
【００８３】
次に、埋め込み処理部８が実行するメタ情報の埋め込み処理について、図１０〜図１５を参照して、説明する。
【００８４】
埋め込み処理部８は、同定処理部７において部分定義情報と部分出力データとが同定された場合に、部分出力データに同定された部分定義情報からメタ情報を抽出する。例えば、埋め込み処理部８は、図１０に示すように、項目名「営業１課売上げ」の部分定義情報が部分出力データと同定された場合、項目名「営業１課売上げ」の部分定義情報から、メタ情報を抽出する。メタ情報としては、例えば、項目名、文字列の座標原点、文字列の領域長が抽出される。なお、図１０の項目名「営業１課売上げ」についての部分定義情報は、図５（Ａ）の項目名「営業１課売上げ」についての部分定義情報、換言すれば、図４における、営業１課の売上げである「￥−−，−−−，−−９」についての部分定義情報を示す。埋め込み処理部８は、抽出されたメタ情報を、項目名「営業１課売上げ」の部分定義情報に同定された部分出力データに埋め込む。
【００８５】
メタ情報を部分定義情報から抽出できるのは、図１１に示すように、各々の部分定義情報がメタ情報を含むからである。図１１において、文字列特徴情報、矩形特徴情報、画像特徴情報、直線特徴情報、角丸矩形特徴情報が、各々、部分定義情報である。換言すれば、例えば、文字列の部分定義情報が、帳票定義情報における文字列特徴情報である。
【００８６】
例えば、帳票定義情報における文字列特徴情報は、項目定義属性情報として、文字列、文字列開始座標等を含み、メタ情報として、項目名、項目種別等を含む。従って、帳票定義情報における文字列特徴情報に基づいて、項目名を抽出し、文字列開始座標を文字列の座標原点として抽出し、文字列長を文字列の領域長として抽出することができる。
【００８７】
なお、図１１において、直線特徴情報は、矩形特徴情報と角丸矩形特徴情報とから、直線項目名を用いて参照される。従って、実際には、矩形特徴情報及び角丸矩形特徴情報は、各々、４個の直線特徴情報を参照する。
【００８８】
これに対して、図１２に示すように、各々の部分出力データは、メタ情報を含まない。
図１２において、文字列特徴情報、矩形特徴情報、画像特徴情報、直線特徴情報、角丸矩形特徴情報が、各々、部分出力データである。換言すれば、例えば、文字列の部分出力データが、帳票出力データにおける文字列特徴情報である。
【００８９】
例えば、帳票出力データにおける文字列特徴情報は、項目定義属性情報として、文字列、文字列開始座標等を含むが、メタ情報を含まない。従って、帳票出力データにおける文字列特徴情報からはメタ情報を抽出することができない。
【００９０】
また、帳票出力データにおける文字列特徴情報は、図１１に示すように、その末尾にメタ情報を付加することができない。例えば、ＰＤＦ（Portable Document Format）に従う帳票出力データにおいては、そのフォーマットの規定により、文字列特徴情報の末尾にメタ情報を付加することができない。
【００９１】
そこで、埋め込み処理部８は、帳票出力データにおける部分出力データの内部に、メタ情報を埋め込む。これにより、帳票出力データのフォーマットの規定に従いつつ、帳票出力データにメタ情報を持たせることができる。
【００９２】
図１３〜図１５は、帳票出力データへのメタ情報の埋め込みについての説明図である。
【００９３】
例えば、図１３（Ａ）に示す部分定義情報の全体を示すと、図１３（Ｂ）に示すようになるとする。図１３（Ａ）の部分定義情報は、図４における「営業１課」の売上高の「合計」を示す「￥−−，−−−，−−−，−−９」についての部分定義情報を示すものとする。
【００９４】
ここで、帳票出力データにおいて、「営業１課」の売上高の「合計」が、図１４（Ａ）及び図１４（Ｂ）に示すように、「￥７７，２００，０００」であるとする。なお、図１４（Ａ）は及び図１４（Ｂ）は、図４における「営業１課」の売上高の「合計」に関連する部分を抜粋して示す。
【００９５】
この場合、帳票出力データにおいて、「営業１課」の売上高の「合計」についての部分出力データは、図１４（Ｃ）に示すようになる。図１４（Ｃ）から判るように、「営業１課」の売上高の「合計」についての部分出力データは、メタ情報を含まない。
【００９６】
これに対して、メタ情報付き帳票格納部９に格納された、メタ情報が埋め込まれた帳票出力データ９０は、図１５に示すようになる。図１４（Ｃ）と図１５との対比から判るように、「営業１課」の売上高の「合計」についての部分出力データには、その中間部分に、メタ情報「営業１課売上げ合計―００１」が埋め込まれている。これにより、ＰＤＦのような帳票出力データのフォーマットに従いつつ、帳票出力データにメタ情報を持たせることができる。
【００９７】
図１６は、メタ情報の埋め込み処理フローであり、図１７及び図１８は、同定処理フローである。
【００９８】
図１６において、同定処理部７は、帳票定義格納部２から帳票定義情報（Ｆｄ）を読み込み（ステップＳ１１）、帳票出力データ格納部５から帳票出力データ（Ｆｏ）を読み込む（ステップＳ１２）。ステップＳ１１とステップＳ１２は、いずれの処理を先に実行しても良い。
【００９９】
この後、同定処理部７は、帳票定義情報（Ｆｄ）の用紙サイズを算出すると共に、帳票定義情報（Ｆｄ）の原点座標を取得する（ステップＳ１３）。また、同定処理部７は、帳票出力データ（Ｆｏ）の用紙サイズを算出すると共に、帳票出力データ（Ｆｏ）の原点座標を取得する（ステップＳ１４）。ステップＳ１３とステップＳ１４は、いずれの処理を先に実行しても良い。
【０１００】
なお、実際には、ステップＳ１３及びステップＳ１４の実行の後、同定処理部７は、前述したように、帳票定義情報（Ｆｄ）の用紙サイズと帳票出力データ（Ｆｏ）の用紙サイズとを比較し、両者が一致しない場合には、処理を終了する。両者が一致する場合には、ステップＳ１５が実行される。
【０１０１】
この後、同定処理部７は、帳票定義情報（Ｆｄ）において、左上の端部にある、換言すれば、最少のＸ座標及び最少のＹ座標を有する部分定義情報を取得して、取得した座標を処理対象座標（Ａ１）とする（ステップＳ１５）。また、同定処理部７は、帳票出力データ（Ｆｏ）において、左上の端部にある、換言すれば、最少のＸ座標及び最少のＹ座標を有する部分出力データを取得して、取得した座標を処理対象座標（Ｂ１）とする（ステップＳ１６）。ステップＳ１５とステップＳ１６は、いずれの処理を先に実行しても良い。
【０１０２】
この後、同定処理部７は、帳票定義情報（Ｆｄ）における処理対象座標（Ａ１）と、帳票出力データ（Ｆｏ）における処理対象座標（Ｂ１）との誤差を算出し、これを補正値（Ｃ）とし、帳票出力データ（Ｆｏ）の全座標を、補正値（Ｃ）により補正する（ステップＳ１７）。
【０１０３】
なお、実際には、ステップＳ１７において、補正値（Ｃ）による補正処理の実行の後、同定処理部７は、前述したように、帳票定義情報（Ｆｄ）と帳票出力データ（Ｆｏ）との拡大縮小の比を算出し、これを用いて、再度、帳票出力データ（Ｆｏ）の全座標を補正する。これにより、帳票定義情報（Ｆｄ）と帳票出力データ（Ｆｏ）とを比較することができる。
【０１０４】
以上により、同定処理部７は、同定処理の前処理を終了して、罫線の同定処理を実行し、その後、文字列等の罫線以外のものの同定処理を実行する。換言すれば、同定処理部７は、同定処理の対象を罫線としてステップＳ１８〜Ｓ１１４を実行し、その後、同定処理の対象を文字列等の罫線以外のものとしてステップＳ１８〜Ｓ１１４を実行する。同定処理の対象が罫線であるか罫線以外であるかは、部分定義情報又は部分出力データに基づいて判断される。
【０１０５】
同定処理部７は、帳票定義情報（Ｆｄ）における処理対象座標（Ａ１）を有する部分定義情報から、当該部分定義情報の終点を抽出し、処理対象座標（Ａ２）とする（ステップＳ１８）。また、同定処理部７は、帳票出力データ（Ｆｏ）における処理対象座標（Ｂ１）を有する部分出力データから、当該部分定義情報の終点を抽出し、処理対象座標（Ｂ２）とする（ステップＳ１９）。ステップＳ１８とステップＳ１９は、いずれの処理を先に実行しても良い。
【０１０６】
この後、同定処理部７は、処理対象座標（Ａ１）及び処理対象座標（Ａ２）と、処理対象座標（Ｂ１）及び処理対象座標（Ｂ２）とが一致するか否かを判断する（ステップＳ１１０）。一致判断において、処理対象座標（Ａ１）及び処理対象座標（Ａ２）として、後述する図１７の処理により帳票定義情報（Ｆｄ）から抽出された特徴情報に含まれる座標が用いられる。また、処理対象座標（Ｂ１）及び処理対象座標（Ｂ２）として、後述する図１８の処理により帳票出力データ（Ｆｏ）から抽出された特徴情報に含まれる座標が用いられる。なお、一致判断において、後述する図１７の処理により帳票定義情報（Ｆｄ）から抽出された特徴情報と、後述する図１８の処理により帳票出力データ（Ｆｏ）から抽出された特徴情報とを用いるようにしても良い。
【０１０７】
ステップＳ１１０において、両者が一致しない場合（ステップＳ１１０  Ｎｏ）、ステップＳ１１１は省略され、ステップＳ１１３が実行される。
【０１０８】
ステップＳ１１０において、両者が一致する場合（ステップＳ１１０  Ｙｅｓ）、同定処理部７は、両者が相互に同定されたと判断し、この同定結果に基づいて、埋め込み処理部８が、帳票定義情報（Ｆｄ）における処理対象座標（Ａ１）を有する部分定義情報からメタ情報を抽出し、帳票出力データ（Ｆｏ）における処理対象座標（Ｂ１）を有する部分出力データに埋め込む（ステップＳ１１１）。
【０１０９】
この後、同定処理部７は、帳票定義情報（Ｆｄ）において、Ｙ方向、換言すれば、縦方向に、処理対象座標の次の候補点を探索し、抽出された候補点を新たな処理対象座標（Ａ１）とし（ステップＳ１１２）、ステップＳ１８を繰り返す。また、同定処理部７は、帳票出力データ（Ｆｏ）において、Ｙ方向、換言すれば、縦方向に、処理対象座標の次の候補点を探索し、抽出された候補点を新たな処理対象座標（Ｂ１）とする（ステップＳ１１３）。ステップＳ１１１の後、ステップＳ１１２とステップＳ１１３は、いずれの処理を先に実行しても良い。ステップＳ１１２については、図１７を参照して後述する。ステップＳ１１３については、図１８を参照して後述する。
【０１１０】
ステップＳ１１３の後、同定処理部７は、ステップＳ１１３において、候補点が有るか否かを判断する（ステップＳ１１４）。候補点が有る場合（ステップＳ１１４  Ｙｅｓ）、ステップＳ１９が繰り返される。候補点が無い場合（ステップＳ１１４  Ｎｏ）、処理を終了する。
【０１１１】
図１７において、同定処理部７は、帳票定義情報（Ｆｄ）において、左上から右下の方向に向けて、開始座標から、新たな処理対象（オブジェクト）を探索する（ステップＳ２１）。探索は、左上から右下の方向に向けて、換言すれば、Ｘ座標又はＹ座標が大きくなる方向へ向けて、実行される。開始座標は、処理対象座標（Ａ１）の終点の座標（Ａ２）である。以下の説明において、処理対象を単に「オブジェクト」と言うこととする。
【０１１２】
この後、同定処理部７は、探索したオブジェクトの種類が何であるかを判断する（ステップＳ２２）。
【０１１３】
オブジェクトの種類が文字、換言すれば、文字列である場合、同定処理部７は、当該文字列の部分定義情報から、当該文字列の開始座標及び終点座標を抽出し（ステップＳ２３）、更に、当該文字列の特徴情報を抽出する（ステップＳ２４）。終点座標は、ステップＳ１８における終点座標として用いられる。当該文字列の特徴情報としては、前記開始座標及び終点座標に加えて、例えば、文字コード、フォントのサイズ、フォントの種別、文字の色等がある。
【０１１４】
オブジェクトの種類が直線、換言すれば、罫線である場合、同定処理部７は、当該直線の部分定義情報から、当該直線の始点座標及び終点座標を抽出し（ステップＳ２５）、更に、当該直線の特徴情報を抽出する（ステップＳ２６）。終点座標は、ステップＳ１８における終点座標として用いられる。当該直線の特徴情報としては、前記始点座標及び終点座標に加えて、例えば、線幅、線種、線の色等がある。
【０１１５】
なお、前述したように、罫線についての処理が、文字列等の罫線以外のオブジェクトについての処理よりも、先行して実行される。罫線についての処理においてはステップＳ２５が選択され、罫線以外のオブジェクトについての処理においてはステップＳ２３、Ｓ２７、Ｓ２１０、Ｓ２１３が選択される。
【０１１６】
オブジェクトの種類が矩形である場合、同定処理部７は、当該矩形を４本の直線に分解し（ステップＳ２７）、当該矩形の部分定義情報から、４本の直線の各々について、当該直線の始点座標及び終点座標を抽出し（ステップＳ２８）、更に、当該矩形の特徴情報を抽出する（ステップＳ２９）。４本の直線の終点座標のいずれかが、ステップＳ１８における終点座標として用いられる。当該矩形の特徴情報としては、前記４本の直線の始点座標及び終点座標に加えて、例えば、矩形の原点座標、原点座標の対角の座標、矩形の色、矩形の線種、矩形の線幅等がある。
【０１１７】
オブジェクトの種類が角丸矩形である場合、同定処理部７は、当該角丸矩形から４本の直線成分のみを抽出し（ステップＳ２１０）、当該角丸矩形の部分定義情報から、４本の直線の各々について、当該直線の始点座標及び終点座標を抽出し（ステップＳ２１１）、更に、当該角丸矩形の特徴情報を抽出する（ステップＳ２１２）。４本の直線の終点座標のいずれかが、ステップＳ１８における終点座標として用いられる。当該角丸矩形の特徴情報としては、前記４本の直線の始点座標及び終点座標に加えて、例えば、角丸矩形の原点座標、原点座標の対角の座標、角丸矩形の色、角丸矩形の線種、角丸矩形の線幅等がある。
【０１１８】
オブジェクトの種類が画像である場合、同定処理部７は、当該画像の部分定義情報から、当該画像の矩形領域を抽出し（ステップＳ２１３）、更に、当該画像の特徴情報を抽出する（ステップＳ２１４）。矩形領域の終点座標は、ステップＳ１８における終点座標として用いられる。当該画像の特徴情報としては、前記矩形領域に加えて、例えば、当該画像それ自体がある。
【０１１９】
ステップＳ２４、Ｓ２６、Ｓ２９、Ｓ２１２、Ｓ２１４の後、同定処理部７は、ステップＳ２４、Ｓ２６、Ｓ２９、Ｓ２１２、Ｓ２１４において抽出したオブジェクトの原点座標を、帳票出力データ（Ｆｏ）における開始座標として（ステップＳ２１５）、処理を終了する。
【０１２０】
一方、ステップＳ２２において、オブジェクトの種類が、文字列（図１７においては「文字」と表示）、直線、矩形、角丸矩形、又は、画像でない場合、同定処理部７は、次のオブジェクトを探索する（ステップＳ２１６）。これにより、ステップＳ２１が繰り返される。
【０１２１】
図１８に示す処理は、基本的には、図１７に示す処理と同様の処理である。従って、図１８について、図１７の説明と重複する説明は、省略する。
【０１２２】
図１８において、同定処理部７は、帳票出力データ（Ｆｏ）において、左上から右下の方向に向けて、開始座標から、新たなオブジェクトを探索する（ステップＳ３１）。開始座標は、始点の座標（Ｂ１）を有するオブジェクトの終点の座標（Ｂ２）である。
【０１２３】
この後、同定処理部７は、探索したオブジェクトの種類が何であるかを判断する（ステップＳ３２）。
【０１２４】
オブジェクトの種類が文字、換言すれば、文字列である場合、同定処理部７は、当該文字列の部分出力データから、当該文字列の開始座標及び終点座標を抽出し（ステップＳ３３）、更に、当該文字列の特徴情報を抽出する（ステップＳ３４）。終点座標は、ステップＳ１９における終点座標として用いられる。
【０１２５】
オブジェクトの種類が直線、換言すれば、罫線である場合、同定処理部７は、当該直線の部分出力データから、当該直線の始点座標及び終点座標を抽出し（ステップＳ３５）、更に、当該直線の特徴情報を抽出する（ステップＳ３６）。終点座標は、ステップＳ１９における終点座標として用いられる。
【０１２６】
なお、前述したように、罫線についての処理が、文字列等の罫線以外のオブジェクトについての処理よりも、先行して実行される。罫線についての処理においてはステップＳ３５が選択され、罫線以外のオブジェクトについての処理においてはステップＳ３３、Ｓ３７、Ｓ３１０、Ｓ３１３が選択される。
【０１２７】
オブジェクトの種類が矩形である場合、同定処理部７は、当該矩形を４本の直線に分解し（ステップＳ３７）、当該矩形の部分出力データから、４本の直線の各々について、当該直線の始点座標及び終点座標を抽出し（ステップＳ３８）、更に、当該矩形の特徴情報を抽出する（ステップＳ３９）。４本の直線の終点座標のいずれかが、ステップＳ１９における終点座標として用いられる。
【０１２８】
オブジェクトの種類が角丸矩形である場合、同定処理部７は、当該角丸矩形から４本の直線成分のみを抽出し（ステップＳ３１０）、当該角丸矩形の部分出力データから、４本の直線の各々について、当該直線の始点座標及び終点座標を抽出し（ステップＳ３１１）、更に、当該角丸矩形の特徴情報を抽出する（ステップＳ３１２）。４本の直線の終点座標のいずれかが、ステップＳ１９における終点座標として用いられる。
【０１２９】
オブジェクトの種類が画像である場合、同定処理部７は、当該画像の部分出力データから、当該画像の矩形領域を抽出し（ステップＳ３１３）、更に、当該画像の特徴情報を抽出する（ステップＳ３１４）。矩形領域の終点座標は、ステップＳ１９における終点座標として用いられる。
【０１３０】
ステップＳ３４、Ｓ３６、Ｓ３９、Ｓ３１２、Ｓ３１４の後、同定処理部７は、ステップＳ３４、Ｓ３６、Ｓ３９、Ｓ３１２、Ｓ３１４において抽出したオブジェクトの原点座標を、帳票出力データ（Ｆｏ）における開始座標として（ステップＳ３１５）、処理を終了する。
【０１３１】
一方、ステップＳ３２において、オブジェクトの種類が、文字列（図１８においては「文字」と表示）、直線、矩形、角丸矩形、又は、画像でない場合、同定処理部７は、次のオブジェクトを探索する（ステップＳ３１６）。これにより、ステップＳ３１が繰り返される。
【符号の説明】
【０１３２】
１    帳票作成装置
２    帳票定義格納部
３    データ格納部
４    作成部
５    帳票出力データ格納部
６    メタ情報処理部
７    同定処理部
８    埋め込み処理部
９    メタ情報付き帳票格納部
９１    メタ情報
【図１】
0005724286.tif 000002
【図２】
0005724286.tif 000003
【図３】
0005724286.tif 000004
【図４】
0005724286.tif 000005
【図５】
0005724286.tif 000006
【図６】
0005724286.tif 000007
【図７】
0005724286.tif 000008
【図８】
0005724286.tif 000009
【図９】
0005724286.tif 000010
【図１０】
0005724286.tif 000011
【図１１】
0005724286.tif 000012
【図１２】
0005724286.tif 000013
【図１３】
0005724286.tif 000014
【図１４】
0005724286.tif 000015
【図１５】
0005724286.tif 000016
【図１６】
0005724286.tif 000017
【図１７】
0005724286.tif 000018
【図１８】
0005724286.tif 000019