(57)【要約】      （修正有）【課題】ＭＦＰ（マルチファンクション複合機）などからオリジナル情報をデータベースに格納する際、サーバでのデータ容量を削減する。【解決手段】アプリケーションデータの印刷方法、データベースへの登録、データの属性を選択し、属性選択に応じて、プリントジョブを印字すると共にデータフォーマット変換されたデータをデータベースに登録する。さらに、登録するデータの登録期間を設定し、その期間を経るとファイルを消去する。さらに、ファイルへのアクセス頻度に応じてもファイルを消去する。また、登録するオブジェクトを明示的に設定することで、全体ではなく必要なオブジェクトのみをデータベースに登録できる。【選択図】図１０
2008129646.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの操作部より、アプリケーションデータの印刷方法を選択できる印刷選択手段、
コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択できる登録選択手段、
コンピュータの操作部より、登録するデータの属性を選択できる属性選択手段、
上記登録選択手段と上記属性選択手段に応じて、アプリケーションデータを他のデータフォーマットに変換するデータフォーマット変換手段、
上記印刷選択手段にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換手段により変換されたデータをデータベースに登録する印字時登録手段、とを有することを特徴とする画像処理システム。
【請求項２】
請求項１記載の属性選択手段は、１つ以上の属性モードをもつことを特徴とする画像処理システム。
【請求項３】
請求項１記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけでなく、アプリケーションデータも登録されることを特徴とする画像処理システム。
【請求項４】
請求項１記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけを登録されることを特徴とする画像処理システム。
【請求項５】
コンピュータの操作部より、アプリケーションデータの印刷方法を選択できる印刷選択手段、
コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択できる登録選択手段、
コンピュータの操作部より、登録するデータの属性を選択できる属性選択手段、
上記登録選択手段と上記属性選択手段に応じて、アプリケーションデータを他のデータフォーマットに変換するデータフォーマット変換手段、
上記印刷選択手段にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換手段により変換されたデータをデータベースに登録する印字時登録手段、
コンピュータの操作部より、上記印字時登録手段よって登録されるデータに登録期間を設定する登録期間設定手段、
上記登録期間設定手段に応じてデータベース内で登録されたデータを消去する期間限定データ消去手段、とを有することを特徴とする画像処理システム。
【請求項６】
請求項５記載の属性選択手段は、１つ以上の属性モードをもつことを特徴とする画像処理システム。
【請求項７】
請求項５記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけでなく、アプリケーションデータも登録されることを特徴とする画像処理システム。
【請求項８】
請求項５記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけを登録されることを特徴とする画像処理システム。
【請求項９】
請求項５記載の登録期間設定手段は、属性毎に期間を設定できることを特徴とする画像処理システム。
【請求項１０】
請求項５記載の期間限定データ消去手段は、設定された属性毎に期間に応じてデータの実体を消去することを特徴とする画像処理システム。
【請求項１１】
コンピュータの操作部より、アプリケーションデータの印刷方法を選択できる印刷選択手段、
コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択できる登録選択手段、
コンピュータの操作部より、登録するデータの属性を選択できる属性選択手段、
上記登録選択手段と上記属性選択手段に応じて、アプリケーションデータを他のデータフォーマットに変換するデータフォーマット変換手段、
上記印刷選択手段にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換手段により変換されたデータをデータベースに登録する印字時登録手段、
上記印字時登録手段よって登録されるデータにアクセス頻度を設定する頻度設定手段、
上記頻度設定手段で設定されたアクセス頻度とデータベース内で上記データのアクセス数とを比較した結果に応じて、上記データを消去するアクセス頻度データ消去手段とを有することを特徴とする画像処理システム。
【請求項１２】
請求項１１記載の属性選択手段は、１つ以上の属性モードをもつことを特徴とする画像処理システム。
【請求項１３】
請求項１１記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけでなく、アプリケーションデータも登録されることを特徴とする画像処理システム。
【請求項１４】
請求項１１記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけを登録されることを特徴とする画像処理システム。
【請求項１５】
請求項１１記載の頻度設定手段は、属性毎に期間を設定できることを特徴とする画像処理システム。
【請求項１６】
請求項１１記載のアクセス頻度データ消去手段は、設定された属性毎のアクセス頻度に応じてデータの実体を消去することを特徴とする画像処理システム。
【請求項１７】
コンピュータの操作部より、アプリケーションデータの印刷方法を選択できる印刷選択手段、
コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択できる登録選択手段、
コンピュータの操作部より、登録するデータの属性を選択できる属性選択手段、
上記登録選択手段と上記属性選択手段に応じて、アプリケーションデータを他のデータフォーマットに変換するデータフォーマット変換手段、
上記印刷選択手段にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換手段により変換されたデータをデータベースに登録する印字時登録手段、
上記印字時登録手段よって登録されるデータをユーザーがオブジェクト毎に選択する設定手段を有することを特徴とする画像処理システム。
【請求項１８】
請求項１７記載の属性選択手段は、１つ以上の属性モードをもつことを特徴とする画像処理システム。
【請求項１９】
請求項１７記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけでなく、アプリケーションデータも登録されることを特徴とする画像処理システム。
【請求項２０】
請求項１７記載の印字時登録手段は、上記データフォーマット変換手段により変換されたデータだけを登録されることを特徴とする画像処理システム。
【請求項２１】
請求項１７記載のオブジェクト選択設定手段は、ユーザーがコンピュータ操作部にて明示的に指定し、設定できることを特徴とする画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータやＭＦＰ（マルチファンクション複合機）などから、電子情報をデータベースに登録する技術に関するものである。
【背景技術】
【０００２】
近年、環境問題が叫ばれる中、オフィスでのペーパーレス化が急速に進んでいる。
【０００３】
ペーパーレス化の方法には、例えば、バインダ等で蓄積された紙文書をスキャナ等で読み取り、画像のラスターデータまたはその符号化データ（以下これらを総称してイメージデータという。）として、ポータブルドキュメントフォーマット（ＰＤＦフォーマット）等のコンパクトなファイルに変換して、画像記憶手段に格納するものがある。
【０００４】
さらに、機能が拡張された記録装置、ＭＦＰ（マルチファンクション複合機）を用い、画像記憶装置に文字や画像のオリジナルデータファイルを登録しておき、オリジナルデータファイルを印刷して紙文書に記録する際に、オリジナルデータファイルが存在する画像記憶装置内のポインタ情報を、紙文書の表紙や印刷情報中に付加情報として記録するものがある（例えば特許文献１）。これによって、ポインタ情報から直ちにオリジナルデータファイルにアクセスし、オリジナルデータファイルの編集、印刷等の再利用が可能であり、紙文書保有量を削減し得る。
【０００５】
また、これらの登録されるデータは、他のネットワークドメインから利用するために、オリジナルデータのみならず、再利用可能な情報として加工されたデータもデータベース等に登録（検索用）する手段が取られるのが一般的である。この再利用可能な情報に加工されたデータは、紙媒体からオリジナルデータを検索するためのインデックス情報としても活用される。
【特許文献１】特開平１０−２８５３７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように、紙媒体のドキュメント情報からオリジナルのデータファイル（電子情報）へのデータアクセスが可能なシステムが実用化されようとしている。このようなシステムでは、紙媒体をキーとして、オリジナルの電子情報をサーバ経由（記憶媒体）でハンドリングできる利便性があるものの、登録するオリジナル情報（電子情報）の増加にともない、管理するサーバの容量増加が課題となってくる。
【０００７】
特に、編集や再利用したい内容は、必ずしも登録する情報全てでなはく、登録する内容によってはその一部しか編集や再利用性を考慮しないものもあり、これらの利用状況は作成者（登録者）に大きく依存する。
【０００８】
本発明はこのような従来の問題点を解消すべく創案されたもので、紙媒体として出力されたもののオリジナル情報を編集、再利用する際に登録される情報量を、登録するユーザーの意図に合わせて効率的に削減することを目的とする。
【課題を解決するための手段】
【０００９】
コンピュータの操作部より、アプリケーションデータの印刷方法を選択し、コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択し、コンピュータの操作部より、登録するデータの属性を選択し、上記登録選択したものと上記属性選択したものに応じて、アプリケーションデータを他のデータフォーマットに変換し、上記印刷設定にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換されたデータをデータベースに登録する画像処理システムで、登録する属性を選択することで、データベースに係るデータ増加の問題を軽減する。
【００１０】
さらには、コンピュータの操作部より、アプリケーションデータの印刷方法を選択し、コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択し、コンピュータの操作部より、登録するデータの属性を選択し上記登録選択したものと上記属性選択したものに応じて、アプリケーションデータを他のデータフォーマットに変換し、上記印刷設定にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換されたデータをデータベースに登録する画像処理システムで、コンピュータの操作部より、上記印字時登録時に登録されるデータに登録期間を設定し、上記登録期間手段に応じてデータベース内で登録されたデータを消去することで、さらにデータベースへの負荷を軽減する。
【００１１】
さらには、コンピュータの操作部より、アプリケーションデータの印刷方法を選択し、コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択し、コンピュータの操作部より、登録するデータの属性を選択し上記登録選択したものと上記属性選択したものに応じて、アプリケーションデータを他のデータフォーマットに変換し、上記印刷設定にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換されたデータをデータベースに登録する画像処理システムで、上記印字時登録に登録されるデータにアクセス頻度を設定し、上記頻度設定されたアクセス頻度とデータベース内で上記データのアクセス数とを比較した結果に応じて、上記データを消去するアクセス頻度データ消去することで上記課題を解決する。
【００１２】
さらには、コンピュータの操作部より、アプリケーションデータの印刷方法を選択し、コンピュータの操作部より、印刷するアプリケーションデータをデータベースに登録することを選択し、コンピュータの操作部より、登録するデータの属性を選択し上記登録選択したものと上記属性選択したものに応じて、アプリケーションデータを他のデータフォーマットに変換し、上記印刷設定にて、印字動作を実施することで、プリントジョブを印字すると共に上記データフォーマット変換されたデータをデータベースに登録する画像処理システムで、上記印字時登録に登録されるオブジェクトをユーザーがコンピュータの操作部にて明示的に指定し、必要なオブジェクト情報のみがデータベースに登録されることで上記課題を解決する。
【発明の効果】
【００１３】
本発明によれば、紙文書のドキュメント情報からオリジナルのデータ（電子情報）、或いは、オブジェクト情報を再利用する画像処理システムで課題となる、登録するデータ量の増大を、登録する側から残しておきたい情報を選択することで改善している。具体的には、従来、登録するデータはデータそのものであったが、第1実施例では、属性を選択することで、不必要なオブジェクト（属性）は削除して登録することでデータ量の削減を図っている。第２実施例では、従来ではオリジナルのデータと再利用可能なデータの両方を登録していたのに対し、再利用可能なデータだけを登録するようにしている。第3の実施例では、登録するデータに期間を設け、所定の期間経てばそのファイルを消去する構成で、第4の実施例では、期間をオブジェクト単位に設定できるようになっている。さらに、他の実施例では、上記第3、４実施例の概念をデータベースに登録されたアクセスする頻度に応じて消去される構成をとることで、データ量増大に係る問題を改善している。また、第５の実施例では、登録するオブジェクトを作成者（印刷者）がUIを利用して明示的に設定する構成をとることで、必要なオブジェクトのみを登録し、データ量増大に係る問題を改善している。
【発明を実施するための最良の形態】
【００１４】
[第１実施例]
次に本発明に係る画像処理方法の第１実施例を図面に基づいて説明する。
【００１５】
図１は、本発明に係る画像処理システムを示すブロック図、図２は、図１におけるＭＦＰを示すブロック図、図３は、図１に示したローカルＰＣ１０２におけるデータ処理モジュールの構成を説明するブロック図で、図４は上記PCのデータ処理モジュールの詳細構成を示し、図５は、第１実施例で説明する第１のデータ処理フロー、図６はデータを登録する印刷設定ダイアログの一例を示す図である。図７は、第１実施例で説明する第２のデータ処理フロー、図８は、図４に示すスプールマネージャからデスプーラに通知される情報の一例を示す図であり、図９は、データを登録するときの詳細設定を選択したときに表示される印刷設定ダイアログの一例である。図１０は、図９にて登録設定内容を展開した表示の一例で、図１１は、本実施例に係る再利用可能なデータへの変換フロー図である。図１２は、ベクトル化処理の中で実施するＢＳ（ブロックセレクション）処理で領域分割情報した結果の一例を表し、図１３は、ＢＳ：領域分割情報したときの各属性のブロック情報および入力ファイル情報を、図１４は、再利用可能なデータへの変換で重要なベクトル化処理のフロー図である。図１５は、ベクトル化の処理における角抽出の処理を示す図、図１６は、ベクトル化の処理における輪郭線まとめの処理を示す図、図１７は、図１４で生成されたベクトルデータのグループ化の処理を示すフローチャート、図１８は、図１７の処理でグループ化されたベクトルデータに対する図形要素検出の処理を示すフローチャート、図１９は、本実施例に係るベクトル化処理結果のデータを示すマップで、図２０は、図１１のアプリデータ変換の処理を示すフローチャート、図２１は、図２０の文書構造ツリー生成の処理を示すフローチャート、図２２は、文書構造ツリー生成処理の対象となる文書を示す図で、図２３は、図２１の処理によって生成される文書構造ツリーを示す図であり、図２４は、本実施例で説明するＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の一例、図２５は、本発明で実施する登録設定と送信する再利用可能なデータ形式の詳細を示す図、図２６は、第２実施例で説明する登録用のデータのファイルフォーマットを表し、図２７は、第２実施例で説明する第１のデータ処理フロー、図２８は、第２実施例で説明する登録用のデータのファイルフォーマットを表す。
【００１６】
[画像処理システム] 
図１において、本発明に係る画像処理システムは、オフィス１０とオフィス２０とをインターネット１０４で接続した環境において使用される。
【００１７】
オフィス１０内に構築されたＬＡＮ１０７には、記録装置としてのＭＦＰ（マルチファンクション複合機）１００、ＭＦＰ１００を制御するマネージメントＰＣ１０１、ローカルＰＣ１０２、文書管理サーバ１０６、文書管理サーバ１０６のためのデータベース１０５が接続されている。
【００１８】
オフィス２０内にはＬＡＮ１０８が構築され、ＬＡＮ１０８には文書管理サーバ１０６、および文書管理サーバ１０６のためのデータベース１０５が接続されている。
【００１９】
ＬＡＮ１０７、１０８にはプロキシサーバ１０３が接続され、ＬＡＮ１０７、１０８はプロキシサーバ１０３を介してインターネットに接続される。
【００２０】
ＭＦＰ１００は原稿から読み取った入力画像に対する画像処理の一部を担当し、処理結果としての画像データはＬＡＮ１０９を通じてマネージメントＰＣ１０１に入力する機能や、ローカルPC１０２、もしくは不図示の汎用PCから送信されるＰＤＬ（Ｐａｇｅ  Ｄｉｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）言語を解釈して、プリンタとして作用、さらには、原稿から読み取った画像をローカルＰＣ１０２もしくは、不図示の汎用PCに送信する機能をもつ。マネージメントＰＣ１０１は、画像記憶手段、画像処理手段、表示手段、入力手段等を含む通常のコンピュータであり、機能的にはこれら構成要素の一部がＭＦＰ１００と一体化して、画像処理システムの構成要素となっている。なお、本実施例では、マネージメントＰＣを介してデータベース１０５において、下記に記載する登録処理などが実行されるものとするが、マネージメントＰＣで行われる処理をＭＦＰで実行するようにしても構わない。
【００２１】
さらにＭＦＰ１００は、ＬＡＮ１０９によってマネージメントＰＣ１０１に直接接続されている。
【００２２】
[ＭＦＰ]
図２において、ＭＦＰ１００は、図示しないオートドキュメントフィーダ（ＡＤＦ）を有する画像読み取り部１１０を備え、画像読み取り部１１０は束状の或いは1枚の原稿の画像を光源で照射し、反射画像をレンズで固体撮像素子上に結像する。固体撮像素子は所定解像度（例えば６００ｄｐｉ）および所定輝度レベル（例えば８ビット）の画像読み取り信号を生成し、画像読み取り信号からラスターデータよりなる画像データが構成される。
【００２３】
ＭＦＰ１００は、記憶装置１１１および記録装置１１２を有し、通常の複写機能を実行する際には、イメージデータをデータ処理装置１１５によって、複写用の画像処理して記録信号に変換する。複数枚複写の場合には、１頁分の記録信号を一旦記憶装置１１１に記憶保持した後、記録装置１１２に順次出力して、記録紙上に記録画像を形成する。
【００２４】
ＭＦＰ１００は、ＬＡＮ１０７との接続のためのネットワークＩ／Ｆ１１４を有し、ローカルＰＣ１０２、もしくは他の汎用PC（不図示）からドライバーを利用して出力するＰＤＬ言語を、記録装置１１２によって記録し得る。ローカルＰＣ１０２からドライバーを経由して出力されるＰＤＬデータは、ＬＡＮ１０７からネットワークＩ／Ｆ１１４を経てデータ処理装置１１５で言語を解釈・処理することで記録可能な記録信号に変換された後、ＭＦＰ１００において、記録紙上に記録画像として記録される。
【００２５】
ＭＦＰ１００は、ＭＦＰ１００に設けられたキー操作部（入力装置１１３）、あるいはマネージメントＰＣ１０１の入力装置（キーボード、ポインティングデバイス等）を通じて操作される。これらの操作のために、データ処理装置１１５ は内部の制御部（図示せず。）によって所定の制御を実行する。
【００２６】
ＭＦＰ１００は表示装置１１６を有し、操作入力の状態と、処理すべきイメージデータとを、表示装置１１６によって表示し得る。
【００２７】
記憶装置１１１はネットワークＩ／Ｆ１１７を介して、マネージメントＰＣ１０１から直接制御し得る。ＬＡＮ１０９は、ＭＦＰ１００とマネージメントＰＣ１０１との間のデータの授受、制御信号授受に用いられる。
【００２８】
[登録方法と印刷処理全体の流れ]
本実施例では、プリンタドライバにてデータをプリント出力する際に、オリジナルのアプリケーションデータを、検索、或いは再利用可能なアプリケーションデータとして再利用するデータとして登録する方法について説明する。
【００２９】
図３は、図１に示すローカルＰＣ１０２でアプリケーションデータを印字処理する、処理モジュールの構成を説明するブロック図である。
【００３０】
図３において、アプリケーション３０１、グラフィックエンジン３０２、プリンタドライバ３０３、及びシステムスプーラ３０４は、ローカルＰＣ１０２内部の記憶装置（不図示）に保存されたファイルとして存在し、実行される場合にOSやそのモジュールを利用するモジュールによって実行されるプログラムモジュール（データ処理モジュール）である。また、アプリケーション３０１およびプリンタドライバ３０３は、外部メモリ（不図示）、ＣＤ−ＲＯＭ（不図示）或いはネットワークＩ／Ｆ１０７を経由してローカルＰＣ１０２内の記憶装置に追加することが可能となっている。
【００３１】
グラフィックエンジン３０２は記録装置１１２毎に用意されたプリンタドライバ３０３をローカルＰＣ１０２内部の記憶装置から実行し、アプリケーション３０１の出力をプリンタドライバ３０３に設定する。
【００３２】
そして、アプリケーション３０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ３０３へＤＤＩ関数を出力する。
【００３３】
プリンタドライバ３０３は、グラフィックエンジン３０２から受け取ったＤＤＩ関数に基づいて、データ処理装置１１５が認識可能な制御コマンド、例えばＰＤＬ（Page  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってロードされたシステムスプーラ３０４を経てネットワークＩ／Ｆ１０７を経由してＭＦＰ１００へ印刷データとして出力される仕組みとなっている。
【００３４】
図４は、図１に示したローカルＰＣ１０２のデータ処理モジュールの詳細構成を説明するブロック図であり、図３に示したシステムを拡張したものに対応し、グラフィックエンジン３０２からプリンタドライバ３０３へ印刷命令を送る際に、一旦、中間コードからなるスプールファイル４０３を生成する構成を示してある。
【００３５】
なお、上記図４のシステムでは、スプールファイル４０３の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大／縮小や、複数ページを１ページに縮小して印刷するＮアップ印刷など、アプリケーションの持たない機能を実現する。このように図４に示すシステムでは、中間コードデータでスプールするようにシステムの拡張がなされている。
【００３６】
図のように、この処理方式では、グラフィックエンジン３０２からの印刷命令をディスパッチャ４０１が受け取る。ディスパッチャ４０１がグラフィックエンジン３０２から受け取った印刷命令が、アプリケーション３０１からグラフィックエンジン３０２へ発行された印刷命令の場合には、ディスパッチャ４０１は外部メモリ（不図示）に格納されているスプーラ４０２をＲＡＭ（不図示）にロードし、プリンタドライバ３０３ではなく、スプーラ４０２へ印刷命令を送付する。
【００３７】
スプーラ４０２は受け取った印刷命令を中間コードに変換してスプールファイル４０３に出力する。また、スプーラ４０２は、プリンタドライバ３０３に対して設定されている印刷・登録データに関する諸設定をプリンタドライバ３０３から取得してスプールファイル４０３に保存する。
【００３８】
なお、スプールファイル４０３は外部メモリ（不図示）上にファイルとして生成するが、ＲＡＭ（不図示）上に生成しても構わない。さらに、スプーラ４０２は外部メモリ（不図示）に格納されているスプーラファイルマネージャ４０４をＲＡＭ（不図示）上にロードし、スプールファイルマネージャ４０４に対してスプールファイル４０３の生成状況を通知する。
【００３９】
その後、スプールファイルマネージャ４０４は、スプールファイル４０３に保存された印刷データに関する加工設定の内容にしたがって印刷を行なえるか判断する。スプールファイルマネージャ４０４がグラフィックエンジン３０２を利用して印刷・登録を行なえると判断した際には、外部メモリ（不図示）に格納されているデスプーラ４０５をＲＡＭ（不図示）にロードし、デスプーラ４０５に対して、スプールファイル４０３に記述された中間コードの印刷処理、ならびに、オリジナルの電子データとそのデータを再利用可能なアプリケーションデータ送信を行なうように指示する。
【００４０】
デスプーラ４０５はスプールファイル４０３に含まれる中間コードをスプールファイル４０３に含まれる設定の内容によって加工し、もう一度グラフィックエンジン３０２経由で出力する。ディスパッチャ４０１がグラフィックエンジン３０２から受け取った印刷命令がデスプーラ４０５からグラフィックエンジン３０２へ発行された印刷命令の場合には、ディスパッチャ４０１はスプーラ４０２ではなく、プリンタドライバ３０３に印刷命令を送る。プリンタドライバ３０３は、プリンタ制御コマンドを生成し、システムスプーラ３０４を経由してＭＦＰ１００に出力する。
【００４１】
図５は、図４に示すデータ処理手順を示すフローチャートであり、図４に示したスプーラ４０２によるスプールファイル４０３の生成におけるページ単位保存ステップの処理手順に対応する。
【００４２】
ステップＳ５０１では、アプリケーション３０１からの印刷要求を受け付ける。アプリケーション３０１では、図６に示すような印刷・登録の設定を入力するダイアログが表示され、このダイアログから入力された印刷・登録設定がプリンタドライバよりスプーラ３０３に渡される。
【００４３】
図６は、図１に示したローカルＰＣ１０２に付随のモニター（不図示）に表示される印刷・登録設定ダイアログの一例を示す図である。
【００４４】
図において、６０１はアプリケーション３０１にて印刷する画像をプレビューする領域を表し、６０２はＲＣＰ（リッチコンテンツプリント）を設定するためのＴＡＢを表す。本実施例においてＲＣＰとは、印刷する電子データを印刷すると同時に、オリジナルの電子情報、もしくはそのデータを再利用可能なアプリケーションデータ（ベクトル化）にしたものをサーバに登録する動作を指す。６０３、６０４はＲＣＰの設定を反映するためのボタンを表し、６０５は登録するためのより詳細な設定を行なうためのボタンを表す。オリジナルの電子情報を登録する詳細については後述する。
【００４５】
ステップＳ５０２では、受け付けた印刷要求がジョブの開始要求かどうかを判定し、ジョブ開始要求であると判断した場合には、ステップＳ５０３として、中間データを一時的に保存するためのスプールファイル４０３を作成する。
【００４６】
続いて、ステップＳ５０４では、スプールファイルマネージャ４０４へ印刷処理の進捗を通知し、続く、ステップＳ５０５ではスプーラ４０２のページ数カウンタを「１」に初期化する。ここでスプールファイルマネージャ４０４においては、印刷が開始されたジョブに対するジョブの情報や加工設定などをスプールファイル４０３より読み込み、記憶させステップ５０１へ戻る。
【００４７】
一方、ステップＳ５０２において、ジョブ開始要求ではなかったと判断した場合には、ステップＳ５０６に進み、受け付けた要求がジョブ終了要求かどうかの判断を行い、ジョブ終了要求でないと判断した場合には、ステップＳ５０７へ進み、改ページかどうかの判断を行い、改ページであると判断した場合には、ステップＳ５０８に進み、スプールファイルマネージャ４０４へ印刷処理の進捗を通知するとともに、ページ数カウンタをインクリメントして、ステップＳ５０１へ戻る。
【００４８】
一方、ステップＳ５０７にて、受け付けた印刷要求が改ページでないと判断した場合には、ステップＳ５０９に進み、中間ファイル、及び、ベクトル化したデータの格納の準備を行なう。
【００４９】
次に、ステップＳ５１０では、印字要求のスプールファイル４０３へ格納するための変換処理を行なう。そして、ステップＳ５１１では、ステップＳ５１０において、格納可能な形に変換された印刷要求をスプールファイル４０３へ書き込む。その後、ステップＳ５０１に戻り、再びアプリケーションからの印字要求を受け付ける。この一連のステップＳ５０１からステップＳ５１１までの処理を、アプリケーションよりジョブ終了要求を受け付けるまで続ける。
【００５０】
一方、ステップＳ５０６にて、アプリケーションからの印刷要求がジョブ終了であると判断した場合には、アプリケーションからの印刷要求は全て終了であるので、ステップＳ５１２に進み、続く、登録設定されたかどうかの判断を行なう。
【００５１】
ステップＳ５１２にて登録設定されたと判断された場合（図６にてボタン６０３が選択された場合）は、続くステップＳ５１３にて、ベクトル化アプリケーションが起動し、スプールファイル４０３として格納されたデータを一旦ラスターデータ化して、ベクトルデータへと変換し、続くステップＳ５１４にてオリジナルのアプリケーションデータとステップＳ５１３にて再利用可能なアプリケーションとを登録用のデータとして関連付けてスプールファイル４０３に記憶する。ベクトル化の方法、登録の詳細については後述する。
【００５２】
ステップＳ５１４の関連付けが終了すると、続くステップＳ５１５に進み、スプールファイルマネージャ４０４へ印刷処理、並びに登録処理の進捗を通知し、処理を終える。
【００５３】
ステップＳ５１２にて、登録要求が無かった場合は、そのままステップＳ５１５に進み、スプールファイルマネージャ４０４へ印刷処理のみの進捗を通知し、処理を終了する。
【００５４】
図７は、本発明の第２のデータ処理手順の一例を示すフローチャートである。まず、ステップＳ７０１では、スプーラ４０２あるいは、デスプーラ４０５からの印刷処理の進捗通知を受ける。そして、ステップＳ７０２では、進捗通知が前述の図５に示したステップ５０４において通知されるスプーラ４０２からの印刷開始通知であるかどうか判断し、もしそうであると判断した場合は、ステップＳ７０３へ進み、印刷の加工設定をスプールファイル４０３からの読み込み、ジョブの管理を開始して、ステップＳ７０１へ戻る。
【００５５】
一方、ステップＳ７０２において、スプーラ４０２からの印刷開始通知でないと判断した場合は、ステップＳ７０４へ進み、進捗通知が前述の図５に示したステップＳ５０８において通知されるスプーラ４０２からの１論理ページの印刷終了通知であるかどうかを判定し、１論理ページの印刷終了通知であると判断した場合には、ステップＳ７０５に進み、この論理ページに対する論理ページ情報を格納する。
【００５６】
そして、続くステップＳ７０６では、この時点でスプールが終了したｎ論理ページに対して、１論理ページの印刷が開始できるかを判定する。ここで、印刷可能である場合は、ステップＳ７０７へ進み、印刷する１物理ページに対して割り付けられる論理数から物理ページを決定する。
【００５７】
物理ページの計算については、例えば、加工設定が１物理ページに４論理ページを配置するような設定の場合、第1物理ページは第4論理ページがスプールされた時点で印刷可能となり、第1物理ページとなる。続いて第２物理ページは第8論理ページがスプールされた時点で印刷可能となる。
【００５８】
また、論理ページ数が１物理ページに配置する論理ページ数の倍数でなくても、図５に示したステップＳ５１５におけるスプール終了通知によって、１物理ページに配置する論理ページが決定可能である。
【００５９】
そしてステップＳ７０８では、図８に示すような形式で、印刷可能となった物理ページを構成する論理ページと、その物理ページ番号などの情報がデスプーラ４０５に通知される。その後、ステップＳ７０１に戻り、次の通知を待つ。
【００６０】
図８は、図４に示したスプールファイルマネージャ４０４からデスプーラ４０５に通知される情報の一例を示す図である。
【００６１】
一方、ステップＳ７０４において、進捗通知がスプーラ４０２からの１論理ページの印刷終了通知でなかったと判断した場合は、ステップＳ７０９へ進み、前述の図５に示したステップＳ５１２において通知されるスプーラ４０２からのジョブ終了通知であるかどうかを判断し、ジョブ終了通知であると判断した倍、ステップＳ７１１へ進む。
【００６２】
一方、ステップＳ７０９で、ジョブ終了通知でないと判断した場合、ステップＳ７１０へ進み、受け付けた通知がデスプーラ４０５からの１物理ページの印刷終了通知であるかどうか判定し、１物理ページの印刷終了通知であると判断した場合は、ステップＳ７１１へ進み、加工設定の印刷が全て終了したかを判定し、印刷を終了したと判断した場合、ステップＳ７１２へ進み、デスプーラ４０５に印刷終了の通知を行い、ステップＳ７０１へ戻る。
【００６３】
一方、ステップＳ７１１で、加工設定に対する印刷がまだ終了していないと判断した場合、前述のステップＳ７０６へ進む。なお、本実施例におけるデスプーラ４０５は同時に印刷処理を行なえる物理ページ数を「１」と想定している。
【００６４】
一方、ステップＳ７１０において、デスプーラ４０５からの１物理ページの印刷終了通知でないと判断された場合、ステップＳ７１３へ進み、デスプーラ４０５からの印刷終了通知かどうかを判定し、デスプーラ４０５からの印刷終了通知と判定された場合、ステップＳ７１４へ進み、スプールファイルの削除を行い、処理を終える。
【００６５】
一方、ステップＳ７１３でデスプーラ４０５からの印刷終了通知でなかったと判断した場合は、ステップＳ７１５へ進み、その他通常処理を行い、次の通知を待つ。
【００６６】
なお、デスプーラ４０５、及びスプールファイルマネージャ４０４からの印刷要求に応じて、スプールファイル４０３から必要な情報を読み出して、印刷データの生成と登録用のデータの送信準備を行なう。既に生成済みの登録用データ（もしくは再利用可能なアプリデータ）と、生成された印刷データにおけるＭＦＰ１００の転送方法については、図4で説明した通りである。
【００６７】
以上、基本OSによって、上述したこれらの名称や機能的な枠組みは若干異なる場合があるが、本発明でいう各技術的手段が実現できるモジュールであれば、それらの名称や枠組みは本実施例にとっては大きな問題ではない。例えば、スプーラやスプールファイルと呼ばれるものは、別のOSにおいてはプリント・キューと呼ばれるモジュールに処理を組み込むことによっても実現可能である。なお、一般的に、これらの各機能モジュールを含むホストコンピュータは、中央演算処理装置（ＣＰＵ）、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ハードディスク（ＨＤＤ）、各種入出力制御部（Ｉ／Ｏ）などのハードウェアのもとで、基本ソフトと呼ばれるソフトウェアがその制御を司り、その基本ソフトの元で、それぞれの応用ソフト、サブシステム・プロセスが機能モジュールとして動作するようになっている。
【００６８】
[登録の詳細設定]
図６に示す印刷設定ダイアログでは、ＲＣＰ（リッチコンテンツプリント）の設定において、ラジオボタンにて「しない」６０４を選択すると、通常の印刷処理として、上述した印刷シーケンスに沿ってアプリケーション３０１で生成されたデータがＭＦＰ１００を介して印刷される。ラジオボタンにて「する」６０３を選択すると、アプリケーション３０１にて作成されたオリジナルの電子データは後述するベクトル化処理にて、アプリケーション３０１で作成されたオリジナルデータを、複数のドメインでオブジェクト単位に再利用できるフォーマットに加工し、同時にそのデータがオリジナルデータの検索用のインデックス情報としても利用できるようにデータベース１０５に登録される。つまり、「する」６０３が設定された場合は、印刷処理を行ないつつ、オリジナルのデータとその加工されたデータがデータベース１０５に登録される。
【００６９】
「する」６０３が選択されると、ダイアログは、「詳細設定」６０５がアクティブになり、さらにオリジナルの電子データをベクトル化するための設定を変更することができる。
【００７０】
図９は、詳細設定ボタン６０５を選択したときの印刷設定ダイアログの一例である。ボックス９０１は、デフォルト、あるいは現在設定されている登録方法を示し、ボタン９０２は、設定内容をブルダウンメニューとして展開するボタンを示す。ボックス９０３は現状の設定内容を確定するためのボタンであり、ボックス９０４は現状の設定内容をキャンセルするものである。ボタン９０３、もしくは９０４を選択すると、図６の表示に戻る。
【００７１】
図１０は、ボタン９０２を押した場合に表示される登録設定内容を示す。設定モードとしては、全登録モード、写真モード、表モード、文字モード、文字・写真モードの5つもモードが選択できるようになっている。ここで、文字モード１００１を選択すると、図９に示す９０１のボックスには文字モードが表示され、登録設定情報として、図８に示す登録設定情報：８０１に「文字モード」として登録内容が設定される。
【００７２】
ここで図１０に示す各設定モードの作用について簡単に説明する。
【００７３】
全登録モード：オリジナルの電子情報をベクトル化した全ての情報を登録情報としてデータベース１０５に送信する。
【００７４】
写真モード：ベクトル化したファイルの内、写真オブジェクト（ビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【００７５】
文字モード：ベクトル化したファイルの内、テキストオブジェクトのみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【００７６】
文字・写真モード：ベクトル化したファイルの内、テキストオブジェクトと写真オブジェクトビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【００７７】
図２４は、ボックス９０１で「全登録モード」設定した場合のベクトル化されたフォーマットの一例である。本実施例では、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。
【００７８】
図２４では説明のため、オブジェクトの表記を枠で囲っている。枠：２４０１はイメージ属性を示し、そこには、イメージオブジェクトの領域の示す領域情報とビットマップ情報が示されている。枠：２４０２はテキストオブジェクトの情報が、枠：２４０３では、枠：２４０２で示した内容をベクターオブジェクトとして表現している。続く、枠：２４０４は、表オブジェクトなどのラインアートを表す。
【００７９】
よってボックス９０１にて、例えば文字モード１００１が選択された場合は、図２５に示すように、ベクトル化された図２４の情報のうち、オブジェクト情報としては、枠：２５０２のみ残され、それ以外の２５０１、２５０３、２５０４については、オブジェクトの位置情報のみ残して、中身を示す情報はNULLとしてデータ量（情報量）を削減して、データベース１０５へと送信・登録される。他のモードを選択した場合も同様の方法でデータ量を削減して後述するベクトル化したデータとしてオリジナルのアプリケーションデータと共にデータベース１０５で登録される。
【００８０】
図２６は、後述するベクトル化したものを再利用可能なアプリケーション形式のデータとして変換したものとオリジナルのアプリケーションデータ形式を関連付けたファイルフォーマットを表し、ヘッダ２６０１、再利用可能なアプリケーションデータ部２６０２、オリジナルデータ部２６０３から構成される。
【００８１】
ヘッダ２６０１には、データベース１０５に登録されるデータベースのフォーマット形式に準拠した内容が記され、再利用可能なアプリケーションデータのサイズ、オリジナルデータにサイズ、さらに、図６のＲＣＰ６０２で設定した内容などの情報が保持される。
【００８２】
再利用可能なアプリケーションデータ部２６０２は、後述するベクトル化処理で説明するデータ形式で保存され、オリジナルデータはユーザーが対照とするオリジナルのアプリケーションのデータ形式で保存される。
【００８３】
以上、５つもモードの作用について説明したが、本実施例は、この５つに限定されるものではなく、複数のオブジェクト情報を組み合わせた新たなモードとしても設定可能である。
【００８４】
[オリジナルの電子情報のベクトル化]
本発明に係る再利用可能なデータへの変換は、図５に示すステップＳ５１３の処理を指し、図１１の各ステップにより実行される。
【００８５】
ステップＳ１１０１（ＲＩＰ）：  スプールファイル４０３に印刷用として記憶されている中間データを、一旦、ラスターデータへ変換する。ラスターデータの変換は、ＲＩＰのコアアプリケーションを利用して行なう。この処理は、ＭＦＰ１００内で中間データを展開するものと同様のものである。変換されたデータは、１頁単位のイメージデータとして、ローカルＰＣ１０２にＲＡＭ（不図示）に一旦保存され、次にステップ１１０２に進む。
【００８６】
ステップＳ１１０２（ブロックセレクション（領域分割）ステップ）：ローカルＰＣ１０２によって、ＲＡＭ（不図示）に格納されたイメージデータの領域を、文字あるいは線画を含む文字・線画領域と、ハーフトーンの写真領域、不定形の画像領域その他に分ける。さらに文字・線画領域について、主に文字を含む文字領域と、主に表、図形等を含む線画領域とを分離し、線画領域は表領域と図形領域に分離する。なお、本実施例では連結画素を検知し、該連結画素の外接矩形領域の形状・サイズ・画素密度等を用いて、属性毎の領域に分割するものとするが、その他の領域分割手法を用いても構わない。
【００８７】
文字領域については、文字段落ごとの纏まった塊をブロックとして矩形ブロック（文字領域矩形ブロック）にセグメント化し、線画領域では、表、図形等の個々のオブジェクト（表領域矩形ブロック、線画領域矩形ブロック）ごとに矩形ブロックにセグメント化する。
【００８８】
ハーフトーンで表現される写真領域は、画像領域矩形ブロック、背景領域矩形ブロック等のオブジェクトごとに、矩形ブロックにセグメント化する。
【００８９】
これらの矩形ブロックの情報を「領域分割情報」という。この「領域分割情報」の一例を図１２に示す。
【００９０】
図の左半部にオリジナルの画像情報そのものが画像１２０１であり、右半部が矩形ブロックにより領域分割情報された画像１２０２である。領域分割された画像１２０２では、分割された様子を各矩形ブロックとして示してある。
【００９１】
本実施例では、矩形ブロックの概念の理解を容易にするため、各矩形ブロックには、その属性を示す、ＴＥＸＴ、ＰＩＣＴＵＲＥ、ＬＩＮＥ、ＴＡＢＬＥとして示す。
【００９２】
ＴＥＸＴ、ＰＩＣＴＵＲＥ、ＬＩＮＥ、ＴＡＢＬＥは文字領域矩形ブロック、図面領域矩形ブロック、線図形領域矩形ブロック、表領域矩形ブロック、写真領域矩形ブロックの属性である。この他の属性を定義すれば、さらに複数種類の矩形領域として分割可能である。
【００９３】
ステップＳ１２０３（ベクトル化ステップ）：ベクトル化処理によりイメージデータをベクトルデータに変換する。
【００９４】
ベクトル化の方法は、以下（ａ）〜（ｆ）等が存在する。
【００９５】
（ａ）分割領域が文字領域のとき、さらにＯＣＲによる文字画像のコード変換を行ったり、あるいは文字のサイズ、スタイル、字体を認識し、原稿を走査して得られた文字に可視的に忠実なフォントデータに変換する。
【００９６】
（ｂ）分割領域が文字領域であり、かつＯＣＲによる認識が不可能であったとき、文字の輪郭を追跡し、輪郭情報（アウトライン）を線分のつながりとして表現する形式に変換する。
【００９７】
（ｃ）分割領域が図形領域のとき、図形オブジェクトの輪郭を追跡し、輪郭情報を線分のつながりとして表現する形式に変換する。
【００９８】
（ｄ）ｂ、ｃの線分形式のアウトライン情報をベジエ関数などでフィッティングして、関数情報に変換する。
【００９９】
（ｅ）ｃの図形オブジェクトの輪郭情報から、図形の形状を認識し、円、矩形、多角形、等の図形定義情報に変換する。
【０１００】
（ｆ）分割領域が図形領域であって、特定領域の表形式のオブジェクトの場合、罫線や枠線を認識し、所定のフォーマットの帳票フォーマット情報に変換する。
【０１０１】
以上の方法以外に、イメージデータをコード情報、図形情報、関数情報等のコマンド定義形の情報に置きかえる種々のベクトル化処理が考えられる。
【０１０２】
ステップＳ１１０４：ステップＳ１１０３で得たベクトルデータを使用して、再利用可能なアプリケーションデータ形式に変換し、再利用可能なデータとしてスプールファイル４０３に記憶する。通常、データ形式は使用するアプリケーションに依存し、目的に応じたファイル形式に変換する必要がある。
【０１０３】
編集等、再利用可能なアプリケーションデータ形式とは、ワードプロセッサ、表計算ソフトウェア等のアプリケーションソフトウエアであり、例えば、マイクロソフト・コーポレーションのワードプロセッサＷＯＲＤ（登録商標）や表計算アプリケーションソフトウエアＥＸＣＥＬ（登録商標）などがある。これらの再利用可能なアプリケーションはそれぞれ使用する目的が異なっており、目的に応じたファイル形式が定義され、その形式でファイル（データ）を保存する。
【０１０４】
より汎用的なファイル形式としては、マイクロソフト・コーポレーションのＲＴＦ（リッチ・テキスト・ファイル）形式、近年使用されるようになったＳＶＧ （Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式、あるいは単純にテキストデータのみを扱うプレーンテキスト形式、などが知られており、これらは対応するアプリケーションにおいて共通に使用可能である。
【０１０５】
以上の構成により、ベクトルデータに変換され、編集等再利用が容易なデータとして生成される。同時に、このデータはオリジナルの電子データと共に管理されスプールファイル４０３に記憶される。
【０１０６】
次に図１１の主要なステップについて詳細に説明する。
【０１０７】
[ブロックセレクションステップ] 
ステップＳ１１０２（ブロックセレクションステップ）においては、図１２右半部の画像１２０２に示すように、入力画像を属性ごとに矩形ブロックに分割する。前述のように、矩形ブロックの属性としては、文字(ＴＥＸＴ)/図面(ＰＩＣＴＵＲＥ )/線画(Ｌｉｎｅ)/表(Ｔａｂｌｅ)／写真（ＰＨＯＴＯ）等がある。
【０１０８】
ブロックセレクションステップにおいては、まず、ＲＡＭ（不図示）に格納されたイメージデータを白黒に２値化し、黒画素輪郭で囲まれる画素塊を抽出する。
【０１０９】
さらに、このように抽出された黒画素塊の大きさを評価し、大きさが所定値以上の黒画素塊の内部にある白画素塊に対する輪郭追跡を行う。白画素塊に対する大きさ評価、内部黒画素塊の追跡というように、内部の画素塊が所定値以上である限り、再帰的に内部画素塊の抽出、輪郭追跡を行う。
【０１１０】
画素塊の大きさは、例えば画素塊の面積によって評価される。
【０１１１】
このようにして得られた画素塊に外接する矩形ブロックを生成し、矩形ブロックの大きさ、形状に基づき属性を判定する。
【０１１２】
例えば、縦横比が1に近く、大きさが一定の範囲の矩形ブロックは文字領域矩形ブロックの可能性がある文字相当ブロックとし、近接する文字相当ブロックが規則正しく整列しているときに、これら文字相当ブロックを纏めた新たな矩形ブロックを生成し、新たな矩形ブロックを文字領域矩形ブロックとする。
【０１１３】
また扁平な画素塊を線画領域矩形ブロック、一定大きさ以上でかつ四角形の白画素塊を整列よく内包する黒画素塊を表領域矩形ブロック、不定形の画素塊が散在している領域を写真領域矩形ブロック、それ以外の不定形の画素塊を写真領域矩形ブロックとする。
【０１１４】
ブロックセレクションステップでは、このようにして生成された矩形ブロックのそれぞれについて、図１３に示す、属性等のブロック情報および入力ファイル情報を生成する。
【０１１５】
図１３において、ブロック情報には各ブロックの属性、位置の座標Ｘ、座標Ｙ、幅Ｗ、高さＨ、ＯＣＲ情報が含まれる。属性は１〜５の数値で与えられ、１は文字領域矩形ブロック、２は図面領域矩形ブロック、３は表領域矩形ブロック、４ は線画領域矩形ブロック、５は写真領域矩形ブロックを示す。座標Ｘ、座標Ｙは入力画像における各矩形ブロックの始点のＸ、Ｙ座標（左上角の座標）である。幅Ｗ、高さＨは矩形ブロックのＸ座標方向の幅、Ｙ座標方向の高さである。ＯＣＲ情報は入力画像におけるポインタ情報の有無を示す。
【０１１６】
さらに入力ファイル情報として矩形ブロックの個数を示すブロック総数Ｎが含まれる。
【０１１７】
これらの矩形ブロックごとのブロック情報は、特定領域でのベクトル化に利用される。またブロック情報によって、特定領域とその他の領域を合成する際の相対位置関係を特定でき、入力画像のレイアウトを損なわずにベクトル化領域とラスターデータ領域を合成することが可能となる。
【０１１８】
[ベクトル化ステップ] 
ステップＳ１１０３（ベクトル化ステップ）は図１４の各ステップによって実行される。
【０１１９】
ステップＳ１４０１：特定領域が文字領域矩形ブロックであるか否か判断し、文字領域矩形ブロックであればステップＳ１４０２以下のステップに進み、パターンマッチングの一手法を用いて認識を行い、対応する文字コードを得る。特定領域が文字領域矩形ブロックでないときは、ステップＳ１４１２に移行する。
【０１２０】
ステップＳ１４０２：特定領域に対し横書き、縦書きの判定（組み方向判定）をおこなうために、特定領域内で画素値に対する水平・垂直の射影を取る。
【０１２１】
ステップＳ１４０３：ステップＳ１４０２の射影の分散を評価する。水平射影の分散が大きい場合は横書き、垂直射影の分散が大きい場合は縦書きと判断する。
【０１２２】
ステップＳ１４０４：ステップＳ１４０３の評価結果に基づき、組み方向を判定し、行の切り出しを行い、その後文字を切り出して文字画像を得る。
【０１２３】
文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、切り出された行に対する垂直方向の射影から、文字を切り出す。縦書きの文字領域に対しては、水平と垂直について逆の処理を行う。行、文字切り出しに際して、文字のサイズも検出し得る。
【０１２４】
ステップＳ１４０５：ステップＳ１４０４で切り出された各文字について、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルを生成する。特徴ベクトルの抽出には種々の公知手法があり、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴ベクトルとする方法がある。
【０１２５】
ステップＳ１４０６：ステップＳ１４０５で得られた観測特徴ベクトルと、あらかじめ字種ごとに求められている辞書特徴ベクトルとを比較し、観測特徴ベクトルと辞書特徴ベクトルとの距離を算出する。
【０１２６】
ステップＳ１４０７：ステップＳ１４０６で算出された距離を評価し、最も距離の近い字種を認識結果とする。
【０１２７】
ステップＳ１４０８：ステップＳ１４０７における距離評価において、最短距離が所定値よりも大きいか否か、類似度を判断する。類似度が所定値以上の場合は、辞書特徴ベクトルにおいて、形状が類似する他の文字に誤認識している可能性が高い。そこで類似度が所定値以上の場合は、ステップＳ１４０７の認識結果を採用せず、ステップＳ１４１１の処置に進む。類似度が所定値より低い（小さい）ときは、ステップＳ１４０７の認識結果を採用し、ステップ１４０９に進む。
【０１２８】
ステップＳ１４０９（フォント認識ステップ）：文字認識の際に用いる、字種数ぶんの辞書特徴ベクトルを、文字形状種すなわちフォント種に対して複数用意しておき、パターンマッチングの際に、文字コードとともにフォント種を出力することで、文字フォントを認識し得る。
【０１２９】
ステップＳ１４１０：文字認識およびフォント認識よって得られた文字コードおよびフォント情報を用いて、各々あらかじめ用意されたアウトラインデータを用いて、各文字をベクトルデータに変換する。なお、入力画像がカラーの場合は、カラー画像から各文字の色を抽出してベクトルデータとともに記録する。
【０１３０】
ステップＳ１４１１：文字を一般的な線画と同様に扱い、該文字をアウトライン化する。すなわち誤認識を起こす可能性の高い文字については、可視的にイメージデータに忠実なアウトラインのベクトルデータを生成する。
【０１３１】
ステップＳ１４１２：特定領域が文字領域矩形ブロックでないときは、画像の輪郭に基づいてベクトル化の処理を実行する。
【０１３２】
以上の処理により、文字領域矩形ブロックに属するイメージ情報をほぼ形状、大きさ、色が忠実なベクトルデータに変換出来る。
【０１３３】
[文字領域以外の領域のベクトル化]
ステップＳ１４１２の文字領域矩形ブロック以外の領域、すなわち図面領域矩形ブロック、線画領域矩形ブロック、表領域矩形ブロック等と判断されたときは、特定領域内で抽出された黒画素塊の輪郭をベクトルデータに変換する。
【０１３４】
文字領域以外の領域のベクトル化においては、まず線画等を直線および／または曲線の組み合わせとして表現するために、曲線を複数の区間（画素列）に区切る「角」を検出する。角とは曲率が極大となる点であり、図１５の曲線上の画素Ｐｉが角か否かの判断は以下のように行う。
【０１３５】
すなわち、Ｐｉを起点とし、曲線に沿ってＰｉから両方向に所定画素（ｋ個とする。）ずつ離れた画素Ｐｉ−ｋ、Ｐｉ＋ｋを線分Ｌで結ぶ。画素Ｐｉ−ｋ、Ｐ ｉ＋ｋ間の距離をｄ１、線分Ｌと画素Ｐｉとの距離をｄ２、曲線の画素Ｐｉ−ｋ 、Ｐｉ＋ｋ間の弧の長さをＡとするとき、ｄ２が極大となるとき、あるいは比（ ｄ１／Ａ）が閾値以下となるときに画素Ｐｉを角と判断する。
【０１３６】
角によって分割された画素列を、直線あるいは曲線で近似する。直線への近似は最小二乗法等により実行し、曲線への近似は３次スプライン関数などを用いる。画素列を分割する角の画素は近似直線あるいは近似直線における、始端または終端となる。
【０１３７】
さらにベクトル化された輪郭内に白画素塊の内輪郭が存在するか否かを判断し、内輪郭が存在するときはその輪郭をベクトル化し、内輪郭の内輪郭というように、再帰的に反転画素の内輪郭をベクトル化する。
【０１３８】
以上のように、輪郭の区分線近似を用いれば、任意形状の図形のアウトラインをベクトル化することができる。元原稿がカラーの場合は、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
【０１３９】
図１６に示すように、ある注目区間で外輪郭ＰＲｊと、内輪郭ＰＲｊ＋１あるいは別の外輪郭が近接している場合、２個あるいは複数の輪郭線をひとまとめにし、太さを持った線として表現することができる。例えば、輪郭Ｐｊ＋１の各画素Ｐｉから輪郭ＰＲｊ上で最短距離となる画素Ｑｉまでの距離ＰｉＱｉを算出し、ＰＱｉのばらつきがわずかである場合には、注目区間を画素Ｐｉ、Ｑｉの中点Ｍｉの点列に沿った直線または曲線で近似し得る。近似直線、近似曲線の太さは、例えば距離ＰｉＱｉの平均値とする。
【０１４０】
線や線の集合体である表罫線は、太さを持つ線の集合とすることにより、効率よくベクトル表現することができる。
【０１４１】
輪郭まとめの処理の後、全体の処理を終了する。
【０１４２】
なお写真領域矩形ブロックについては、ベクトル化せず、イメージデータのままとする。
【０１４３】
[図形認識]
以上の線図形等のアウトラインをベクトル化した後、ベクトル化された区分線を図形オブジェクトごとにグループ化する。
【０１４４】
図１７の各ステップは、ベクトルデータを図形オブジェクトごとにグループ化する処理を示す。
【０１４５】
ステップＳ１７０１：まず各ベクトルデータの始点、終点を算出する。
【０１４６】
ステップＳ１７０２（図形要素検出）：ステップＳ１７０１で求められた始点、終点情報を用いて、図形要素を検出する。図形要素とは、区分線が構成している閉図形であり、検出に際しては、始点、終端となっている共通の角の画素においてベクトルを連結する。すなわち、閉形状を構成する各ベクトルはその両端にそれぞれ連結するベクトルを有しているという原理を応用する。
【０１４７】
ステップＳ１７０３：次に図形要素内に存在する他の図形要素、もしくは区分線をグループ化し、一つの図形オブジェクトとする。また、図形要素内に他の図形要素、区分線が存在しない場合は図形要素を図形オブジェクトとする。
【０１４８】
[図形要素の検出]
ステップＳ１７０２（図形要素検出）の処理は、図１８の各ステップによって実行される。
【０１４９】
ステップＳ１８０１：まず、ベクトルデータより両端に連結していない不要なベクトルを除去し、閉図形を構成するベクトルを抽出する。
【０１５０】
ステップＳ１８０２：次に閉図形を構成するベクトルについて、いずれかのベクトルの端点（始点または終点）を開始点とし、一定方向、例えば時計回りに、順にベクトルを探索する。すなわち、他端点において他のベクトルの端点を探索し、所定距離内の最近接端点を連結ベクトルの端点とする。閉図形を構成するベクトルを１まわりして開始点に戻ったとき、通過したベクトルを全て一つの図形要素を構成する閉図形としてグループ化する。また、閉図形内部にある閉図形構成ベクトルも全てグループ化する。さらにまだグループ化されていないベクトルの始点を開始点とし、同様の処理を繰り返す。
【０１５１】
ステップＳ１８０３：最後に、ステップＳ１８０１で除去された不要ベクトルのうち、ステップＳ１８０２で閉図形としてグループ化されたベクトルに端点が近接しているベクトルを検出し、一つの図形要素としてグループ化する。
【０１５２】
以上の処理によって図形ブロックを、再利用可能な個別の図形オブジェクトとして扱う事が可能になる。
【０１５３】
[アプリ（登録用）データへの変換処理]
図１１のブロックセレクションステップ（ステップＳ１１０２）の後、ベクトル化（ステップＳ１１０３）した結果のデータを用いて、ステップＳ１１０４のアプリデータへの変換処理を実行する。ステップＳ１１０３のベクトル化処理結果は図１９に示す中間データの形式、いわゆるドキュメント・アナリシス・アウトプット・フォーマット（ＤＡＯＦ）と呼ばれる形式で保存されている。
【０１５４】
図１９において、ＤＡＯＦは、ヘッダ１９０１、レイアウト記述データ部１９０２、文字認識記述データ部１９０３、表記述データ部１９０４、画像記述データ部１９０５よりなる。
【０１５５】
ヘッダ１９０１には、処理対象の入力画像に関する情報が保持される。
【０１５６】
レイアウト記述データ部１９０２には、入力画像中の矩形ブロックの属性ＴＥＸ（文字）、ＴＩＴＬＥ（タイトル）、ＣＡＰＴＩＯＮ（キャプション）、ＬＩＮＥ（線画）、ＰＩＣＴＵＲＥ（図面） 、ＦＲＡＭＥ（枠）、ＴＡＢＬＥ（表）、ＰＨＯＴＯ（写真）等の情報と、これら属性が認識された各矩形ブロックの位置情報が保持される。
【０１５７】
文字認識記述データ部１９０３には、ＴＥＸＴ、ＴＩＴＬＥ、ＣＡＰＴＩＯＮ 等の文字領域矩形ブロックのうち、文字認識して得られる文字認識結果が保持される。
【０１５８】
表記述データ部１９０４には、表領域矩形ブロックＴＡＢＬＥの表構造の詳細が格納される。
【０１５９】
画像記述データ部１９０５には、図面領域矩形ブロックＰＩＣＴＵＲＥや線画領域矩形ブロックＬＩＮＥ等のブロックにおけるイメージデータが、入力画像データから切り出して保持される。
【０１６０】
ベクトル化処理を指示された特定領域においては、ブロックに対しては、画像記述データ部１９０５には、ベクトル化処理により得られたブロックの内部構造や、画像の形状や文字コード等あらわすデータの集合が保持される。
【０１６１】
一方、ベクトル化処理の対象ではない、特定領域以外の矩形ブロックでは、入力画像データそのものが保持される。
【０１６２】
アプリデータへの変換処理は図２０の各ステップにより実行される。
【０１６３】
ステップＳ２００１：ＤＡＯＦ形式のデータを入力する。
【０１６４】
ステップＳ２００２：アプリデータの元となる文書構造ツリー生成を行う。
【０１６５】
ステップＳ２００３：文書構造ツリーを元に、ＤＡＯＦ内の実データを取得し、実際のアプリデータを生成する。
【０１６６】
ステップＳ２００３の文書構造ツリー生成処理は図２１の各ステップにより実行される。図２１の処理における全体制御の基本ルールとして、処理の流れはミクロブロック（単一矩形ブロック）からマクロブロック（矩形ブロックの集合体）へ移行する。以後「矩形ブロック」は、ミクロブロックおよびマクロブロック両者を意味するものとする。
【０１６７】
ステップＳ２１０１：矩形ブロック単位で、縦方向の関連性に基づいて、矩形ブロックを再グループ化する。図２１の処理は繰り返し実行されることがあるが、処理開始直後はミクロブロック単位での判定となる。
【０１６８】
ここで、関連性とは、距離が近い、ブロック幅（横方向の場合は高さ）がほぼ同一であることなどの特徴によって定義される。また、距離、幅、高さなどの情報はＤＡＯＦを参照し、抽出する。
【０１６９】
図２２のイメージデータでは、最上部で、矩形ブロックＴ１、Ｔ２が横方向に並列されている。矩形ブロックＴ１、Ｔ２の下には横方向セパレータＳ１が存在し、横方向セパレータＳ１の下に矩形ブロックＴ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７が存在する。
【０１７０】
矩形ブロックＴ３、Ｔ４、Ｔ５は、横方向セパレータＳ１下側の領域における左半部において上から下に、縦方向に配列され、矩形ブロックＴ６、Ｔ７は、横方向セパレータＳ１下側の領域における右半部において上下に配列されている。
【０１７１】
ステップＳ２１０１の縦方向の関連性に基づくグルーピングの処理を実行する。これによって、矩形ブロックＴ３、Ｔ４、Ｔ５が１個のグループ（矩形ブロック）Ｖ１にまとめられ、矩形ブロックＴ６、Ｔ７が１個のグループ（矩形ブロック）Ｖ２にまとめられる。グループＶ１、Ｖ２は同一階層となる。
【０１７２】
ステップＳ２１０２：縦方向のセパレータの有無をチェックする。セパレータは、ＤＡＯＦ中でライン属性を持つオブジェクトであり、アプリケーションソフトウエア中で明示的にブロックを分割する機能をもつ。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として左右に分割する。図２２では縦方向のセパレータは存在しない。
【０１７３】
ステップＳ２１０３：縦方向のグループ高さの合計が入力画像の高さに等しくなったか否か判断する。すなわち縦方向（例えば上から下へ。）に処理対象の領域を移動しながら、横方向のグルーピングを行うとき、入力画像全体の処理が終了したときには、グループ高さ合計が入力画像高さになることを利用し、処理の終了判断を行う。グルーピングが終了したときはそのまま処理終了し、グルーピングが終了していなかったときはステップＳ２１０４に進む。
【０１７４】
ステップＳ２１０４：横方向の関連位に基づくグルーピングの処理を実行する。これによって、矩形ブロックＴ１、Ｔ２が１個のグループ（矩形ブロック）Ｈ １にまとめられ、矩形ブロックＶ１、Ｖ２が１個のグループ（矩形ブロック）Ｈ ２にまとめられる。グループＨ１、Ｈ２は同一階層となる。ここでも、処理開始直後はミクロブロック単位での判定となる。
【０１７５】
ステップＳ２１０５：横方向のセパレータの有無をチェックする。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として上下に分割する。図２２では横方向のセパレータＳ１が存在する。
【０１７６】
以上の処理結果は図２３のツリーとして登録される。
【０１７７】
図２３において、入力画像Ｖ０は、最上位階層にグループＨ１、Ｈ２、セパレータＳ１を有し、グループＨ１には第２階層の矩形ブロックＴ１、Ｔ２が属する。
【０１７８】
グループＨ２には、第２階層のグループＶ１、Ｖ２が属し、グループＶ１には、第３階層の矩形ブロックＴ３、Ｔ４、Ｔ５が属し、グループＶ２には、第３階層の矩形ブロックＴ６、Ｔ７が属する。
【０１７９】
ステップＳ２１０６：横方向のグループ長合計が入力画像の幅に等しくなったか否か判断する。これによって横方向のグルーピングに関する終了判断を行う。横方向のグループ長がページ幅となっている場合は、文書構造ツリー生成の処理を終了する。横方向のグループ長がページ幅となっていないときは、ステップＳ２１０１に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。
【０１８０】
図２２、図２３のツリー構造の段階で、横方向の分割幅がページ幅になっているので、そのまま処理を終了し、最後にページ全体を表す最上位階層のＶ０を文書構造ツリーに付加する。
【０１８１】
文書構造ツリーが完成した後、その情報を元にステップＳ２００３においてアプリデータの生成を行う。
【０１８２】
図２２、図２３に基づくアプリデータによる、アプリケーションソフトウエアの処理の例は以下のとおりである。
【０１８３】
まず、グループＨ１が横方向に２個の矩形ブロックＴ１、Ｔ２を有するので、２カラムとし、Ｔ１のＤＡＯＦを参照し、その内部情報（文字認識結果の文章、画像等）を出力する。その後、カラムを変え、Ｔ２の内部情報を出力し、続いてセパレータＳ１を出力する。
【０１８４】
次グループＨ２の処理に移る。グループＨ２は横方向に２個の矩形ブロックＶ１、Ｖ２を有するので、２カラムとして出力する。グループＶ１については、矩形ブロックＴ３、Ｔ４、Ｔ５の順にその内部情報を出力し、その後カラムを変え、グループＶ２の矩形ブロックＴ６、Ｔ７の内部情報を出力する。
【０１８５】
以上により登録用のデータである、アプリデータへの変換処理が実行される。
【０１８６】
[第２実施例] 
次に、本発明の第２の実施例について説明するが、以下では、第１実施例と同様な構成の説明は省略し、異なる部分について説明する。
【０１８７】
上記第１実施例では、ドライバーＵＩの印刷・登録設定ダイアログにてＲＣＰが設定された場合、オリジナルデータと再利用可能なアプリケーションデータを、データベース１５０に登録する形態について説明したが、本実施例は、登録するデータ量をさらに軽減するため、登録するデータを再利用可能なアプリケーションデータに限定している。
【０１８８】
[登録方法と印刷処理全体の流れ]
図３は、図１に示すローカルＰＣ１０２でアプリケーションデータを印字処理する、処理モジュールの構成を説明するブロック図である。
【０１８９】
図３において、アプリケーション３０１、グラフィックエンジン３０２、プリンタドライバ３０３、及びシステムスプーラ３０４は、ローカルＰＣ１０２内部の記憶装置（不図示）に保存されたファイルとして存在し、実行される場合にOSやそのモジュールを利用するモジュールによって実行されるプログラムモジュール（データ処理モジュール）である。また、アプリケーション３０１およびプリンタドライバ３０３は、外部メモリ（不図示）、ＣＤ−ＲＯＭ（不図示）或いはネットワークＩ／Ｆ１０７を経由してローカルＰＣ１０２内の記憶装置に追加することが可能となっている。
【０１９０】
グラフィックエンジン３０２は記録装置１１２毎に用意されたプリンタドライバ３０３をローカルＰＣ１０２内部の記憶装置から実行し、アプリケーション３０１の出力をプリンタドライバ３０３に設定する。
【０１９１】
そして、アプリケーション３０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ３０３へＤＤＩ関数を出力する。
【０１９２】
プリンタドライバ３０３は、グラフィックエンジン３０２から受け取ったＤＤＩ関数に基づいて、データ処理装置１１５が認識可能な制御コマンド、例えばＰＤＬ（Page  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってロードされたシステムスプーラ３０４を経てネットワークＩ／Ｆ１０７を経由してＭＦＰ１００へ印刷データとして出力される仕組みとなっている。
【０１９３】
図４は、図１に示したローカルＰＣ１０２のデータ処理モジュールの詳細構成を説明するブロック図であり、図３に示したシステムを拡張したものに対応し、グラフィックエンジン３０２からプリンタドライバ３０３へ印刷命令を送る際に、一旦、中間コードからなるスプールファイル４０３を生成する構成を示してある。
【０１９４】
なお、上記図４のシステムでは、スプールファイル４０３の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大／縮小や、複数ページを１ページに縮小して印刷するＮアップ印刷など、アプリケーションの持たない機能を実現する。このように図４に示すシステムでは、中間コードデータでスプールするようにシステムの拡張がなされている。
【０１９５】
図のように、この処理方式では、グラフィックエンジン３０２からの印刷命令をディスパッチャ４０１が受け取る。ディスパッチャ４０１がグラフィックエンジン３０２から受け取った印刷命令が、アプリケーション３０１からグラフィックエンジン３０２へ発行された印刷命令の場合には、ディスパッチャ４０１は外部メモリ（不図示）に格納されているスプーラ４０２をＲＡＭ（不図示）にロードし、プリンタドライバ３０３ではなく、スプーラ４０２へ印刷命令を送付する。
【０１９６】
スプーラ４０２は受け取った印刷命令を中間コードに変換してスプールファイル４０３に出力する。また、スプーラ４０２は、プリンタドライバ３０３に対して設定されている印刷・登録データに関する諸設定をプリンタドライバ３０３から取得してスプールファイル４０３に保存する。
【０１９７】
なお、スプールファイル４０３は外部メモリ（不図示）上にファイルとして生成するが、ＲＡＭ（不図示）上に生成しても構わない。さらに、スプーラ４０２は外部メモリ（不図示）に格納されているスプーラファイルマネージャ４０４をＲＡＭ（不図示）上にロードし、スプールファイルマネージャ４０４に対してスプールファイル４０３の生成状況を通知する。
【０１９８】
その後、スプールファイルマネージャ４０４は、スプールファイル４０３に保存された印刷データに関する加工設定の内容にしたがって印刷を行なえるか判断する。スプールファイルマネージャ４０４がグラフィックエンジン３０２を利用して印刷・登録を行なえると判断した際には、外部メモリ（不図示）に格納されているデスプーラ４０５をＲＡＭ（不図示）にロードし、デスプーラ４０５に対して、スプールファイル４０３に記述された中間コードの印刷処理、ならびに、再利用可能なアプリケーションデータの送信を行なうように指示する。
【０１９９】
デスプーラ４０５はスプールファイル４０３に含まれる中間コードをスプールファイル４０３に含まれる設定の内容によって加工し、もう一度グラフィックエンジン３０２経由で出力する。ディスパッチャ４０１がグラフィックエンジン３０２から受け取った印刷命令がデスプーラ４０５からグラフィックエンジン３０２へ発行された印刷命令の場合には、ディスパッチャ４０１はスプーラ４０２ではなく、プリンタドライバ３０３に印刷命令を送る。プリンタドライバ３０３は、プリンタ制御コマンドを生成し、システムスプーラ３０４を経由してＭＦＰ１００に出力する。
【０２００】
図２７は、本実施例における図４に示すデータ処理手順を示すフローチャートであり、図４に示したスプーラ４０２によるスプールファイル４０３の生成におけるページ単位保存ステップの処理手順に対応する。
【０２０１】
ステップＳ２７０１では、アプリケーション３０１からの印刷要求を受け付ける。アプリケーション３０１では、図６に示すような印刷・登録の設定を入力するダイアログが表示され、このダイアログから入力された印刷・登録設定がプリンタドライバよりスプーラ３０３に渡される。
【０２０２】
図６は、図１に示したローカルＰＣ１０２に付随のモニター（不図示）に表示される印刷・登録設定ダイアログの一例を示す図である。
【０２０３】
図において、６０１はアプリケーション３０１にて印刷する画像をプレビューする領域を表し、６０２はＲＣＰ（リッチコンテンツプリント）を設定するためのＴＡＢを表す。本実施例においてＲＣＰとは、印刷する電子データを印刷すると同時に、オリジナルの電子情報をベクトル化した再利用可能なデータをサーバに登録する動作を指す。６０３、６０４はＲＣＰの設定を反映するためのボタンを表し、６０５は登録するためのより詳細な設定を行なうためのボタンを表す。オリジナルの電子情報を登録する詳細については後述する。
【０２０４】
ステップＳ２７０２では、受け付けた印刷要求がジョブの開始要求かどうかを判定し、ジョブ開始要求であると判断した場合には、ステップＳ２７０３として、中間データを一時的に保存するためのスプールファイル４０３を作成する。
【０２０５】
続いて、ステップＳ２７０４では、スプールファイルマネージャ４０４へ印刷処理の進捗を通知し、続く、ステップＳ２７０５ではスプーラ４０２のページ数カウンタを「１」に初期化する。ここでスプールファイルマネージャ４０４においては、印刷が開始されたジョブに対するジョブの情報や加工設定などをスプールファイル４０３より読み込み、記憶させステップ２７０１へ戻る。
【０２０６】
一方、ステップＳ２７０２において、ジョブ開始要求ではなかったと判断した場合には、ステップＳ２７０６に進み、受け付けた要求がジョブ終了要求かどうかの判断を行い、ジョブ終了要求でないと判断した場合には、ステップＳ２７０７へ進み、改ページかどうかの判断を行い、改ページであると判断した場合には、ステップＳ２７０８に進み、スプールファイルマネージャ４０４へ印刷処理の進捗を通知するとともに、ページ数カウンタをインクリメントして、ステップＳ２７０１へ戻る。
【０２０７】
一方、ステップＳ２７０７にて、受け付けた印刷要求が改ページでないと判断した場合には、ステップＳ２７０９に進み、中間ファイル、及び、ベクトル化したデータの格納の準備を行なう。
【０２０８】
次に、ステップＳ２７１０では、印字要求のスプールファイル４０３へ格納するための変換処理を行なう。そして、ステップＳ２７１１では、ステップＳ２７１０において、格納可能な形に変換された印刷要求をスプールファイル４０３へ書き込む。その後、ステップＳ２７０１に戻り、再びアプリケーションからの印字要求を受け付ける。この一連のステップＳ２７０１からステップＳ２７１１までの処理を、アプリケーションよりジョブ終了要求を受け付けるまで続ける。
【０２０９】
一方、ステップＳ２７０６にて、アプリケーションからの印刷要求がジョブ終了であると判断した場合には、アプリケーションからの印刷要求は全て終了であるので、ステップＳ２７１２に進み、続く、登録設定されたかどうかの判断を行なう。
【０２１０】
ステップＳ２７１２にて登録設定されたと判断された場合（図６にてボタン６０３が選択された場合）は、続くステップＳ２７１３にて、ベクトル化アプリケーションが起動し、スプールファイル４０３として格納されたデータを一旦ラスターデータ化した後、ベクトルデータ化して、データベースに登録可能なフォーマットに変換する。変換されたデータは、再度、スプールファイル４０３に記憶される。
【０２１１】
続くステップＳ２７１４では、スプールファイルマネージャ４０４へ印刷処理、並びに登録処理の進捗を通知し、処理を終える。
【０２１２】
ステップＳ２７１２にて、登録要求が無かった場合は、そのままステップＳ２７１４に進み、スプールファイルマネージャ４０４へ印刷処理のみの進捗を通知し、処理を終了する。
【０２１３】
図７は、本発明の第２のデータ処理手順の一例を示すフローチャートである。まず、ステップＳ７０１では、スプーラ４０２あるいは、デスプーラ４０５からの印刷処理の進捗通知を受ける。そして、ステップＳ７０２では、進捗通知が前述の図２７に示したステップ２７０４において通知されるスプーラ４０２からの印刷開始通知であるかどうか判断し、もしそうであると判断した場合は、ステップＳ７０３へ進み、印刷の加工設定をスプールファイル４０３からの読み込み、ジョブの管理を開始して、ステップＳ７０１へ戻る。
【０２１４】
一方、ステップＳ７０２において、スプーラ４０２からの印刷開始通知でないと判断した場合は、ステップＳ７０４へ進み、進捗通知が前述の図２７に示したステップＳ５０８において通知されるスプーラ４０２からの１論理ページの印刷終了通知であるかどうかを判定し、１論理ページの印刷終了通知であると判断した場合には、ステップＳ７０５に進み、この論理ページに対する論理ページ情報を格納する。
【０２１５】
そして、続くステップＳ７０６では、この時点でスプールが終了したｎ論理ページに対して、１論理ページの印刷が開始できるかを判定する。ここで、印刷可能である場合は、ステップＳ７０７へ進み、印刷する１物理ページに対して割り付けられる論理数から物理ページを決定する。
【０２１６】
物理ページの計算については、例えば、加工設定が１物理ページに４論理ページを配置するような設定の場合、第1物理ページは第4論理ページがスプールされた時点で印刷可能となり、第1物理ページとなる。続いて第２物理ページは第8論理ページがスプールされた時点で印刷可能となる。
【０２１７】
また、論理ページ数が１物理ページに配置する論理ページ数の倍数でなくても、図２７に示したステップＳ２７１５におけるスプール終了通知によって、１物理ページに配置する論理ページが決定可能である。
【０２１８】
そしてステップＳ７０８では、図８に示すような形式で、印刷可能となった物理ページを構成する論理ページと、その物理ページ番号などの情報がデスプーラ４０５に通知される。その後、ステップＳ７０１に戻り、次の通知を待つ。
【０２１９】
図８は、図４に示したスプールファイルマネージャ４０４からデスプーラ４０５に通知される情報の一例を示す図である。
【０２２０】
一方、ステップＳ７０４において、進捗通知がスプーラ４０２からの１論理ページの印刷終了通知でなかったと判断した場合は、ステップＳ７０９へ進み、前述の図２７に示したステップＳ５１２において通知されるスプーラ４０２からのジョブ終了通知であるかどうかを判断し、ジョブ終了通知であると判断した倍、ステップＳ７１１へ進む。
【０２２１】
一方、ステップＳ７０９で、ジョブ終了通知でないと判断した場合、ステップＳ７１０へ進み、受け付けた通知がデスプーラ４０５からの１物理ページの印刷終了通知であるかどうか判定し、１物理ページの印刷終了通知であると判断した場合は、ステップＳ７１１へ進み、加工設定の印刷が全て終了したかを判定し、印刷を終了したと判断した場合、ステップＳ７１２へ進み、デスプーラ４０５に印刷終了の通知を行い、ステップＳ７０１へ戻る。
【０２２２】
一方、ステップＳ７１１で、加工設定に対する印刷がまだ終了していないと判断した場合、前述のステップＳ７０６へ進む。なお、本実施例におけるデスプーラ４０５は同時に印刷処理を行なえる物理ページ数を「１」と想定している。
【０２２３】
一方、ステップＳ７１０において、デスプーラ４０５からの１物理ページの印刷終了通知でないと判断された場合、ステップＳ７１３へ進み、デスプーラ４０５からの印刷終了通知かどうかを判定し、デスプーラ４０５からの印刷終了通知と判定された場合、ステップＳ７１４へ進み、スプールファイルの削除を行い、処理を終える。
【０２２４】
一方、ステップＳ７１３でデスプーラ４０５からの印刷終了通知でなかったと判断した場合は、ステップＳ７１５へ進み、その他通常処理を行い、次の通知を待つ。
【０２２５】
なお、デスプーラ４０５、及びスプールファイルマネージャ４０４からの印刷要求に応じて、スプールファイル４０３から必要な情報を読み出して、印刷データの生成と登録用のデータの送信準備を行なう。既に生成済みの登録用データ（もしくは再利用可能なアプリデータ）と、生成された印刷データにおけるＭＦＰ１００の転送方法については、図4で説明した通りである。
【０２２６】
以上、基本OSによって、上述したこれらの名称や機能的な枠組みは若干異なる場合があるが、本発明でいう各技術的手段が実現できるモジュールであれば、それらの名称や枠組みは本実施例にとっては大きな問題ではない。例えば、スプーラやスプールファイルと呼ばれるものは、別のOSにおいてはプリント・キューと呼ばれるモジュールに処理を組み込むことによっても実現可能である。なお、一般的に、これらの各機能モジュールを含むホストコンピュータは、中央演算処理装置（ＣＰＵ）、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ハードディスク（ＨＤＤ）、各種入出力制御部（Ｉ／Ｏ）などのハードウェアのもとで、基本ソフトと呼ばれるソフトウェアがその制御を司り、その基本ソフトの元で、それぞれの応用ソフト、サブシステム・プロセスが機能モジュールとして動作するようになっている。
【０２２７】
[登録の詳細設定]
図６に示す印刷設定ダイアログでは、ＲＣＰ（リッチコンテンツプリント）の設定において、ラジオボタンにて「しない」６０４を選択すると、通常の印刷処理として、上述した印刷シーケンスに沿ってアプリケーション３０１で生成されたデータがＭＦＰ１００を介して印刷される。ラジオボタンにて「する」６０３を選択すると、アプリケーション３０１にて作成されたオリジナルの電子データは上述したベクトル化処理にて、アプリケーション３０１で作成されたオリジナルデータを、複数のドメインでオブジェクト単位に再利用できるフォーマットに加工し、同時にそのデータがオリジナルデータの検索用のインデックス情報としても利用できるようにデータベース１０５に登録される。
【０２２８】
「する」６０３が選択されると、ダイアログは、「詳細設定」６０５がアクティブになり、さらにオリジナルの電子データをベクトル化するための設定を変更することができる。
【０２２９】
図９は、詳細設定ボタン６０５を選択したときの印刷設定ダイアログの一例である。ボックス９０１は、デフォルト、あるいは現在設定されている登録方法を示し、ボタン９０２は、設定内容をブルダウンメニューとして展開するボタンを示す。ボックス９０３は現状の設定内容を確定するためのボタンであり、ボックス９０４は現状の設定内容をキャンセルするものである。ボタン９０３、もしくは９０４を選択すると、図６の表示に戻る。
【０２３０】
図１０は、ボタン９０２を押した場合に表示される登録設定内容を示す。設定モードとしては、全登録モード、写真モード、表モード、文字モード、文字・写真モードの5つもモードが選択できるようになっている。ここで、文字モード１００１を選択すると、図９に示す９０１のボックスには文字モードが表示され、登録設定情報として、図８に示す登録設定情報：８０１に「文字モード」として登録内容が設定される。
【０２３１】
ここで図１０に示す各設定モードの作用について簡単に説明する。
【０２３２】
全登録モード：オリジナルの電子情報をベクトル化した全ての情報を登録情報としてデータベース１０５に送信する。
【０２３３】
写真モード：ベクトル化したファイルの内、写真オブジェクト（ビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２３４】
文字モード：ベクトル化したファイルの内、テキストオブジェクトのみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２３５】
文字・写真モード：ベクトル化したファイルの内、テキストオブジェクトと写真オブジェクトビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２３６】
図２４は、ボックス９０１で「全登録モード」設定した場合のベクトル化されたフォーマットの一例である。本実施例では、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。
【０２３７】
図２４では説明のため、オブジェクトの表記を枠で囲っている。枠：２４０１はイメージ属性を示し、そこには、イメージオブジェクトの領域の示す領域情報とビットマップ情報が示されている。枠：２４０２はテキストオブジェクトの情報が、枠：２４０３では、枠：２４０２で示した内容をベクターオブジェクトとして表現している。続く、枠：２４０４は、表オブジェクトなどのラインアートを表す。
【０２３８】
よってボックス９０１にて、例えば文字モード１００１が選択された場合は、図２５に示すように、ベクトル化された図２４の情報のうち、オブジェクト情報としては、枠：２５０２のみ残され、それ以外の２５０１、２５０３、２５０４については、オブジェクトの位置情報のみ残して、中身を示す情報はNULLとしてデータ量（情報量）を削減して、データベース１０５へと送信・登録される。他のモードを選択した場合も同様の方法でデータ量を削減して再利用可能なアプリケーションデータをデータベース１０５に登録する。
【０２３９】
図２８は、再利用可能なアプリケーション形式のデータを登録用のデータとして変換するファイルフォーマットを表し、ヘッダ２８０１、再利用可能なアプリケーションデータ部２８０２から構成される。
【０２４０】
ヘッダ２６０１には、データベース１０５に登録されるデータベースのフォーマット形式に準拠した内容が記され、再利用可能なアプリケーションデータのサイズ、さらに、図６のＲＣＰ６０２で設定した内容などの情報が保持される。
【０２４１】
再利用可能なアプリケーションデータ部２８０２は、上述したベクトル化処理で説明するデータ形式で保存され、オリジナルデータはユーザーが対照とするオリジナルのアプリケーションのデータ形式で保存される。
【０２４２】
以上、５つもモードの作用について説明したが、本実施例は、この５つに限定されるものではなく、複数のオブジェクト情報を組み合わせた新たなモードとしても設定可能である。
【０２４３】
[第３実施例]
次に、本発明の第３の実施例について説明するが、以下では、第１、２実施例と同様な構成の説明は省略し、異なる部分について説明する。
【０２４４】
上記第１、２実施例では、ドライバーＵＩの印刷・登録設定ダイアログにてＲＣＰが設定された場合、オリジナルデータと再利用可能なアプリケーションデータを、データベース１５０に登録する形態について説明した。本実施例では、第1実施例に加え、登録されたオブジェクトをデータベース１０５に一定期間保存し、所定の期間が過ぎると、登録されたデータからオブジェクトの実体を消去する例について説明する。
【０２４５】
[登録の詳細設定]
図６に示す印刷設定ダイアログでは、ＲＣＰ（リッチコンテンツプリント）の設定において、ラジオボタンにて「しない」６０４を選択すると、通常の印刷処理として、上述した印刷シーケンスに沿ってアプリケーション３０１で生成されたデータがＭＦＰ１００を介して印刷される。ラジオボタンにて「する」６０３を選択すると、アプリケーション３０１にて作成されたオリジナルの電子データは後述するベクトル化処理にて、アプリケーション３０１で作成されたオリジナルデータを、複数のドメインでオブジェクト単位に再利用できるフォーマットに加工し、同時にそのデータがオリジナルデータの検索用のインデックス情報としても利用できるようにデータベース１０５に登録される。つまり、「する」６０３が設定された場合は、印刷処理を行ないつつ、オリジナルのデータとその加工されたデータがデータベース１０５に登録される。
【０２４６】
「する」６０３が選択されると、ダイアログは、「詳細設定」６０５がアクティブになり、さらにオリジナルの電子データをベクトル化するための設定を変更することができる。
【０２４７】
図２９は、詳細設定ボタン６０５を選択したときの印刷設定ダイアログの一例である。ボックス２９０１は、デフォルト、あるいは現在設定されている登録方法を示し、ボタン２９０２は、設定内容をブルダウンメニューとして展開するボタンを示す。ボックス２９０３は現状の設定内容を確定するためのボタンであり、ボックス２９０４は現状の設定内容をキャンセルするものである。ボタン２９０３、もしくは２９０４を選択すると、図６の表示に戻る。ボタン２９０５は、ボックス２９０１で設定したモードを有効にする期間を設定するもので、この設定期間を過ぎると、登録されたデータはデータベース１０５から削除される。
【０２４８】
図１０は、ボタン２９０２を押した場合に表示される登録設定内容を示す。設定モードとしては、全登録モード、写真モード、表モード、文字モード、文字・写真モードの5つもモードが選択できるようになっている。ここで、文字モード１００１を選択すると、図２９に示す２９０１のボックスには文字モードが表示され、登録設定情報として、図８に示す登録設定情報：８０１に「文字モード」として登録内容が設定される。
【０２４９】
ここで図１０に示す各設定モードの作用について簡単に説明する。
【０２５０】
全登録モード：オリジナルの電子情報をベクトル化した全ての情報を登録情報としてデータベース１０５に送信する。
【０２５１】
写真モード：ベクトル化したファイルの内、写真オブジェクト（ビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２５２】
文字モード：ベクトル化したファイルの内、テキストオブジェクトのみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２５３】
文字・写真モード：ベクトル化したファイルの内、テキストオブジェクトと写真オブジェクトビットマップ化されたオブジェクト）のみを登録情報としてデータベース１０５に送信し、それ以外のオブジェクトはＮＵＬＬ（空白の情報）として、位置情報のみをデータベース１０５に送信する。
【０２５４】
ボタン２９０５を設定すると、図３０に示すダイアログが表示される。図３０でボックス３００１は、現在設定されている期限を表示し、プルダウンボタン３００２は、設定内容をブルダウンメニューとして展開するボタンを示す。図３１は、プルダウンボタンを押して、設定内容を表示した例である。図３１では、「無期限」、「1年」、「6ヶ月」、「3ヶ月」、「1ヶ月」、「1週間」の以上６つの工程された設定項目を用意しているが、本実施例の範囲はこの6項目に限定されるものでなく、設定期間を不図示のキーボードから入力しても構わない。
【０２５５】
本実施例では、図２９にて「全登録モード」、期間設定として「1ヶ月」３１０１を設定する。その場合の再利用可能なアプリケーションデータの一例を図３２に示す。図３２は第1実施例と同様に、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。
【０２５６】
図３２は、第1実施例で説明した図２４と基本的には同じであるが、３２０１に示す期間を表すタグが追加されている。本実施例では、期間を表す“ｔｅｒｍ”、登録日を表す“ｄａｔｅ”、そして、時間を表す“ｔｉｍｅ”が設定される。本実施例では、“ｔｅｒｍ”として“１ｍｏｎｔｈ“、登録日は、ローカルＰＣ１０２で登録した日時を設定したが、本発明の範囲は、必ずしもこの表記に限定されるものではなく、図３１に表示される期間を満足する方法であれば他の表記であっても構わない。
【０２５７】
以上の設定が行なわれた再利用可能なアプリケーションデータは、データベース１０５に登録される。
【０２５８】
図３３は、データベース１０５が登録されたファイルの設定期間を管理する処理フローを表す。
【０２５９】
まず、ステップＳ３３０１にて、該当するファイルに有効期限が設定されているか確認する。有効期限が設定されていれば、続くステップＳ３３０２へ進むが、設定していなければ処理を終了する。
【０２６０】
続くステップＳ３３０２では、登録されたファイル毎に“ｔｅｒｍ”タグ、“ｄａｔｅ”タグそれに、“ｔｉｍｅ”タグをデータベース１０５内のメモリー（不図示）に格納する（確認作業）。
【０２６１】
続いて、ステップＳ３３０３で、データベース１０５タイマー（不図示）よりの現在の日付を呼び出し、先ほど格納した“ｔｅｒｍ”タグ，“ｄａｔｅ”それに“ｔｉｍｅ”タグから、所定の期間に入っているか確認する。
【０２６２】
以下の式（１）、及び式（２）は、本実施例を実現するための1手段である。
【０２６３】
end time = date(time) + term          ・・・式（１）
ｎｏｗ  ｔｉｍｅ  ≧  ｅｎｄ  ｔｉｍｅ・・・式（２）
式（１）では、期限を各タグから計算し、式（２）で現在の日時と式（１）で求めた期限との比較を行なっている。本実施例では、上記のような単純な比較演算で説明しているが、数値を代用できるインデックスを利用するなどの、他の比較手段を用いても構わない。
【０２６４】
ステップＳ３３０３にて期間に入っていなければ（式（２）を満足する）、続くステップＳ３３０４にて登録されたファイルを削除してデータ容量を削減する。また、期間に入っていれば、削除はされない。
【０２６５】
図３３に示すフローは、1ファイルに対する削除を判断する処理を示しており、データベース１０５における各ファイルを削除するタイミングは、本実施例では言及しない。
【０２６６】
[第４実施例]
次に、本発明の第４の実施例について説明するが、以下では、第３実施例と同様な構成の説明は省略し、異なる部分について説明する。
【０２６７】
上記第３実施例では、登録したデータが所定期間を過ぎると削除されるものであったが、本実施例では、登録するオブジェクト毎に登録可能な期間が設定され、その期限が過ぎると実体を消去する例について説明する。
【０２６８】
[登録の詳細設定]
図６に示す印刷設定ダイアログでは、ＲＣＰ（リッチコンテンツプリント）の設定において、ラジオボタンにて「しない」６０４を選択すると、通常の印刷処理として、上述した印刷シーケンスに沿ってアプリケーション３０１で生成されたデータがＭＦＰ１００を介して印刷される。ラジオボタンにて「する」６０３を選択すると、アプリケーション３０１にて作成されたオリジナルの電子データは後述するベクトル化処理にて、アプリケーション３０１で作成されたオリジナルデータを、複数のドメインでオブジェクト単位に再利用できるフォーマットに加工し、同時にそのデータがオリジナルデータの検索用のインデックス情報としても利用できるようにデータベース１０５に登録される。つまり、「する」６０３が設定された場合は、印刷処理を行ないつつ、オリジナルのデータとその加工されたデータがデータベース１０５に登録される。
【０２６９】
「する」６０３が選択されると、ダイアログは、「詳細設定」６０５がアクティブになり、さらにオリジナルの電子データをベクトル化するための設定を変更することができる。
【０２７０】
図３４は、詳細設定ボタン６０５を選択したときの印刷設定ダイアログの一例である。ボックス３４０１は、デフォルト、あるいは現在設定されている登録方法を示し、ボタン３４０２は、設定内容をブルダウンメニューとして展開するボタンを示す。ボックス３４０３は現状の設定内容を確定するためのボタンであり、ボックス３４０４は現状の設定内容をキャンセルするものである。ボタン３４０３、もしくは３４０４を選択すると、図６の表示に戻る。ボタン３４０５は、ボックス３４０１で設定したモードの内、登録有効期限を有効するオブジェクトを選択するものである。よって、有効化されないオブジェクトについては、期限は無期限の設定となる。
【０２７１】
ボタン３４０５が選択されると、図３５に示すダイアログが表示される。本実施例では「全オブジェクト」、「ＰＨＯＴＯオブジェクト」、「ＴＥＸＴオブジェクト」、「ＬＩＮＥオブジェクト」、「ＴＡＢＬＥオブジェクト」が選択でき、さらに、選択されたオブジェクトに対して、ボタン３５０２にてその有効期限を設定できるようになっている。なお、ここで表示されるオブジェクトの意味は、第1実施例で説明したものと同様である。
【０２７２】
本実施例では、「ＰＨＯＴＯオブジェクト」３５０１を選択し、設定期限は第3実施例と同様の期間を設定した場合の再利用可能なアプリケーションデータの一例を図３６に示す。図３６は第１、３実施例と同様に、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。
【０２７３】
また設定が終了すると、ボタン３４０３、もしくは３４０４を選択することで、図３４の表示に戻り、さらに、ボタン３４０３、もしくは３４０４を選択することで、図６の表示に戻る。
【０２７４】
図３６は、第３実施例の図３２と、「ＰＨＯＴＯオブジェクト」に係るｉｍａｇｅタグに有効期限が設定されている点が異なることが分かる。３６０１は第3実施例と同様なタグ情報がｉｍａｇｅタグに付加されていることが分かる。
【０２７５】
図３７は、本実施例におけるオブジェクトの実体を削除するシーケンスを示す。
【０２７６】
始めに、該当する登録ファイルにおいて、ステップＳ３７０１にてオブジェクトが定義されているか確認する。定義されていなければ、処理を終了するが、定義されていれば、続くステップＳ３７０２へと進む。
【０２７７】
ステップＳ３７０２ではオブジェクトの実体を確認する。実態とは、ＮＵＬＬ属性になっているか否か、すなわち、第1実施例に示したように、領域情報だけが記載されており、その実体は存在しない：ＮＵＬＬであるか否かを判断する。実態があれば、続くステップＳ３７０３へ進むが、実態がなければ、ステップＳ３７０１へ進み処理を繰り返す。
【０２７８】
ステップＳ３７０３は、該当するオブジェクトに有効期限が設定されているか確認する。
【０２７９】
図３６に示すように、本実施例ではｉｍａｇｅタグに実体があり、しかも、そこに有効期限が設定されているので、第3実施例と同様に、確認しているオブジェクト内の “ｔｅｒｍ”タグ、“ｄａｔｅ”タグそれに、“ｔｉｍｅ”タグをデータベース１０５内のメモリー（不図示）に格納する（確認作業）。ステップＳ３７０３にて有効期限が確認しているオブジェクトに記載されていない場合は、ステップＳ３７０１に戻って処理を継続する。
【０２８０】
続いて、ステップＳ３７０５で、データベース１０５タイマー（不図示）よりの現在の日付を呼び出し、先ほど格納した“ｔｅｒｍ”タグ，“ｄａｔｅ”それに“ｔｉｍｅ”タグから、所定の期間に入っているか確認する。
【０２８１】
以下の式（１）、及び式（２）は、本実施例を実現するための1手段である。
【０２８２】
end time = date(time) + term          ・・・式（１）
ｎｏｗ  ｔｉｍｅ  ≧  ｅｎｄ  ｔｉｍｅ・・・式（２）
式（１）では、期限を各タグから計算し、式（２）で現在の日時と式（１）で求めた期限との比較を行なっている。本実施例では、上記のような単純な比較演算で説明しているが、数値を代用できるインデックスを利用するなどの、他の比較手段を用いても構わない。
【０２８３】
ステップＳ３７０５にて期間に入っていなければ（式（２）を満足する）、続くステップＳ３７０６にて登録されたオブジェクトを削除して代わりに、図３８に示すようにＮＵＬＬ情報を記入してデータ容量を削減する。３８１０がｉｍａｇｅタグの実体が削除された状態を表す。
【０２８４】
また、期間に入っていれば、削除はされない。
【０２８５】
ステップＳ３７０５にて期間に入っていれば、再びステップＳ３７０１にて処理を継続する。
【０２８６】
図３７に示すフローは、1ファイルに対する削除を判断する処理を示しており、データベース１０５における各ファイルを削除するタイミングは、本実施例では言及しない。
【０２８７】
[他の実施例]
第3、４実施例では、有効期限が設定される対象が、登録するファイル自体である場合と、オブジェクトに限定される場合がそれぞれ説明された。他の発明として、登録するファイルにアクセスする頻度に応じて、第3、４実施例と同様に、ファイル自体、もしくはオブジェクト単位に削除する方法もデータ量の削減には有利である。
【０２８８】
図３９は、印刷設定ダイアログでアクセス頻度を設定した場合の再利用可能なアプリケーションデータの一例を示す。図３９は第１、３、４実施例と同様に、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。図３６と同様に、期間設定を明示するタグの変わりに、アクセス頻度を規定するタグ（ｆｒｅｑ）が３９０１に記載されている。印刷設定ダイアログで期限を設定する方法は、第３実施例の図３１と同様に、図４０に示すような形態になっている。図４０では、４００１に示す頻度「１０」が指定され、その結果が先のファイル：図３９のｆｒｅｑタグに反映されている。本実施例では、「無制限」、「１００００」、「１０００」、「１００」、「１０」、「３」とアクセス頻度設定できるようになっているが、本実施例の範囲はこの6項目に限定されるものでなく、頻度設定を不図示のキーボードから入力しても構わない。
【０２８９】
図４１は、データベース１０５内でファイルを削除する処理フローを示す。
まず、ステップＳ４１０１にて、該当するファイルに頻度設定されているか確認する。頻度設定されていれば、続くステップＳ４１０２へ進むが、設定していなければ処理を終了する。
【０２９０】
続くステップＳ４１０２では、登録されたファイル毎に“ｆｒｅｑ”タグをデータベース１０５内のメモリー（不図示）に格納する（確認作業）。
【０２９１】
続いて、ステップＳ４１０３で、不図示の不揮発性のメモリーに格納された該当ファイルのアクセス頻度を読み出す。ファイルのアクセス頻度は、ファイルがＭＦＰ１００もしくは他のドメインからファイルにアクセスする度にファイル名をインデックスとしてカウントした結果が不図示の不揮発性のメモリーに随時格納されている。
【０２９２】
続くステップＳ４１０４では、該当ファイルのカウント数とファイルの設定された値とを比較し、頻度を超えていれば、続くステップＳ４１０５で当該ファイルを削除し、超えていなければ、そのまま継続となる。
【０２９３】
図４１に示すフローは、1ファイルに対する削除を判断する処理を示しており、データベース１０５における各ファイルを削除するタイミングは、本実施例では言及しない。
【０２９４】
また、第4実施例と同様の概念で、オブジェクト毎にアクセス頻度を格納してデータ削除することも、第4の実施例の拡張として可能である。
【０２９５】
[第５実施例]
次に、本発明の第５の実施例について説明するが、以下では、第３実施例及び、第４実施例と同様な構成の説明は省略し、異なる部分について説明する。
【０２９６】
上記第３実施例では、登録したデータが所定期間を過ぎると削除されるものであった。また、上記第４実施例では、登録するオブジェクト毎に登録可能な期間が設定され、その期限が過ぎると実体を消去するものであった。本実施例では、登録するオブジェクトを、UIを用いて作成者（印刷者）が明示的に設定する例について説明する。
【０２９７】
[登録の詳細設定]
図６に示す印刷設定ダイアログでは、ＲＣＰ（リッチコンテンツプリント）の設定において、ラジオボタンにて「しない」６０４を選択すると、通常の印刷処理として、上述した印刷シーケンスに沿ってアプリケーション３０１で生成されたデータがＭＦＰ１００を介して印刷される。ラジオボタンにて「する」６０３を選択すると、アプリケーション３０１にて作成されたオリジナルの電子データは後述するベクトル化処理にて、アプリケーション３０１で作成されたオリジナルデータを、複数のドメインでオブジェクト単位に再利用できるフォーマットに加工し、同時にそのデータがオリジナルデータの検索用のインデックス情報としても利用できるようにデータベース１０５に登録される。つまり、「する」６０３が設定された場合は、印刷処理を行ないつつ、オリジナルのデータとその加工されたデータがデータベース１０５に登録される。
【０２９８】
「する」６０３が選択されると、ダイアログは、「詳細設定」６０５がアクティブになり、さらにオリジナルの電子データをベクトル化するための設定を変更することができる。
【０２９９】
図３４は、詳細設定ボタン６０５を選択したときの印刷設定ダイアログの一例である。ボックス３４０１は、デフォルト、あるいは現在設定されている登録方法を示し、ボタン３４０２は、設定内容をブルダウンメニューとして展開するボタンを示す。ボックス３４０３は現状の設定内容を確定するためのボタンであり、ボックス３４０４は現状の設定内容をキャンセルするものである。ボタン３４０３、もしくは３４０４を選択すると、図６の表示に戻る。ボタン３４０５は、ボックス３４０１で設定したモードの内、登録するオブジェクトを選択するものである。選択されたオブジェクト情報は、第１実施例に示すように、例えば、図２４のような形式のベクトル化されたフォーマットであり、選択したオブジェクトのバウンディングボックス（オブジェクトを囲う最小の閉領域：ｘ座標、ｙ座標、幅、高さ）を保持する。なお、本実施例では、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式で表記しているが、これに限定されるものではない。
【０３００】
選択されないオブジェクトは、図２５に示すように、オブジェクトのバウンディングボックス情報のみを残して、中身を示す情報はNULLとしてデータ量（情報量）を削減してデータベース１０５へと送信・登録される。
【０３０１】
ボタン３４０５が選択されると、図４２に示すダイアログが表示される。以下では、ボックス３４０１にて、「全登録モード」を選択した場合について説明する。他のモードの場合は、選択可能なオブジェクトがモードに依存することのみが異なり、以下で説明するオブジェクト選択の処理は全て同一である。
【０３０２】
テキストボックス４２０６は、対象とするページ番号が指定可能である。ボタン４２０１は、オブジェクトを選択するモードに切り替えるボタンである。このボタンを押下後、図４２の左にあるプレビュー画面から、登録したいオブジェクトをユーザーが選択する。選択を行うと、４０２８のように、ハイライト表示され、選択されている旨をユーザーに示す。オブジェクトを選択後、ボタン４２０２にて登録を行う。テキストボックス４２０７は、オブジェクトの選択数が表示される。ボタン４２０２にて登録を行うと、オブジェクトの選択数が増加する。ボタン４２０２にて登録したオブジェクトを解除したい場合は、ボタン４２０３を押下する。解除後は、テキストボックス４２０７のオブジェクトの選択数が減少する。全てのページに対して、オブジェクトを選択した後、ボタン４２０４を押下することで、選択オブジェクトが確定し、図３４の画面に戻る。オブジェクト選択を取りやめる場合は、ボタン４２０５を押下することで、処理をキャンセルし、図３４の画面に戻る。さらに、ボタン３４０３、もしくは３４０４を選択することで、図６の表示に戻る。
【０３０３】
本発明に係る画像処理方法を実施する手段は図１、図２に記載した画像処理システムに限定されるものではなく、専用の画像処理装置、汎用コンピュータ等種々の手段を採用し得る。
【０３０４】
汎用コンピュータにおいて実行する際には、画像処理方法の各ステップを汎用コンピュータに実行させるためプログラムコードを含むコンピュータ実行可能なプログラムを、汎用コンピュータに読み込ませる。
【０３０５】
汎用コンピュータが画像処理を実行するためのプログラムは、汎用コンピュータに内蔵されたＲＯＭや、汎用コンピュータが読み取り得る記憶媒体から読み込まれ、あるいはネットワークを通じてサーバー等から読み込まれる。
【０３０６】
また本発明の趣旨と範囲は、本発明の特定の説明と図に限定されるものではなく、本願特許請求の範囲に述べられた内容の様々な修正および変更に及ぶことは当業者にとって理解されるであろう。
【図面の簡単な説明】
【０３０７】
【図１】本発明に係る画像処理システムを示すブロック図である。
【図２】図１におけるＭＦＰを示すブロック図である。
【図３】図１に示したローカルＰＣ１０２におけるデータ処理モジュールの構成を説明するブロック図である。
【図４】図２の詳細構成を説明するブロック図である。
【図５】第１実施例で説明する第１のデータ処理フローである。
【図６】本発明で説明する印刷・登録設定を説明するダイアログの一例である。
【図７】第１実施例で説明する第２のデータ処理フローである。
【図８】図４に示すスプールマネージャからデスプーラに通知される情報の一例を示す図である。
【図９】図６で詳細設定を選択したときの印刷設定ダイアログの一例である。
【図１０】図９にて登録設定内容を展開した表示の一例である。
【図１１】第１実施例に係る再利用可能なデータへの変換フロー図である。
【図１２】図１１で実施するＢＳ（領域分割）した結果の一例を示す。
【図１３】ＢＳ（領域分割）したときの各属性のブロック情報および入力ファイル情報を示す。
【図１４】第１実施例に係るベクトル化処理のフロー図である。
【図１５】ベクトル化の処理における角抽出の処理を示す図である。
【図１６】ベクトル化の処理における輪郭線まとめの処理を示す図である。
【図１７】図１４で生成されたベクトルデータのグループ化の処理を示すフローチャートである。
【図１８】図１７の処理でグループ化されたベクトルデータに対する図形要素検出の処理を示すフローチャートである。
【図１９】第１実施例に係るベクトル化処理結果のデータを示すマップである。
【図２０】図１１のアプリデータ変換の処理を示すフローチャートである。
【図２１】図２０の文書構造ツリー生成の処理を示すフローチャートである。
【図２２】文書構造ツリー生成処理の対象となる文書を示す図である。
【図２３】図２１の処理によって生成される文書構造ツリーを示す図である。
【図２４】本実施例で説明するＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の一例である。
【図２５】本発明で実施する登録設定と送信する再利用可能なデータ形式の詳細を示す図である。
【図２６】第２実施例で説明する登録用のデータのファイルフォーマットを表す。
【図２７】第２実施例で説明する第１のデータ処理フローである。
【図２８】第２実施例で説明する登録用のデータのファイルフォーマットを表す。
【図２９】第３実施例で説明する印刷設定ダイアログの一例である。
【図３０】図２９で期限設定を選択したときに表示されるダイアログの一例である。
【図３１】図３０にて期間設定を展開した一例である。
【図３２】第3実施例で説明するＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の一例である。
【図３３】第3実施例で説明する、登録ファイルの設定期間を管理する処理フローである。
【図３４】第4実施例で説明する印刷設定ダイアログの一例である。
【図３５】図３４におけるボタンオブジェクト３４０５が選択された場合のダイアログ表示の一例である。
【図３６】第４実施例で説明する登録用のデータのファイルフォーマットを表す。
【図３７】第４実施例で説明する登録ファイルの設定期間を管理する処理フローである。
【図３８】第4実施例で説明するオブジェクトの実体が削除されたファイルの一例を表す。
【図３９】他の実施例で説明するＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の一例である。
【図４０】他の実施例におけるダイアログ表示の一例である。
【図４１】他の実施例で説明する登録ファイルを管理する処理フローである。
【図４２】第５実施例で説明する印刷設定ダイアログの一例である。
【図１】
2008129646.tif 000003
【図２】
2008129646.tif 000004
【図３】
2008129646.tif 000005
【図４】
2008129646.tif 000006
【図５】
2008129646.tif 000007
【図６】
2008129646.tif 000008
【図７】
2008129646.tif 000009
【図８】
2008129646.tif 000010
【図９】
2008129646.tif 000011
【図１０】
2008129646.tif 000012
【図１１】
2008129646.tif 000013
【図１２】
2008129646.tif 000014
【図１３】
2008129646.tif 000015
【図１４】
2008129646.tif 000016
【図１５】
2008129646.tif 000017
【図１６】
2008129646.tif 000018
【図１７】
2008129646.tif 000019
【図１８】
2008129646.tif 000020
【図１９】
2008129646.tif 000021
【図２０】
2008129646.tif 000022
【図２１】
2008129646.tif 000023
【図２２】
2008129646.tif 000024
【図２３】
2008129646.tif 000025
【図２４】
2008129646.tif 000026
【図２５】
2008129646.tif 000027
【図２６】
2008129646.tif 000028
【図２７】
2008129646.tif 000029
【図２８】
2008129646.tif 000030
【図２９】
2008129646.tif 000031
【図３０】
2008129646.tif 000032
【図３１】
2008129646.tif 000033
【図３２】
2008129646.tif 000034
【図３３】
2008129646.tif 000035
【図３４】
2008129646.tif 000036
【図３５】
2008129646.tif 000037
【図３６】
2008129646.tif 000038
【図３７】
2008129646.tif 000039
【図３８】
2008129646.tif 000040
【図３９】
2008129646.tif 000041
【図４０】
2008129646.tif 000042
【図４１】
2008129646.tif 000043
【図４２】
2008129646.tif 000044