(57)【要約】    【課題】ユーザ設定により、レイアウトを重視した変換か表領域内データの最良を重視した変換を選択可能とする。    【解決手段】  ベクトルデータ入力部１２で入力したベクトルデータから直線データ、矩形データ及び文字列データをデータ抽出部２４で抽出し、表領域認識部２６がデータ抽出部２４で抽出した直線データ及び矩形データから表領域および表領域の内部に配置された複数の矩形領域を認識する。表計算データ生成部２８は表領域認識部２６で認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域にデータ抽出部２４で抽出した文字列データを配置して表計算データを生成する。    【選択図】      図１
2007087238.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
前記データ抽出ステップで抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
前記表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を実行させることを特徴とするデータ変換プログラム。
【請求項２】
請求項１記載のデータ変換プログラムに於いて、更に、前記データ抽出ステップで抽出された直線データ、矩形データ及び文字列データを補正する補正ステップを実行させることを特徴とするデータ変換プログラム。
【請求項３】
請求項１記載のデータ変換プログラムに於いて、前記入力ステップが前記ベクトルデータと共に帳票のレイアウトデータを入力した場合、前記レイアウトデータに基づき表計算データへの変換内容を制御するか否かをユーザ設定により選択する変換制御選択ステップを実行させることを特徴とするデータ変換プログラム。
【請求項４】
帳票のベクトルデータを２次元マトリクス配置を持つ表計算データに変換するデータ変換方法に於いて、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
前記データ抽出ステップで抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
前記表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を備えたことを特徴とするデータ変換方法。
【請求項５】
帳票のベクトルデータを２次元マトリクス配置を持つ表計算データに変換するデータ変換装置に於いて、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力部と、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出部と、
前記データ抽出部で抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識部と、
前記表領域認識部で認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出部で抽出した文字列データを配置して表計算データを生成する表計算データ生成部と、
を備えたことを特徴とするデータ変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷処理等に用いる帳票ベクトルデータをセルの２次元マトリクス配置を持つ表計算データに変換するデータ変換プログラム、方法及び装置に関し、特に、帳票ベクトルデータから表領域を抽出して表計算データに変換するデータ変換プログラム、方法及び装置に関する。
【背景技術】
【０００２】
近年、印刷処理を行う帳票アプリケーションが生成する描画情報であるベクトルデータを、２次加工が容易なセルの２次元マトリクス配置（２次元格子状配置）をもつ例えばＥｘｃｅｌ（Ｒ）ファイルやＣＳＶ（Ｃｏｍｍａ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅ）ファイル等の表計算データで出力したいと言うニーズが増えてきている。
【０００３】
このような帳票ベクトルデータを表計算データに変換することで、クライアントのパーソナルコンピュータ上で必要に応じてＥｘｃｅｌ（Ｒ）などの表計算ツールを使用して帳票データを加工したり、別のツールへのデータ移行や、データ加工後に再度帳票システムに反映させたりすることが可能となる。
【０００４】
従来の帳票ベクトルデータを表計算データに変換する方法は、帳票ベクトルデータの座標系を、セルの２次元マトリクス配置（２次元格子配置）を持つ表計算データにおけるセル単位での座標系に置き換えるようしている。
【特許文献１】特開平６−１３１４９７号公報
【特許文献２】特開２００４−７２５５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、このような従来の変換方法にあっては、帳票ベクトルデータの座標系を、２次元マトリクス配置を持つ表計算データにおけるセル単位での座標系に単純に置き換えるようしていたため、関連する文字列やイメージなどのオブジェクトがずれてしまったり、帳票の文字列や数字列が不自然な形で別々のセルに分断されたり、逆に１つのセルに結合されてしまい、データの２次的な利用が困難な結果なる場合がある。
【０００６】
また、帳票ベクトルデータから変換された表計算データを印刷したり画面表示すると、ベクトルデータにおける帳票のレイアウトが崩れ、見にくい変換結果となってしまう問題がある。
【０００７】
また帳票アプリケーションから直接表計算データを生成する場合、Ｅｘｃｅｌ（Ｒ）やＣＳＶなどの表計算データのフォーマット毎に帳票アプリケーション側の対応が必要であり、更に表のフォーマットを意識しない自由なレイアウトができるドローイングツールからの表計算データの生成が困難であった。
【０００８】
本発明は、帳票ベクトルデータの文字列を正しく表計算データのセルに変換するデータ変換プログラム、方法及び装置を提供する。
【０００９】
また本発明は、ユーザ設定によりレイアウトを重視した変換か表領域内データを重視した変換を選択可能としたデータ変換プログラム、方法及び装置を提供する。
【課題を解決するための手段】
【００１０】
本発明は、帳票のベクトルデータをセルの２次元マトリクス配置を持つ表計算データに変換するデータ変換プログラムを提供する。即ち、本発明のデータ変換プログラムは、コンピュータに、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
データ抽出ステップで抽出した直線データ及び矩形データから表領域および表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域にデータ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を実行させることを特徴とする。
【００１１】
本発明のデータ変換プログラムに於いて、入力ステップは、光学的読取装置で読取られた直線、矩形及び文字を含む帳票のイメージデータから変換されたベクトルデータを入力する。
【００１２】
本発明のデータ変換プログラムは、コンピュータに、更に、表領域の外部に文字列データが存在する場合、表領域と同じ２次元マトリクス配置を持つセル領域を追加的に生成して外部の文字列データを対応するセル位置に配置する外部文字列処理ステップを実行させる。
【００１３】
本発明のデータ変換プログラムは、コンピュータに、更に、データ抽出ステップで抽出された直線データ、矩形データ及び文字列データを補正する補正ステップを実行させる。
【００１４】
補正ステップは、表領域内に配置された１又は複数の矩形領域の縦線及び又は横線がずれていた場合、縦線及び又は横線が揃うように座標を補正する。
【００１５】
補正ステップは、文字列データがカンマを付加した数値データの場合、カンマを削除する。補正ステップは、文字列データが均等割付の文字列データの場合、均等割付を解除して片詰めの文字列データとする。
【００１６】
本発明のデータ変換プログラムは、コンピュータに、更に、入力ステップがベクトルデータと共に帳票のレイアウトデータを入力した場合、レイアウトデータに基づき表計算データへの変換内容を制御するか否かをユーザ設定により選択する変換制御選択ステップを実行させる。
【００１７】
変換制御選択ステップは、レイアウトデータとして複数ページで構成された帳票のページヘッダ及び又はページフッダが入力された場合、ページヘッダ及び又はページフッダの出力を抑止して連続帳票の表計算データを生成させる。
【００１８】
変換制御選択ステップは、レイアウトデータとして帳票内に存在する複数の表の順序を示す順序データが入力された場合、順序データに基づく順序関係に従って複数の表を合成した表計算データを生成させる。
【００１９】
変換制御選択ステップは、レイアウトデータとして帳票の区切りで小計、合計等の示す制御行が入力された場合、制御行の出力を抑止した表計算データを生成させる。
【００２０】
本発明は、帳票のベクトルデータをセルの２次元マトリクス配置を持つ表計算データに変換するデータ変換方法を提供する。即ち、本発明のデータ変換方法は、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
データ抽出ステップで抽出した直線データ及び矩形データから表領域および表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域にデータ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を備えたことを特徴とする。
【００２１】
本発明は、帳票のベクトルデータを２次元マトリクス配置を持つ表計算データに変換するデータ変換装置を提供する。即ち、本発明のデータ変換装置は、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力部と、
ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出部と、
データ抽出部で抽出した前記直線データ及び矩形データから表領域および表領域の内部に配置された複数の矩形領域を認識する表領域認識部と、
表領域認識部で認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域にデータ抽出部で抽出した文字列データを配置して表計算データを生成する表計算データ生成部と、
を備えたことを特徴とする。
【００２２】
なお、本発明によるデータ変換方法及び装置の詳細は、本発明によるデータ変換プログラムの場合と基本的に同じになる。
【発明の効果】
【００２３】
本発明によれば、帳票のベクトルデータを出力する帳票印刷等のアプリケーションから容易にセルの２次元マトリクス配置のフォーマットをもつ表計算データの出力が可能になるため、アプリケーションをＥｘｃｅｌ（Ｒ）やＣＳＶなどの表計算データのフォーマット毎に対応する必要がなくなり、アプリケーション開発の工数が削減できる。
【００２４】
また帳票ベクトルデータと同時に得られる帳票レイアウトデータを取り入れた変換を行うことで、表としての体裁を保った表計算データに変換され、変換後に表データを修正するといった煩雑なデータの２次加工を必要とせず、データ変換に伴う利用者の工数を削減することができる。
【００２５】
またデータ変換に際しユーザがレイアウト重視か表計算データの再利用重視かを選択的に指定することで、レイアウトを重視した見やすい表計算データ、或いは表領域の各枠内の文字列が正しくセルに変換された表計算データが得られ、ユーザのニーズに適合した表計算データへの変換ができる。
【００２６】
また変換された表計算データは、セルの２次元マトリクス配置をもつ中間データフォーマットであるため、データの２次利用を目的としたＸＭＬデータ等のデータフォーマットへ変換の対応が容易にできる。
【００２７】
更に、印刷帳票などについては、ＯＣＲ機能との連携によりイメージ化した後にベクトルデータに変換することで、印刷帳票についてもベクトルデータと同様に正しく表領域を抽出して表計算データに変換することができる。
【発明を実施するための最良の形態】
【００２８】
図１は、本発明による帳票ベクトルデータからセルの２次元マトリクス配置を持つ表計算データへのデータ変換処理を行う機能構成のブロック図である。
【００２９】
図１において、本発明のデータ変換モジュール１１は、ミドルウエアとして存在する帳票出力アプリケーション１０に対する例えば印刷基板モジュールとして位置する。本発明により実現されるデータ変換モジュール１１には、ベクトルデータ入力部１２、レイアウトデータ入力部１４、ＯＣＲ変換部１６、表計算データオブジェクト構築部１８、中間データフォーマットファイル２０及び表計算データフォーマット変換部２２が設けられている。
【００３０】
表データオブジェクト構築部１８には、データ抽出部２４、表領域認識部２６、表計算データ生成部２８、補正部３０及び変換制御選択部３２が設けられている。これらデータ変換モジュール１１に設けられた各機能は、データ変換プログラムをコンピュータにより実行することで実現される機能である。
【００３１】
帳票出力アプリケーション１０は、印刷基板としてのデータ変換モジュール１１に対し、描画データであるベクトルデータＡと、そのレイアウトデータＢを出力する。ベクトルデータＡには、描画データである直線、矩形及び文字を含む帳票を描画するデータが含まれている。レイアウトデータＢには、ページヘッダ、ページフッダなどの帳票の印刷または表示に必要なレイアウト情報が含まれている。
【００３２】
一方、ＯＣＲ変換部１６は、印刷出力された帳票を光学的に読み取ることでイメージデータを取得し、このイメージデータから直線、矩形及び図形を含む帳票のベクトルデータを変換してベクトルデータ入力部１２に出力する。
【００３３】
このため本発明のデータ変換モジュール１１にあっては、帳票出力アプリケーション１０から直接出力される帳票のベクトルデータはもちろんのこと、ＯＣＲ変換部１６で光学的に読み取られた印刷帳票のイメージデータから得られたベクトルデータについても変換対象とすることができる。
【００３４】
表計算データオブジェクト構築部１８に設けたデータ抽出部２４は、ベクトル入力部１２から得られた帳票のベクトルデータの中から、セルの２次元マトリクス配置を持つ表計算データに変換可能な直線、矩形、文字列などのオブジェクトを抽出する。
【００３５】
表領域認識部２６は、データ抽出部２４で抽出されたベクトルデータの中の直線データと矩形データから、帳票ベクトルデータにおける表領域及び表領域の内部に配置された複数の矩形領域を認識し、認識した矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域にデータ抽出部２４で抽出した文字列データを配置して表計算データを生成する。
【００３６】
表計算データオブジェクト構築部１８に設けたデータ抽出部２４、表示領域認識部２６及び表計算データ生成部２８の機能が、本発明の帳票ベクトルデータから表計算データに変換するための基本的な機能であり、表計算データ生成部２８で生成された表計算データは中間データとして中間データフォーマットファイル２０に格納される。
【００３７】
外部文字列処理部３０は、表領域認識部２５で認識された表領域の外部に存在する文字列について、表領域と同じ２次元マトリクス配置を持つセル領域を追加的に生成し、文字列データに対応するセル位置に外部文字列を配置する。これによって、帳票ベクトルデータの表の外側に存在する文字列についても、２次元マトリクス配置を持つセル位置に変換することができる。
【００３８】
補正部３１は、データ抽出部２４で抽出された直線データ、矩形データ及び文字列などのオブジェクトを、表計算データへの変換に先立って、変換に適した補正を行う。この補正部３０による補正処理としては
（１）矩形領域の縦線及び横線の座標補正
（２）数字列のカンマ取り
（３）矩形領域内の文字列の均等割付の解除
がある。
【００３９】
矩形領域の縦線または横線の座標補正は、帳票ベクトルデータの表領域内に配置された１または複数の矩形領域の縦線及び横線がずれていた場合、そのまま２次元マトリクス配置のセルに対応させると、矩形領域が不必要に分割されたり結合されたりする誤変換の可能性が残る。そこで変換前の補正処理として、矩形領域の縦線及び横線が揃うように座標を補正する。
【００４０】
数字列のカンマ取りは、カンマを含めた数字列を例えばＥｘｃｅｌ（Ｒ）の表計算データに変換すると、そのままでは計算処理ができず、２次的な修正作業としてカンマ取りを必要とすることから、これを事前に不要とするために、データ変換の際に数字列に含まれているカンマを削除する。
【００４１】
更に文字列の均等割付の解除は、文字領域に文字列が均等割付されていた場合、表計算データに変換した際に別々の文字列と判別されてセルの分割が行われる誤変換の可能性があることから、この場合には文字列の均等割付を解除し、右詰め、左詰めといった片詰めの文字列データに補正する。
【００４２】
このような補正部３０による直線データ、矩形データを含む表計算データに変換可能な抽出オブジェクトに補正を施すことで、誤変換を防止し、変換後の２次的な修正を可能な限り低減できる。
【００４３】
変換制御選択部３２は、レイアウトデータ入力部１４で帳票出力アプリケーション１０からレイアウトデータＢを入力した場合、レイアウトデータＢに基づき表計算データへの変換内容を制御するか否かをユーザ設定により選択する。変換制御選択部３２による変換制御は
（１）レイアウト重視モード
（２）表領域内データ重視モード
のいずれかを選択することができる。
【００４４】
レイアウト重視モードを選択した場合には、レイアウトデータが帳票ベクトルデータから表変換データへの変換に反映され、帳票ベクトルデータによるレイアウトを可能な限り保持した表変換データを生成することができる。
【００４５】
これに対し表領域内データ重視モードを選択した場合には、レイアウトデータによる出力は抑止され、表領域内に配置された複数の矩形領域の文字列を正確に表計算データのセル領域に正しく変換された表計算データが得られ、正しい帳票の表計算データを利用した別のツールへのデータ移行やデータ確保を適切に行うことができる。
【００４６】
変換制御選択部３２による変換選択制御として、この実施形態にあっては、例えば
（１）ページヘッダとページフッダ
（２）ページの順序性
（３）ページ制御行
の３つを取り扱っている。もちろん、それ以外のレイアウト情報についてもユーザ設定による選択が可能である。
【００４７】
ページヘッダとページフッダについては、表領域内データ重視モードを選択設定することでページヘッダ及びページフッダの出力が抑止され、例えば１つの帳票内に分割して配置している複数の表領域を、連続させた表計算データに変換することができる。
【００４８】
順序性は、表領域内データ重視モードを選択した際に、帳票内に存在する複数の表の順序を示す順序関係に従って複数の表を合成した表計算データを生成させる。
【００４９】
更に制御行は、帳票レイアウトデータとして帳票の区切りで小計や合計などを示す制御行が入力されている場合があり、表領域内データ重視モードを選択設定することで、この制御行の出力を抑止した表計算データを生成することができる。
【００５０】
これに対しレイアウト重視モードにあっては、ページヘッダとページフッダが出力されて帳票ベクトルデータのレイアウトを反映した表計算データが生成できる。また制御行についてはレイアウト重視モードでその出力が行われ、帳票の区切りである小計や合計の制御行が維持されたまま表計算データが生成されることになる。
【００５１】
なお順序性については、レイアウト重視モードにあっては、ページヘッダやページフッダにより、例えば１つの帳票内に複数の表領域があっても、そのレイアウトが維持されることから、順序性の選択設定は特に必要ない。
【００５２】
表データオブジェクト構築部１８で帳票ベクトルデータから表計算データに変換された中間データは、中間データフォーマットファイル２０に格納された後、表計算データフォーマット変換部２２で例えばＥｘｃｅｌ（Ｒ）フォーマットあるいはＣＳＶフォーマットに変換されて、他のアプリケーションなどで利用することができる。更に中間データとしての中間データフォーマットファイル２０の表計算データを利用することで、例えばＸＭＬなどの表計算データの２次利用を目的としてデータフォーマットへの変換も容易に行うことができる。
【００５３】
図２は図１のデータ変換モジュールが実現されるコンピュータのハードウエア環境のブロック図である。図２において、コンピュータはＣＰＵ１６０を備え、ＣＰＵ１６０からのバス１６２に、ＲＡＭ１６４、ＲＯＭ１６６、ハードディスクドライブ１６８、デバイスインタフェース１７０及びネットワークアダプタ１７８を接続している。デバイスインタフェース１７０は、キーボード１７２，マウス１７４及びディスプレイ１７６を、ＣＰＵ１６０のバス１６２に対し接続する。
【００５４】
本発明のデータ変換モジュールを実現するプログラムはハードディスクドライブ１６８に格納されており、ＲＡＭ１６４に読み出されてＣＰＵ１６０により実行される。
【００５５】
図３は本発明による帳票ベクトルデータから表計算データ（中間データ）への具体的な変換例の説明図である。図３において、帳票ベクトルデータ３４は左右２つに分けて表示領域３８，４０を備えており、表領域３８，４０の外部に文字列４２，４４，４６，４８，５０を配置している。
【００５６】
このような帳票ベクトルデータ３４につき、表領域３８，４０については、直線データ、矩形データ及び文字列データを抽出することで、セルの２次元マトリクス配置を持つ表計算データへの変換ができる。
【００５７】
この帳票ベクトルデータ３４の表領域３８，４０のそれぞれにはページヘッダとページフッダがレイアウト情報として設定されているが、この変換例にあってはページヘッダ及びページフッダの出力を禁止している。このため、下側に示す変換された表計算データ３６は、表領域３８に対応した表計算データ領域３８−１と表領域４０に対応した表計算データ領域４０−１とを結合したデータ配置に変換されている。
【００５８】
ここで表計算データ３６における表計算データ領域３８−１，４０−１の合成領域は、１３行４列の２次元マトリクス配置のセル構造を持っている。
【００５９】
一方、帳票ベクトルデータ３４における表領域３８，４０の外部に存在する文字列４２〜５０については、表領域３８，４０と同じ列数即ち４列のセル領域を追加的に生成し、この追加したセル領域の対応するセルの位置に文字列４２〜５０のそれぞれを配置している。これによって図３の帳票ベクトルデータ３４は、４列１７行の２次元マトリクス配置を持つ表計算データに変換されている。
【００６０】
図４は本発明のデータ変換処理において、ベクトルデータから抽出される表計算データに変換可能なオブジェクトの分類構成を示している。図４において、ページ内の表計算データに変換可能なオブジェクト群５２としては、文字群５４、表５６、図形５８、イメージ６０に大別される。文字群５４は横書き６２と縦書き６４に分類され、それぞれ左寄り７０、右寄り７２、中央配置７４、上寄り７６、下寄り７８、中央配置８０に分類できる。
【００６１】
一方、表５６については矩形６６と非矩形６８に分類できる。矩形６６については格子状でない８２と格子状８４に分類できる。非矩形６８については外周有り８６と外周無し８８に分けられる。外周有り８６については、格子状でない９０、格子状９２に分類できる。外周無し８８については、行のみ９４，列のみ９６及び行／列９８に分類できる。
【００６２】
この図４に示すような分類に従って帳票ベクトルデータから表計算データに変換可能なオブジェクトを分類して抽出することで、分類されたオブジェクトごとに必要な変換処理を行い、可能な限り正確にベクトルデータのオブジェクトを表計算データのオブジェクトに変換することができる。
【００６３】
図５は本発明によりデータ変換する表領域のデータ構造の説明図である。図５（Ａ）は一般的な表領域のデータ構造であり、表領域１００として座標値を格納しており、表領域１００に含まれる矩形領域の情報として文字領域１０２、矩形領域１０４、４線分１０６、文字列１０８で構成している。文字領域１０２、矩形領域１０４は、それぞれ矩形領域であることから、左下、右上のコーナー座標を定義する。また４線分１０６は線分の始点座標と終点座標であり、更に種別は実線、点線などの線の種別である。文字列１０８は、その領域に配置されている文字列そのものである。
【００６４】
図５（Ｂ）は表領域１１０の一例であり、この表領域１１０は左下の座標点Ｐ５と右上の座標点Ｐ６の座標（ｘ５，ｙ５）（ｘ６，ｙ６）を座標値として持つ。図５（Ｃ）は表領域１１０の中の矩形領域１１２内に配置された文字領域１１４を示しており、文字領域１１４は文字列「あいうえお」を囲む矩形形状であり、その座標は左下の座標点Ｐ３の（ｘ３，ｙ３）と右上の座標点Ｐ４の（ｘ４，ｙ４）で定義できる。更に図５（Ｄ）は矩形領域１１２であり、左下の座標点Ｐ１の座標（ｘ１，ｙ１）と右上の座標点Ｐ２の座標（ｘ２，ｙ２）で定義される。
【００６５】
図５（Ｅ）は、図５（Ｂ）〜（Ｄ）の表領域１１０に含まれる矩形領域１１２におけるデータ構造を具体的に示している。表領域１００には、表領域を示す番号「＃１」をインデックスとして、図５（Ｂ）の座標点Ｐ５，Ｐ６の座標値が格納される。文字領域１０２には、文字領域の番号「＃１」をインデックスとして、図５（Ｃ）の文字領域１１４における座標点Ｐ３，Ｐ４の座標値が格納される。矩形領域１０４については、「＃１」をインデックスとして、図５（Ｄ）の矩形領域１１２における座標点Ｐ１，Ｐ２の座標値が格納される。
【００６６】
４線分１０６については、図５（Ｄ）に示す線分Ｌ１，Ｌ２，Ｌ３，Ｌ４のそれぞれの始点座標と終点座標、更に線の種別を示す「実線」が格納される。文字列１０８には文字領域１１２に配置された「あいうえお」が格納される。このようなデータ変換となる表領域のデータ構造は、２次元マトリクス配置を持つ表データのセルに変換されると、文字領域１０２、矩形領域１０４及び４線分１０６の各座標値はセルアドレス（セル番号）に変換されて扱われることになる。
【００６７】
図６は図１の補正部３１による表領域の縦線の座標補正の説明図である。図６において、表領域１１６にあっては、入力したベクトルデータの状態では表領域１１６内の矩形領域を形成する縦線１１８，１２０，１２２，１２４が横方向にずれており、それぞれの座標位置が異なっていることで、表計算データへの変換が煩雑で誤差を生ずる可能性がある。
【００６８】
このような場合には、補正表領域１１６−１に示すように、例えば縦線１２４の座標位置に合わせるように座標を補正して、補正縦線１１８−１，１２０−１，１２２−１とする。これによって、２次元マトリクス配置の表計算データのセル配置に変換する前にベクトルデータの表領域についてもセル配置と同等な２次元マトリクス配置の表構成とし、表計算データへの変換を簡単且つ正確にできるようにする。
【００６９】
図７は図１の補正部３１による矩形領域の数字列からカンマを削除する補正処理の説明図である。図７において、補正前の矩形領域１２６には数字列「１，００，０００」が配置されている。このようなカンマを持つ数字列を例えばエクセル形式に変換した場合、そのままでは計算データとして使用できず、変換後にカンマを除去するオペレータによる処理を必要とする。そこで変換に先立ち、補正矩形領域１２６−１に示すように、数字列の中のカンマを除去したデータとする。
【００７０】
図８は図１の補正部３１による矩形領域内の文字列の均等配置を解除する補正処理の説明図である。図８の補正前の矩形領域１２８にあっては、文字列「あいう」を均等配置しており、このため矩形領域１２８内において各文字の間隔が大きく広がり、そのまま表計算データに変換すると３つの文字のそれぞれが１つのセルに別々に変換される誤変換が行われる可能性がある。
【００７１】
そこで補正後の矩形領域１２８−１に示すように、文字列の均等配置を解除し、例えば左詰め文字列に変換する。これによって、補正後の矩形領域１２８−１は正しく表計算データの１つのセルに変換することができる。
【００７２】
図９は図１の外部文字列処理部３０による表領域の追加的な設定処理の説明図である。図９の処理前の帳票ベクトルデータ１３０にあっては、表領域１３２の外側に文字列１３４，１３５が存在している。このような場合には、処理後の帳票ベクトルデータ１３０−１に示すように、表領域１３２と同じ２次元マトリクス配置を持つ表領域１３６を文字列１３４，１３５側に追加的に配置し、その中の対応する領域に文字列１３４，１３５を配置する。
【００７３】
これによって帳票ベクトルデータの表領域内の矩形領域のみならず表領域の外側に存在する文字列についても、セルの２次元マトリクス配置を持つ表計算データのセルデータに変換することができる。
【００７４】
図１０は本発明によるデータ変換処理のフローチャートであり、図１を参照して説明すると次のようになる。図１０において、まずステップＳ１でベクトル入力部１２とレイアウトデータ入力部１４が、データ変換モジュール１１のアプリケーション・プログラム・インタフェース（ＡＰＩ）を使用してベクトルデータＡとレイアウトデータＢの引渡しを受けて入力する。
【００７５】
なお、ＯＣＲ変換部１６からのデータを入力する場合にも、この場合にはＯＣＲ変換部１６で読み込まれたイメージデータから変換されたベクトルデータを、同じくＯＣＲ変換部１６対応のアプリケーションプログラムインタフェースを使用して入力する。
【００７６】
次のステップＳ２〜Ｓ７にあっては、表計算データオブジェクト構築部１８に設けた変換制御選択部３２によるユーザ設定に従ったレイアウト情報の出力抑止の選択を行っている。
【００７７】
即ちステップＳ２にあっては、ユーザ設定によるページヘッダとページフッダの出力抑止の選択が行われた否かチェックし、選択が行われている場合には、ステップＳ３でページヘッダ及びページフッダの出力を抑止する。
【００７８】
またステップＳ４で表領域の順序関係の選択が設定されている場合には、ステップＳ５で順序関係を設定した出力指定を行う。更にステップＳ６で制御行の出力抑止の選択が行われているか否かチェックし、出力抑止が選択されている場合には、ステップＳ７で制御行の出力抑止を設定する。
【００７９】
このようなレイアウト情報の出力制御の選択設定が済むと、ステップＳ８で表計算データオブジェクト構築部１８により、入力されたベクトルデータから表領域を認識する表領域認識処理を実行する。続いてステップＳ９で、認識された表領域を対象に表計算用のセル単位となる２次元マトリクス配置を持つ表計算データとしての中間データフォーマットを生成し、中間データフォーマットファイル２０に格納する。
【００８０】
続いて表計算データフォーマット変換部２２が、ユーザ指定による例えばＥｘｃｅｌ（Ｒ）あるいはＣＳＶのフォーマットへの変換を中間データフォーマットファイルから行い、ステップＳ１０で出力要求された全てのフォーマットを生成したことを判別すると、一連の処理を終了する。
【００８１】
図１１は図１０のステップＳ８の表領域認識処理の詳細を示したフローチャートである。図１１において、表領域認識処理は、ステップＳ１で入力したベクトルデータを読み込み、ステップＳ２でデータ抽出部２４がベクトルデータに含まれる直線、矩形、文字といった表計算データに変換可能なオブジェクトとしての各データを抽出する。
【００８２】
続いてステップＳ３で、補正部３０が、直線、矩形、文字の各データの座標などの補正処理を、例えば図６〜図８に示したように行う。次にステップＳ４で表領域認識部２６が直線データから矩形領域を構成し、表領域内の矩形領域に対応したセル領域を生成する。続いてステップＳ５で、セル領域として生成した矩形領域に対し表計算データ生成部２８がデータ抽出部２４で抽出した文字列データを適用する。更にステップＳ６で外部文字処理部３０が表領域の外部に存在する文字領域群から表領域を追加的に構成する。
【００８３】
図１２は本発明によるデータ変換の他の具体例の説明図である。図１２において、変換前の帳票ベクトルデータ３４は左右２箇所に分かれて表領域３８，４０を備えており、表領域３８，４０の外部に文字列４２〜５０を配置している。この帳票ベクトルデータ３４は、ヘッダ１３８、ボディ１４０及びフッダ１４２に分類されており、例えばボディ１４０を指定したデータ変換を行うことができる。
【００８４】
このボディ１４０を指定したデータ変換については、変換後の表計算データ３６に示すように、表領域３８に対応した表データ領域３８−１と表領域４０に対応した表変換領域４０−１が、両者の間の空き領域１４４を介して結合されたデータとして生成される。
【００８５】
図１３は本発明によるデータ変換の他の具体例であり、２ページの帳票ベクトルデータを連続した表計算データに変換する場合を例に取っている。
【００８６】
図１３において、変換前の帳票ベクトルデータは、１ページ目の帳票ベクトルデータ１４６と２ページ目の帳票ベクトルデータ１４８で構成されている。このような２ページの帳票ベクトルデータ１４６，１４８につき、ページヘッダとページフッダの出力抑止を指定してデータ変換を行うと、変換後の表計算データ１５０に示すように、１ページ目のベクトルデータ１４６に対応した表計算データ１４６−１と２ページ目の帳票ベクトルデータ１４８に対応した表計算データ１４８−１を連結した表計算データ１５０を生成することができる。
【００８７】
また本発明は、図２に示したようなコンピュータのハードウエア環境で実行される帳票ベクトルデータを表計算データに変換するための変換プログラムを提供するためのものであり、この変換プログラムは図１０及び図１１のフローチャートに示した処理内容を持つことになる。
【００８８】
また本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
【００８９】
ここで本発明の特徴をまとめて列挙すると、次の付記のようになる。
（付記）
（付記１）
コンピュータに、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
前記データ抽出ステップで抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
前記表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を実行させることを特徴とするデータ変換プログラム。（１）
【００９０】
（付記２）
付記１記載のデータ変換プログラムに於いて、前記入力ステップは、光学的読取装置で読取られた直線、矩形及び文字を含む帳票のイメージデータから変換されたベクトルデータを入力することを特徴とするデータ変換プログラム。
【００９１】
（付記３）
付記１記載のデータ変換プログラムに於いて、更に、前記表領域の外部に文字列データが存在する場合、前記表領域と同じ２次元マトリクス配置を持つセル領域を追加的に生成して前記外部の文字列データを対応するセル位置に配置する外部文字列処理ステップを実行させることを特徴とするデータ変換プログラム。
【００９２】
（付記４）
付記１記載のデータ変換プログラムに於いて、更に、前記データ抽出ステップで抽出された直線データ、矩形データ及び文字列データを補正する補正ステップを実行させることを特徴とするデータ変換プログラム。（２）
【００９３】
（付記５）
付記４記載のデータ変換プログラムに於いて、前記補正ステップは、前記表領域内に配置された１又は複数の矩形領域の縦線及び又は横線がずれていた場合、前記縦線及び又は横線が揃うように座標を補正することを特徴とするデータ変換プログラム。
【００９４】
（付記６）
付記４記載のデータ変換プログラムに於いて、前記補正ステップは、前記文字列データがカンマを付加した数値データの場合、前記カンマを削除することを特徴とするデータ変換プログラム。
【００９５】
（付記７）
付記４記載のデータ変換プログラムに於いて、前記補正ステップは、前記文字列データが均等割付の文字列データの場合、前記均等割付を解除して片詰めの文字列データとすることを特徴とするデータ変換プログラム。
【００９６】
（付記８）
付記１記載のデータ変換プログラムに於いて、前記入力ステップが前記ベクトルデータと共に帳票のレイアウトデータを入力した場合、前記レイアウトデータに基づき表計算データへの変換内容を制御するか否かをユーザ設定により選択する変換制御選択ステップを実行させることを特徴とするデータ変換プログラム。（３）
【００９７】
（付記９）
付記８記載のデータ変換プログラムに於いて、前記変換制御選択ステップは、前記レイアウトデータとして複数ページで構成された帳票のページヘッダ及び又はページフッダが入力された場合、前記ページヘッダ及び又はページフッダの出力を抑止して連続帳票の表計算データを生成させることを特徴とするデータ変換プログラム。
【００９８】
（付記１０）
付記８記載のデータ変換プログラムに於いて、前記変換制御選択ステップは、前記レイアウトデータとして帳票内に存在する複数の表の順序を示す順序データが入力された場合、前記順序データに基づく順序関係に従って複数の表を合成した表計算データを生成させることを特徴とするデータ変換プログラム。
【００９９】
（付記１１）
付記８記載のデータ変換プログラムに於いて、前記変換制御選択ステップは、前記レイアウトデータとして帳票の区切りで小計、合計等の示す制御行が入力された場合、前記制御行の出力を抑止した表計算データを生成させることを特徴とするデータ変換プログラム。
【０１００】
（付記１２）
帳票のベクトルデータを２次元マトリクス配置を持つ表計算データに変換するデータ変換方法に於いて、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力ステップと、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出ステップと、
前記データ抽出ステップで抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識ステップと、
前記表領域認識ステップで認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出ステップで抽出した文字列データを配置して表計算データを生成する表計算データ生成ステップと、
を備えたことを特徴とするデータ変換方法。（４）
【０１０１】
（付記１３）
帳票のベクトルデータを２次元マトリクス配置を持つ表計算データに変換するデータ変換装置に於いて、
直線、矩形及び文字を含む帳票のベクトルデータを入力する入力部と、
前記ベクトルデータから直線データ、矩形データ及び文字列データを抽出するデータ抽出部と、
前記データ抽出部で抽出した前記直線データ及び矩形データから表領域および前記表領域の内部に配置された複数の矩形領域を認識する表領域認識部と、
前記表領域認識部で認識した複数の矩形領域に対応した２次元マトリクス配置をもつ表計算データのセル領域を生成し、生成したセル領域に前記データ抽出部で抽出した文字列データを配置して表計算データを生成する表計算データ生成部と、
を備えたことを特徴とするデータ変換装置。（５）
【図面の簡単な説明】
【０１０２】
【図１】本発明によるデータ変換処理の機能構成のブロック図
【図２】図１のデータ変換モジュールが実現されるコンピュータのハードウェア環境のブロック図
【図３】本発明による帳票ベクトルデータから表計算データの変換例の説明図
【図４】本発明においてベクトルデータから抽出されるオフジェクトの分類説明図
【図５】本発明によりデータ変換する表領域のデータ構造の説明図
【図６】本発明による表領域の縦線の座標補正の説明図
【図７】本発明による矩形領域の数字列からカンマを削除する補正処理の説明図
【図８】本発明による矩形領域内の文字列の均等配置を解除する補正処理の説明図
【図９】本発明における表領域外部の文字列に表領域を設定する処理の説明図
【図１０】本発明によるデータ変換処理のフローチャート
【図１１】図１１のステップＳ８による表領域認識処理の詳細を示したフローチャート
【図１２】帳票ベクトルデータのボディを変換指定して表計算データを生成する本発明のデータ変換の他の例の説明図
【図１３】２ページの帳票ベクトルデータを表計算データに変換する本発明によるデータ変換の具体例の説明図
【符号の説明】
【０１０３】
１０：帳票出力アプリケーション
１１：データ変換モジュール
１２：ベクトルデータ入力部
１４：レイアウトデータ入力部
１６：ＯＣＲ変換部
１８：表計算データオブジェクト構築部
２０：中間データフォーマットファイル
２２：表計算データフォーマット変換部
２４：データ抽出部
２６：表領域認識部
２８：表計算データ生成部
３０：外部文字列処理部
３１：補正部
３２：変換制御選択部
３４：帳票ベクトルデータ
３６：表計算データ（中間データ）
３８、４０：表領域
３８−１、４０−１：:表計算データ領域
４２，４４，４６，４８，５０：表外文字列
４２−１，４４−１，４６−１，４８−１，５０−１：セル領域
【図１】
2007087238.tif 000003
【図２】
2007087238.tif 000004
【図３】
2007087238.tif 000005
【図４】
2007087238.tif 000006
【図５】
2007087238.tif 000007
【図６】
2007087238.tif 000008
【図７】
2007087238.tif 000009
【図８】
2007087238.tif 000010
【図９】
2007087238.tif 000011
【図１０】
2007087238.tif 000012
【図１１】
2007087238.tif 000013
【図１２】
2007087238.tif 000014
【図１３】
2007087238.tif 000015