JP5724286B2 - 帳票作成装置、帳票作成方法、プログラム - Google Patents

帳票作成装置、帳票作成方法、プログラム Download PDF

Info

Publication number
JP5724286B2
JP5724286B2 JP2010237073A JP2010237073A JP5724286B2 JP 5724286 B2 JP5724286 B2 JP 5724286B2 JP 2010237073 A JP2010237073 A JP 2010237073A JP 2010237073 A JP2010237073 A JP 2010237073A JP 5724286 B2 JP5724286 B2 JP 5724286B2
Authority
JP
Japan
Prior art keywords
output data
definition information
information
partial
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010237073A
Other languages
English (en)
Other versions
JP2012089042A (ja
Inventor
剛朗 宮坂
剛朗 宮坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010237073A priority Critical patent/JP5724286B2/ja
Publication of JP2012089042A publication Critical patent/JP2012089042A/ja
Application granted granted Critical
Publication of JP5724286B2 publication Critical patent/JP5724286B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

本発明は、帳票作成装置、帳票作成方法、プログラムに関する。
帳票は、帳票作成装置によって作成され、紙の上に印刷出力される。また、いわゆる電子帳票が、帳票作成装置によって作成される場合もある。
帳票は、本来の帳票として利用される以外に、検索、仕分け、マージ、帳票保管等の目的で使用される、換言すれば、2次利用される場合がある。2次利用のためには、帳票それ自体の電子データ又は電子帳票とは別に、帳票又は電子帳票に記載される文字列の位置を示す位置情報や、帳票の定型的な書式構造を示す書式情報が必要となる。そこで、2次利用のための情報が、印刷出力された帳票から抽出される。
例えば、画像入力部より生成される帳票の入力画像に対して、特徴抽出部より抽出された図形特徴量を特徴構造化部でグループ化し、それぞれの特徴間の関係を抽出・管理し、構造化特徴と、書式構造種別同定部で予め登録されている処理対象文書の書式構造に関する情報(書式構造モデル)を用いて入力文書の書式構造の種別を推定し、書式構造情報照合部は、推定された書式構造の種別に対応する書式構造モデルと入力文書の構造化特徴の間で、詳細な対応関係を抽出し、未対応・矛盾対応発見修正部で対応関係の整合を得た後、文書構造獲得部でその対応関係に基づき予め登録されている書式構造モデルに関する情報を入力文書にコピーすることで入力文書の構造及び関連知識を獲得することが提案されている。
また、帳票からファイル情報または画像情報を入力し、入力された帳票の記入領域を抽出して取得し、取得した記入領域内の文字または記号情報から帳票に記入する情報の内容を暗示するラベル名を取得し、ラベル名とそれに対応する記入領域の書式設定の情報を有する書式情報テーブルを保持し、ラベル名から書式情報テーブルを探索して、ラベル名に対応する帳票の記入領域の書式設定を取得し、取得した記入領域とラベル名と書式設定とを出力することが提案されている。
特開平8−077294号公報 特開2009−238217号公報
前述したように、帳票のいずれかの項目についての2次利用のための情報は、印刷出力された帳票から抽出することができる。しかし、2次利用する項目についてのみ、2次利用のための情報が抽出される。換言すれば、指定された項目についてのみ2次利用のための情報が抽出され、指定から漏れた項目については2次利用のための情報が抽出されない。後発的に2次利用したい項目が発生した場合には、2次利用のための情報を抽出する処理を、再度、実行する必要がある。更に、抽出された帳票の2次利用のための情報は、帳票出力データを格納するファイルとは別のファイルに格納され、別のデータとして保管されるのみであり、管理が不便である。
また、帳票のいずれかの項目についての2次利用のための情報は、例えば表示装置の画面上に表示された帳票から抽出することができる。しかし、この場合にも、前述の問題があることに加えて、帳票を画面表示させた状態で、オペレータが、個々の項目毎に2次利用のための情報を抽出する必要があるので、作業が煩わしい。
本発明は、1側面では、帳票出力データに当該帳票のメタ情報を埋め込むことができる帳票作成装置を提供することを目的とする。
1態様では、帳票作成装置は、帳票定義格納部と、帳票出力データ格納部と、同定処理部と、埋め込み処理部とを含む。帳票定義格納部は、帳票を定義する情報であって、複数の部分定義情報を含み、複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を格納する。帳票出力データ格納部は、データと帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを格納する。同定処理部は、帳票定義格納部から読み出した帳票定義情報の複数の部分定義情報と、帳票出力データ格納部から読み出した帳票出力データの複数の部分出力データとの同定を行う。埋め込み処理部は、帳票定義情報の複数の部分定義情報からメタ情報を抽出し、同定の結果に基づいて、抽出したメタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む。
帳票出力データに当該帳票のメタ情報を埋め込むことができる。
帳票作成装置の構成の一例等についての説明図である。 帳票作成装置の構成の一例を示す図である。 帳票の一例を示す図である。 帳票定義情報の一例を示す図である。 帳票定義情報の一例を示す図である。 帳票定義情報の説明図である。 帳票出力データの説明図である。 帳票定義情報の説明図である。 帳票出力データの説明図である。 帳票定義情報の一例を示す図である。 帳票定義情報の一例を示す図である。 帳票出力データの一例を示す図である。 メタ情報の埋め込み処理の説明図である。 メタ情報の埋め込み処理の説明図である。 メタ情報の埋め込み処理の説明図である。 メタ情報の埋め込み処理フローである。 同定処理フローである。 同定処理フローである。
図1は、帳票作成装置の構成の一例を示す図である。
帳票作成装置1は、帳票定義格納部2と、データ格納部3と、作成部4と、帳票出力データ格納部5と、メタ情報処理部6と、メタ情報付き帳票格納部9とを含む。メタ情報処理部6は、同定処理部7と、埋め込み処理部8とを含む。メタ情報付き帳票格納部9は、メタ情報付き換言すればメタ情報を埋め込まれた帳票出力データ90、メタ情報91を含む。
帳票定義格納部2は、帳票を定義する情報である帳票定義情報を格納する。帳票定義情報は、複数の部分定義情報を含む。複数の部分定義情報は、例えば、複数の罫線座標値と、複数の文字列情報を含む。換言すれば、1本の罫線について、その始点を表す座標値とその終点を表す座標値の対を含む、1個の部分定義情報が存在する。また、1個の文字列について、1個の部分定義情報が存在する。また、帳票定義情報は、複数の部分定義情報の各々に対応するメタ情報を含む。帳票定義格納部2に格納された帳票定義情報は、作成部4に読み出され、帳票出力データの作成処理に用いられる。また、帳票定義格納部2に格納された帳票定義情報は、メタ情報処理部6に読み出され、メタ情報の同定処理及び埋め込み処理に用いられる。
データ格納部3は、データを格納する。データは、帳票の作成のためのデータであって、例えば、売上を示す数値や、「売上日」のような文字列である。データは、実際に帳票を印刷出力するためのデータである帳票出力データと区別される。データ格納部3に格納されたデータは、作成部4に読み出され、帳票出力データの作成処理に用いられる。
作成部4は、データ格納部3から読み出したデータと、帳票定義格納部2から読み出した帳票定義情報とに基づいて、帳票出力データを作成する。作成された帳票出力データは、帳票出力データ格納部5に格納される。帳票出力データは、前述したように、実際に帳票を印刷出力するためのデータであり、電子帳票であると考えても良い。
作成部4は、作成された帳票出力データを、例えばプリンタから印刷出力する。換言すれば、作成部4は、帳票を紙の上に印刷出力する。なお、作成部4による印刷出力を省略するようにしても良い。
帳票出力データ格納部5は、データと帳票定義情報とに基づいて作成された帳票出力データを格納する。帳票出力データは、複数の部分出力データを含む。複数の部分帳票出力情報は、例えば、複数の罫線についての情報と、複数の文字列についての情報を含む。換言すれば、1本の罫線について、1個の部分帳票出力情報が存在する。また、1個の文字列について、1個の部分帳票出力情報が存在する。
なお、帳票出力データは、作成部4以外の他の文書作成装置により作成されたものを、帳票出力データ格納部5に読み込んだものであっても良い。また、帳票出力データは、作成部4により作成されたものを、スキャナ装置により読み込んで文字認識することにより得たものであっても良い。
メタ情報処理部6は、帳票定義格納部2から読み出した帳票定義情報からメタ情報を抽出して、抽出したメタ情報を帳票出力データ格納部5から読み出した帳票出力データに埋め込む。これにより、メタ情報を埋め込まれた帳票出力データ90が生成される。メタ情報を埋め込まれた帳票出力データ90は、メタ情報付き帳票格納部9に格納される。
メタ情報処理部6において、同定処理部7は、帳票定義格納部2から読み出した帳票定義情報に含まれる複数の部分定義情報と、帳票出力データ格納部5から読み出した帳票出力データに含まれる複数の部分出力データとの同定を行う。この時、同定処理部7は、罫線座標値と罫線とを相互に同定し、文字列情報と文字列とを相互に同定する。
ここで、部分定義情報と部分出力データとの同定とは、部分定義情報と部分出力データとを比較して、相互に一致するものを抽出することである。換言すれば、部分定義情報に同定された部分出力データは、部分定義情報と一致した部分出力データであり、部分出力データに同定された部分定義情報は、部分出力データと一致した部分定義情報である。部分定義情報と部分出力データとが一致するか否かは、後述するように、同定処理部7において、部分定義情報の特徴情報と、部分出力データの特徴情報とを用いて判断される。
メタ情報処理部6において、埋め込み処理部8は、帳票定義情報の複数の部分定義情報からメタ情報を抽出し、同定の結果に基づいて、抽出したメタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む。
メタ情報は、帳票定義情報に含まれる情報であって、当該帳票又は帳票出力データのデザインに用いられる情報である。メタ情報の一例を挙げると、メタ情報には、例えば、後述するように、項目名、項目種別、罫線の座標、文字列の座標原点、文字列の領域長等が含まれる。メタ情報は、当該帳票又は帳票出力データのデザインに用いられる情報であれば、項目名等以外の情報であっても良い。
この時、埋め込み処理部8は、同定処理部7において部分定義情報と部分出力データとが同定された場合に、部分出力データに同定された部分定義情報からメタ情報を抽出し、抽出したメタ情報を、部分定義情報に同定された部分出力データに埋め込む。従って、部分出力データに同定されない部分定義情報からはメタ情報は抽出されず、また、部分定義情報に同定されない部分出力データにはメタ情報は埋め込まれない。
メタ情報付き帳票格納部9は、メタ情報91を含む、換言すれば、メタ情報が埋め込まれた帳票出力データ90を格納する。メタ情報91は、相互に同定された部分定義情報から抽出され、相互に同定された部分出力データに埋め込まれる。従って、メタ情報91は、実際には、メタ情報付き帳票格納部9において1個存在するのではなく、部分出力データ毎に、部分出力データに埋め込まれた形式で存在する。
図2は、帳票作成装置のハードウェア構成の一例を示す図である。
CPU11は、ROM13に格納された制御プログラムに従って、帳票作成装置1を制御する。CPU11は、例えば主メモリであるRAM12上の帳票作成プログラムを実行する。換言すれば、作成部4及びメタ情報処理部6が実現される。帳票作成プログラムは、例えば、CD−ROMやDVD等の記録媒体17に格納され、記録媒体17からハードディスク16に入力され、ハードディスク16からRAM12にロードされる。
帳票定義格納部2、データ格納部3、帳票出力データ格納部5、メタ情報付き帳票格納部9は、例えばハードディスク16に設けられる。換言すれば、帳票定義情報、データ、帳票出力データ、及び、メタ情報を埋め込まれた帳票出力データ90は、例えばハードディスク16に格納される。帳票定義情報、データ、及び、帳票出力データは、例えば、CD−ROMやDVD等の記録媒体17に格納され、記録媒体17からハードディスク16に入力され、必要に応じてハードディスク16からRAM12にロードされ、作成部4及びメタ情報処理部6により処理される。メタ情報を埋め込まれた帳票出力データ90は、例えばハードディスク16から記録媒体17に出力される。
入力装置14は、例えばキーボードであり、マウス等を含んでも良い。出力装置15は、例えばディスプレイであり、プリンタ等の出力装置を含んでも良い。CPU11、ROM13、RAM12、入力装置14、出力装置15、及び、ハードディスク16は、バス18を介して、相互に接続される。
次に、作成部4による、帳票出力データの作成について、図3〜図5を参照して、簡単に説明する。前述したように、帳票出力データ格納部5に格納される帳票出力データは、帳票定義格納部2に格納された帳票定義情報とデータ格納部3に格納されたデータとに基づいて作成され、帳票出力データ格納部5に格納される。
図3は、帳票の一例を示す図である。換言すれば、図3は、図3の帳票を出力する帳票出力データであって、帳票出力データ格納部5に格納された帳票出力データの一例を示すと考えて良い。
図3の帳票又は帳票出力データは、前述したように、データと帳票定義情報とに基づいて作成される。データは、データ格納部3から作成部4により読み出される。帳票定義情報は、帳票定義格納部2から作成部4により読み出される。
データは、例えば数値である。数値は、例えば、売上日である「 1/ 5」のような数値、売上げである「3,500,000」のような数値を含む。従って、データ格納部3が格納するデータは、図3の帳票又は帳票出力データにおける数値である。データ格納部3が格納するデータにおいて、数値は、対応する項目名に対応して格納される。これにより、後述するように、データ格納部3が格納するデータが、図3の帳票又は帳票出力データに示すように、予め定められた位置に格納される。
帳票定義情報は、例えば罫線の位置、矩形の位置、角丸矩形の位置、数値の位置、文字列及びその位置、画像の位置等である。帳票定義情報は、例えば座標値で定義される。文字列は、図3に示すように、「部署別売上げ一覧」「売上げ集計表」「売上日」等の項目名である。
図3の帳票又は帳票出力データは、前述したように、複数の部分出力データを含む。換言すれば、帳票出力データは、各々が別個の複数の部分出力データの集合である。複数の部分出力データは、複数の罫線と、複数の文字列とを含む。例えば、「売上日」と言う項目名を囲む矩形は、4本の罫線を含む。これらの4本の罫線の各々が、部分出力データである。また、「 1/ 5」のような数値等の各々、及び、「売上日」等の項目名の各々が、1個の部分出力データである。
なお、図3の帳票又は帳票出力データにおいては、文字列の検索のみが可能である。例えば、図3の帳票又は帳票出力データにおける、「営業1課」「3,000,000」という文字列は、検索することができる。しかし、図3の帳票又は帳票出力データにおいて、例えば営業1課について3,000,000円「以上」の売上げのある日という指定した範囲についての検索は、不可能である。
図4は、帳票定義情報の一例を示す図である。実際には、図4は、図3の帳票を定義する帳票定義情報であって、帳票定義格納部2に格納された帳票定義情報により定義された画面を示す。図4の画面と帳票定義情報とは1対1に対応するので、図4は、帳票定義情報の一例を示すと考えて良い。
図4の帳票定義情報は、前述したように、例えば罫線の位置、矩形の位置、角丸矩形の位置、数値の位置、文字列及びその位置、画像の位置等を含む。帳票定義情報は、例えば座標値、換言すれば、ドットの位置で定義される。文字列は、図4に示すように、「部署別売上げ一覧」「売上げ集計表」「売上日」等の項目名である。
例えば、罫線の位置は、その始点の座標値と、終点の座標値とにより定義される。矩形の位置は、その原点の座標値と、原点の対角の座標値とにより定義される。角丸矩形の位置は、当該角丸矩形の要素である4本の直線により定義され、4角の丸い部分は定義に使用されない。当該4本の直線の位置は、各々、その始点の座標値と、終点の座標値とにより定義される。数値の位置は、その始点の座標値と、終点の座標値とにより定義される。文字列の位置は、その始点の座標値と、終点の座標値とにより定義される。画像の位置は、その原点の座標値と、原点の対角の座標値とにより定義される。
図4の帳票定義情報は、前述したように、複数の部分定義情報を含む。換言すれば、帳票定義情報は、各々が別個に定義された、複数の部分定義情報の集合である。複数の部分定義情報は、複数の罫線座標値と、複数の文字列とを含む。例えば、「売上日」と言う項目名を囲む矩形は、4本の罫線を含む。これらの4本の罫線の座標値の各々が、部分定義情報である。また、「売上日」等の項目名の各々が、1個の部分定義情報である。
例えば、図5(A)及び図5(B)は、図4において「営業1課」の売上日「Z9/Z9」における売上げ「¥−−,−−−,−−9」についての部分定義情報を示す。なお、「¥−−,−−−,−−9」の末尾の数字「9」は、当該行が売上日の数だけ繰返すことが可能であることを示す制御記号である。
図5(A)は、「¥−−,−−−,−−9」についての部分定義情報において、項目名が「営業1課売上げ」であること、小数部の桁数が「0」であること、項目長が「7」であること、文字列の座標原点が(90,926)であること、文字列の領域長が「1176」であること等を定義する情報を含むことを示す。文字列の座標原点は、当該帳票の原点Oを基準とした場合における、原点から当該文字列までの距離を表し、当該文字列が印刷出力される矩形の原点、換言すれば、当該矩形の左上の角の座標を表す。当該帳票の原点Oは、図4において、項目名「部署別売上げ一覧」のすぐ上の実線の罫線において、Y座標値が「0」の位置である。文字列の座標原点において、「90」はX座標、換言すれば、縦方向の座標を表し、「926」はY座標、換言すれば、横方向の座標を表す。文字列の座標原点及び文字列の領域長の単位は、「ドット」である。
また、図5(B)は、当該部分定義情報が、項目分類が「通貨」であること、編集形式が「¥−−−,−−9」であること、負の数は「−」で表示されること、通貨記号は「¥」であること等を定義する情報を含むことを示す。
なお、図5(A)は、タブ「プロパティ」に属する項目について示す。また、図5(B)は、タブ「編集形式」に属する項目について示す。従って、項目名「営業1課売上げ」についての部分定義情報は、実際には、例えばタブ「フォント」に属する項目等によっても定義される。従って、「¥−−,−−−,−−9」についての部分定義情報は、実際には、例えばタブ「プロパティ」に属する項目等によっても定義される。
図4の帳票定義情報において、抽出可能な情報は、「売上日」「営業1課」等の項目名、項目種別、罫線の座標、文字列の座標原点、文字列の領域長等である。
具体的には、図5(A)において、例えば、「営業1課売上げ」という項目名、「営業1課売上げ」という文字列の座標原点(90,926)、「営業1課売上げ」という文字列の領域長「1176」が、抽出可能な情報である。また、図5(B)において、例えば、「通貨」という項目分類、編集形式「¥−−,−−−,−−9」、通貨記号「¥」が、抽出可能な情報である。この例では、例えば「営業1課売上げ」という項目名、「通貨」という項目分類、換言すれば、項目種別が、メタ情報として抽出される。なお、項目名や項目種別以外の情報をメタ情報として抽出するようにしても良い。
例えば、作成部4は、帳票定義格納部2から読み出した帳票定義情報に基づいて、図3の帳票又は帳票出力データのフォーマットを生成する。例えば、「営業1課売上げ」という文字列が、その部分定義情報に従って、座標原点(90,926)の矩形に配置される。また、複数の罫線が、それらの部分定義情報に従って、配置される。
更に、例えば、作成部4は、データ格納部3から読み出したデータに基づいて、図3の帳票又は帳票出力データのフォーマットに数値を当て嵌める。例えば、記号「/」を2桁の数字で挟んだ形式のデータが、売上日「Z9/Z9」に当て嵌められる。また、先頭の記号「¥」に7桁の数字が続く形式のデータが、売上げ「¥−−,−−−,−−9」に嵌められる。
ここで、部分定義情報は、図4に示すように、「Z9/Z9」「¥−−,−−−,−−9」・・・の1行しか存在しない。一方、部分出力データは、図3に示すように、「 1/ 5」〜「 1/19」の10行分が存在する。なお、これは、後述するように、帳票定義情報と帳票出力データとを直接対比できない一因となる。
実際には、作成部4は、データ格納部3から読み出したデータにおいて、例えば「営業1課売上げ」と「 1/ 5」と「¥3,500,000」とが記号「,」で区切られている場合に、「営業1課売上げ」の「 1/ 5」の欄に「3,500,000」を当て嵌める。そして、更に、その次に、「営業1課売上げ」と「 1/ 9」と「¥1,000,000」とが記号「,」で区切られている場合に、「営業1課売上げ」の「 1/ 9」の欄に「1,000,000」を当て嵌める。これにより、1行の部分定義情報に対応して、複数の部分出力データが生成される。
次に、メタ情報処理部6による、メタ情報を埋め込まれた帳票出力データ90の作成について、図6〜図15を参照して、説明する。前述したように、メタ情報付き帳票格納部9に格納されるメタ情報を埋め込まれた帳票出力データ90は、帳票定義格納部2に格納された帳票定義情報と帳票出力データ格納部5に格納された帳票出力データとに基づいて作成され、メタ情報付き帳票格納部9に格納される。
実際の同定処理に先立って、同定処理部7は、同定処理の前処理を実行する。同定処理の前処理としては、用紙サイズについての処理、余白についての処理、及び、拡大縮小についての処理がある。同定処理の前処理は、メタ情報処理部6が実行するようにしても良い。
同定処理の前処理において、同定処理部7は、用紙サイズについての処理を実行する。例えば、帳票定義情報がA4版の帳票について定義しており、一方、帳票出力データがB5版の帳票についてのものであるとする。この場合、両者は、異なる帳票についての情報又はデータである可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部7は、帳票定義情報の用紙サイズと帳票出力データの用紙サイズとが一致する場合に、同定処理を実行する。用紙の大きさは、例えば、帳票定義情報及び帳票出力データにおいて、用紙の版数を用いて規定される。
具体的には、同定処理部7は、帳票定義格納部2から読み出した帳票定義情報から、用紙の版数に基づいて、第1の用紙サイズを算出する。また、同定処理部7は、帳票出力データ格納部5から読み出した帳票出力データから、用紙の版数に基づいて、第2の用紙サイズを算出する。第1の用紙サイズと第2の用紙サイズとが一致する場合に、同定処理部7は、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
また、同定処理の前処理において、同定処理部7は、余白についての処理を実行する。例えば、帳票定義情報には存在しない余白が、帳票出力データに付加される場合がある。これは、例えば、帳票出力データを印刷出力する形式に変換する場合に、プリンタにより付加される領域であり、印刷が不可能な領域である。
この余白の存在により、図6及び図7に示すように、帳票定義情報における罫線の開始位置と、帳票出力データにおける罫線の開始位置とが異なる場合がある。罫線の開始位置とは、図6の帳票定義情報における罫線の左上の角の位置、又は、図7の帳票出力データにおける罫線の左上の角の位置である。具体的には、図6及び図7において、丸で囲んだ数字1により示すように、帳票定義情報の原点座標から罫線の開始位置までの距離と、帳票出力データの原点座標から罫線の開始位置までの距離とが異なる場合がある。
なお、例えば、図面において丸で囲んだ「数字1」を、明細書においては「符号#1」ということとする。他の丸で囲んだ数字についても、同様である。
この場合、帳票定義情報に含まれる部分定義情報と、帳票出力データに含まれる部分出力データとを、直接比較しても、両者が一致しない可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部7は、帳票定義情報における罫線の開始位置左上の角の位置と、帳票出力データにおける罫線の開始位置とが一致する場合に、同定処理を実行する。
具体的には、同定処理部7は、帳票定義格納部2から読み出した帳票定義情報における予め定められた位置の第1の座標を抽出する。第1の座標は、例えば、図6の帳票定義情報において最初に現れる罫線の開始位置である。また、同定処理部7は、帳票出力データ格納部5から読み出した帳票出力データにおける予め定められた位置の第2の座標を抽出する。第2の座標は、例えば、図7の帳票出力データおいて最初に現れる罫線の開始位置である。
最初に現れる罫線は、帳票定義情報又は帳票出力データにおいて、最小のX座標を有し、かつ、最小のY座標を有する罫線である。以上は、文字列等の罫線以外のものの抽出についても同様である。
更に、同定処理部7は、第1の座標と第2の座標との誤差を算出する。この誤差が余白に相当する。更に、同定処理部7は、誤差に基づいて、帳票定義格納部2から読み出した帳票定義情報を補正した後に、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
更に、同定処理の前処理において、同定処理部7は、拡大縮小についての処理を実行する。例えば、帳票定義情報において定義されたサイズよりも、帳票出力データが拡大又は縮小されている場合がある。
この拡大又は縮小により、図6の帳票定義情報における罫線の定義された位置と、図7の帳票出力データにおける罫線の位置とが異なる場合がある。具体的には、図6及び図7において符号#1により示すように、帳票定義情報の原点座標から罫線の開始位置までの距離と、帳票出力データの原点座標から罫線の開始位置までの距離とが異なる場合がある。
この場合、帳票定義情報に含まれる部分定義情報と、帳票出力データに含まれる部分出力データとを、直接比較しても、両者が一致しない可能性が高く、同定処理が無駄になる可能性が高い。そこで、同定処理部7は、帳票定義情報における罫線の位置と、帳票出力データにおける罫線の位置とが一致する場合に、同定処理を実行する。
具体的には、同定処理部7は、帳票定義格納部2から読み出した帳票定義情報において、最初に現れる第1の罫線から次に存在する第2の罫線までの第1の距離を算出する。第1の距離は、例えば、図6の帳票定義情報において、最初に現れる縦方向の罫線と、次に現れる縦方向の罫線との間の距離である。換言すれば、第1の距離は、図6において、文字列「売上日」を挟む左右の罫線の距離である。また、同定処理部7は、帳票出力データ格納部5から読み出した帳票出力データにおいて、最初に現れる第3の罫線から次に存在する第4の罫線までの第2の距離を算出する。第2の距離は、例えば、図7の帳票出力データにおいて、最初に現れる縦方向の罫線と、次に現れる縦方向の罫線との間の距離である。換言すれば、第2の距離は、図7において、文字列「売上日」を挟む左右の罫線の距離である。
なお、第1の距離として、図6の帳票定義情報において、最初に現れる横方向の罫線と、次に現れる横方向の罫線との間の距離を用いるようにしても良い。この場合、第2の距離として、図7の帳票出力データにおいて、最初に現れる横方向の罫線と、次に現れる横方向の罫線との間の距離が用いられる。
更に、同定処理部7は、第1の距離と第2の距離との比を算出する。更に、同定処理部7は、この比に基づいて、帳票定義格納部2から読み出した帳票定義情報を補正した後に、帳票定義情報の複数の部分定義情報と帳票出力データの複数の部分出力データとの同定を行う処理を実行する。
同定処理の前処理の後に、同定処理部7は、図6及び図7に示すように、例えば罫線についての同定処理を実行する。帳票定義情報又は帳票出力データのいずれかに全く罫線が存在しない場合、罫線についての同定処理は実行されない。
具体的には、同定処理部7は、予め定められた順で、図6の帳票定義情報における罫線についての部分定義情報と、図7の帳票出力データにおける罫線についての部分帳票出力データとの同定を行う。ここで、前述したように、例えば、図6における「売上日」の行数よりも図7における「売上日」の行数が多く、従って、図6の罫線の数よりも図7の罫線の数が多い。このため、同定処理部7は、実際には、図7の帳票出力データにおける罫線についての部分帳票出力データを1個取り出して、図6の帳票定義情報における罫線についての部分定義情報と比較する。
例えば、同定処理部7は、縦方向の罫線についての同定処理を実行し、その後、横方向の罫線についての同定処理を実行する。横方向の罫線についての同定処理を先に実行するようにしても良い。更に、縦方向の罫線についての同定処理において、同定処理部7は、図6及び図7において符号#1〜#3により示すように、始点のY座標の値が小さい罫線から順に同定処理を実行し、始点のY座標の値が同一である場合には、始点のX座標の値が小さい罫線から順に同定処理を実行する。また、横方向の罫線についての同定処理において、同定処理部7は、始点のX座標の値が小さい罫線から順に同定処理を実行し、始点のX座標の値が同一である場合には、始点のY座標の値が小さい罫線から順に同定処理を実行する。
X座標及びY座標は、後述するように、部分定義情報又は部分出力データに含まれる。X座標及びY座標は、原点座標からのX方向及びY方向の距離を表す。帳票定義情報の原点座標は、帳票定義情報に含まれる。帳票出力データの原点座標は、帳票出力データに含まれる。
以上から、同定処理部7は、最初に、図7の帳票出力データにおいて、項目名「売上日」の矩形の左辺である罫線、「 1/ 5」の矩形の左辺である罫線、・・の順で、このY座標を有する縦方向の罫線について、同定処理を実行する。この後、同定処理部7は、図7の帳票出力データにおいて、項目名「売上日」の矩形の右辺である罫線、「 1/ 5」の矩形の右辺である罫線、・・の順で、このY座標を有する縦方向の罫線について、同定処理を実行する。
また、前述したように、部分定義情報における「Z9/Z9」の1行に対して、部分出力データは、「 1/ 5」〜「 1/19」の10行分が存在する。従って、「Z9/Z9」についての1個の部分定義情報に対して、複数の罫線についての部分出力データが同定されることになる。この場合、同定処理部7は、帳票出力データにおいて、複数の罫線についての部分出力データに対して、同一の罫線名に罫線番号を付加して区別する。文字列等の罫線以外の物についても同様である。
更に、同定処理部7は、図7の帳票出力データにおいて、Y座標の最も大きい縦方向の罫線について同定処理を終了した後、更に、図7の帳票出力データにおいて、項目名「部署別売上げ一覧」の下線である罫線、項目名「売上日」の矩形の上辺である罫線、「営業1課」の矩形の上辺である罫線、・・の順で、このX座標を有する横方向の罫線について、同定処理を実行する。この後、同定処理部7は、図7の帳票出力データにおいて、項目名「 1/ 5」の矩形の上辺である罫線、「¥3,500,000」の矩形の上辺である罫線、・・の順で、このX座標を有する横方向の罫線について、同定処理を実行する。
前述したように、帳票定義情報における文字列と帳票出力データにおける文字列が一致するとしても、余白や拡大縮小により、両者の位置が異なる場合がある。また、例えば、部分定義情報「Z9/Z9」と部分出力データ「 1/ 5」とは、文字列としては、直接には一致しない。このような場合でも、全ての罫線について同定処理を実行することにより、罫線についての同定処理に基づいて、文字列の同定を容易にすることができる。
同定処理の前処理の後であって、罫線についての同定処理の後、同定処理部7は、図8及び図9に示すように、例えば文字列についての同定処理を実行する。
具体的には、同定処理部7は、予め定められた順で、図8の帳票定義情報における文字列についての部分定義情報と、図9の帳票出力データにおける文字列についての部分帳票出力データとの同定を行う。ここで、前述したように、例えば、図8における「売上日」の行数よりも図9における「売上日」の行数が多い。このため、同定処理部7は、実際には、図9の帳票出力データにおける文字列についての部分帳票出力データを1個取り出して、図8の帳票定義情報における文字列についての部分定義情報と比較する。
例えば、同定処理部7は、図9において符号#1〜#3により示すように、上の行から下の行の方向へ、順に文字列についての同定処理を実行する。換言すれば、X座標の小さい順に同定処理が実行される。更に、同定処理部7は、同一の行において、左から右の方向へ、順に同定処理を実行する。換言すれば、X座標が同一である場合には、Y座標の小さい順に同定処理が実行される。
この時、文字列についての同定処理において、罫線についての同定処理の結果が用いられる。帳票定義情報及び帳票出力データにおいて、相互に同定された2本の罫線に挟まれた文字列は、同一の文字列である可能性が高い。一方、本来は同一の文字列であるにも拘わらず、帳票定義情報における文字列と帳票出力データにおける文字列とが異なる場合がある。そこで、同定処理部7は、異なる文字を含む文字列であっても、当該文字列が帳票定義情報及び帳票出力データにおいて相互に同定された2本の罫線に挟まれている場合には、当該文字列の同定を行う。
以上から、同定処理部7は、最初に、図9の帳票出力データにおいて、文字列「部署別売上げ一覧」「○○○○株式会社」「売上げ集計表」「単位:円」「売上日」「営業1課」「営業2課」・・の順で、同定処理を実行する。
次に、埋め込み処理部8が実行するメタ情報の埋め込み処理について、図10〜図15を参照して、説明する。
埋め込み処理部8は、同定処理部7において部分定義情報と部分出力データとが同定された場合に、部分出力データに同定された部分定義情報からメタ情報を抽出する。例えば、埋め込み処理部8は、図10に示すように、項目名「営業1課売上げ」の部分定義情報が部分出力データと同定された場合、項目名「営業1課売上げ」の部分定義情報から、メタ情報を抽出する。メタ情報としては、例えば、項目名、文字列の座標原点、文字列の領域長が抽出される。なお、図10の項目名「営業1課売上げ」についての部分定義情報は、図5(A)の項目名「営業1課売上げ」についての部分定義情報、換言すれば、図4における、営業1課の売上げである「¥−−,−−−,−−9」についての部分定義情報を示す。埋め込み処理部8は、抽出されたメタ情報を、項目名「営業1課売上げ」の部分定義情報に同定された部分出力データに埋め込む。
メタ情報を部分定義情報から抽出できるのは、図11に示すように、各々の部分定義情報がメタ情報を含むからである。図11において、文字列特徴情報、矩形特徴情報、画像特徴情報、直線特徴情報、角丸矩形特徴情報が、各々、部分定義情報である。換言すれば、例えば、文字列の部分定義情報が、帳票定義情報における文字列特徴情報である。
例えば、帳票定義情報における文字列特徴情報は、項目定義属性情報として、文字列、文字列開始座標等を含み、メタ情報として、項目名、項目種別等を含む。従って、帳票定義情報における文字列特徴情報に基づいて、項目名を抽出し、文字列開始座標を文字列の座標原点として抽出し、文字列長を文字列の領域長として抽出することができる。
なお、図11において、直線特徴情報は、矩形特徴情報と角丸矩形特徴情報とから、直線項目名を用いて参照される。従って、実際には、矩形特徴情報及び角丸矩形特徴情報は、各々、4個の直線特徴情報を参照する。
これに対して、図12に示すように、各々の部分出力データは、メタ情報を含まない。
図12において、文字列特徴情報、矩形特徴情報、画像特徴情報、直線特徴情報、角丸矩形特徴情報が、各々、部分出力データである。換言すれば、例えば、文字列の部分出力データが、帳票出力データにおける文字列特徴情報である。
例えば、帳票出力データにおける文字列特徴情報は、項目定義属性情報として、文字列、文字列開始座標等を含むが、メタ情報を含まない。従って、帳票出力データにおける文字列特徴情報からはメタ情報を抽出することができない。
また、帳票出力データにおける文字列特徴情報は、図11に示すように、その末尾にメタ情報を付加することができない。例えば、PDF(Portable Document Format)に従う帳票出力データにおいては、そのフォーマットの規定により、文字列特徴情報の末尾にメタ情報を付加することができない。
そこで、埋め込み処理部8は、帳票出力データにおける部分出力データの内部に、メタ情報を埋め込む。これにより、帳票出力データのフォーマットの規定に従いつつ、帳票出力データにメタ情報を持たせることができる。
図13〜図15は、帳票出力データへのメタ情報の埋め込みについての説明図である。
例えば、図13(A)に示す部分定義情報の全体を示すと、図13(B)に示すようになるとする。図13(A)の部分定義情報は、図4における「営業1課」の売上高の「合計」を示す「¥−−,−−−,−−−,−−9」についての部分定義情報を示すものとする。
ここで、帳票出力データにおいて、「営業1課」の売上高の「合計」が、図14(A)及び図14(B)に示すように、「¥77,200,000」であるとする。なお、図14(A)は及び図14(B)は、図4における「営業1課」の売上高の「合計」に関連する部分を抜粋して示す。
この場合、帳票出力データにおいて、「営業1課」の売上高の「合計」についての部分出力データは、図14(C)に示すようになる。図14(C)から判るように、「営業1課」の売上高の「合計」についての部分出力データは、メタ情報を含まない。
これに対して、メタ情報付き帳票格納部9に格納された、メタ情報が埋め込まれた帳票出力データ90は、図15に示すようになる。図14(C)と図15との対比から判るように、「営業1課」の売上高の「合計」についての部分出力データには、その中間部分に、メタ情報「営業1課売上げ合計―001」が埋め込まれている。これにより、PDFのような帳票出力データのフォーマットに従いつつ、帳票出力データにメタ情報を持たせることができる。
図16は、メタ情報の埋め込み処理フローであり、図17及び図18は、同定処理フローである。
図16において、同定処理部7は、帳票定義格納部2から帳票定義情報(Fd)を読み込み(ステップS11)、帳票出力データ格納部5から帳票出力データ(Fo)を読み込む(ステップS12)。ステップS11とステップS12は、いずれの処理を先に実行しても良い。
この後、同定処理部7は、帳票定義情報(Fd)の用紙サイズを算出すると共に、帳票定義情報(Fd)の原点座標を取得する(ステップS13)。また、同定処理部7は、帳票出力データ(Fo)の用紙サイズを算出すると共に、帳票出力データ(Fo)の原点座標を取得する(ステップS14)。ステップS13とステップS14は、いずれの処理を先に実行しても良い。
なお、実際には、ステップS13及びステップS14の実行の後、同定処理部7は、前述したように、帳票定義情報(Fd)の用紙サイズと帳票出力データ(Fo)の用紙サイズとを比較し、両者が一致しない場合には、処理を終了する。両者が一致する場合には、ステップS15が実行される。
この後、同定処理部7は、帳票定義情報(Fd)において、左上の端部にある、換言すれば、最少のX座標及び最少のY座標を有する部分定義情報を取得して、取得した座標を処理対象座標(A1)とする(ステップS15)。また、同定処理部7は、帳票出力データ(Fo)において、左上の端部にある、換言すれば、最少のX座標及び最少のY座標を有する部分出力データを取得して、取得した座標を処理対象座標(B1)とする(ステップS16)。ステップS15とステップS16は、いずれの処理を先に実行しても良い。
この後、同定処理部7は、帳票定義情報(Fd)における処理対象座標(A1)と、帳票出力データ(Fo)における処理対象座標(B1)との誤差を算出し、これを補正値(C)とし、帳票出力データ(Fo)の全座標を、補正値(C)により補正する(ステップS17)。
なお、実際には、ステップS17において、補正値(C)による補正処理の実行の後、同定処理部7は、前述したように、帳票定義情報(Fd)と帳票出力データ(Fo)との拡大縮小の比を算出し、これを用いて、再度、帳票出力データ(Fo)の全座標を補正する。これにより、帳票定義情報(Fd)と帳票出力データ(Fo)とを比較することができる。
以上により、同定処理部7は、同定処理の前処理を終了して、罫線の同定処理を実行し、その後、文字列等の罫線以外のものの同定処理を実行する。換言すれば、同定処理部7は、同定処理の対象を罫線としてステップS18〜S114を実行し、その後、同定処理の対象を文字列等の罫線以外のものとしてステップS18〜S114を実行する。同定処理の対象が罫線であるか罫線以外であるかは、部分定義情報又は部分出力データに基づいて判断される。
同定処理部7は、帳票定義情報(Fd)における処理対象座標(A1)を有する部分定義情報から、当該部分定義情報の終点を抽出し、処理対象座標(A2)とする(ステップS18)。また、同定処理部7は、帳票出力データ(Fo)における処理対象座標(B1)を有する部分出力データから、当該部分定義情報の終点を抽出し、処理対象座標(B2)とする(ステップS19)。ステップS18とステップS19は、いずれの処理を先に実行しても良い。
この後、同定処理部7は、処理対象座標(A1)及び処理対象座標(A2)と、処理対象座標(B1)及び処理対象座標(B2)とが一致するか否かを判断する(ステップS110)。一致判断において、処理対象座標(A1)及び処理対象座標(A2)として、後述する図17の処理により帳票定義情報(Fd)から抽出された特徴情報に含まれる座標が用いられる。また、処理対象座標(B1)及び処理対象座標(B2)として、後述する図18の処理により帳票出力データ(Fo)から抽出された特徴情報に含まれる座標が用いられる。なお、一致判断において、後述する図17の処理により帳票定義情報(Fd)から抽出された特徴情報と、後述する図18の処理により帳票出力データ(Fo)から抽出された特徴情報とを用いるようにしても良い。
ステップS110において、両者が一致しない場合(ステップS110 No)、ステップS111は省略され、ステップS113が実行される。
ステップS110において、両者が一致する場合(ステップS110 Yes)、同定処理部7は、両者が相互に同定されたと判断し、この同定結果に基づいて、埋め込み処理部8が、帳票定義情報(Fd)における処理対象座標(A1)を有する部分定義情報からメタ情報を抽出し、帳票出力データ(Fo)における処理対象座標(B1)を有する部分出力データに埋め込む(ステップS111)。
この後、同定処理部7は、帳票定義情報(Fd)において、Y方向、換言すれば、縦方向に、処理対象座標の次の候補点を探索し、抽出された候補点を新たな処理対象座標(A1)とし(ステップS112)、ステップS18を繰り返す。また、同定処理部7は、帳票出力データ(Fo)において、Y方向、換言すれば、縦方向に、処理対象座標の次の候補点を探索し、抽出された候補点を新たな処理対象座標(B1)とする(ステップS113)。ステップS111の後、ステップS112とステップS113は、いずれの処理を先に実行しても良い。ステップS112については、図17を参照して後述する。ステップS113については、図18を参照して後述する。
ステップS113の後、同定処理部7は、ステップS113において、候補点が有るか否かを判断する(ステップS114)。候補点が有る場合(ステップS114 Yes)、ステップS19が繰り返される。候補点が無い場合(ステップS114 No)、処理を終了する。
図17において、同定処理部7は、帳票定義情報(Fd)において、左上から右下の方向に向けて、開始座標から、新たな処理対象(オブジェクト)を探索する(ステップS21)。探索は、左上から右下の方向に向けて、換言すれば、X座標又はY座標が大きくなる方向へ向けて、実行される。開始座標は、処理対象座標(A1)の終点の座標(A2)である。以下の説明において、処理対象を単に「オブジェクト」と言うこととする。
この後、同定処理部7は、探索したオブジェクトの種類が何であるかを判断する(ステップS22)。
オブジェクトの種類が文字、換言すれば、文字列である場合、同定処理部7は、当該文字列の部分定義情報から、当該文字列の開始座標及び終点座標を抽出し(ステップS23)、更に、当該文字列の特徴情報を抽出する(ステップS24)。終点座標は、ステップS18における終点座標として用いられる。当該文字列の特徴情報としては、前記開始座標及び終点座標に加えて、例えば、文字コード、フォントのサイズ、フォントの種別、文字の色等がある。
オブジェクトの種類が直線、換言すれば、罫線である場合、同定処理部7は、当該直線の部分定義情報から、当該直線の始点座標及び終点座標を抽出し(ステップS25)、更に、当該直線の特徴情報を抽出する(ステップS26)。終点座標は、ステップS18における終点座標として用いられる。当該直線の特徴情報としては、前記始点座標及び終点座標に加えて、例えば、線幅、線種、線の色等がある。
なお、前述したように、罫線についての処理が、文字列等の罫線以外のオブジェクトについての処理よりも、先行して実行される。罫線についての処理においてはステップS25が選択され、罫線以外のオブジェクトについての処理においてはステップS23、S27、S210、S213が選択される。
オブジェクトの種類が矩形である場合、同定処理部7は、当該矩形を4本の直線に分解し(ステップS27)、当該矩形の部分定義情報から、4本の直線の各々について、当該直線の始点座標及び終点座標を抽出し(ステップS28)、更に、当該矩形の特徴情報を抽出する(ステップS29)。4本の直線の終点座標のいずれかが、ステップS18における終点座標として用いられる。当該矩形の特徴情報としては、前記4本の直線の始点座標及び終点座標に加えて、例えば、矩形の原点座標、原点座標の対角の座標、矩形の色、矩形の線種、矩形の線幅等がある。
オブジェクトの種類が角丸矩形である場合、同定処理部7は、当該角丸矩形から4本の直線成分のみを抽出し(ステップS210)、当該角丸矩形の部分定義情報から、4本の直線の各々について、当該直線の始点座標及び終点座標を抽出し(ステップS211)、更に、当該角丸矩形の特徴情報を抽出する(ステップS212)。4本の直線の終点座標のいずれかが、ステップS18における終点座標として用いられる。当該角丸矩形の特徴情報としては、前記4本の直線の始点座標及び終点座標に加えて、例えば、角丸矩形の原点座標、原点座標の対角の座標、角丸矩形の色、角丸矩形の線種、角丸矩形の線幅等がある。
オブジェクトの種類が画像である場合、同定処理部7は、当該画像の部分定義情報から、当該画像の矩形領域を抽出し(ステップS213)、更に、当該画像の特徴情報を抽出する(ステップS214)。矩形領域の終点座標は、ステップS18における終点座標として用いられる。当該画像の特徴情報としては、前記矩形領域に加えて、例えば、当該画像それ自体がある。
ステップS24、S26、S29、S212、S214の後、同定処理部7は、ステップS24、S26、S29、S212、S214において抽出したオブジェクトの原点座標を、帳票出力データ(Fo)における開始座標として(ステップS215)、処理を終了する。
一方、ステップS22において、オブジェクトの種類が、文字列(図17においては「文字」と表示)、直線、矩形、角丸矩形、又は、画像でない場合、同定処理部7は、次のオブジェクトを探索する(ステップS216)。これにより、ステップS21が繰り返される。
図18に示す処理は、基本的には、図17に示す処理と同様の処理である。従って、図18について、図17の説明と重複する説明は、省略する。
図18において、同定処理部7は、帳票出力データ(Fo)において、左上から右下の方向に向けて、開始座標から、新たなオブジェクトを探索する(ステップS31)。開始座標は、始点の座標(B1)を有するオブジェクトの終点の座標(B2)である。
この後、同定処理部7は、探索したオブジェクトの種類が何であるかを判断する(ステップS32)。
オブジェクトの種類が文字、換言すれば、文字列である場合、同定処理部7は、当該文字列の部分出力データから、当該文字列の開始座標及び終点座標を抽出し(ステップS33)、更に、当該文字列の特徴情報を抽出する(ステップS34)。終点座標は、ステップS19における終点座標として用いられる。
オブジェクトの種類が直線、換言すれば、罫線である場合、同定処理部7は、当該直線の部分出力データから、当該直線の始点座標及び終点座標を抽出し(ステップS35)、更に、当該直線の特徴情報を抽出する(ステップS36)。終点座標は、ステップS19における終点座標として用いられる。
なお、前述したように、罫線についての処理が、文字列等の罫線以外のオブジェクトについての処理よりも、先行して実行される。罫線についての処理においてはステップS35が選択され、罫線以外のオブジェクトについての処理においてはステップS33、S37、S310、S313が選択される。
オブジェクトの種類が矩形である場合、同定処理部7は、当該矩形を4本の直線に分解し(ステップS37)、当該矩形の部分出力データから、4本の直線の各々について、当該直線の始点座標及び終点座標を抽出し(ステップS38)、更に、当該矩形の特徴情報を抽出する(ステップS39)。4本の直線の終点座標のいずれかが、ステップS19における終点座標として用いられる。
オブジェクトの種類が角丸矩形である場合、同定処理部7は、当該角丸矩形から4本の直線成分のみを抽出し(ステップS310)、当該角丸矩形の部分出力データから、4本の直線の各々について、当該直線の始点座標及び終点座標を抽出し(ステップS311)、更に、当該角丸矩形の特徴情報を抽出する(ステップS312)。4本の直線の終点座標のいずれかが、ステップS19における終点座標として用いられる。
オブジェクトの種類が画像である場合、同定処理部7は、当該画像の部分出力データから、当該画像の矩形領域を抽出し(ステップS313)、更に、当該画像の特徴情報を抽出する(ステップS314)。矩形領域の終点座標は、ステップS19における終点座標として用いられる。
ステップS34、S36、S39、S312、S314の後、同定処理部7は、ステップS34、S36、S39、S312、S314において抽出したオブジェクトの原点座標を、帳票出力データ(Fo)における開始座標として(ステップS315)、処理を終了する。
一方、ステップS32において、オブジェクトの種類が、文字列(図18においては「文字」と表示)、直線、矩形、角丸矩形、又は、画像でない場合、同定処理部7は、次のオブジェクトを探索する(ステップS316)。これにより、ステップS31が繰り返される。
1 帳票作成装置
2 帳票定義格納部
3 データ格納部
4 作成部
5 帳票出力データ格納部
6 メタ情報処理部
7 同定処理部
8 埋め込み処理部
9 メタ情報付き帳票格納部
91 メタ情報

Claims (9)

  1. 帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を格納する帳票定義格納部と、
    データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを格納する帳票出力データ格納部と、
    前記帳票定義格納部から読み出した前記帳票定義情報の前記複数の部分定義情報と、前記帳票出力データ格納部から読み出した前記帳票出力データの前記複数の部分出力データとの同定を行う同定処理部と、
    前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報に同定された部分出力データに埋め込む埋め込み処理部とを含む
    ことを特徴とする帳票作成装置。
  2. 前記同定処理部において部分定義情報と部分出力データとが同定された場合に、前記埋め込み処理部が、前記部分出力データに同定された前記部分定義情報から前記メタ情報を抽出し、抽出した前記メタ情報を、前記部分定義情報に同定された前記部分出力データに埋め込む
    ことを特徴とする請求項1に記載の帳票作成装置。
  3. 前記帳票作成装置が、更に、
    前記データを格納するデータ格納部と、
    前記データと前記帳票定義情報とに基づいて、前記帳票出力データを作成する作成部とを含む
    ことを特徴とする請求項1に記載の帳票作成装置。
  4. 前記帳票定義情報が、前記複数の部分定義情報として、複数の罫線座標値と、複数の文字列情報とを含み、
    前記帳票出力データが、前記複数の部分出力データとして、複数の罫線と、複数の文字列とを含み、
    前記同定処理部が、前記罫線座標値と前記罫線との同定を行い、前記文字列情報と前記文字列との同定を行う
    ことを特徴とする請求項1に記載の帳票作成装置。
  5. 前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報における予め定められた位置の第1の座標を抽出し、前記帳票出力データ格納部から読み出した前記帳票出力データにおける予め定められた位置の第2の座標を抽出し、前記第1の座標と前記第2の座標との誤差を算出し、前記誤差に基づいて、前記帳票定義格納部から読み出した前記帳票定義情報を補正した後に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
    ことを特徴とする請求項1に記載の帳票作成装置。
  6. 前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報から第1の用紙サイズを算出し、前記帳票出力データ格納部から読み出した前記帳票出力データから第2の用紙サイズを算出し、前記第1の用紙サイズと前記第2の用紙サイズとが一致する場合に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
    ことを特徴とする請求項1に記載の帳票作成装置。
  7. 前記同定処理部が、前記帳票定義格納部から読み出した前記帳票定義情報において、最初に現れる第1の罫線から次に存在する第2の罫線までの第1の距離を算出し、前記帳票出力データ格納部から読み出した前記帳票出力データにおいて、最初に現れる第3の罫線から次に存在する第4の罫線までの第2の距離を算出し、前記第1の距離と前記第2の距離との比を算出し、前記比に基づいて、前記帳票定義格納部から読み出した前記帳票定義情報を補正した後に、前記帳票定義情報の前記複数の部分定義情報と前記帳票出力データの前記複数の部分出力データとの同定を行う
    ことを特徴とする請求項1に記載の帳票作成装置。
  8. 帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を読み出し、
    データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを読み出し、
    読み出した前記帳票定義情報の前記複数の部分定義情報と、読み出した前記帳票出力データの前記複数の部分出力データとの同定を行い、
    前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報と同定された部分出力データに埋め込む
    ことを特徴とする、コンピュータが実行する帳票作成方法。
  9. 帳票作成装置を実現するプログラムであって、
    前記プログラムは、コンピュータに、
    帳票を定義する情報であって、複数の部分定義情報を含み、前記複数の部分定義情報に対応するメタ情報を含む、帳票定義情報を読み出す処理と、
    データと前記帳票定義情報とに基づいて作成された帳票出力データであって、複数の部分出力データを含む帳票出力データを読み出す処理と、
    読み出した前記帳票定義情報の前記複数の部分定義情報と、読み出した前記帳票出力データの前記複数の部分出力データとの同定を行う処理と、
    前記帳票定義情報の前記複数の部分定義情報から前記メタ情報を抽出し、前記同定の結果に基づいて、抽出した前記メタ情報を、当該メタ情報が抽出された部分定義情報と同定された部分出力データに埋め込む処理とを実行させる
    ことを特徴とするプログラム。
JP2010237073A 2010-10-22 2010-10-22 帳票作成装置、帳票作成方法、プログラム Active JP5724286B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010237073A JP5724286B2 (ja) 2010-10-22 2010-10-22 帳票作成装置、帳票作成方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010237073A JP5724286B2 (ja) 2010-10-22 2010-10-22 帳票作成装置、帳票作成方法、プログラム

Publications (2)

Publication Number Publication Date
JP2012089042A JP2012089042A (ja) 2012-05-10
JP5724286B2 true JP5724286B2 (ja) 2015-05-27

Family

ID=46260580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010237073A Active JP5724286B2 (ja) 2010-10-22 2010-10-22 帳票作成装置、帳票作成方法、プログラム

Country Status (1)

Country Link
JP (1) JP5724286B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014199416A1 (ja) * 2013-06-13 2014-12-18 株式会社アイ・ピー・エス 帳票データ管理サーバ、および帳票データ管理プログラム
JP6439258B2 (ja) * 2014-03-12 2018-12-19 株式会社リコー プログラム、情報処理装置、記憶媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475336B2 (en) * 2004-08-11 2009-01-06 Kabushiki Kaisha Toshiba Document information processing apparatus and document information processing program
JP4861795B2 (ja) * 2005-11-22 2012-01-25 株式会社リコー 業務連携スキャンソリューションシステム

Also Published As

Publication number Publication date
JP2012089042A (ja) 2012-05-10

Similar Documents

Publication Publication Date Title
JP4854491B2 (ja) 画像処理装置及びその制御方法
US8107727B2 (en) Document processing apparatus, document processing method, and computer program product
US8719702B2 (en) Document organizing based on page numbers
US7991709B2 (en) Method and apparatus for structuring documents utilizing recognition of an ordered sequence of identifiers
US8824798B2 (en) Information processing device, computer readable medium storing information processing program, and information processing method
US20070171473A1 (en) Information processing apparatus, Information processing method, and computer program product
US8225200B2 (en) Extracting a character string from a document and partitioning the character string into words by inserting space characters where appropriate
US8478046B2 (en) Signature mark detection
CN101443790A (zh) 数字图像中的非回流内容的有效处理
JP4785655B2 (ja) 文書処理装置及び文書処理方法
US9286526B1 (en) Cohort-based learning from user edits
US11475688B2 (en) Information processing apparatus and information processing method for extracting information from document image
US11321558B2 (en) Information processing apparatus and non-transitory computer readable medium
JP5938393B2 (ja) 画像処理装置
TW200416583A (en) Definition data generation method of account book voucher and processing device of account book voucher
US8526744B2 (en) Document processing apparatus and computer readable medium
JP5724286B2 (ja) 帳票作成装置、帳票作成方法、プログラム
JP5229102B2 (ja) 帳票検索装置、帳票検索プログラムおよび帳票検索方法
JP4518212B2 (ja) 画像処理装置及びプログラム
JP2008282094A (ja) 文字認識処理装置
CN116682118A (zh) 一种古文字识别方法、系统、终端及介质
JP4807618B2 (ja) 画像処理装置及び画像処理プログラム
JP4517822B2 (ja) 画像処理装置及びプログラム
JP2008257543A (ja) 画像処理システム及びプログラム
JP7110723B2 (ja) データ変換装置、画像処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150316

R150 Certificate of patent or registration of utility model

Ref document number: 5724286

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150