(57)【要約】【課題】  ＰＰＭＬ等のバリアブルデータについて、ドキュメントを抽出してプリフライトチェックをすることを目的とする。更に、一括してフォーマットも含むプリフライトチェックをすることを目的とする。【解決手段】  ユーザによりＰＰＭＬ等のバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを検査する場合に、１ページのバリアブルデータドキュメントから背景として共通ドキュメントと各ページに特有の複数の前景ドキュメントを含む複数のドキュメントを抽出し、抽出されたドキュメントの各々の内容が印刷可能か否か、及び複数の前景ドキュメントの重なって印刷されるか否かを検査し、検査結果をユーザに報知する。【選択図】  図７
2006172203.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを検査するドキュメント検査方法であって、
コンピュータにより、
１ページのバリアブルデータドキュメントから複数のドキュメントを抽出し、
前記抽出されたドキュメントの各々の内容を検査し、
検査結果をユーザに報知することを特徴とするドキュメント検査方法。
【請求項２】
前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含むことを特徴とする請求項１記載のドキュメント検査方法。
【請求項３】
１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを更に検査することを特徴とする請求項２記載のドキュメント検査方法。
【請求項４】
前記検査は印刷出力が可能であるか否かの検査であることを特徴とする請求項１乃至３のいずれか１つに記載のドキュメント検査方法。
【請求項５】
前記言語はＰＰＭＬ(Personalized Print Markup Language)であることを特徴とする請求項４記載のドキュメント検査方法。
【請求項６】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムであって、
１ページのバリアブルデータドキュメントから複数のドキュメントを抽出する抽出手段と、
前記抽出されたドキュメントの各々の内容を検査する第１の検査手段と、
検査結果をユーザに報知する報知手段とを有することを特徴とするドキュメント出力システム。
【請求項７】
前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含むことを特徴とする請求項６記載のドキュメント出力システム。
【請求項８】
１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを検査する第２の検査手段を有することを特徴とする請求項７記載のドキュメント出力システム。
【請求項９】
前記ドキュメントの出力は印刷出力であることを特徴とする請求項６乃至８のいずれか１つに記載のドキュメント出力システム。
【請求項１０】
前記言語はＰＰＭＬ(Personalized Print Markup Language)であることを特徴とする請求項９記載のドキュメント出力システム。
【請求項１１】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを検査するドキュメント検査方法を実現するコンピュータ実行可能なプログラムであって、
１ページのバリアブルデータドキュメントから複数のドキュメントを抽出するステップと、
前記抽出されたドキュメントの各々の内容を検査するステップと、
検査結果を出力するステップとを有することを特徴とするプログラム。
【請求項１２】
前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含むことを特徴とする請求項１１記載のプログラム。
【請求項１３】
１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを検査するステップを更に有することを特徴とする請求項１２記載のプログラム。
【請求項１４】
前記ドキュメントの出力は印刷出力であることを特徴とする請求項１１乃至１３のいずれか１つに記載のプログラム。
【請求項１５】
前記言語はＰＰＭＬ(Personalized Print Markup Language)であることを特徴とする請求項１４記載のプログラム。
【請求項１６】
請求項１１乃至１５のいずれか１つに記載のプログラムをコンピュータ読み取り可能に記憶する記憶媒体。
【請求項１７】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムであって、
前記バリアブルデータドキュメントを作成するクライアントコンピュータと、
該クライアントコンピュータから送信される前記バリアブルデータドキュメントを保持するサーバコンピュータと、
前記クライアントコンピュータの出力指示に従って、前記サーバコンピュータに保持された前記バリアブルデータドキュメントを出力する出力コンピュータとを含み、
前記コンピュータの少なくとも１つが、請求項１１乃至１５のいずれか１つに記載のプログラムを実行することを特徴とするドキュメント出力システム。
【請求項１８】
前記サーバコンピュータは、Ｗｅｂサーバコンピュータ、ファイルサーバコンピュータ、プリントサーバコンピュータを含むことを特徴とする請求項１７記載のドキュメント出力システム。
【請求項１９】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータであって、
請求項１１乃至１５のいずれか１つに記載のプログラムを実行することを特徴とするクライアントコンピュータ。
【請求項２０】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータから送信される前記バリアブルデータドキュメントを保持するサーバコンピュータであって、
請求項１１乃至１５のいずれか１つに記載のプログラムを実行することを特徴とするサーバコンピュータ。
【請求項２１】
Ｗｅｂサーバコンピュータ、ファイルサーバコンピュータ、プリントサーバコンピュータを含むことを特徴とする請求項２０記載のサーバコンピュータ。
【請求項２２】
ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータの出力指示に従って、前記クライアントコンピュータから送信されてサーバコンピュータに保持された前記バリアブルデータドキュメントを出力する出力コンピュータであって、
請求項１１乃至１５のいずれか１つに記載のプログラムを実行することを特徴とする出力コンピュータ。
【請求項２３】
各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するドキュメント検査方法であって、
前記データのリンクに基づき複数のドキュメントを抽出し、
前記抽出した複数のドキュメントの重なりをチェックし、
前記チェック結果をユーザに報知することを特徴とするドキュメント検査方法。
【請求項２４】
複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するドキュメント検査方法であって、
前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出し、
前記抽出した背景ドキュメント及び前景ドキュメントをチェックし、
前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知することを特徴とするドキュメント検査方法。
【請求項２５】
各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するドキュメント検査装置であって、
前記データのリンクに基づき複数のドキュメントを抽出する手段と、
前記抽出した複数のドキュメントの重なりをチェックする手段と、
前記チェック結果をユーザに報知する手段とを有することを特徴とするドキュメント検査装置。
【請求項２６】
複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するドキュメント検査装置であって、
前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出する手段と、
前記抽出した背景ドキュメント及び前景ドキュメントをチェックする手段と、
前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知する手段とを有することを特徴とするドキュメント検査装置。
【請求項２７】
各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するコンピュータ読み取り可能なプログラムであって、
前記データのリンクに基づき複数のドキュメントを抽出し、
前記抽出した複数のドキュメントの重なりをチェックし、
前記チェック結果をユーザに報知することを特徴とするコンピュータ読み取り可能なプログラム。
【請求項２８】
複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するコンピュータ読み取り可能なプログラムであって、
前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出し、
前記抽出した背景ドキュメント及び前景ドキュメントをチェックし、
前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知することを特徴とするコンピュータ読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はバリアブルデータフォーマットで記述されたデータをチェックするドキュメント検査方法、例えば、ＰＰＭＬ (Personalized Print Markup Language)のような言語で記述された印刷用ドキュメントの検査方法及びその検査方法を実現するドキュメント出力システムに関し、特に、ワークフローとしての利便性を高める技術に関するものである。
【背景技術】
【０００２】
マルチメディアコンテンツをバリアブルデータフォーマットで記述可能な言語としては、XML（eXtensible Murkup Language)が知られている。ＰＰＭＬは、XMLベースのデジタルプリンティングシステムのための言語として、又バリアブルプリントを実現するためのアーキテクチャとして、PODiから提唱されたオープンな言語である。
【０００３】
ユーザから印刷要求として、例えばＰＰＭＬデータのようなバリアブルデータを受け付けた場合に、従来、その内容を検査する仕組みがなかったために、入稿されたデータをそのまま信用して印刷するしか方法はなかった。ユーザに多少ＰＰＭＬデータの知識があったとしても、ユーザがＰＰＭＬデータの中からPDFデータやPSデータ等を抽出して、抽出したPDFデータあるいはPSデータをひとつずつプリフライトチェックツールに入力して検査することが必要となる。
【０００４】
一方、ユーザからバリアブルデータフォーマットでないPDFやPSあるいはSVG形式のデータによる入稿を受け付け、それを印刷するサービスでは、オペレータが印刷システムを用いて入稿されたドキュメントについてプリフライトチェックを行い、印刷に問題がないと判断された場合に印刷を行なう（特許文献１）。
【０００５】
ここで、プリフライトチェックとは、実際に印刷を開始した後に必要なリソースがないことなどにより作業が中断されることを防止するために、実際の印刷を実行する前にドキュメントの内容について行うチェックであり、従来のチェック対象の項目としては、ドキュメントに含まれるフォントの種類とフォントのエンベッドの有無、あるいはカラープロファイルの名前、イメージデータの解像度といった、主として当該ドキュメントの印刷に必要なリソースに関する項目が含まれている。
【特許文献１】特開2003-036162公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＰＰＭＬデータのようなバリアブルデータを受け付けた場合に、ユーザやオペレータがＰＰＭＬデータの中からPDFデータやPSデータ等を抽出して、抽出したPDFデータあるいはPSデータをひとつずつプリフライトチェックツールに入力して検査するのは、ユーザやオペレータの専門知識を必要としワークフローとしての利便性が低下してしまう。
【０００７】
更に、上記方法により抽出したPDFデータあるいはPSデータをひとつずつプリフライトチェックツールに入力して検査することで、PDFデータやPSデータそのものの中身はチェックできるが、バリアブルデータとしておのおののPDFデータやPSデータを配置することによって生じるエラー（例えばドキュメントの重なりなど）に関しては、チェックすることができない。
【０００８】
本発明は、上記問題点を解決するために、ＰＰＭＬ等のバリアブルデータについて、ドキュメントを抽出してプリフライトチェックをすることを目的とする。更に、一括してフォーマットも含むプリフライトチェックをすることを目的とする。
具体的には、ＰＰＭＬ等のバリアブルデータに含まれているPDFやPSデータの単体のデータとしてのチェックを行うとともに、それらのデータを配置したときにお互いに重なり合った場合などに生じるエラーもチェックすることにより、バリアブルデータの出力を行う前にオペレータが事前にエラー情報を得ることにが可能となり、バリアブルデータの出力のワークフローとしての効率を高めることを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のドキュメント検査方法は、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを検査するドキュメント検査方法であって、コンピュータにより、１ページのバリアブルデータドキュメントから複数のドキュメントを抽出し、前記抽出されたドキュメントの各々の内容が出力可能か否かを検査し、検査結果をユーザに報知することを特徴とする。
【００１０】
ここで、前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含む。また、１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを更に検査する。また、前記検査は印刷出力が可能であるか否かの検査である。また、前記言語はＰＰＭＬ(Personalized Print Markup Language)である。
【００１１】
又、本発明のドキュメント出力システムは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムであって、１ページのバリアブルデータドキュメントから複数のドキュメントを抽出する抽出手段と、前記抽出されたドキュメントの各々の内容が出力可能か否かを検査する第１の検査手段と、検査結果をユーザに報知する報知手段とを有することを特徴とする。
【００１２】
ここで、前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含む。また、１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを検査する第２の検査手段を有する。また、前記ドキュメントの出力は印刷出力である。また、前記言語はＰＰＭＬ(Personalized Print Markup Language)である。
【００１３】
又、本発明のプログラムは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを検査するドキュメント検査方法を実現するコンピュータ実行可能なプログラムであって、１ページのバリアブルデータドキュメントから複数のドキュメントを抽出するステップと、前記抽出されたドキュメントの各々の内容が出力可能か否かを検査するステップと、検査結果を出力するステップとを有することを特徴とする。
【００１４】
ここで、前記抽出された複数のドキュメントは、背景としての共通ドキュメントと各ページに特有の前景ドキュメントを含む。また、１ページに前記前景ドキュメントが複数あって、前記複数の前景ドキュメントの重なって出力されるか否かを検査するステップを更に有する。また、前記ドキュメントの出力は印刷出力である。また、前記言語はＰＰＭＬ(Personalized Print Markup Language)である。
【００１５】
又、上記プログラムをコンピュータ読み取り可能に記憶する記憶媒体を提供する。
【００１６】
又、本発明のドキュメント出力システムは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムであって、前記バリアブルデータドキュメントを作成するクライアントコンピュータと、該クライアントコンピュータから送信される前記バリアブルデータドキュメントを保持するサーバコンピュータと、前記クライアントコンピュータの出力指示に従って、前記サーバコンピュータに保持された前記バリアブルデータドキュメントを出力する出力コンピュータとを含み、前記コンピュータの少なくとも１つが、上記プログラムを実行することを特徴とする。ここで、前記サーバコンピュータは、Ｗｅｂサーバコンピュータ、ファイルサーバコンピュータ、プリントサーバコンピュータを含む。
【００１７】
又、本発明のクライアントコンピュータは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータであって、上記プログラムを実行することを特徴とするクライアントコンピュータ。
【００１８】
又、本発明のサーバコンピュータは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータから送信される前記バリアブルデータドキュメントを保持するサーバコンピュータであって、上記プログラムを実行することを特徴とする。ここで、Ｗｅｂサーバコンピュータ、ファイルサーバコンピュータ、プリントサーバコンピュータを含む。
【００１９】
又、本発明の出力コンピュータは、ユーザによりバリアブルにドキュメントの定義が可能な言語で記述されたバリアブルデータドキュメントを出力するドキュメント出力システムにおいて、前記バリアブルデータドキュメントを作成するクライアントコンピュータの出力指示に従って、前記クライアントコンピュータから送信されてサーバコンピュータに保持された前記バリアブルデータドキュメントを出力する出力コンピュータであって、上記プログラムを実行することを特徴とする。
【００２０】
又、本発明のドキュメント検査方法は、各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するドキュメント検査方法であって、前記データのリンクに基づき複数のドキュメントを抽出し、前記抽出した複数のドキュメントの重なりをチェックし、前記チェック結果をユーザに報知することを特徴とする。
【００２１】
又、複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するドキュメント検査方法であって、前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出し、前記抽出した背景ドキュメント及び前景ドキュメントをチェックし、前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知することを特徴とする。
【００２２】
又、本発明のドキュメント検査装置は、各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するドキュメント検査装置であって、前記データのリンクに基づき複数のドキュメントを抽出する手段と、前記抽出した複数のドキュメントの重なりをチェックする手段と、前記チェック結果をユーザに報知する手段とを有することを特徴とする。
【００２３】
又、複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するドキュメント検査装置であって、前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出する手段と、前記抽出した背景ドキュメント及び前景ドキュメントをチェックする手段と、前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知する手段とを有することを特徴とする。
【００２４】
又、本発明のコンピュータ読み取り可能なプログラムは、各ページに可変に流し込まれる複数のドキュメントへのリンクを含むデータを検査するコンピュータ読み取り可能なプログラムであって、前記データのリンクに基づき複数のドキュメントを抽出し、前記抽出した複数のドキュメントの重なりをチェックし、前記チェック結果をユーザに報知することを特徴とする。
【００２５】
又、複数ページに共通して用いられる背景ドキュメントへのリンクと各ページに可変に流し込まれる前景ドキュメントへのリンクとを含むデータを検査するコンピュータ読み取り可能なプログラムであって、前記データのリンクに基づき背景ドキュメント及び前景ドキュメントを抽出し、前記抽出した背景ドキュメント及び前景ドキュメントをチェックし、前記背景ドキュメントのチェック結果及び前記前景ドキュメントのチェック結果をユーザに報知することを特徴とする。
【発明の効果】
【００２６】
本発明により、ＰＰＭＬ等のバリアブルデータについて、ドキュメントを抽出してプリフライトチェックをすることができる。更に、一括してフォーマットも含むプリフライトチェックをするこができる。
【００２７】
具体的には、ＰＰＭＬ等のバリアブルデータに含まれているPDFやPSデータの単体のデータとしてのチェックを行うとともに、それらのデータを配置したときにお互いに重なり合った場合などに生じるエラーもチェックすることにより、バリアブルデータの出力を行う前にオペレータが事前にエラー情報を得ることにが可能となり、バリアブルデータの出力のワークフローとしての効率を高めることができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施の形態例を図面を参照しながら説明する。尚、本実施形態では、ドキュメント出力システムとしてドキュメント印刷システムを例に説明する。しかしながら、本発明の特徴はバリアブルデータドキュメントを出力する場合の検査に係るものであり、印刷に限らず表示などの出力においても適用可能であり、本発明はこれらも含むものである。
【００２９】
＜本実施形態のドキュメント印刷システムの構成例＞
図１は、本実施形態に係るドキュメント印刷システムのシステム構成例を示す図である。
【００３０】
本システムは、複数台のパーソナルコンピュータ（以下、クライアントパソコンという）X，Yと、1台のファイルサーバFSと、1台のWebサーバWSと、1台のプリントサーバPSと、少なくとも1台のプリンタAが、ネットワークNにより接続された構成となっている。そして、携帯情報端末のようなモバイル端末Mが、IrDA、RS-232Cやセントロニクスなどを通してネットワークに接続することなく、直接プリンタAにつながっている。なお、クライアントパソコンX，Yの代わりに、ワードプロセッサ、ワークステーション、携帯情報端末等の情報処理装置を接続することも可能である。また、クライアントパソコンX，YおよびファイルサーバFSは、複数種のフォントにかかるフォントデータ群やWebのデータや画像データ等が格納されている。
【００３１】
本システムでは、図６に示すように、モバイル端末MあるいはクライアントパソコンXまたはYからプリンタAに対して印刷したいWebのURLやPDFデータ等のドキュメント存在場所、及び印刷部数等の印刷要求を出し、プリンタAからWebサーバWSにファイル要求を出し、WebサーバWSは必要な文書データやフォントデータ等をファイルサーバFSより集めて、プリントサーバPSに転送し、プリントサーバPSはその転送されたデータを展開しプリンタAに送ることによって印刷する。
【００３２】
尚、図１には、ネットワークNがLANのように示されているが、インターネットなどを介してクライアントパソコンXまたはYと各サーバやプリンタAが遠距離で接続された構成の場合に、例えば印刷拠点ではプリンタAを印刷拠点パソコンZを介して接続してもよい。この場合、以下で示す印刷拠点でのプリフライトチェックはこの印刷拠点パソコンZで行われる。又、印刷拠点にファイルサーバFSやプリントサーバPSがある場合は、これらサーバが印刷拠点でのプリフライトチェックを行なってよい。更に、プリンタAがパソコン機能を有する場合は、プリンタA自身がプリフライトチェックを行ってもよい。
【００３３】
＜本実施形態のパソコン及びサーバの構成例＞
図２は、上記クライアントパソコンX，Y、ファイルサーバFS、WebサーバWS、印刷拠点パソコンZ、及びプリントサーバPSの概略構成例を示すブロック図である。
【００３４】
図２において、１０１はＣＰＵ、すなわち中央処理装置であり、装置全体の制御及び演算処理等を行う。１０２はＲＯＭすなわち読み出し専用メモリであり、システム起動プログラム、基本Ｉ／Ｏプログラム、及び文字コードをビットパターンに変換するための文字パターンデータ（フォントデータ）等を記憶している。１０３はＲＡＭすなわちランダムアクセスメモリであり、ＣＰＵ１０１の演算に使用するデータや演算結果、表示のために文字コードから変換された文字パターンデータ列や図形データ、イメージデータ等を一時記憶する。
【００３５】
１０４はＫＢＣ、すなわちキーボード制御部であり、１０５はＫＢ、すなわちキーボードよりキー入力データ（文字コードや制御コード）を受け取り、ＣＰＵ１０１へ伝達する。１０６はＣＲＴＣ、すなわちディスプレイ制御部であり、ＲＡＭ１０３に格納された文字パターンデータ列を読み出し、ＣＲＴ１０７に転送する。１０７はＣＲＴ、すなわちディスプレイ装置であり、ＣＲＴＣ１０６より文字パターンデータ列、図形データ、イメージデータを受け取り、表示画面に表示する。
【００３６】
１０８はＤＫＣ、すなわちディスク制御部であり、外部記憶装置１０９に対するアクセス制御を行う。１０９はＦＤ、すなわちフロッピーディスク装置、あるいはHD、すなわちハードディスク装置、あるいはCD−ROM等の外部記憶装置である。HDには、文字パターンデータ（フォントデータ）やフォントデータを読み出してビットマップデータに変換する文字展開処理プログラム、図形データを処理する図形展開処理プログラム、イメージデータを処理するイメージデータ処理プログラム等を記憶している。
【００３７】
本実施形態にかかる図７乃至図１０の処理等を行うアプリケーションプログラム及び関連データは、フロッピーディスク装置あるいはCD−ROM等の外部記憶装置１０９からＲＡＭ１０３にロードされて、ＣＰＵ１０１により使用される。
【００３８】
１１０はＮＴＣ、すなわちネットワーク制御部であり、ＮＴ、すなわちネットワーク装置１１１の動作を制御する。１１２はシステムバスであり、上述の構成要素間のデータ転送を行う。
【００３９】
（本実施形態のＲＡＭのメモリマップ例）
図３は、本実施形態にかかるドキュメントチェック処理を行う際のＲＡＭ１０３のメモリマップ例を示した図である。図３には、本実施形態に特徴的な情報のみが図示されており、他の情報の図示は省かれている。
【００４０】
基本Ｉ／Ｏプログラム３１は、ＲＯＭ１０２内のシステム起動プログラムによりＲＡＭ１０３に読み込まれ、オペレーティングシステム（ＯＳ）は基本Ｉ／Ｏプログラム３１が実行されてハードディスク装置から読み込まれる。また、外部記憶装置１０９としてのフロッピーディスク装置、あるいはＣＤ−ＲＯＭからアプリケーションプログラム３３、及び関連データ３４を一旦、ハードディスク装置へインストールした状態で電源がＯＮされたときに、ハードディスク装置からＲＡＭ１０３にロードすることにより、実行することが可能となる。なお、ハードディスク装置へインストールせずに、直接フロッピーディスク装置、或いはＣＤ−ＲＯＭからＲＡＭ１０３にロードして実行することも可能である。なお、ファイルサーバFSでは、後述のプリンタ情報テーブルが関連データの領域に形成されている。ワークエリア３５は、ＣＰＵ１０１の処理中のデータの一時保存領域として使用される。
【００４１】
本実施形態では、アプリケーション３３として、図７乃至図１０に示すような、プリフライトチェック・プログラム３３１と、プリフライトチェック・プログラム３３１を構成するＰＰＭＬで記述されたデータを解釈して、背景ドキュメントや前景ドキュメントを抽出するＰＰＭＬ解釈モジュール３３１ａ、背景ドキュメントや前景ドキュメントのプリフライトチェックをするドキュメントテェック・モジュール３３１ｂ、前景ドキュメントの重なりなどをチェックするフォーマットチェック・モジュール３３１ｃ、その他のチェックモジュール３３１ｄが記憶されている。
【００４２】
又、関連データ３４としては、入力あるいは受信されたＰＰＭＬデータ３４ａが記憶されている。又、ワークエリア３５には、ＰＰＭＬ解釈モジュール３３１ａで解釈されて抽出された、背景ドキュメントの印刷条件などの情報３５ａ、前景ドキュメント１の印刷条件や印刷配置などの情報３５ｂ、...、前景ドキュメントｎの印刷条件や印刷配置などの情報３５ｃ、プリフライトチェック結果３５ｄ、チェック結果や警告などを表示する画面の表示データ３５ｅなどが保持される。
【００４３】
＜本実施形態のプリンタの概略構成例＞
図４は、プリンタＡの概略を示すブロック図である。なお、プリンタＡは、レーザビームプリンタ、バブルジェットプリンタ、或いは熱転写プリンタ等のいずれのタイプでもよい。
【００４４】
プリンタＡは、図４に示したように、ＣＰＵ２１１，ＲＯＭ２１２，ＲＡＭ２１３，システムバス２１４、プリンタコントローラ（ＰＲＴＣ）２１５、プリンタエンジン（ＰＲＴ）２１６、ディスクコントローラ（ＤＫＣ）２１７、ハードディスク装置（ＨＤ）２１８、ネットワークコントローラ（ＮＴＣ）２１９、及びネットワーク装置（ＮＴ）２２０を有している。なお、ＤＫＣ２１７およびＨＤ２１８はプリンタの種類によっては存在しない場合もある。
【００４５】
ＣＰＵ２１１は、装置全体を制御する中央処理装置であり、ＲＡＭ２１３をワークエリア等として利用しながら、ＲＯＭ２１２に格納されたプログラムに従がって、印刷に必要な各種の処理を実行する。システムバス２１４は、上記各構成要素間でデータ、制御信号を授受するための通路となっている。なお、ＲＯＭ２１２には、文字パターンデータ（フォントデータ）等が格納されている。そしてＲＡＭ２１３またはＨＤ２１８には、WebサーバWSへ要求した文書データやイメージデータあるいはフォントデータ等がWebサーバWSからダウンロードされ、格納される場合と、プリントサーバPSからイメージに展開された出力データがダウンロードされる場合がある。
【００４６】
ＣＰＵ２１１は、WebサーバWSあるいはプリントサーバPSから供給された文書データ、イメージデータあるいはフォントデータを、ＲＯＭ２１２内にあるプログラムに従がって文字パターンデータや画像データ（ビットマップデータ）を生成して、プリンタコントローラ２１５内の印刷バッファに展開する。プリンタコントローラ２１５は、ビットマップデータに基づいて生成した印刷コントロール信号をプリンタエンジン２１６に出力する。
【００４７】
ネットワークコントローラ２１９は、ネットワークＮを介してクライアントパソコンＸ，ＹやファイルサーバFSやプリントサーバPSとの間でデータ送受信を行う際のネットワーク装置（ＮＴ）２２０の動作を制御している。
【００４８】
尚、プリンタAで本実施形態のプリフライトチェックをする場合は、ＲＡＭ２１３のアプリケーション領域に、プリント制御プログラムと共に図３のプリフライトチェック・プログラムがロードされて実行される。
【００４９】
＜本実施形態のドキュメント印刷システムの動作例＞
次に、図５を用いて、本実施形態のＰＰＭＬプリフライトチェックがバリアブルデータ印刷処理のワークフロー上でどのように使用されるかを説明する。
【００５０】
図５の(a)から(c)で示しているクライアントX, Y、サーバFS, PS、印刷拠点Z(A)について、それぞれワークフロー上どのような作業を行うかを簡単に説明する。
【００５１】
クライアント上では依頼者が印刷したいバリアブルデータの作成作業を行い、データ作成が終了したらデータをWeb入稿システム等が存在すればそれを利用してサーバへアップロードする。あるいは、ドキュメントを直接印刷拠点へ持ち込むようなことを行う。
【００５２】
サーバ上では、クライアントから入稿されたデータを取り込み、適宜データサイズ等や印刷部数等によって課金処理を行ったり、クライアントの要求をジョブ情報として印刷拠点に渡したり、印刷拠点側のステータスをチェックしてクライアント側にそのステータスを連絡したりするような作業を行う。
【００５３】
そして印刷拠点の作業としては、サーバ経由あるいは直接クライアントユーザが持ち込んだデータからクライアントの要求に応じて印刷処理を行う。クライアントの要求としては、出力用紙サイズであったり、出力部数であったり、フィニッシングの指定であったり、どのような用紙を使って印刷するか等である。これらの要求は、サーバ経由であればクライアントが印刷したいデータをアップロードする際にサーバへ通知しているので、サーバからジョブ情報として受け取る。クライアントが直接印刷したいデータを持ち込む場合には、データを持ち込む際にそれらの要求項目を書面等で伝えてもらうことになる。そしてそれらの要求に応じて印刷処理を行う。
【００５４】
次に、これらのワークフローの中で、本実施形態となるＰＰＭＬのプリフライトチェックをどのように扱うかを説明する。
【００５５】
図５の(a)では、クライアントでＰＰＭＬのプリフライトチェック３３１X, ３３１Yを行う場合であり、クライアントが自分のシステムの中でＰＰＭＬのプリフライトチェックを行う場合であり、クライアントが作成したＰＰＭＬデータに対して、印刷拠点に印刷依頼を行う前にクライアント自らチェックを行い、データをサーバへアップロードあるいは印刷拠点へ持ち込む前にチェックでエラーが見つかった項目に対して修正処理を行う場合である。
【００５６】
図５の(b)では、サーバ上でＰＰＭＬのプリフライトチェック３３１FS
, ３３１PSを行う場合であり、クライアント自身はＰＰＭＬのプリフライトチェックモジュールは持たないが、サーバにＰＰＭＬのデータをアップロードした後にサーバ上でＰＰＭＬのデータの確認を行う。したがってサーバ側では、アップロードされたＰＰＭＬデータについてユーザの要求に応じてＰＰＭＬデータのプリフライトチェック作業を行う。そしてそこで行った作業で得られたエラー情報をクライアントに返す。クライアントはその結果に基づいて、アップロードしたデータをそのまま印刷作業させるのか、あるいはいったんクライアント側でＰＰＭＬデータの編集をやり直して、再度アップロードをやり直す等の作業を行う。
【００５７】
図５の(c)では、印刷拠点側でＰＰＭＬデータのプリフライトチェック３３１Z(A)の作業を行う場合であり、印刷拠点のオペレータがサーバより入稿があったＰＰＭＬデータあるいはクライアントが持ち込んだＰＰＭＬデータに対して、プリフライトチェック作業を行い、その結果をクライアントに通知し、クライアントの意向によりオペレータが訂正可能なものはオペレータで訂正を行い、クライアント側で訂正すべきものはクライアント側で訂正し、再度サーバにアップロードするか、印刷拠点に再度持ち込む作業を行うことになる。
【００５８】
上記のようにクライアントX, Y、サーバFS, PS、印刷拠点Z(A)にプリフライトチェックがある場合に、それぞれの場所で行う場合にそれぞれ目的が異なってくる。したがって、プリフライトチェックを行う場合には、図５の(a),(b),(c)のどれかだけ行うというのではなく、複数の場所で行うことが望ましく、複数の場所で行うほどチェックの精度が高くなる。
【００５９】
図６には、上記図５の(a),(b),(c)でのプリフライトチェックのタイミングが、全体のドキュメント出力処理のやり取りの中に示されている。
【００６０】
（プリフライトチェック・プログラムの手順例）
次に、図７乃至図１０のＰＰＭＬデータのプリフライトチェックのフローチャートを用いて本実施形態の処理手順例を説明する。
【００６１】
このフローチャートにおける処理は、図５の（a）の場合にはクライアントのPC上で、図５の(b)の場合にはサーバ上で、図５の(c)の場合には、印刷拠点のオペレータのPC（又はプリンタA）上で実行されることになる。
【００６２】
まず、ステップＳ６０１では、対象とするＰＰＭＬデータの読み込みを行う。ステップＳ６０２においては、ＰＰＭＬデータの内容を解釈する。ここでの作業としては、ＰＰＭＬデータに格納されているPDFデータあるいはその他のPostScrpt, TiFF, JPEG等のドキュメントの抽出作業を行い、それらの抽出したデータのうち、再利用に用いるデータとそうでないデータおよびどのページの何処にどのデータを使うか等の情報を保存する。ステップＳ６０２の詳細手順は、図８に示す。そして、ステップＳ６０３で１ページ目からデータをチェックするためのパラメータとしてＮの値を１とする。
【００６３】
ステップＳ６０４では、Ｎページ目のデータをチェックするために、ステップＳ６０２で保持した情報を元にして、Ｎページ目のデータを取り出す。取り出すデータとしては、背景用として再利用されるデータを取り出す。そして、ステップＳ６０５で取り出した背景用のデータがすでにチェック済みかどうかを調べる。背景用データは再利用データとして登録されている場合が多いので、すでに現在のページの背景データのチェックを行う前に、現在のページより前のページで同一の背景データのチェックを行っている場合がある。そのような場合に、同一のデータに対して複数回チェックする必要がないので、ステップＳ６０９へ進む。現在のページよりも前のページでチェックをしておらず、初めてチェックするデータについてはステップＳ６０６へ進む。
【００６４】
ステップＳ６０６では、背景のドキュメントについてのプリフライトチェックを行う。プリフライトチェック処理の詳細については、ここでは詳述しないが、フォントのエンベッドの有無、RGB等カラーデータのチェック、図形における細線警告、イメージにおいては表示用解像度の有無チェック等がある。このプリフライトチェックには、例えば、文書情報である、チェック対象のドキュメントのタイトル、サブタイトル、作成者、キーワード、とじ方、作成日時、変更日時、ファイルサイズ、セキュリティ、またドキュメントがＰＤＦであればそのバージョン（そのほかの形式であってもそのバージョン）、ページサイズ、用紙の向きなどが使用される。又、カラー情報である、チェック対象のドキュメントで使用されているカラープロファイル名と、オペレータ等により予め指定されたそのプロファイルについての記述（レンダリングインテント）、当該カラープロファイルのカラースペースが使用される。又、フォント情報である、チェック対象のドキュメントで使用されているフォント名、種類等のほか、埋め込みの有無、使用されているページ番号などが使用される。更に、イメージ情報である、チェック対象のドキュメントに埋め込まれたイメージファイルの名称のほか、そのイメージのカラースペース、解像度等の情報が使用される。ステップＳ６０６の詳細手順は、図９に示す。そして、これらのチェックを行った後、ステップＳ６０７へ進む。
【００６５】
ステップＳ６０７においては、ステップＳ６０６で行ったプリフライとチェックでチェックされた内容にエラーがあるかどうかを調べ、エラーが存在する場合にはステップＳ６０８へ進み、エラーがない場合にはステップＳ６１０へ進む。ステップＳ６０８においては、ステップＳ６０７において見つかったエラーリストを現在のページまでに作成されたエラーリストに追加する。エラーリストはページ単位に作成しておく。エラーリストとしては、ページ番号と使用ドキュメントデータIDおよびそのPDFデータの配置位置、そしてそのドキュメントのエラーの種類が格納される。
【００６６】
ステップＳ６０９においては、対象となる背景データが現在のページをチェックする前のページのどこかで使用しているので、ここではそのときのエラー情報を読み出して、エラーリストとして現在の対象ページのところに追加する。そしてそのとき同一の背景データを使用していることがわかるようにエラーリストに同一のIDを付加しておく。
【００６７】
ステップＳ６１０においては、対象となる背景データが同一ページ内に存在するかどうかをチェックする。まだ存在する場合にはステップＳ６０４へ戻って、その背景データのチェックを行い、対象となる背景データが存在しない場合にはステップＳ６１１へ進む。
【００６８】
そして、ステップＳ６１１からＳ６１６においては、前景用データ（背景データの中に差し込まれるバリアブルデータ）のチェックを行う。ステップＳ６１１においては、対象とする前景用データが、それまでのページにおいてチェックをしたかどうかを調べる。すでにチェックを行っていればステップＳ６１５へ進み、まだチェックをしていなければステップＳ６１２へ進む。
【００６９】
ステップＳ６１２においては、対象となる前景用のデータのプリフライトチェックを行う。プリフライトチェック処理の詳細については、ここでは詳述しないが、ステップＳ６０６での背景データと同様に、フォントのエンベッドの有無、RGB等カラーデータのチェック、図形における細線警告、イメージにおいては表示用解像度の有無チェック等がある。そしてこれらのチェックを行った後、ステップＳ６１３へ進む。ステップＳ６１２の詳細手順は、ステップＳ６０６同様に図９に示す。
【００７０】
ステップＳ６１３においては、ステップＳ６１２で行ったプリフライとチェックでチェックされた内容にエラーがあるかどうかを調べ、エラーが存在する場合にはステップＳ６１４へ進み、エラーがない場合にはステップＳ６１６へ進む。ステップＳ６１４においては、ステップＳ６１２において見つかったエラーリストを現在のページまでに作成されたエラーリストに追加する。エラーリストはページ単位に作成しておく。エラーリストとしては、ページ番号と使用ドキュメントデータIDおよびそのPDFデータの配置位置、そしてそのドキュメントのエラーの種類が格納される。
【００７１】
ステップＳ６１５においては、対象となる前景データが現在のページをチェックする前のページのどこかで使用しているので、ここではそのときのエラー情報を読み出して、エラーリストとして現在の対象ページのところに追加する。そしてそのとき同一の前景データを使用していることがわかるようにエラーリストに同一のIDを付加しておく。
【００７２】
ステップＳ６１６おいては、対象となる前景データが同一ページ内に存在するかどうかをチェックする。まだ存在する場合にはステップＳ６１１に戻って、その前景データのチェックを行い、対象となる前景データが存在しない場合にはステップＳ６１７へ進む。
【００７３】
ステップＳ６１７においては、前景データ同士の重なり合いをチェックする。前景データ同士が重なっていたりした場合には、バリアブルデータ出力が一部不正になる恐れがある。したがって、各前景データのページ内での開始位置とその領域をチェックし、お互いに重なっている部分がないかどうかのチェックを行う。また、ＰＰＭＬデータで指定した配置位置およびその領域の値とドキュメント自体が持つ領域の値が異なる場合には、ドキュメントが正しくレイアウトされたい恐れがあるのでこれについてもエラーとして処理する。ステップＳ６１７の詳細手順は、図１０に示す。
【００７４】
そして、ステップＳ６１８において、重なりが存在する場合、あるいはＰＰＭＬの指定した領域とドキュメントの持つ領域が異なる場合にはエラーと判断し、ステップＳ６１９へ進み、そうでない場合にはステップＳ６２０へ進む。ステップＳ６１９においては、前景データ同士の重なりが存在した場合であり、バリアブル印刷の出力に不正な出力が出る恐れがあるので、どの前掲データとどの前景データが重なっているか、またその重なりはページ内の何処に発生するか等の情報をエラーリストに追加する。
【００７５】
ステップＳ６２０においては、全てのページにおいてチェック処理が終了していればステップＳ６２２へ進み、まだチェックすべきページが存在すればステップＳ６２１へ進む。ステップＳ６２１においては、Ｎの値を１つ増やし、ステップＳ６０４へ戻って新たな対象ページのチェック処理を行う。
【００７６】
ステップＳ６２２では、ステップＳ６０８、ステップＳ６１４、ステップＳ６１９で格納したエラーリストを表示あるいはファイル出力、又はファイル送信して処理を終了する。
【００７７】
（ＰＰＭＬデータ解釈：Ｓ６０２の手順例）
図８は、図７のＰＰＭＬデータ解釈（Ｓ６０２）の詳細な手順例を示すフローチャートである。
【００７８】
まず、ステップＳ７０１でＰＰＭＬデータからドキュメントデータを抽出する。次に、ステップＳ７０２で抽出されたドキュメントデータが、複数ページに共通に使用可能な背景のデータか、このページに特有の前景のデータかを判定する。
【００７９】
背景データの場合は、ステップＳ７０３で背景ドキュメントの出力条件（ドキュメント・プリフライとチェックで使用される情報）を抽出して、一時記憶する。一方、前景データの場合は、ステップＳ７０４で前景ドキュメントの出力条件（ドキュメント・プリフライとチェックで使用される情報）を抽出してページに対応付けて記憶すると共に、ステップＳ７０５で前景ドキュメントの出力位置を抽出してページに対応付けて記憶する。
【００８０】
ステップＳ７０６では、このページが含む全てのドキュメントの処理が終了したか否かを判定し、他の残ったドキュメントが有ればステップＳ７０１に戻って処理を繰り返す。
【００８１】
（ＰＰＭＬデータのフォーマットの例）
ＰＰＭＬのフォーマットについて、図１２を用いて詳細に説明する。
【００８２】
まずＰＰＭＬのデータの内容としては、背景データの中にページ単位に差し替えができるようなバリアブルデータを持つ構造になっている。
【００８３】
図１２の例では、まず背景データへのポインタ１２１があり、そのポインタ１２１の先に背景データのドキュメント１２２がリンクされている。この背景データのドキュメント１２２の形式は、PDFであってもPSであってもSVG等のドキュメントであってもよい。また背景ドキュメントを内部データとしてリンクさせて背景ドキュメントをＰＰＭＬの中に１つのデータとして抱え込んでいてもよいし、背景ドキュメントを外部データとしてリンクさせて背景ドキュメントがＰＰＭＬデータと別ファイルして保存されていてもよい。
【００８４】
そして背景データの次に、バリアブルデータ（前景データ）を配置すべき位置情報１２３が格納されている。この情報１２３としては、背景データの中にバリアブルデータ（前景データ）を差し込むべき位置としての（Ｘ，Ｙ）情報が格納されている。差し込むべきバリアブルデータ（前景データ）は複数定義できる。図１２の例では、２つのバリアブルデータ（前景データ）が差し込む例になっている。
【００８５】
そして１ページ目のバリアブルデータ（前景データ）の１番目のバリアブルデータドキュメント１（前景ドキュメント）へのポインタ１２４を持ち、そのポインタ１２４の先にバリアブルデータ（前景データ）のドキュメント１２５がリンクされている。このバリアブルデータ（前景データ）のドキュメント形式は背景データと同様、PDFであってもよいし、PSであってもよいし、SVG等のドキュメントであってもよい。また内部データとしてＰＰＭＬの中に抱え込んでいてもよいし、外部データとして別ファイルで保存されていてもよい。
【００８６】
つぎに１ページ目のバリアブルデータ（前景データ）の２番目のバリアブルデータドキュメント２（前景ドキュメント）のポインタ１２６を持つ。そのポインタ１２６の先にバリアブルデータ（前景データ）のドキュメント１２７がリンクされている。この例では、背景データに対して２つのバリアブルデータ（前景データ）が差し込まれることになる。
【００８７】
そして同様な形式で２ページ目のデータを持ち、バリアブルデータドキュメント（前景ドキュメント）３とバリアブルデータドキュメント（前景ドキュメント）４を背景データに差し込むような構造になっている。
【００８８】
（ドキュメントのプリフライトテスト：Ｓ６０６／Ｓ６１２の手順例）
図９は、図７のドキュメントのプリフライトチェック（Ｓ６０６，Ｓ６１２）の詳細な手順例を示すフローチャートである。
【００８９】
まず、ステップＳ７１０においては、図７のステップＳ６０２で格納したドキュメントの出力条件データに基づいて、フォント関連のデータと、色関連のデータと、イメージに関するデータとに処理を分岐させる。すなわち、保存したデータの内容を先頭から判定し、データがフォント関連のデータである場合にはステップＳ７１１へ進み、色関連のデータである場合にはステップＳ７１３へ進み、イメージ関連のデータである場合にはＳステップ７１５へ進む。これらの判別は、たとえばファイルの保存時にデータの種別ごとにレコードを作成し、種別を示す識別子を付することなどで行える。尚、分岐はこの３つに限らず、プリフライトチェックの種類に対応して分岐する。
【００９０】
ステップＳ７１１およびＳ７１２は、フォントに関しての出力環境を含めたチェックを行なう処理である。ステップＳ７１１は、フォント関係の詳細チェックをする場合である。例えば、プリンタドライバの設定に基づいて、ドライバの設定が「ＰＣのフォントを使う」設定になっている場合には、ＰＣ環境ファイルからフォント情報を、メモリの一定の領域にフォント環境情報として読み込む。またドライバの設定が「プリンタのフォントを使う」設定になっている場合には、プリンタ環境ファイルからフォント情報を、メモリの一定の領域にフォント環境情報として読み込む。そして、ドキュメントで使用されているフォントデータの部分（フォント情報）をドキュメントのフォント情報として読み込む。読みまれるデータは、フォントの書体名、その書体に対するフォントのエンベッドの有無等である。なお、フォントのエンベッドとはフォントデータをドキュメントに含めることで、エンベッドされていれば環境を問わずにドキュメント作成時に指定したフォントを使用できる。
【００９１】
ステップＳ７１２においては、ステップＳ７１１で読み込んだ、ＰＣやプリンタのフォント環境情報と、ドキュメントのフォント情報との照合を行なう。フォントがドキュメントにエンベッドされている場合にはエンベッドされたフォントが利用されてドキュメントが出力されるために、フォント環境情報に当該フォントが含まれていなくても問題は起こらない。しかし、エンベッドされていない場合には、ドキュメントで指定されているフォントがフォント環境情報に含まれていない場合には、当該フォントは他のフォントにより代替えされてしまう。従ってその場合にはプリンタドライバ内に格納されている代替えテーブルを参照し、ドキュメントで利用されているフォントのうち、どのフォントがどのフォントに代替えされるかを示すデータを出力する。代替えテーブルを参照しても代替えフォントが指定されていない場合には、当該フォントのインストールあるいは代替えフォントの指定をオペレータに要求する旨のデータを出力する。出力されたデータは、プリフライトチェック中に一時的に作成されるフォント情報照合ファイルとして格納する。なお、ここでいう代替えテーブルは、パーソナルコンピュータやプリンタに実装されていないフォントがドキュメントで用いられている場合に、そのフォントを実装されているフォントに置換するための対応関係をしめすテーブルである。このように、ドキュメントで使用する資源（この例ではフォント）が、そのドキュメントにエンベッドされておらず、なおかつ、印刷環境において提供されていない場合、すなわちドキュメントにおいて指定された資源が利用できない場合には、その旨の警告情報が作成されて出力される。
【００９２】
ステップＳ７１３は、色関係に対する詳細チェックを行なう場合である。図６のズテップＳ６０２で格納されたプリンタ環境ファイルに含まれる色関係の情報としては、カラープリンタであるか否か、カラープリンタの場合にはＣＭＹＫのデータが扱えるか等の情報がある。また、ＰＣ環境ファイルに含まれる色関係の情報としては、ＰＣ環境にあるカラープロファイルの名称がある。ステップＳ７１３では、それら情報をカラー環境情報としてメモリに読み込む。そして、ドキュメントの内容についての色関連データの部分をドキュメントのカラー情報として読み込む。読み込むデータとしては、ソースカラープロファイル名と、そのカラープロファイルデータのエンベッドの有無等がある。
【００９３】
ステップＳ７１４においては、ステップＳ７１３で読み込んだカラー環境情報と、ドキュメントのカラー情報との照合を行なう。まず出力機（使用するプリンタ）がモノクロプリンタである場合には、カラーデータが出力できない旨を出力する。またＣＹＭＫのデータが扱えないプリンタである場合にはＲＧＢの出力に変換される旨を出力する。また入力プロファイルがエンベッドされていない場合には、ドキュメントのカラー情報に含まれているプロファイル名が、ＰＣ上の環境調査で格納されたプロファイルリストに存在するかどうか（すなわちカラー環境情報に含まれているか否か）をチェックし、存在しない場合には、当該プロファイルが存在しない旨を知らせるチェック結果を出力する。これらの出力は、プリフライトチェック中に一時的に作成されるカラー情報照合ファイルとして格納する。
【００９４】
ステップＳ７１５は、イメージ関係に対する詳細チェックを行なう場合である。図６のステップＳ６０２で格納されたプリンタ環境ファイルに含まれるイメージ関係の情報としては、プリンタの解像度情報がある。また、ＰＣ環境ファイルに含まれるイメージ関連のデータ特にない。ステップＳ７１５では、それら情報をイメージ環境情報としてメモリに読み込む。そして、ドキュメントの内容についてのプリフライトチェック結果ファイルに含まれるイメージに関連するデータの部分を、ドキュメントのイメージ情報としてメモリ読み込む。ドキュメントのイメージ情報としては、ドキュメントに含まれる各イメージそれぞれの解像度等がある。
【００９５】
ステップＳ７１６においては、ステップＳ７１５で読み込んだイメージ環境情報と、ドキュメントのイメージ情報との照合を行なう。ここでは、各イメージデータの解像度が出力機の解像度に比べて１／５程度以下に小さい場合にエラーとして出力する。つまりプリンタの解像度が６００ＤＰＩのときにイメージの解像度が１２０ＤＰＩ以下の場合には、当該イメージの名称とそのイメージデータの解像度が小さい旨のチェック結果を出力する。このチェック出力をプリフライトチェック中に一時的に作成されるイメージ情報照合ファイルとして格納する。このように、ドキュメントで使用する資源（この例ではプリントエンジン）が印刷環境において提供されている場合であっても、資源に関する属性（この例では解像度）が要求に合致しない場合には、警告のための情報が作成されて出力される。
【００９６】
ステップＳ７１７では、そのページにあるドキュメントのプリフライトチェックを終えたか判定し、終えていなければステップＳ７１０にもどる。終えていればステップＳ７１８に進む。ステップＳ７１８においては、ドキュメントのプリフライトチェック結果ファイルの内容と、出力結果を集めた警告情報とを記憶する。
（フォーマットのプリフライトチェック：Ｓ６１７の手順例）
図１０は、図７の前景ドキュメントの重なりなどのフォーマットのプリフライトチェック（Ｓ６１７）の詳細な手順例を示すフローチャートである。
【００９７】
まず、ステップＳ８０１で変数Ｘを１とし、ステップＳ８０２で図６のＳ６０２で格納した前景ドキュメントＸの配置情報を読み出す。ステップＳ８０３では変数ＹをＸ＋１とし、ステップＳ８０４で前景ドキュメントＹの配置情報を読み出す。
【００９８】
ステップＳ８０５で、前景ドキュメントＸの配置情報と前景ドキュメントＹの配置情報とに基づいて、前景ドキュメントＸとＹに重なりが無いか否かをチェックする。重なりが有れば、ステップＳ８０６からＳ８０７に進んで、重なり結果を前景ドキュメントＸに対応して記憶する。重なりが無ければ、ステップＳ８０６からＳ８０９に進む。
【００９９】
ステップＳ８０９では変数Ｙをプラス１して、ステップＳ８１０で変数Ｙがこのページの前景ドキュメントの総数αを越えたか否かを判定し、越えていなければステップＳ８０４に戻って重なりチェックを繰り返す。変数Ｙがこのページの前景ドキュメントの総数αを越えた場合は、ステップＳ８１１で変数Ｘをプラス１して、ステップＳ８１２で変数Ｘがこのページの前景ドキュメントの総数αを越えたか否かを判定し、越えていなければステップＳ８０２に戻って重なりチェックを繰り返す。変数Ｘがこのページの前景ドキュメントの総数αを越えた場合は、このページの全ての前景ドキュメントについて重なりか有るか否かをチェックしたので、処理を終了する。
【０１００】
＜重なりチェックの方法＞
上記図１２の例では、１ページの中で１つの背景に対して２つのバリアブルデータ（前景データ）が差し込まれるが、この２つのデータ（前景データ）がお互いに重なっていないかというチェックを行う。その方法の一例を以下に示す。
【０１０１】
各ドキュメントの中には幅および高さ情報が格納されている。したがって、それぞれのドキュメントの幅および高さ情報を取得してきて、それぞれの配置位置とその幅および高さの情報からお互いに重なりがないかどうかのチェックを行う。
【０１０２】
具体的にバリアブルデータ（前景データ）１への配置位置を（Ｘ1，Ｙ1）バリアブルデータ（前景データ）２の配置位置を（Ｘ2，Ｙ2）だとして、バリアブルドキュメント（前景ドキュメント）１の幅をＶＸ1、高さをＶＹ1とすると、以下の条件のいづれかに当てはまるときに重なっていると判定する。
(1)  X1＜X2、Y1＜Y2のとき
X1+VX1＞X2、かつY1+VY1＞Y2
(2)  X1＜X2、Y1＞Y2のとき
X1+VX1＞X2、かつY2+VY2＞Y1
(3)  X1＞X2、Y1＜Y2のとき
X2+VX2＞X1、かつY1+VY1＞Y2
(4)  X1＞X2、Y1＞Y2のとき
X2+VX2＞X1、かつY2+VY2＞Y1
＜本実施形態のプリフライトチェック結果の表示例＞
図１１は、図６のステップＳ６０８、Ｓ６１４、Ｓ６１９において生成されたプリフライトチェック結果からエラーを集めた警告情報を表示する画面の例である。図１１は、ユーザインターフェース画面の「ワーニング情報」タブを選択することで表示される。なお、他の「文書情報」「カラー情報」「フォント情報」「イメージ情報」「フォーマット情報」についての図示及び説明は省く。
【０１０３】
図１１では、まず、（１）背景ドキュメントに指定されたフォントがプリントサーバには存在しないこと、そしてフォントをインストールするかあるいは代替えフォントを指定するか、フォントを変更するか、いずれかの対応をとるようにオペレータに対するメッセージを表示している。これに対してオペレータは、編集ボタン９０１を押してフォントを入れ替えることができる。あるいは、オペレーティングシステムなどにより提供された機能を用いて、フォントをインストールしたり、代替フォントを指定するなどの対応をすることができる。
【０１０４】
次に、（２）前景ドキュメントに指定された解像度でプリント可能なプリンタが存在しないこと、そしてプリンタで可能な解像度でプリントするか、可能な解像度に変更するか、他のプリントサービスシステムにプリント先を切り替えるか、いずれかの対応をとるようにオペレータに対するメッセージを表示している。
【０１０５】
次に、（３）７ページの前景ドキュメントに重なる部分があること、そしてそのままプリントするか、前景ドキュメントの配置を変更するか、いずれかの対応をとるようにオペレータに対するメッセージを表示している。
【０１０６】
次に、（４）９ページの前景ドキュメントに重なる部分があること、そしてそのままプリントするか、サーバ側の調整にまかせるか、前景ドキュメントの配置を変更するか、いずれかの対応をとるようにオペレータに対するメッセージを表示している。
【０１０７】
このほか、オペレータはプレビューボタン９０２を押して出力されるドキュメントのプレビュー画像を表示したり、ファイル出力ボタン９０３を押して、プリフライトチェック中に一時的に作成されたプリフライトチェック結果ファイル、フォント情報照合ファイル、カラー情報照合ファイル、イメージ情報照合ファイル、ドキュメント重なり照合ファイルを、全てあるいは選択的に一時的ではない保存用のファイルとして保存できる。もちろん、これら一時ファイルの構成は本実施形態に例示した構成に限らず、それらにより保存される内容が保たれるものであれば、どのように構成しても良い。
【０１０８】
図１１の表示の後のオペレータの対処の一例として、置換機能について具体的に説明する。文書で指定されたフォントが出力環境（コンピュータやプリンタ）に存在しない場合、図１１の警告画面を表示させ、図１１の編集ボタン９０１がユーザにより押されると、（１）Serpentine-Boldを他の書体に置き換えますか？という画面を表示させ、出力環境に存在する選択可能書体一覧（たとえば１.Arial、２．Century、３．Courier、４．Dutch、５．Swiss）を表示させ、出力環境に存在しない文書で指定されたフォント（Serpentine-Bold）を、表示された出力環境に存在する選択可能一覧からユーザにより指定されたフォント（たとえば１.Arial）に置き換える処理を行なう。
【０１０９】
ここではその他の対処について説明はしないが、クライアントパソコンX, Y、各サーバWS, FS, PS、印刷拠点パソコンZ、プリンタA、のそれぞれの処理機能に従って、種々の対応処置が可能である。
【０１１０】
尚、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、プリンタなど）から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【０１１１】
又、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。又、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（OS）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１３】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１１４】
【図１】本実施形態のドキュメント印刷システムのシステム構成例を示す図である。
【図２】パソコン及びサーバの概略構成例を示す図である。
【図３】本実施形態の処理を実行する際のパソコン及びサーバ内のＲＡＭ上のメモリマップ例を示す図である。
【図４】プリンタの概略構成例を示す図である。
【図５】ワークフロー上で本実施形態のプリフライトチェックが実行される例を示す図である。
【図６】本実施形態のドキュメント印刷システムでのデータの流れの例を示す図である。
【図７】本実施形態のバリアブルデータのプリフライトチェックの全体の流れを示すフローチャートである。
【図８】図７のＳ６０２の詳細な手順例を示すフローチャートである。
【図９】図７のＳ６０６又はＳ６１２の詳細な手順例を示すフローチャートである。
【図１０】図７のＳ６１７の詳細な手順例を示すフローチャートである。
【図１１】本実施形態のパソコン及びサーバでのプリフライトチェック結果の表示例を示す図である。
【図１２】ＰＰＭＬデータの例を示す図である。
【図１】
2006172203.tif 000003
【図２】
2006172203.tif 000004
【図３】
2006172203.tif 000005
【図４】
2006172203.tif 000006
【図５】
2006172203.tif 000007
【図６】
2006172203.tif 000008
【図７】
2006172203.tif 000009
【図８】
2006172203.tif 000010
【図９】
2006172203.tif 000011
【図１０】
2006172203.tif 000012
【図１１】
2006172203.tif 000013
【図１２】
2006172203.tif 000014