(57)【要約】【課題】印刷データにおける印刷設定データに対して、書式に依存せずに評価を行うことができる情報処理装置、印刷データ評価方法およびプログラムを提供する。【解決手段】管理部１５１は、入力した印刷設定の情報と、印刷対象となる文書データまたは画像データ等とから印刷データを生成し、変換部１５３は、管理部１５１から受けた印刷データのＪＤＦ部から、印刷設定値を示す部分を抽出して中間データに変換し、比較部１５５は、変換部１５３から受けた中間データに記述された印刷設定値が、管理部１５１から受けた期待値データに記述された期待される印刷設定値であるか否かを比較し、そして、管理部１５１は、比較部１５５による比較結果を含む評価結果を出力する。【選択図】図９
2015011682.tif 000002
【特許請求の範囲】
【請求項１】
印刷データに含まれる印刷設定データを、所定のデータ形式で記述される中間データに変換する変換手段と、
前記中間データと、前記データ形式で記述された比較対象データとを比較する比較手段と、
前記比較手段による比較結果を前記印刷設定データに対する評価結果として出力する出力手段と、
を備える情報処理装置。
【請求項２】
前記印刷設定データは、印刷設定値を示す部分と、印刷設定値を示さない部分とを含み、
前記変換手段は、前記印刷設定データから前記印刷設定値を示す部分を抽出し、前記印刷設定値を示す部分から前記中間データに変換する請求項１に記載の情報処理装置。
【請求項３】
前記変換手段は、前記印刷設定データの記述に基づいて、前記データ形式として階層構造を有する形式で前記中間データに変換する請求項１または２に記載の情報処理装置。
【請求項４】
前記変換手段は、前記印刷設定データにおける前記印刷設定値を示す部分として、印刷設定の参照を表現する記述を、前記中間データにおいて前記階層構造を有する記述に変換する請求項３に記載の情報処理装置。
【請求項５】
前記変換手段は、複数の前記印刷データに含まれる前記印刷設定データをそれぞれ複数の前記中間データに変換し、
前記比較手段は、複数の前記中間データの印刷設定値がそれぞれ一致するか否かを比較する請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
前記変換手段は、異なる書式で記述された複数の前記印刷設定データから、共通の書式の前記中間データに変換する請求項５に記載の情報処理装置。
【請求項７】
前記比較手段は、前記中間データの印刷設定値が、前記比較対象データとしての期待値が記述された期待値データにおける前記期待値と一致するか否かを比較する請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項８】
前記中間データの印刷設定値が、前記中間データの形式で記述された範囲データに記述された所定範囲内であるか否かを判定する範囲判定手段をさらに備え、
前記出力手段は、前記範囲判定手段による判定結果を前記印刷設定データに対する前記評価結果として出力する請求項１〜７のいずれか一項に記載の情報処理装置。
【請求項９】
前記印刷データの構文およびフォーマットが正しいか否かを検査する検査手段をさらに備え、
前記出力手段は、前記検査手段による検査結果を前記印刷データに対する前記評価結果として出力する請求項１〜８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記出力手段が出力する前記評価結果を表示する表示手段をさらに備える請求項１〜９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記出力手段は、前記評価結果を評価結果データとして出力し、
前記評価結果データを記憶する記憶手段をさらに備える請求項１〜１０のいずれか一項に記載の情報処理装置。
【請求項１２】
印刷データに含まれる印刷設定データを、所定のデータ形式で記述される中間データに変換する変換ステップと、
前記中間データと、前記データ形式で記述された比較対象データとを比較する比較ステップと、
前記比較ステップにおける比較結果を前記印刷設定データに対する評価結果として出力する出力ステップと、
を有する印刷データ評価方法。
【請求項１３】
印刷データに含まれる印刷設定データを、所定のデータ形式で記述される中間データに変換する変換手段と、
前記中間データと、前記データ形式で記述された比較対象データとを比較する比較手段と、
前記比較手段による比較結果を前記印刷設定データに対する評価結果として出力する出力手段と、
をコンピュータで実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、印刷データ評価方法およびプログラムに関する。
【背景技術】
【０００２】
プリンタまたは複合機等の画像形成装置が印刷を行う際、画像形成装置に送られる印刷データに含まれる印刷設定は、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ：ページ記述言語）またはＪＤＦ（Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔ）で記述される。そして、画像形成装置は、印刷データの印刷設定の内容を示す記述から印刷設定値を読み取り、印刷設定値に基づいて、記録紙に印刷出力する。印刷データを記述するＰＤＬおよびＪＤＦのデータ形式は、様々な種類が存在し、それぞれ書式が全く異なる。プロダクションプリンティング分野においては、昨今、特にＪＤＦへの対応が求められている。
【０００３】
ＪＤＦは、書式が複雑であり、画像形成装置への出力の際にはその書式を考慮しなければならない。したがって、ＪＤＦで記述された印刷データを、従来の印刷システムにも対応できるように、ＰｏｓｔＳｃｒｉｐｔ（登録商標）またはＰＣＬ（Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌ  Ｌａｎｇｕａｇｅ）等のＰＤＬに変換する技術が提案されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上述のようにＪＤＦは、書式が複雑であり、画像形成装置への出力の際にはその書式を考慮しなければならないので、ＪＤＦの書式に従って印刷設定データを取得し、評価する必要がある。しかしながら、ＪＤＦで記述された印刷設定データを評価するためには、複雑で柔軟性のある書式を正しく理解して、印刷設定データに対する厳密な評価アルゴリズムを構築する必要がある。この際、ＪＤＦで記述された印刷設定データに対する評価アルゴリズムを構築しても、この評価アルゴリズムは、ＪＤＦで記述された異なる書式の印刷設定データおよびＰＤＬ等の異なる書式で記述された印刷設定データに対して転用できないという問題点があった。
【０００５】
また、特許文献１に記載された発明は、単にＪＤＦで記述された印刷データを、ＰＤＬに変換しているだけなので、上述のように印刷設定データの評価に使用することはできない。さらに、ＪＤＦは書式に柔軟性があるため、同じ印刷設定の印刷データを出力しようとした場合でも、出力するＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の情報処理装置によって、ＪＤＦで記述された印刷設定データの書式が異なる場合が多い。また、情報処理装置によっては、ＪＤＦではなく、例えばＰＤＬ等のように異なる書式で記述された印刷設定データの場合もある。したがって、同じ印刷設定の印刷データを比較しようとした場合でも、異なる情報処理装置から出力される印刷設定データは書式が異なる場合があるため、単純なテキストの比較では、印刷設定データ間の差分を検出できないという問題点もあった。
【０００６】
本発明は、上記に鑑みてなされたものであって、印刷データにおける印刷設定データに対して、書式に依存せずに評価を行うことができる情報処理装置、印刷データ評価方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、印刷データに含まれる印刷設定データを、所定のデータ形式で記述される中間データに変換する変換手段と、前記中間データと、前記データ形式で記述された比較対象データとを比較する比較手段と、前記比較手段による比較結果を前記印刷設定データに対する評価結果として出力する出力手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、印刷データにおける印刷設定データに対して、書式に依存せずに評価を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施の形態の印刷システムの構成の一例を示す図である。
【図２】図２は、第１の実施の形態の情報処理装置の構成の一例を示すブロック図である。
【図３】図３は、印刷データの構成の一例を示す図である。
【図４】図４は、印刷データのＪＤＦ部およびＪＤＦ部の印刷設定関連部分に基づいて変換された中間データの例を示す図である。
【図５】図５は、印刷データのＪＤＦ部およびＪＤＦ部の印刷設定関連部分に基づいて変換された階層構造をもつ中間データの例を示す図である。
【図６】図６は、第１の実施の形態の情報処理装置の印刷データ評価ツールの機能の概要を説明する図である。
【図７】図７は、第１の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の概要を示すフローチャートである。
【図８】図８は、第１の実施の形態の情報処理装置において中間データと期待値データとの比較結果の一例を示す図である。
【図９】図９は、第１の実施の形態の情報処理装置における制御部の構成の一例を示すブロック図である。
【図１０】図１０は、第１の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の詳細を示すフローチャートである。
【図１１】図１１は、第２の実施の形態の情報処理装置における制御部の構成の一例を示すブロック図である。
【図１２】図１２は、第２の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の詳細を示すフローチャートである。
【図１３】図１３は、第２の実施の形態の情報処理装置において２種類のＪＤＦ部から変換された中間データを比較する動作を説明する図である。
【図１４】図１４は、複数の書式のＪＤＦ部のそれぞれについて、他の書式のＪＤＦ部に変換する状態を示す図である。
【図１５】図１５は、第２の実施の形態の情報処理装置において複数の書式のＪＤＦ部それぞれから中間データに変換する状態を示す図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照しながら、本発明に係る情報処理装置、印刷データ評価方法およびプログラムの実施の形態を詳細に説明する。また、以下の実施の形態によって本発明が限定されるものではなく、以下の実施の形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施の形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換および変更を行うことができる。
【００１１】
（第１の実施の形態）
＜印刷システムの全体構成＞
図１は、第１の実施の形態の印刷システムの構成の一例を示す図である。図２は、第１の実施の形態の情報処理装置の構成の一例を示すブロック図である。図１および２を参照しながら、本実施の形態の印刷システムの構成について説明する。
【００１２】
図１に示すように、本実施の形態の印刷システム６００は、情報処理装置の一例であるＰＣ１００と、画像形成装置の一例であるプリンタ２００と、を含んで構成されている。ＰＣ１００とプリンタ２００とは、通信ケーブル２５０によって通信可能に接続されている。ＰＣ１００は、図２において後述する表示部１０４に表示された印刷設定画面１２０においてユーザが操作した印刷設定内容に基づいて生成した印刷データをプリンタ２００に送信する。プリンタ２００は、受信した印刷データに基づいて、記録紙に印刷出力する。
【００１３】
図２に示すように、ＰＣ１００は、ＰＣ本体１０１と、通信インターフェース１０２と、操作部１０３と、表示部１０４（表示手段）と、記憶部１０５と、外部記憶装置１０６（記憶手段）と、制御部１０７と、を備えている。上記の各部は、バス１０８によって接続され、互いにデータの送受信が可能となっている。
【００１４】
通信インターフェース１０２は、通信ケーブル２５０を介して、プリンタ２００と通信する装置である。通信インターフェース１０２は、例えば、ＩＥＥＥ１２８４に準拠したパラレルインターフェースである。この場合、ＰＣ１００とプリンタ２００とを接続する通信ケーブル２５０は、パラレルケーブルである。
【００１５】
なお、通信インターフェース１０２は、パラレルインターフェースに限定されるものではなく、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）２．０等のシリアルバス規格に準拠したＵＳＢインターフェースであってもよい。この場合、通信ケーブル２５０は、ＵＳＢケーブルとすればよい。また、通信インターフェース１０２は、イーサネット（登録商標）に準拠したＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはインターネット等のネットワークに接続するネットワークインターフェースであってもよい。具体的には、通信インターフェース１０２は、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等の通信装置によって実現される。この場合、通信ケーブル２５０は、ＬＡＮケーブルとすればよい。
【００１６】
操作部１０３は、ユーザがＰＣ１００に対して各種の情報を入力するための装置であり、ＰＣ本体１０１の外部からＰＣ本体１０１に接続される。操作部１０３は、例えば、キーボード、タッチパネル、マウス等のポインティングデバイス装置、または音声入力装置等によって実現される。
【００１７】
表示部１０４は、ユーザに対して、各種のドキュメント、設定画面、選択画面およびメッセージ等を表示する装置であり、ＰＣ本体１０１の外部からＰＣ本体１０１に接続される。表示部１０４は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）、液晶ディスプレイまたは有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等によって実現される。
【００１８】
記憶部１０５は、ＰＣ１００で実行される各種プログラムおよびＰＣ１００で行われる各種処理に使用されるデータ等を記憶する装置である。記憶部１０５は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）およびＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の記憶装置によって実現される。
【００１９】
外部記憶装置１０６は、ドキュメントデータ、画像データ、プログラムおよびフォントデータ等を蓄積して記憶する記憶装置である。外部記憶装置１０６は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、または光磁気ディスク（ＭＯ：Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｄｉｓｋ）等の記憶装置によって実現される。
【００２０】
制御部１０７は、ＰＣ１００の各部の動作を制御する装置である。制御部１０７は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）およびＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等で実現される。制御部１０７は、具体的には、外部記憶装置１０６に記憶されたＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）および各種アプリケーションソフトウェアを、記憶部１０５のＲＡＭを作業領域として実行することにより、各種の機能を実現する。
【００２１】
プリンタ２００は、通信インターフェース１０２を介してＰＣ１００に接続されており、制御部１０７から送信される印刷データに基づいて、記録紙に印刷出力する装置である。
【００２２】
＜印刷データの構成＞
図３は、印刷データの構成の一例を示す図である。図３を参照しながら、印刷データの構成について説明する。
【００２３】
上述したように、ＰＣ１００は、ユーザによって操作および選択された印刷設定内容に基づいて、印刷データを生成し、プリンタ２００に送信する。図３に示すように、ＰＣ１００によって生成される印刷データ３００は、メッセージ部３１０と、ＪＤＦ部３２０と、データ部３３０とを含んで構成されている。具体的には、ＰＣ１００の制御部１０７によって実行されるプリンタドライバによって、印刷設定内容に基づいて、印刷データ３００が生成される。印刷データ３００は、メッセージ部３１０、ＪＤＦ部３２０およびデータ部３３０の３種類の記述が、例えば、ＭＩＭＥ（Ｍｕｌｔｉｐｕｒｐｏｓｅ  Ｉｎｔｅｒｎｅｔ  Ｍａｉｌ  Ｅｘｔｅｎｓｉｏｎｓ）フォーマットによってパッキングされて１つのデータとして生成される。
【００２４】
メッセージ部３１０は、ＪＭＦ（Ｊｏｂ  Ｍｅｓｓａｇｉｎｇ  Ｆｏｒｍａｔ）によって記述された部分である。メッセージ部３１０は、問い合わせ（Ｑｕｅｒｙ）、コマンド（Ｃｏｍｍａｎｄ）、応答（Ｒｅｓｐｏｎｓｅ）、結果通知（Ａｃｋｎｏｗｌｅｄｇｅ）およびシグナル（Ｓｉｇｎａｌ）等のメッセージをサポートしたフォーマットである。
【００２５】
ＪＤＦ部３２０は、印刷設定の内容を含んだ印刷設定データであり、ＪＤＦによって記述された部分である。ＪＤＦ部３２０は、後述するように、図６に示す印刷データ評価ツール５００（図９においては変換部１５３）によって、印刷設定に関する情報で構成された中間的なデータ（以下、中間データという）に変換される。
【００２６】
データ部３３０は、印刷対象となる文書データまたは画像データ等であり、例えば、ＰｏｓｔＳｃｒｉｐｔによって記述された部分である。
【００２７】
なお、印刷データの構成および印刷設定データのデータ形式は、印刷データを生成するプリンタドライバによって異なるものであり、図３に示す印刷データ３００の構成は一例を示すものである。例えば、ＪＤＦ部３２０は、ＪＤＦによって記述された印刷設定データであるが、ＰＤＬその他の書式によって記述されるものとしてもよい。以下の説明においては、印刷データの印刷設定データに相当する部分は、ＪＤＦで記述されたＪＤＦ部であるものとして説明する。
【００２８】
＜印刷設定データおよび中間データ＞
図４は、印刷データのＪＤＦ部およびＪＤＦ部の印刷設定関連部分に基づいて変換された中間データの例を示す図である。図５は、印刷データのＪＤＦ部およびＪＤＦ部の印刷設定関連部分に基づいて変換された階層構造をもつ中間データの例を示す図である。図４および５を参照しながら、印刷データのＪＤＦ部（印刷設定データ）およびそのＪＤＦ部の印刷設定関連部分に基づいて変換された中間データについて説明する。
【００２９】
図４（ａ）に示すＪＤＦ部３２０ａは、ＪＤＦによって記述された印刷データの印刷設定データの例である。ＪＤＦ部３２０ａの記述のうち、印刷設定関連部分３２１ａおよび３２２ａは、印刷設定の内容を示す記述である。
【００３０】
図４（ｂ）に示す中間データ３５０ａは、後述するように、図６に示す印刷データ評価ツール５００（図９に示す変換部１５３）によって、印刷設定関連部分３２１ａおよび３２２ａに基づいて変換された印刷設定に関する情報で構成されたデータである。具体的には、ＪＤＦ部３２０ａの印刷設定関連部分３２１ａにおいて、例えば、「Ｓｉｄｅｓ＝“ＯｎｅＳｉｄｅｄＦｒｏｎｔ”」という記述は、中間データ３５０ａの「Ｄｕｐｌｅｘ  ：ＯＦＦ」という記述に変換され、印刷設定として片面印刷であることを示す。また、ＪＤＦ部３２０ａの印刷設定関連部分３２２ａにおいて、例えば、「ＳｉｚｅＰｏｌｉｃｙ＝“ＦｉｔＴｏＰａｇｅ”」という記述は、中間データ３５０ａの「ＳｉｚｅＰｏｌｉｃｙ  ：ＦｉｔＴｏＰａｇｅ」という記述に変換される。
【００３１】
図５は、印刷データのＪＤＦ部３２０ｂにおける記述である印刷設定関連部分３２１ｂ〜３３２ｂに基づいて、階層構造を有する中間データ３５０ｂに変換された例を示す図である。表示部１０４に表示される印刷設定画面（例えば、図１に示す印刷設定画面１２０）において、例えば、図５（ａ）に示す印刷設定４００の内容に設定がされたものとする。ＰＣ１００の制御部１０７は、印刷設定４００の内容に基づいて、図５（ｂ）に示すＪＤＦ部３２０ｂを含む印刷データを生成する。図５（ｃ）に示す中間データ３５０ｂは、後述するように、図６に示す印刷データ評価ツール５００（図９に示す変換部１５３）によって、印刷設定関連部分３２１ｂ〜３３２ｂに基づいて変換された印刷設定に関する情報で構成されたデータである。また、中間データ３５０ｂにおける「／」は、階層構造を示す記述である。したがって、中間データは階層構造を有するデータ形式とすることが可能となるので、複雑な書式を有するＪＤＦ部から変換を行っても、正確な印刷設定内容を表現することができる。
【００３２】
ＪＤＦ部３２０ｂの印刷設定関連部分３２８ｂの「ＲｕｎＩｎｄｅｘ＝“４”」および印刷設定関連部分３２９ｂの「ｒＲｅｆ＝“Ｍｅｄｉａ１”」という記述は、「ページ５がＭｅｄｉａ１を参照する」という内容を示している。これは、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［０］／Ｍｅｄｉａ［０］」という記述に変換されて表されている。「ＳｐｅｃｉａｌＰａｇｅｓ［０］」は、ページ５に対応している。「Ｍｅｄｉａ［０］」という記述は、ＪＤＦ部３２０ｂの「Ｍｅｄｉａ１」に対応している。
【００３３】
同様に、ＪＤＦ部３２０ｂの印刷設定関連部分３３０ｂの「ＲｕｎＩｎｄｅｘ＝“６”」および印刷設定関連部分３３１ｂの「ｒＲｅｆ＝“Ｍｅｄｉａ２”」という記述は、「ページ７がＭｅｄｉａ２を参照する」という内容を示している。これは、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［１］／Ｍｅｄｉａ［１］」という記述に変換されて表されている。「ＳｐｅｃｉａｌＰａｇｅｓ［１］」は、ページ７に対応している。「Ｍｅｄｉａ［１］」という記述は、ＪＤＦ部３２０ｂの「Ｍｅｄｉａ２」に対応している。
【００３４】
印刷設定関連部分３２１ｂの「Ｒｏｔａｔｅ＝“Ｒｏｔａｔｅ９０”ＲｕｎＩｎｄｅｘ＝“６”」という記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［１］／Ｒｏｔａｔｅ：９０」という記述に変換されている。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［１］」（ページ７に相当）においてページを９０度に回転するという印刷設定を階層構造によって示している。
【００３５】
ＪＤＦ部３２０ｂの４〜６行目は、「Ｍｅｄｉａ１」の印刷設定の内容を定義している記述である。具体的には、印刷設定関連部分３２２ｂの「ＩＤ＝“Ｍｅｄｉａ１”」という記述は、印刷設定の内容を定義するエレメントが「Ｍｅｄｉａ１」であることの宣言を示す。印刷設定関連部分３２３ｂの「ｉｎｆｏｐｒｉｎｔ：ＭｅｄｉａＴｙｐｅＭａｎｕａｌＭｏｄｅ＝“Ｓｔａｔｉｏｎｅｒｙ”」および印刷設定関連部分３２４ｂの「ＬｏｃａｔｉｏｎＮａｍｅ＝“Ｔｒａｙ−３”」という記述が、「Ｍｅｄｉａ１」に定義された実際の印刷設定の内容である。上述の参照設定の記述である印刷設定関連部分３２８ｂおよび３２９ｂ、ならびに印刷設定関連部分３２２ｂおよび３２３ｂの記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［０］／Ｍｅｄｉａ［０］／ＭｅｄｉａＴｙｐｅ：Ｓｔａｔｉｏｎｅｒｙ」という記述に変換される。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［０］」（ページ５に相当）における印刷設定として、「Ｍｅｄｉａ［０］」（「Ｍｅｄｉａ１」に相当）で定義した用紙種類が便せんであるという印刷設定を参照することを階層構造によって示している。また、印刷設定関連部分３２８ｂ、３２９ｂ、３２２ｂおよび３２４ｂの記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［０］／Ｍｅｄｉａ［０］／Ｔｒａｙ：Ｔｒａｙ−３」という記述に変換される。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［０］」における印刷設定として、「Ｍｅｄｉａ［０］」（「Ｍｅｄｉａ１」に相当）で定義した給紙トレイがトレイ３であるという印刷設定を参照することを階層構造によって示している。
【００３６】
ＪＤＦ部３２０ｂの７〜９行目は、「Ｍｅｄｉａ２」の印刷設定の内容を定義している記述である。具体的には、印刷設定関連部分３２５ｂの「ＩＤ＝“Ｍｅｄｉａ２”」という記述は、印刷設定の内容を定義するエレメントが「Ｍｅｄｉａ２」であることの宣言を示す。印刷設定関連部分３２６ｂの「ｉｎｆｏｐｒｉｎｔ：ＭｅｄｉａＴｙｐｅＭａｎｕａｌＭｏｄｅ＝“Ｌａｂｅｌｓ”」および印刷設定関連部分３２７ｂの「ＬｏｃａｔｉｏｎＮａｍｅ＝“ＡｕｔｏＳｅｌｅｃｔ”」という記述が、「Ｍｅｄｉａ２」に定義された実際の印刷設定の内容である。上述の参照設定の記述である印刷設定関連部分３３０ｂおよび３３１ｂ、ならびに印刷設定関連部分３２５ｂおよび３２６ｂの記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［１］／Ｍｅｄｉａ［１］／ＭｅｄｉａＴｙｐｅ：Ｌａｂｅｌｓ」という記述に変換される。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［１］」（ページ７に相当）における印刷設定として、「Ｍｅｄｉａ［１］」（「Ｍｅｄｉａ２」に相当）で定義した用紙種類がラベル紙であるという印刷設定を参照することを階層構造によって示している。また、印刷設定関連部分３３０ｂ、３３１ｂ、３２５ｂおよび３２７ｂの記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［１］／Ｍｅｄｉａ［１］／Ｔｒａｙ：ＡｕｔｏＳｅｌｅｃｔ」という記述に変換される。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［１］」における印刷設定として、「Ｍｅｄｉａ［０］」（「Ｍｅｄｉａ１」に相当）で定義した給紙トレイが自動トレイであるという印刷設定を参照することを階層構造によって示している。
【００３７】
印刷設定関連部分３３２ｂの記述は、中間データ３５０ｂの「ＳｐｅｃｉａｌＰａｇｅｓ［０］／ＳｔａｐｌｅＴｙｐｅ：２ａｔＬｅｆｔ」という記述に変換される。この記述は、「ＳｐｅｃｉａｌＰａｇｅｓ［０］」において印刷した用紙を左側端部の２箇所にステープルによって綴じるという印刷設定を階層構造によって示している。
【００３８】
以上のように、印刷データのＪＤＦ部３２０ａおよび３２０ｂは、印刷設定値を示す部分が抽出され、中間データ３５０ａおよび３５０ｂのように簡易な書式である項目形式のデータに変換される。また、図５（ｂ）に示すように、ＪＤＦ部３２０ｂは、印刷設定値を示す部分として、エレメント（ＪＤＦ部３２０ｂにおける「Ｍｅｄｉａ１」および「Ｍｅｄｉａ２」）の定義、および、エレメントへの参照設定を記述した部分が抽出される。そして、ＪＤＦ部３２０ｂは、エレメントの定義およびエレメントへの参照設定の記述に基づいて、中間データ３５０ｂのような階層構造を有する中間データに変換される。
【００３９】
すなわち、後述するように、図６に示す印刷データ評価ツール５００（図９に示す変換部１５３）は、印刷データのＪＤＦ部において、まず、少なくとも「印刷設定値を直接示す部分」、「エレメントの定義および参照等の印刷設定値を間接的に示す部分」および「印刷設定値を示さない部分」を区別して抽出する。ここで、「印刷設定値を直接示す部分」および「エレメントの定義および参照等の印刷設定値を間接的に示す部分」を、「印刷設定値を示す部分」というものとする。「印刷設定値を直接示す部分」は、ＪＤＦ部３２０ａの印刷設定関連部分３２１ａおよび３２２ａ、ならびに、ＪＤＦ部３２０ｂの印刷設定関連部分３２１ｂ、３２３ｂ、３２４ｂ、３２６ｂ、３２７ｂおよび３３２ｂが該当する。「エレメントの定義および参照等の印刷設定値を間接的に示す部分」は、ＪＤＦ部３２０ｂの印刷設定関連部分３２２ｂ、３２５ｂおよび３２８ｂ〜３３１ｂが該当する。そして、印刷データ評価ツール５００（変換部１５３）は、印刷設定データであるＪＤＦ部から、印刷設定値を示す部分を抽出し、書式が簡易な中間データに変換する。
【００４０】
なお、中間データにおける階層構造を「／」によって示すものとしたが、これに限定されるものではなく、例えば、「￥」または「＼」等の他の文字または記号によって階層構造を示すものとしてもよい。
【００４１】
＜中間データの変換および評価の動作概要＞
図６は、第１の実施の形態の情報処理装置の印刷データ評価ツールの機能の概要を説明する図である。図７は、第１の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の概要を示すフローチャートである。図８は、第１の実施の形態の情報処理装置において中間データと期待値データとの比較結果の一例を示す図である。図６〜８を参照しながら、本実施の形態のＰＣ１００における印刷データから中間データへの変換動作および中間データに対する評価動作の概要を説明する。図７に示すフローチャートにおいては、印刷データから中間データへの変換動作および中間データに対する評価動作の主体が、ＰＣ１００の制御部１０７によって実行されるアプリケーションである印刷データ評価ツール５００であるものとして説明する。
【００４２】
＜＜ステップＳ１＞＞
まず、印刷データ評価ツール５００は、プリンタドライバによって生成された評価対象となる印刷データ３００を入力する。また、印刷データ評価ツール５００は、中間データ形式によって記述された評価用データである範囲データ３６０および期待値データ３６１（比較対象データ）を入力する。印刷データ３００は、上述のように、メッセージ部３１０、ＪＤＦ部３２０およびデータ部３３０を含んで構成されているものとする。範囲データ３６０は、印刷動作の主体であるプリンタ２００またはプリンタドライバの仕様に基づく印刷設定値として許容可能な数値範囲を示した中間データ形式のデータである。期待値データ３６１は、評価対象の印刷データ３００に期待する印刷設定値を記述した中間データ形式のデータである。そして、ステップＳ２へ進む。
【００４３】
＜＜ステップＳ２＞＞
印刷データ評価ツール５００は、入力した印刷データ３００の全体の記述に対して、構文およびフォーマットの検査を実行する。具体的には、印刷データ評価ツール５００は、印刷データ３００の全体の記述が定められた仕様に従った書式で記述されているか否かを検査する。印刷データ評価ツール５００は、構文およびフォーマットの検査の内容として、例えば、印刷データ３００のテキスト形式の記述のうち、各行における改行コードが、仕様で定められた改行コードと一致するか否かを検査する。このとき、印刷データ評価ツール５００は、仕様で定められた改行コードが「ＣＲ（キャリッジリターン）＋ＬＦ（ラインフィード）」であり、印刷データ３００の特定の行における改行コードが「ＣＲ」である場合、構文エラーと判定する。そして、ステップＳ３へ進む。
【００４４】
＜＜ステップＳ３＞＞
印刷データ評価ツール５００は、印刷データ３００のＪＤＦ部３２０から、印刷設定値を示す部分を抽出する。そして、印刷データ評価ツール５００は、印刷設定値を示す部分から中間データ３５０に変換する。そして、ステップＳ４へ進む。
【００４５】
＜＜ステップＳ４＞＞
印刷データ評価ツール５００は、中間データ３５０に記述された印刷設定値が、入力した範囲データ３６０に記述された印刷設定値の許容範囲内であるか否かを判定する。そして、ステップＳ５へ進む。
【００４６】
＜＜ステップＳ５＞＞
印刷データ評価ツール５００は、中間データ３５０に記述された印刷設定値が、入力した期待値データ３６１に記述された期待される印刷設定値であるか否かを比較する。具体的に、印刷データ評価ツール５００は、図８に示すように、ＪＤＦ部３２０ｃを中間データ３５０ｃに変換し、中間データ３５０ｃと、入力した期待値データ３６１ｃとを比較する場合を考える。印刷データ評価ツール５００は、中間データ３５０ｃの印刷設定値である「Ｎ−ｕｐ：１−ｕｐ」が、期待値データ３６１ｃに記述された印刷設定値である「Ｎ−ｕｐ：２−ｕｐ」と異なるので、比較結果３７０に示すように「比較結果ＮＧ」と判定する。同様に、印刷データ評価ツール５００は、中間データ３５０ｃの印刷設定値である「Ｒｏｔａｔｅ：２７０」が、期待値データ３６１ｃに記述された印刷設定値である「Ｒｏｔａｔｅ：９０」と異なるので、比較結果３７０に示すように「比較結果ＮＧ」と判定する。同様に、印刷データ評価ツール５００は、中間データ３５０ｃの印刷設定値である「Ｄｕｐｌｅｘ：ＯＦＦ」が、期待値データ３６１ｃに記述された印刷設定値である「Ｄｕｐｌｅｘ：ＯＮ」と異なるので、比較結果３７０に示すように「比較結果ＮＧ」と判定する。また、印刷データ評価ツール５００は、中間データ３５０ｃの印刷設定値である「ＳｉｚｅＰｏｌｉｃｙ：ＦｉｔＴｏＰａｇｅ」が、期待値データ３６１ｃに記述された印刷設定値と同一なので、比較結果３７０に示すように「比較結果ＯＫ」と判定する。そして、ステップＳ６へ進む
【００４７】
＜＜ステップＳ６＞＞
印刷データ評価ツール５００は、印刷データ３００に対する構文およびフォーマットの検査結果、ならびに中間データ３５０に対する範囲判定結果および比較結果を集約し、集約した内容である評価結果を評価結果ファイル３８０として出力する。
【００４８】
以上の流れによって、印刷データ評価ツール５００によって印刷データ３００に対する印刷設定内容の評価動作が実行される。なお、図７に示すように、ステップＳ１〜Ｓ６における各処理が直列に実行されるものとして説明したが、これに限定されるものではなく、印刷データ評価ツール５００は、並列に実行可能な処理は並列に実行されるものとしてもよい。例えば、ステップＳ２の構文およびフォーマットの検査の処理と、ステップＳ３のＪＤＦ部３２０から中間データ３５０への変換処理とは、並列に実行が可能である。また、ステップＳ４の中間データ３５０に対する範囲判定処理と、ステップＳ５の比較処理とは、並列に実行が可能である。
【００４９】
また、図６〜８における印刷データ評価ツール５００は、プリンタドライバと独立しているものとして説明したが、上述の印刷データ評価ツール５００の機能がプリンタドライバに組み込まれているものとしてもよい。
【００５０】
また、中間データを評価するための評価用データとして範囲データ３６０および期待値データ３６１を用いたが、これに限定されるものではなく、その他の評価用データを用いるものとしてもよい。
【００５１】
＜中間データの変換および評価の動作詳細＞
図９は、第１の実施の形態の情報処理装置における制御部の構成の一例を示すブロック図である。図１０は、第１の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の詳細を示すフローチャートである。図９および１０を参照しながら、本実施の形態のＰＣ１００の制御部１０７のブロック図、ならびに制御部１０７における印刷データから中間データへの変換動作および中間データに対する評価動作の詳細を説明する。
【００５２】
まず、図９を参照しながら制御部１０７のブロック構成について説明する。図９に示すように、制御部１０７は、ブロック構成の一例として、管理部１５１（出力手段）と、検査部１５２（検査手段）と、変換部１５３（変換手段）と、範囲判定部１５４（範囲判定手段）と、比較部１５５（比較手段）とを備えている。
【００５３】
管理部１５１は、操作部１０３からユーザが操作した印刷設定の情報を入力し、印刷設定の情報と、印刷対象となる文書データまたは画像データ等とから印刷データを生成し、印刷データを検査部１５２および変換部１５３へ渡す。ここで、印刷データは、例えば、図６に示す印刷データ３００のように構成されているものとする。管理部１５１は、外部記憶装置１０６から範囲データ３６０および期待値データ３６１（図６参照）を受信する。管理部１５１は、受信した範囲データ３６０を範囲判定部１５４へ渡し、期待値データ３６１を比較部１５５へ渡す。また、管理部１５１は、検査部１５２から受けた印刷データ３００に対する構文およびフォーマットの検査結果、範囲判定部１５４から受けた中間データ３５０に対する範囲結果、ならびに比較部１５５から受けた中間データ３５０に対する比較結果を集約する。そして、管理部１５１は、集約した内容である評価結果を表示部１０４に送信して表示させる。また、管理部１５１は、評価結果から評価結果ファイル３８０（評価結果データ）を生成し、外部記憶装置１０６に送信して記憶させる。
【００５４】
検査部１５２は、管理部１５１から受けた印刷データ３００の全体の記述に対して、構文およびフォーマットの検査を行う。また、検査部１５２は、印刷データ３００に対する構文およびフォーマットの検査結果を管理部１５１へ渡す。
【００５５】
変換部１５３は、管理部１５１から受けた印刷データ３００のＪＤＦ部３２０から、印刷設定値を示す部分を抽出する。そして、変換部１５３は、印刷設定値を示す部分から中間データ３５０に変換し、中間データ３５０を範囲判定部１５４および比較部１５５へ渡す。
【００５６】
範囲判定部１５４は、変換部１５３から中間データ３５０を受ける。範囲判定部１５４は、管理部１５１から範囲データ３６０を受ける。範囲判定部１５４は、中間データ３５０に記述された印刷設定値が、範囲データ３６０に記述された印刷設定値の許容範囲内であるか否かを判定する。そして、範囲判定部１５４は、範囲判定結果を管理部１５１へ渡す。
【００５７】
比較部１５５は、変換部１５３から中間データ３５０を受ける。比較部１５５は、管理部１５１から期待値データ３６１を受ける。比較部１５５は、中間データ３５０に記述された印刷設定値が、期待値データ３６１に記述された期待される印刷設定値であるか否かを比較する。そして、比較部１５５は、比較結果を管理部１５１へ渡す。
【００５８】
なお、図６〜８で説明した印刷データ評価ツール５００の各機能は、上述の制御部１０７の管理部１５１、検査部１５２、変換部１５３、範囲判定部１５４および比較部１５５の機能に置き換えて実現されるものである。
【００５９】
次に、図１０を参照しながら、制御部１０７における印刷データ３００から中間データ３５０への変換動作および中間データ３５０に対する評価動作について説明する。
【００６０】
＜＜ステップＳ１１＞＞
管理部１５１は、操作部１０３から、ユーザが操作した印刷設定の情報、および印刷データに対する評価動作の実行コマンドを入力する。管理部１５１は、入力した印刷設定の情報と、印刷対象となる文書データまたは画像データ等とから印刷データを生成する。また、管理部１５１は、外部記憶装置１０６から中間データ形式の範囲データ３６０および期待値データ３６１を受信する。そして、ステップＳ１２へ進む。
【００６１】
＜＜ステップＳ１２＞＞
管理部１５１は、印刷データを検査部１５２および変換部１５３へ渡す。また、管理部１５１は、範囲データ３６０を範囲判定部１５４へ渡し、期待値データ３６１を比較部１５５へ渡す。そして、ステップＳ１３およびＳ１５へ進む。
【００６２】
＜＜ステップＳ１３＞＞
検査部１５２は、管理部１５１から受けた印刷データ３００の全体の記述に対して、構文およびフォーマットの検査を行う。具体的には、検査部１５２は、印刷データ３００の全体の記述が定められた仕様に従った書式で記述されているか否かを検査する。検査部１５２による検査内容の具体例は、図７のステップＳ２において上述したとおりである。このように、印刷データ３００の全体の記述に対して、構文およびフォーマットの検査を行うことによって、後述の中間データ３５０に対する評価においては検出できない印刷データ３００の記述のバグを検出することができる。そして、ステップＳ１４へ進む。
【００６３】
＜＜ステップＳ１４＞＞
検査部１５２は、印刷データ３００に対する構文およびフォーマットの検査結果を管理部１５１へ渡す。そして、ステップＳ２１へ進む。
【００６４】
＜＜ステップＳ１５＞＞
変換部１５３は、管理部１５１から受けた印刷データ３００のＪＤＦ部３２０から、印刷設定値を示す部分を抽出する。そして、変換部１５３は、印刷設定値を示す部分から中間データ３５０に変換する。そして、ステップＳ１６へ進む。
【００６５】
＜＜ステップＳ１６＞＞
変換部１５３は、変換した中間データ３５０を範囲判定部１５４および比較部１５５へ渡す。そして、ステップＳ１７およびＳ１９へ進む。
【００６６】
＜＜ステップＳ１７＞＞
範囲判定部１５４は、変換部１５３から受けた中間データ３５０に記述された印刷設定値が、管理部１５１から受けた範囲データ３６０に記述された印刷設定値の許容範囲内であるか否かを判定する。そして、ステップＳ１８へ進む。
【００６７】
＜＜ステップＳ１８＞＞
範囲判定部１５４は、中間データ３５０に対する範囲判定結果を管理部１５１へ渡す。そして、ステップＳ２１へ進む。
【００６８】
＜＜ステップＳ１９＞＞
比較部１５５は、変換部１５３から受けた中間データ３５０に記述された印刷設定値が、管理部１５１から受けた期待値データ３６１に記述された期待される印刷設定値であるか否かを比較する。そして、ステップＳ２０へ進む。
【００６９】
＜＜ステップＳ２０＞＞
比較部１５５は、中間データ３５０に対する比較結果を管理部１５１へ渡す。そして、ステップＳ２１へ進む。
【００７０】
＜＜ステップＳ２１＞＞
管理部１５１は、ステップＳ１４、Ｓ１８およびＳ２０の処理が終了後、以下の処理を行う。管理部１５１は、検査部１５２から受けた印刷データ３００に対する構文およびフォーマットの検査結果、範囲判定部１５４から受けた中間データ３５０に対する範囲結果、ならびに比較部１５５から受けた中間データ３５０に対する比較結果を集約する。そして、管理部１５１は、集約した内容である評価結果を表示部１０４に送信して表示させる。また、管理部１５１は、評価結果から評価結果ファイル３８０を生成し、外部記憶装置１０６に送信して記憶させる。
【００７１】
なお、図１０に示すフローチャートにおいて、ステップＳ１３およびＳ１４の処理と、ステップＳ１５〜Ｓ２０の処理とは、並列に実行されるものとしているが、これに限定されるものではなく、直列に実行されるものとしてもよい。また、同様に、ステップＳ１７およびＳ１８の処理と、ステップＳ１９およびＳ２０の処理とは、並列に実行されるものとしているが、これに限定されるものではなく、直列に実行されるものとしてもよい。
【００７２】
以上のように、印刷データのうち印刷設定の内容を含んだ印刷設定データを評価するために、印刷設定データから印刷設定値を示す部分を抽出し、簡易な書式である項目形式の中間データに変換するものとしている。これによって、中間データに対して、他の同様の書式（中間データ形式）で記述されたデータ（例えば、上述の範囲データ３６０および期待値データ３６１）との比較が可能となり、印刷設定内容の評価を実施することができる。また、異なる書式の印刷データの印刷設定データから、同一の書式の中間データに変換するので、印刷設定データの書式に依存されず、中間データに対する共通の評価アルゴリズムによって、印刷設定データの印刷設定内容の評価を実施することができる。すなわち、印刷設定データのまま評価する場合、印刷設定データの書式に対応したそれぞれの評価アルゴリズムを構築する必要があるが、異なる書式の印刷設定データから、同一の書式の中間データに変換するので、共通の評価アルゴリズムで評価が可能となる。
【００７３】
また、印刷設定データから、階層構造で表現可能なデータ形式の中間データに変換するので、複雑な書式を有する印刷設定データから変換を行っても、正確な印刷設定内容を表現することができる。
【００７４】
（第２の実施の形態）
第１の実施の形態においては、印刷データの印刷設定データから中間データに変換し、中間データと同様の書式で記述された評価用データ（範囲データ３６０および期待値データ３６１）と比較して中間データの印刷設定内容を評価する動作を説明した。第２の実施の形態においては、異なる書式の複数の印刷設定データから変換された中間データ同士を比較する動作について説明する。第２の実施の形態に係る情報処理装置および印刷システムについて、第１の実施の形態に係る情報処理装置および印刷システムの構成および動作と相違する点を中心に説明する。
【００７５】
本実施の形態において、印刷システムの全体構成、ならびに印刷データ、印刷設定データおよび中間データの構成は、実施の形態１と同様である。
【００７６】
＜中間データの変換および評価の動作詳細＞
図１１は、第２の実施の形態の情報処理装置における制御部の構成の一例を示すブロック図である。図１２は、第２の実施の形態の情報処理装置における印刷データから評価結果を出力するまでの動作の詳細を示すフローチャートである。図１３は、第２の実施の形態の情報処理装置において２種類のＪＤＦ部から変換された中間データを比較する動作を説明する図である。図１１〜１３を参照しながら、本実施の形態のＰＣ１００の制御部１０７ａのブロック図、ならびに制御部１０７ａにおける印刷データから中間データへの変換動作および中間データに対する評価動作の詳細を説明する。
【００７７】
まず、図１１を参照しながら制御部１０７ａのブロック構成について説明する。図１１に示すように、制御部１０７ａは、ブロック構成の一例として、管理部１５１ａ（出力手段）と、検査部１５２ａ（検査手段）と、変換部１５３ａ（変換手段）と、比較部１５５ａ（比較手段）とを備えている。
【００７８】
管理部１５１ａは、操作部１０３からユーザが操作した印刷設定の情報を入力し、印刷設定の情報と、印刷対象となる文書データまたは画像データ等とから印刷データを生成し、印刷データを検査部１５２ａおよび変換部１５３ａへ渡す。ここで、印刷データは、例えば、図６に示す印刷データ３００のように構成されているものとする。また、管理部１５１ａは、検査部１５２ａから受けた印刷データに対する構文およびフォーマットの検査結果、ならびに比較部１５５ａから受けた２種類の中間データの比較結果を集約する。そして、管理部１５１ａは、集約した内容である評価結果を表示部１０４に送信して表示させる。また、管理部１５１ａは、評価結果から評価結果ファイルを生成し、外部記憶装置１０６に送信して記憶させる。
【００７９】
検査部１５２ａは、管理部１５１ａから受けた印刷データの全体の記述に対して、構文およびフォーマットの検査を行う。また、検査部１５２ａは、印刷データに対する構文およびフォーマットの検査結果を管理部１５１ａへ渡す。
【００８０】
変換部１５３ａは、管理部１５１ａから受けた印刷データのＪＤＦ部から、印刷設定値を示す部分を抽出する。そして、変換部１５３ａは、印刷設定値を示す部分から中間データに変換し、中間データを比較部１５５ａへ渡す。
【００８１】
比較部１５５ａは、変換部１５３ａから２種類の中間データ（図１３で後述する中間データ３５０ｄおよび３５０ｅ）を受ける。比較部１５５ａは、２種類の中間データ３５０に記述された印刷設定値が、それぞれ一致するか否かを比較する。そして、比較部１５５ａは、比較結果を管理部１５１ａへ渡す。すなわち、実施の形態１における比較部１５５が比較対象データとして期待値データ３６１と、中間データとを比較したのに対し、本実施の形態における比較部１５５ａは、特定の中間データを、比較対象データとして別の中間データとを比較する。
【００８２】
次に、図１２および１３を参照しながら、制御部１０７ａにおける印刷データから中間データへの変換動作および中間データに対する評価動作について説明する。
【００８３】
＜＜ステップＳ３１＞＞
管理部１５１ａは、操作部１０３から、ユーザが操作した印刷設定の情報、および印刷データに対する評価動作の実行コマンドを入力する。管理部１５１ａは、入力した印刷設定の情報と、印刷対象となる文書データまたは画像データ等とから印刷データを生成する。このとき、管理部１５１ａは、２種類の印刷設定の情報と、２種類の印刷対象となる文書データまたは画像データ等とから、２種類の印刷データを生成するものとする。そして、ステップＳ３２へ進む。
【００８４】
＜＜ステップＳ３２＞＞
管理部１５１ａは、２種類の印刷データを検査部１５２ａおよび変換部１５３ａへ渡す。そして、ステップＳ３３およびＳ３５へ進む。
【００８５】
＜＜ステップＳ３３＞＞
検査部１５２ａは、管理部１５１ａから受けた２種類の印刷データそれぞれの全体の記述に対して、構文およびフォーマットの検査を行う。具体的には、検査部１５２ａは、２種類の印刷データそれぞれの全体の記述が定められた仕様に従った書式で記述されているか否かを検査する。検査部１５２ａによる検査内容の具体例は、図７のステップＳ２において上述したとおりである。そして、ステップＳ３４へ進む。
【００８６】
＜＜ステップＳ３４＞＞
検査部１５２ａは、２種類の印刷データに対する構文およびフォーマットの検査結果を管理部１５１ａへ渡す。そして、ステップＳ３９へ進む。
【００８７】
＜＜ステップＳ３５＞＞
変換部１５３ａは、図１３に示すように、管理部１５１ａから受けた２種類の印刷データ３００のＪＤＦ部３２０ｄおよび３２０ｅから、印刷設定値を示す部分を抽出する。具体的には、変換部１５３ａは、図１３に示すように、ＪＤＦ部３２０ｄから印刷設定値を示す部分として、印刷設定関連部分３２１ｄ〜３２３ｄを抽出する。また、変換部１５３ａは、図１３に示すように、ＪＤＦ部３２０ｅから印刷設定値を示す部分として、印刷設定関連部分３２１ｅ〜３２３ｅを抽出する。そして、変換部１５３ａは、印刷設定関連部分３２１ｄ〜３２３ｄから中間データ３５０ｄに変換し、印刷設定関連部分３２１ｅ〜３２３ｅから中間データ３５０ｅに変換する。
【００８８】
具体的には、ＪＤＦ部３２０ｄの印刷設定関連部分３２１ｄの記述は、中間データ３５０ｄの「ＣｏｌｏｒＰｌａｎｅｓ：ＣＭＹＫ」という記述に変換される。ＪＤＦ部３２０ｄの印刷設定関連部分３２２ｄの記述は、中間データ３５０ｄの「ＣｕｓｔｏｍＰａｐｅｒＳｉｚｅ：９３６×１７８５．６」という記述に変換される。そして、ＪＤＦ部３２０ｄの印刷設定関連部分３２３ｄの記述は、中間データ３５０ｄの「Ｔｒａｙ：Ｔｒａｙ−３」および「ＭｅｄｉａＵｎｉｔ：Ｉｎｃｈｅｓ」という記述に変換される。
【００８９】
また、ＪＤＦ部３２０ｅの印刷設定関連部分３２１ｅの記述は、中間データ３５０ｅの「ＣｏｌｏｒＰｌａｎｅｓ：ＣＭＹＫ」という記述に変換される。ＪＤＦ部３２０ｅの印刷設定関連部分３２２ｅの記述は、中間データ３５０ｅの「ＣｕｓｔｏｍＰａｐｅｒＳｉｚｅ：９３６×１７８５．６」という記述に変換される。そして、ＪＤＦ部３２０ｅの印刷設定関連部分３２３ｅの記述は、中間データ３５０ｅの「Ｔｒａｙ：ＡｕｔｏＳｅｌｅｃｔ」および「ＭｅｄｉａＵｎｉｔ：Ｍｉｌｌｉｍｅｔｅｒｓ」という記述に変換される。そして、ステップＳ３６へ進む。
【００９０】
＜＜ステップＳ３６＞＞
変換部１５３ａは、変換した中間データ３５０ｄおよび３５０ｅを比較部１５５ａへ渡す。そして、ステップＳ３７へ進む。
【００９１】
＜＜ステップＳ３７＞＞
比較部１５５ａは、中間データ３５０ｄおよび３５０ｅに記述された印刷設定値が、それぞれ一致するか否かを比較する。具体的には、比較部１５５ａは、中間データ３５０ｄおよび３５０ｅに記述された印刷設定値のうち、「ＣｏｌｏｒＰｌａｎｅｓ：ＣＭＹＫ」および「ＣｕｓｔｏｍＰａｐｅｒＳｉｚｅ：９３６×１７８５．６」が一致していると判定する。また、比較部１５５ａは、中間データ３５０ｄの「Ｔｒａｙ：Ｔｒａｙ−３」という印刷設定値と、中間データ３５０ｅの「Ｔｒａｙ：ＡｕｔｏＳｅｌｅｃｔ」という印刷設定値とが不一致であると判定する。さらに、比較部１５５ａは、中間データ３５０ｄの「ＭｅｄｉａＵｎｉｔ：Ｉｎｃｈｅｓ」という印刷設定値と、中間データ３５０ｅの「ＭｅｄｉａＵｎｉｔ：Ｍｉｌｌｉｍｅｔｅｒｓ」という印刷設定値とが不一致であると判定する。そして、ステップＳ３８へ進む。
【００９２】
＜＜ステップＳ３８＞＞
比較部１５５ａは、中間データ３５０ｄおよび３５０ｅの比較結果を管理部１５１ａへ渡す。そして、ステップＳ３９へ進む。
【００９３】
＜＜ステップＳ３９＞＞
管理部１５１ａは、ステップＳ３４およびＳ３８の処理が終了後、以下の処理を行う。管理部１５１ａは、検査部１５２ａから受けた２種類の印刷データに対する構文およびフォーマットの検査結果、ならびに比較部１５５ａから受けた中間データ３５０ｄおよび３５０ｅの比較結果を集約する。そして、管理部１５１ａは、集約した内容である評価結果を表示部１０４に送信して表示させる。また、管理部１５１ａは、評価結果から評価結果ファイルを生成し、外部記憶装置１０６に送信して記憶させる。
【００９４】
上述のように、第１の実施の形態において中間データと評価用データとは、共通の評価アルゴリズムによって評価することができるが、この評価アルゴリズムは、中間データ形式のデータ同士を比較することができる。すなわち、評価アルゴリズムは、２種類の印刷設定データから変換された中間データ同士の比較動作にも転用することができる。したがって、２種類の書式の印刷設定データを中間データに変換して、共通の評価アルゴリズムによって中間データ同士で印刷設定値の比較を行うことによって、印刷設定データの書式に依存されずに印刷設定値の差分を検出することができる。
【００９５】
なお、図１２に示すフローチャートにおいて、ステップＳ３３およびＳ３４の処理と、ステップＳ３５〜Ｓ３８の処理とは、並列に実行されるものとしているが、これに限定されるものではなく、直列に実行されるものとしてもよい。
【００９６】
また、図１２に示すフローチャートにおいては、２種類の印刷データがそれぞれ中間データに変換されて比較される動作を示したが、これに限定されるものではなく、３種類以上の印刷データがそれぞれ、中間データに変換されて比較されるものとしてもよい。
【００９７】
＜印刷設定データのデータ形式を他のデータ形式に変換する仕組み＞
図１４は、複数の書式のＪＤＦ部のそれぞれについて、他の書式のＪＤＦ部に変換する状態を示す図である。図１５は、第２の実施の形態の情報処理装置において複数の書式のＪＤＦ部それぞれから中間データに変換する状態を示す図である。図１４および１５を参照しながら、中間データを使用しないで印刷設定データを比較する場合と、中間データを使用して印刷設定データを比較する場合について説明する。
【００９８】
図１４（ａ）に示すように、印刷設定データであってそれぞれ書式の異なるＪＤＦ部３２０ｆ〜３２０ｈのそれぞれの間で、中間データを使用しないで、印刷設定値の比較を行う場合を考える。この場合、一方の印刷設定データの書式から他方の印刷設定データの書式に変換、および、その逆の変換をする変換アルゴリズムがそれぞれ必要になる。図１４（ａ）では、データ形式Ａで記述されたＪＤＦ部３２０ｆとデータ形式Ｂで記述されたＪＤＦ部３２０ｇとを互いに変換する変換アルゴリズム、ＪＤＦ部３２０ｇとデータ形式Ｃで記述されたＪＤＦ部３２０ｈとを互いに変換する変換アルゴリズム、およびＪＤＦ部３２０ｈとＪＤＦ部３２０ｆとを互いに変換する変換アルゴリズムの、計３種類の変換アルゴリズムが必要である。それに付随して、変換アルゴリズムと同数の評価アルゴリズムが必要になる。
【００９９】
ここで、図１４（ｂ）に示すように、ＪＤＦ部３２０ｆ〜３２０ｈと比較するための新たな書式のデータ形式Ｄで記述されたＪＤＦ部３２０ｉが追加された場合を考える。この場合、ＪＤＦ部３２０ｉと、ＪＤＦ部３２０ｆ〜３２０ｈそれぞれと互いに変換するために新たに３つの変換アルゴリズムおよび３つの評価アルゴリズムが必要になる。
【０１００】
次に、図１５（ａ）に示すように、ＪＤＦ部３２０ｆ〜３２０ｈのそれぞれの間で、本実施の形態のように、中間データを使用して、印刷設定値の比較を行う場合を考える。この場合、印刷設定データから中間データにする変換アルゴリズムがそれぞれ必要になる。図１５（ａ）では、ＪＤＦ部３２０ｆから中間データに変換する変換アルゴリズム、ＪＤＦ部３２０ｇから中間データに変換する変換アルゴリズム、およびＪＤＦ部３２０ｈから中間データに変換する変換アルゴリズムの、計３種類の変換アルゴリズムが必要になる。しかし、各変換アルゴリズムで変換された中間データ同士を比較する評価アルゴリズムは、共通の評価アルゴリズムを使用することができる。したがって、図１４に示したように、中間データを使用しないで、それぞれの印刷設定データを直接比較する場合と比較して、必要なアルゴリズムの数を削減することができる。
【０１０１】
さらに、図１５（ｂ）に示すように、ＪＤＦ部３２０ｆ〜３２０ｈと比較するための新たな書式のＪＤＦ部３２０ｉが追加された場合を考える。この場合、ＪＤＦ部３２０ｉから中間データに変換する変換アルゴリズムが新たに必要になる。しかし、ＪＤＦ部３２０ｉから変換された中間データと、ＪＤＦ部３２０ｆ〜３２０ｈから変換された中間データそれぞれと比較する評価アルゴリズムは、上述の評価アルゴリズムを共通に使用することができる。したがって、比較対象となる新たな印刷データが追加されても、中間データに変換するための変換アルゴリズムが必要になるのみであり、中間データ同士を比較する評価アルゴリズムは、共通のアルゴリズムを使用することができる。
【０１０２】
なお、図１４および１５においては、印刷設定データとしてＪＤＦで記述されたＪＤＦ部の比較動作について説明したが、ＪＤＦで記述された印刷設定データに限定されるものではなく、ＰＤＬその他の書式によって記述された印刷設定データであってもよい。この場合においても、上述と同様の効果を得ることができる。
【０１０３】
また、実施の形態１の中間データに対する評価動作と、実施の形態２の中間データに対する評価動作とは、組み合わせて使用することができるのは言うまでもない。
【０１０４】
（情報処理装置で実行されるプログラムについて）
上述の各実施の形態の情報処理装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）またはフレキシブルディスク（ＦＤ）等の読み取り可能な記憶媒体に記憶されて提供される。
【０１０５】
また、上述の各実施の形態の情報処理装置で実行されるプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納され、ネットワーク経由でダウンロードされることにより提供されるようにしてもよい。また、上述の各実施の形態の情報処理装置で実行されるプログラムは、インターネット等のネットワーク経由で提供または配布されるようにしてもよい。また、上述の各実施の形態の情報処理装置で実行されるプログラムは、ＲＯＭ等に予め組み込んで提供されるようにしてもよい。
【０１０６】
上述の各実施の形態の情報処理装置で実行されるプログラムは、上述した各処理部（管理部１５１、１５１ａ、検査部１５２、１５２ａ、変換部１５３、１５３ａ、範囲判定部１５４、比較部１５５、１５５ａ、および印刷データ評価ツール５００）を情報処理装置上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、制御装置が外部記憶装置からプログラムを記憶装置上に読み出して実行することによって、上記各処理部が情報処理装置上で実現されるようになっている。
【符号の説明】
【０１０７】
１００  ＰＣ
１０１  ＰＣ本体
１０２  通信インターフェース
１０３  操作部
１０４  表示部
１０５  記憶部
１０６  外部記憶装置
１０７、１０７ａ  制御部
１０８  バス
１２０  印刷設定画面
１５１、１５１ａ  管理部
１５２、１５２ａ  検査部
１５３、１５３ａ  変換部
１５４  範囲判定部
１５５、１５５ａ  比較部
２００  プリンタ
２５０  通信ケーブル
３００  印刷データ
３１０  メッセージ部
３２０、３２０ａ〜３２０ｉ  ＪＤＦ部
３２１ａ、３２２ａ  印刷設定関連部分
３２１ｂ〜３３２ｂ  印刷設定関連部分
３２１ｄ〜３２３ｄ  印刷設定関連部分
３２１ｅ〜３２３ｅ  印刷設定関連部分
３３０  データ部
３５０、３５０ａ〜３５０ｅ  中間データ
３６０  範囲データ
３６１、３６１ｃ  期待値データ
３７０  比較結果
３８０  評価結果ファイル
４００  印刷設定
５００  印刷データ評価ツール
６００  印刷システム
【先行技術文献】
【特許文献】
【０１０８】
【特許文献１】特開２００９−２７１９２７号公報
【図１】
2015011682.tif 000003
【図２】
2015011682.tif 000004
【図３】
2015011682.tif 000005
【図４】
2015011682.tif 000006
【図５】
2015011682.tif 000007
【図６】
2015011682.tif 000008
【図７】
2015011682.tif 000009
【図８】
2015011682.tif 000010
【図９】
2015011682.tif 000011
【図１０】
2015011682.tif 000012
【図１１】
2015011682.tif 000013
【図１２】
2015011682.tif 000014
【図１３】
2015011682.tif 000015
【図１４】
2015011682.tif 000016
【図１５】
2015011682.tif 000017