"一つあるいは複数の画像ファイルを入力とし、それらを格納したドキュメントを出力としたドキュメント変換処理を行うドキュメント処理システムであって、複数種類のドキュメントフォーマットに対して白紙テンプレートを生成する白紙テンプレート生成手段と、S504白紙テンプレートの各ページに前記入力された画像ファイルを埋め込み、出力ドキュメントを生成するドキュメントファイル生成手段を有し、S505入力される複数の画像ファイルの種類を元に、格納可能なドキュメントフォーマットを特定するドキュメントフォーマット特定手段S503により出力ドキュメントを生成することを特徴とするフォーマット変換装置。前記白紙テンプレート生成手段は、ページには何も記載されていない白紙の構造化文書を生成する手段図8と、ページレイアウトテンプレートを生成する手段図9からなることを特徴とする請求項1に記載のフォーマット変換装置。前記ドキュメントフォーマット特定手段とは、予め前記複数種類のドキュメントフォーマットに対するサポート画像フォーマットフラグを有し図6、入力画像から画像フラグを作成する手段S701と、サポート画像フォーマットフラグと画像フラグを比較する手段S704からなることを特徴とする請求項1に記載のフォーマット変換装置。しかしながら、入力フォーマットが画像ファイルの場合は、取り扱いが容易ではない。フォーマットの観点では、画像ファイルには、JPEG、TIFFTaggedImageFileFormat、PNGPortableNetworkGraphics、JPEG2000、JPEGXR、GIF、DIBDeviceIndependentBitmap、JBIGJointBilevelImageExpertsGroupなど様々な物が存在する。これらのフォーマットを全て解釈出来るコンポーネントを用意することは簡単ではない。また、前述の画像ファイルフォーマットをサポートしている市販アプリケーション等を活用し、ある画像ファイルを別のフォーマットに変換する場合、JPEGやTIFF、JPEGXRに付随しているExifExchangeableimagefileformat情報の取り扱い等が問題となる。Exifとは写真撮影の付加的な情報が格納されたメタデータである。別の画像ファイルフォーマットに変換する場合、その変換先のフォーマットではExifをサポートしていなければ情報が抜けてしまう。その後の画像ファイル処理で、Exif情報を活用する処理が存在すると、十分な処理が出来なくなる。また前述の画像フォーマットをサポートしている市販アプリケーション等を活用し、別のドキュメントフォーマットに変換する場合はページ内の配置が問題になる。1ページに大きくビットマップを張り付けるのか、中央部にオリジナルと同じ大きさで貼りつけるのか、1ページに複数配置するのかなどの制御方法が提供されているとは限らない。上記課題を解決するために本フォーマット変換装置、方法、及びプログラムにおいては、一つあるいは複数の画像ファイルを入力とし、それらを格納したドキュメントを出力としたドキュメント変換処理を行うドキュメント処理システムであって、複数種類のドキュメントフォーマットに対して白紙テンプレートを生成する白紙テンプレート生成手段と、白紙テンプレートの各ページに前記入力された画像ファイルを埋め込み、出力ドキュメントを生成するドキュメントファイル生成手段を有し、入力される複数の画像ファイルの種類を元に、格納可能なドキュメントフォーマットを特定するドキュメントフォーマット特定手段により最適な出力ドキュメントを生成することを特徴とする。複数の画像ファイル、さらに様々なフォーマットの画像ファイルをページレイアウト済みのドキュメントとしてフィルタパイプラインシステムで取り扱えるようになる。その際に、画像ファイルの情報量を落とさずに、最適な形態で後続の各種フィルタが処理することが可能となる。以下、本発明を実施するための最良の形態について図面を用いて説明する。[実施例]フィルタパイプラインシステムにおいて、特にクライアントPC内に本発明であるフォーマット変換装置を適合させた場合の実施例である。本実施例では、フォーマットとして様々な入力データを取り扱っており、入力フォーマットに従ってフィルタパイプラインシステムが構築するフィルタを切り替えている。入力が単数あるいは複数の画像ファイルだった場合、それらをあるドキュメントフォーマットに変換するフィルタを活用する。入力がドキュメントフォーマットだった場合、あるいは前記フィルタにより画像ファイルをドキュメントフォーマットに変換した後は、任意のドキュメントフォーマットをある特定のドキュメントフォーマット例えばPDFに変換する。入力がある特定のドキュメントフォーマットあるいは、フィルタに特定のドキュメントフォーマットに変換した後は、その特定のドキュメントフォーマットを印刷データであるPDLファイルへ変換する。このようにフィルタパイプラインシステムではフィルタ制御部が複数の機能を有するフィルタを組み合わせて、所望の処理を実現する。なお、本実施例では最終段のフィルタは、特定のドキュメントフォーマットを印刷データであるPDLファイルに変換しているが、本発明は印刷システムに限定されるわけではなく、最終的に何らかのドキュメントフォーマットを出力するユースケースであれば同様に成立する。また、このフォーマット変換装置は、Webサービスのサーバやクラウドサービスとしてドキュメント変換サービスを提供する際にも適用可能である。図1は本発明であるフォーマット変換装置が適用される情報処理システムの構成の一例を示すブロック図である。図1において、1は中央処理装置で、上記プログラムおよび関連データが記憶されているFD,CD-ROM,ICメモリカード等の記憶媒体をシステムに接続された媒体読取装置6から読み込む。その後、補助記憶装置3から主記憶装置2にロードされたシステムプログラム、アプリケーションプログラムによって入力装置4から入力される情報を処理して、出力装置5や印刷装置7に出力する。なお、本実施例では出力装置5はディスプレイなどの表示装置とし、本来出力装置に含まれる印刷装置7と区別する。また、入力装置4はキーボード、ポインティングデバイス等で構成されているものとする。さらに補助記憶装置3は、ハードディスク、光磁気ディスクで構成されるものであってもいいし、これらの組み合わせで構成されるものであってもよい。また、それぞれの装置がネットワークを介して接続されていようとも、本発明を制約するものではない。図2は媒体読取装置記憶装置6に格納されていたプログラムと関連するデータが中央処理演算装置1に読み込まれ、入力装置4からフォーマット変換指示がフォーマット変換装置10に入力されて、印刷装置7へPDLデータを送り印刷するまでの概念図をあらわす。アプリケーション11はフォーマット変換装置10から活用され、OSオペレーティングシステム9の制御下で機能する。図3は、本発明に関わるフォーマット変換装置10の構成を示したブロック図である。同図においてOSオペレーティングシステム9の上で、本発明を適用したフォーマット変換装置10、ドキュメントを解釈出来るアプリケーション11は動作する。12は本発明におけるユーザがフォーマット変換装置10に対して変換元ドキュメントの指定や各種設定を入力したり、変換開始指示をしたりするためのユーザーインターフェース部である。13は、ユーザからの指示に従い、様々なフィルタの処理順序や入出力等を制御するフィルタ制御部である。このフィルタ制御部は、入力データや処理内容に応じて、事前に画像ファイル格納フィルタ14やドキュメント変換フィルタ15、ドキュメント印刷フィルタ16を組み合わせる。14は、ユーザから一つあるいは複数の画像ファイルが指定された時、その後のドキュメント変換フィルタ15やドキュメント印刷フィルタ16で処理しやすいように一つのドキュメントに画像ファイルを格納する画像ファイル格納フィルタである。15は、フィルタの中でも特にドキュメント変換機能を有するドキュメント変換フィルタを示す。本実施例では、ドキュメン変換フィルタ15そのものが存在している訳ではなく、複数のあるドキュメントを別のドキュメントに変換するフィルタを総称している。例えばドキュメント変換フィルタの一例であるOOXMLPDF変換フィルタは、OOXMLファイルを取得し、アプリケーション11としてMicrosoftOfficeのプロセスを立ち上げ、取得したOOXMLファイルを読み込ませ、PDF変換指示を出す。MicrosoftOfficeが作成したPDFをOOXMLPDF変換フィルタの出力とする。また、別のドキュメント変換フィルタの一例としては、任意ドキュメントPDF変換フィルタがあげられる。ここで任意のドキュメントとは、XPS、ODFOpenDocumentFormatといった標準フォーマット、あるいは特定のアプリケーションのみで活用するドキュメントフォーマットでも成立する。この任意ドキュメントを処理するアプリケーション11は一つではなく、複数の様々なアプリケーションの総称とする。本実施例においてはOS9が提供するファイル拡張子とアプリケーションの関連付け機構を活用しているため、ドキュメント変換フィルタ15自体は、立ち上げるアプリケーションが何かを特に意識する必要はない。任意ドキュメントPDF変換フィルタは、入力ドキュメントファイルを取得し、任意ドキュメント用アプリケーションのプロセスを立上げ、取得した入力ドキュメントを読み込ませ、PDFを生成するドキュメント生成ドライバを指定して印刷指示を出す。ドキュメント生成ドライバが作成したPDFを任意ドキュメントPDF変換フィルタの出力とする。ドキュメント変換フィルタはこのように多種多様なドキュメントフォーマットに対応出来ることを特徴とする。これは画像ファイル格納フィルタ14とドキュメント変換フィルタ15がフィルタ制御部13によって連結されている場合、画像ファイル格納フィルタ14が出力するドキュメントフォーマットが選択できることを意味する。16は、ドキュメント変換フィルタ15が各種ドキュメントファイルから作成したPDFを元に、印刷用のPDLデータを生成するドキュメント印刷フィルタである。ここで作成されたPDLデータは印刷装置7に投げられる等により紙への印刷が実現される。本実施例においては、常にドキュメント印刷フィルタはPDFをPDLに変換するものとしているが、入力はPDFに限定されたものでなく、XPS印刷フィルタとしてXPSをPDLに変換するものといった別フォーマットに対しても成立できる。その際、ドキュメント変換フィルタ15の出力は、印刷フィルタ16の入力フォーマットである必要がある。図4は、本発明の特徴を最もよくあらわす画像ファイル格納フィルタ14の構成図である。画像ファイル格納フィルタ14は、入出力管理部17、出力ドキュメント判断部18、テンプレート生成部19、画像ファイル挿入部20から構成される。入出力管理部17は、画像ファイル格納フィルタ14に入ってきた単数あるいは複数の画像ファイルの存在場所を特定するとともに、その情報を出力ドキュメント判断部18に渡し、テンプレート生成部19や画像ファイル挿入部20によって変換された出力ドキュメントを取得し、画像ファイル格納フィルタの出力として入出力を管理する。出力ドキュメント判断部18は、画像ファイルの拡張子やヘッダー等、入出力管理部17からの入力画像ファイルの種類に関する情報を元に、画像ファイルを格納する出力ドキュメントを何にすると適切かの判断を行う。適切な出力ドキュメントの判断とは、本実施例における本発明に関わるものであり後述する。テンプレート生成部19は、出力ドキュメント判断部18により特定された出力ドキュメントおよび、複数の画像ファイルの配置の仕方を元にテンプレートを生成する。イメージファイル挿入部20では、テンプレート生成部19が生成した出力ドキュメントのテンプレートに対して、入出力管理部17で管理している一つあるいは複数の画像ファイルを埋め込み、最終的な出力ドキュメントを構築する。ここでの処理は、基本的に画像ファイル名を構造化文書に埋め込むことになる。図5は、本実施形態における画像ファイル格納フィルタ14の処理全体の流れについてフローチャートを用いて説明する。画像ファイル格納フィルタ14の入出力管理部17が単数あるいは複数の入力画像ファイルを取得するS501。この時、基本的には入力画像ファイルを特定するためのHDDのパスと画像ファイル名が伝えられる。さらに入出力管理部17は、これらの入力画像ファイルをどのようにドキュメントに配置するかの処理内容を取得するS502。ここで処理内容とは、例えば、1ページに1つの画像を配置するとか、カタログのように1ページに10個の画像を配置するとか、ページ内のレイアウトへの指定が主なものである。次に出力ドキュメント判断部18は、複数の入力画像ファイルのフォーマット種から、それらをどのドキュメントフォーマットに格納すべきかの判断を行うS503。詳細は別のフローチャートで後述する。出力するドキュメントフォーマットが決定されると、テンプレート生成部19は、入出力管理部17が取得した処理内容および決定された出力ドキュメントを元に、白紙構造化文書とページレイアウトテンプレートから成る白紙テンプレートを生成するS504。さらにその白紙テンプレートに、画像ファイル挿入部20が入出力管理部17が取得した入力画像ファイルのパスとファイル名から該当する画像ファイルを取り出し、ドキュメントに埋め込んでドキュメントファイルを生成するS505。ここで生成されたドキュメントファイルは入出力管理部17にて管理され、入出力管理部17が画像ファイル格納フィルタの出力ドキュメントとして出力する。以上のフローにより本画像ファイル格納フィルタの処理が完了する。この出力ドキュメントは、後続のフィルタの入力となり、後続のフィルタは複数で様々なフォーマットの画像ファイルを単一のドキュメントとして取り扱うことが出来るようになる。図6は、出力ドキュメント判断部18が出力ドキュメントを判断するのに活用するサポート画像フォーマット情報の一例を示す。縦軸は、出力ドキュメントフォーマット候補が羅列される。全て構造化文書フォーマットで、さらに画像ファイルをそのままの状態で直接ドキュメントに格納することが出来るという特徴を持つ。例としてはPDFPortableDocumentFormat、XPSXMLPaperSpecification、HTML、OOXML、ODFOpenDocumentFormatを挙げている。ただし出力ドキュメントフォーマット候補とはこの5種類である必要はなく、本発明に係わるフォーマット変換装置においては、構造化文書で画像ファイルを直接ドキュメントに格納出来るのであれば任意に追加することが可能である。横軸には、本フォーマット変換装置が入力データとして処理出来る画像フォーマットが羅列される。例としてはJPEG、JPEG2000、GIF、PNG、JBIG、DIB、TIFF、JPEGXRを挙げている。ただし本発明に係わるフォーマット変換装置においては、上記出力ドキュメントフォーマット候補が対応している画像フォーマットは随時追加することが可能である。サポート画像フォーマット情報には、さらに出力ドキュメントフォーマット候補がサポートしているサポート画像フラグが記録されている。本実施例では、画像フォーマットそれぞれに2進数それぞれのビットに対応させたフォーマットフラグを指定している。例えばJPEGは最下位ビット、16進数では0x0001を割り当てており、JPEG2000は2番目のビット、16進数では0x0002を割り当てている。さらに出力ドキュメントフォーマット候補に対してもサポート画像フラグを割り当てている。XPSの場合は、サポートしている画像フォーマットとしてJPEGとPNGとTIFF、JPEGXRである。JPEGのフォーマットフラグは0x0001、PNGのフォーマットフラグは0x0008、TIFFのフォーマットフラグは、0x0040、JPEGXRのフォーマットフラグは0x0080である。この場合、XPSのサポート画像フラグは、サポートしている全ての画像フォーマットのフォーマットフラグを合成した0x00C9となる。各画像フォーマットが予めフォーマットフラグを持ち、出力ドキュメントフォーマット候補がサポート画像フラグを持つことで、図6の表のサポート画像フォーマット情報が表現出来る。図7は、出力ドキュメント判断部18によるS503出力ドキュメント特定の詳細な処理の流れを説明するフローチャートである。出力ドキュメント判断部18は、S501で入力管理部17が管理する複数の入力画像ファイルの種類から、フォーマットフラグをOR合成して、入力画像フラグを作成するS701。これは例えば複数の入力画像ファイルがJPEGとPNGだった場合、それぞれのフォーマットフラグ0x0001と0x0008をOR合成した0x0009が入力画像フラグとなる。次に、出力ドキュメント判断部18は、出力ドキュメントフォーマット候補を一つ選択するS702。これは予め出力ドキュメントフォーマット候補に優先順位を付けておく。本実施例においては、この優先順位付けは、後段のフィルタ処理の処理速度や品位等を元に実施している。具体的な優先順位としては、PDF、XPS、HTML、OOXML、ODFの順としているため、最初はPDFを選択する。次に、選択された出力ドキュメントフォーマットの候補のサポート画像フラグと、S701で作成した入力画像フラグをOR合成するS703。さらにOR合成した結果がOR合成する前のサポート画像フラグに一致しているか判断するS704。上記のようにJPEGとPNGによる入力画像フラグは0x0009であり、PDFのサポート画像フラグ0x0053のORを取ると、合成結果は0x005BとなりPDFのサポート画像フラグとは異なってしまう。これは、PDFがPNGをサポートしていないため発生している。S704の判断結果により一致した場合は、出力ドキュメント判断部18はS702で選択された出力ドキュメントフォーマット候補が画像格納フィルタ14の出力ドキュメントとして最適なことと特定しS706、処理が完了する。S704の判断結果により一致しなかった場合は、優先順位に従って用意された出力ドキュメントフォーマット候補を切り替えて判断処理を行うS705。用意された出力ドキュメントフォーマット候補全てが一致しなかった場合は、入力された画像ファイルがドキュメントに変換出来ないことを意味し、非サポートのエラー通知を行うS707。このような場合は、非サポートの画像フォーマットを強制的に、汎用的なフォーマットに変換するか、あるいはその非サポートの画像フォーマットに対応した出力ドキュメントフォーマット候補を追加するといった取り組みが必要となる。図8は、S504のテンプレート生成部18が作成する白紙テンプレートの要素である、白紙構造化文書の概要を示したものである。図8-AにはXPSの白紙構造化文書の例を示す。XPSはJob全体のオブジェクトを示すFixedDocumentSequence、ドキュメントのオブジェクトを示すFixedDocument、ページのオブジェクトであり描画内容を示すFixedPageにより構成される。ここで、それぞれのオブジェクト間はLINKされており、それにより構造化文書といわれる。ここで白紙構造化文書とは、FixedPageには描画内容は記載せず、それ以外のオブジェクトを構築し、LINKした状態で一つのXPS文書として成立していることである。図8-BにはPDFの白紙構造化文書の例を示す。PDFは文書カタログ、ページツリー、アウトライン、ページおよび描画内容を示すコンテントストリームといったオブジェクトにより構成される。ここでそれぞれのオブジェクト間はLINKされており、それにより構造化文書といわれる。ここで白紙構造化文書とは、コンテントストリームには描画内容は記載せず、それ以外のオブジェクトを構築し、LINKした状態で一つのPDF文書として成立していることとする。例としてはXPSおよびPDFの白紙構造化文書を取り上げたが、図6の出力ドキュメントフォーマット候補として用意した、HTML、OOXML、ODFも同様に白紙構造化文書を作成することが出来る。図9は、S504のテンプレート生成部18が作成する白紙テンプレートの要素である、ページレイアウトテンプレートの例を示したものである。ここではXPSの図8-Aで作成した白紙構造化文書に対し、描画内容を示すFixedPageにページレイアウトテンプレートを作成する。図9-Aでは、1ページ内に3つの画像挿入領域を確保したテンプレート例を示す。図9-Bでは、それを実際のFixedPageの内容に関して、実現方法を具体化する。FixedPageはXMLで記載され、ページ内の配置する場所はタグで表現する。ページレイアウトテンプレート例では左上領域の位置、右上領域の位置、中央下領域の位置をタグ内に記載している。今回はページ内3つの画像挿入領域に対するページレイアウトテンプレートの例を出しているが、これがページ内1つのビットマップ挿入領域、あるいは8個の画像挿入領域といった形でも算出出来る。あるいは、様々なページレイアウトテンプレートを事前に用意しておき、テンプレート生成部18では図5S502の処理内容に従って、ページレイアウトテンプレートを選択するだけという実施形態も可能である。さらにFixedPageにおいては、ビットマップ挿入領域にビットマップファイルを挿入する際には、タグで表現出来る。テンプレート生成部18ではページレイアウトテンプレートを生成するため、本実施例ではビットマップファイルの指定は行わず、空欄のままにしている。図8で説明した白紙構造化文書と図9で説明したページレイアウトテンプレートを一つのドキュメントとすることで、白紙テンプレートとなる。図10は、画像ファイル挿入部20が白紙テンプレートに対して、画像ファイルを挿入してドキュメントファイルを生成する例を示す。図10-Aは、図9-Aのテンプレート例の3つの領域に対して、3つの画像ファイルImg1jpg、Img2PNG、Img3TIFFを埋め込むとする例を示したものである。XPSの場合、画像ファイル挿入部20は、図9-BのFixedPageのページレイアウトテンプレートに対して、タグ内に、図5のS501で指定された画像ファイルを記載する。これによって、複数の画像ファイルから、一つのドキュメントファイルが作られる。"