(57)【要約】【課題】印刷異常の原因が印刷装置および印刷制御装置のいずれにあるか（またはその組み合わせにあるのか）を自動的に特定するデータ処理装置を提供する。【解決手段】データ処理装置１０は、主制御部１３のテスト用プリンタドライバ１７および基準用プリンタドライバ１８により、テスト用ＭＦＰ２０および基準用ＭＦＰ２００に所定の文書を印刷させた後に、検査プログラム１９のスキャン画像管理部１９１により上記印刷された文書をスキャンして画像を取得し、この画像を基準用プリンタドライバ１８により基準用ＭＦＰ２００で印刷された同一文書の画像と不具合判断部１９２によりそれぞれ比較することにより相違点を検出し、その不具合をデータベース管理部１９３により不具合データベースに登録する。これにより不具合の原因がテスト用プリンタドライバ１７およびテスト用ＭＦＰ２０のいずれにあるか特定することができる。【選択図】図１
2007300351.tif 000002
【特許請求の範囲】
【請求項１】
検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理装置であって、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理手段と、
前記スキャン画像管理手段により受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定手段とを備え、
前記不具合判定手段は、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする、データ処理装置。
【請求項２】
前記不具合判定手段は、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像、および前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像にそれぞれ異常がない場合であっても、前記検査用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置と前記検査用印刷装置との組み合わせに異常があると判定することを特徴とする、請求項１に記載のデータ処理装置。
【請求項３】
前記スキャン画像管理手段は、受け取られる前記複数の画像に含まれる文字であって前記検査用印刷制御装置に含まれるプリンタドライバのバージョン情報と前記検査用印刷装置に含まれるプリンタファームウェアのバージョン情報と示す文字を認識することにより文字コードとして抽出し、
前記不具合判定手段は、
前記スキャン画像管理手段により抽出された前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記バージョン情報を有するプリンタドライバに異常があると判定し、
前記スキャン画像管理手段により抽出された前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記バージョン情報を有するプリンタファームウェアに異常があると判定することを特徴とする、請求項１に記載のデータ処理装置。
【請求項４】
前記文書データを識別するための符号に関連づけて、前記不具合判定手段の判定結果を所定の記憶手段に記憶させるデータベース管理手段をさらに備えることを特徴とする、請求項１に記載のデータ処理装置。
【請求項５】
前記スキャン画像管理手段は、受け取られる前記複数の画像に含まれる前記文書データを識別するための符号を認識することにより文字コードとして抽出し、前記データベース管理手段に与えることを特徴とする、請求項４に記載のデータ処理装置。
【請求項６】
前記データベース管理手段は、前記記憶手段に記憶された前記判定結果を前記符号毎に表記した所定の報告書データを生成し、生成された報告書データを前記検査用印刷装置または前記基準用印刷装置で印刷することを特徴とする、請求項４に記載のデータ処理装置。
【請求項７】
前記検査用印刷制御装置を備えることを特徴とする、請求項１に記載のデータ処理装置。
【請求項８】
前記検査用印刷装置を備えることを特徴とする、請求項１に記載のデータ処理装置。
【請求項９】
検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理方法であって、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理ステップと、
前記スキャン画像管理ステップにおいて受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定ステップとを含み、
前記不具合判定ステップでは、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする、データ処理方法。
【請求項１０】
検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理装置に、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理ステップと、
前記スキャン画像管理ステップにおいて受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定ステップとを実行させ、
前記不具合判定ステップでは、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに関連する処理を行うデータ処理装置に関し、より詳しくは画像形成装置により形成される画像のデータに基づき、装置の動作不良を検出するデータ処理装置に関する。
【背景技術】
【０００２】
近年、カラー画像形成装置、特にデジタルフルカラー複写機では、色の正確な再現性が求められるため、所定の用紙上に形成される画像の色の再現性が良好でない動作不良を自動的に検出し改善するものがある。
【０００３】
例えば、所定の補正用テストパターンを用紙に印刷した後に当該用紙をスキャナ部へ自動的に搬送して読み取り、読み取られた画像データに基づき色再現性の不良を検出し改善する従来の画像形成装置がある（特許文献１を参照）。また例えば、他の画像形成装置のスキャナで読み取られた画像データを受信しこの画像データに基づき色再現性の不良を検出し改善する従来の画像形成装置がある（特許文献２を参照）。
【０００４】
さらに、定期的に印刷装置により印刷されたテストパターン画像を読み取り、読み取られた画像データと当該画像を形成した元のデータとを比較することにより印刷異常を検出しメンテナンスを実行する印刷管理装置がある（特許文献３を参照）。
【特許文献１】特開平１１−２８４７９４号公報
【特許文献２】特開２００５−９４３６６号公報
【特許文献３】特開２００４−５４９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１または特許文献２に記載されるような従来の画像形成装置では、色再現性の不良を検出することはできるとしても、一般的な印刷異常を検出して改善することはできない。
【０００６】
また、特許文献３に記載されるような従来の印刷管理装置では、一般的な印刷異常を検出することはできるとしても、印刷異常の原因が印刷管理装置（典型的にはプリンタドライバ）にあるのか印刷装置にあるのかを特定することはできない。
【０００７】
特に、プリンタを新たに開発しテストを行う場合、当該プリンタを制御するためのプリンタドライバも同時に開発することが多いので、印刷異常の原因がプリンタ（典型的にはプリンタのファームウェア）にあるのかプリンタドライバにあるのかを特定することは極めて重要である。
【０００８】
そこで本発明では、印刷異常の原因が印刷装置および印刷制御装置のいずれにあるか（またはその組み合わせにあるのか）を自動的に特定することができるデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明は、検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理装置であって、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理手段と、
前記スキャン画像管理手段により受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定手段とを備え、
前記不具合判定手段は、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする。
【００１０】
第２の発明は、第１の発明において、
前記不具合判定手段は、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像、および前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像にそれぞれ異常がない場合であっても、前記検査用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置と前記検査用印刷装置との組み合わせに異常があると判定することを特徴とする。
【００１１】
第３の発明は、第１の発明において、
前記スキャン画像管理手段は、受け取られる前記複数の画像に含まれる文字であって前記検査用印刷制御装置に含まれるプリンタドライバのバージョン情報と前記検査用印刷装置に含まれるプリンタファームウェアのバージョン情報と示す文字を認識することにより文字コードとして抽出し、
前記不具合判定手段は、
前記スキャン画像管理手段により抽出された前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記バージョン情報を有するプリンタドライバに異常があると判定し、
前記スキャン画像管理手段により抽出された前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記バージョン情報を有するプリンタファームウェアに異常があると判定することを特徴とする。
【００１２】
第４の発明は、第１の発明において、
前記文書データを識別するための符号に関連づけて、前記不具合判定手段の判定結果を所定の記憶手段に記憶させるデータベース管理手段をさらに備えることを特徴とする。
【００１３】
第５の発明は、第４の発明において、
前記スキャン画像管理手段は、受け取られる前記複数の画像に含まれる前記文書データを識別するための符号を認識することにより文字コードとして抽出し、前記データベース管理手段に与えることを特徴とする。
【００１４】
第６の発明は、第４の発明において、
前記データベース管理手段は、前記記憶手段に記憶された前記判定結果を前記符号毎に表記した所定の報告書データを生成し、生成された報告書データを前記検査用印刷装置または前記基準用印刷装置で印刷することを特徴とする。
【００１５】
第７の発明は、第１の発明において、
前記検査用印刷制御装置を備えることを特徴とする。
【００１６】
第８の発明は、第１の発明において、
前記検査用印刷装置を備えることを特徴とする。
【００１７】
第９の発明は、検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理方法であって、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理ステップと、
前記スキャン画像管理ステップにおいて受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定ステップとを含み、
前記不具合判定ステップでは、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする。
【００１８】
第１０の発明は、検査の対象となるべき検査用印刷装置および検査の基準となるべき基準用印刷装置によりそれぞれ印刷された同一の文書データに対応する画像に基づき、前記検査用印刷装置または前記基準用印刷装置を制御するための検査の対象となるべき検査用印刷制御装置と、前記検査用印刷装置とを検査するデータ処理装置に、
前記検査用印刷制御装置および検査の基準となるべき基準用印刷制御装置により制御される前記検査用印刷装置および前記基準用印刷装置によりそれぞれ印刷された画像を光学的に読み取るスキャナ手段を制御することにより読み取られた複数の画像データを受け取るスキャン画像管理ステップと、
前記スキャン画像管理ステップにおいて受け取られる複数の画像データを比較することにより前記検査用印刷装置および前記検査用印刷制御装置における異常の有無を判定する不具合判定ステップとを実行させ、
前記不具合判定ステップでは、前記基準用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に対応する画像データを検査の基準として、
前記基準用印刷制御装置により制御される前記検査用印刷装置で印刷された画像に異常がある場合、前記検査用印刷装置に異常があると判定し、
前記検査用印刷制御装置により制御される前記基準用印刷装置で印刷された画像に異常がある場合、前記検査用印刷制御装置に異常があると判定することを特徴とする、プログラムである。
【発明の効果】
【００１９】
第１の発明によれば、検査用印刷制御装置および基準用印刷制御装置により制御される検査用印刷装置および基準用印刷装置によりそれぞれ印刷された画像に対応する複数の画像データを比較することにより検査用印刷装置および検査用印刷制御装置における異常の有無を判定する不具合判定手段により、印刷異常の原因が印刷装置および印刷制御装置のいずれにあるかを自動的に特定することができる。
【００２０】
第２の発明によれば、印刷異常の原因が印刷装置および印刷制御装置の組み合わせにあることを自動的に特定することができる。
【００２１】
第３の発明によれば、スキャン画像管理手段により、画像に含まれるプリンタドライバのバージョン情報とプリンタファームウェアのバージョン情報と示す文字を認識することにより抽出されるので、これらの情報を利用者の手により別個に与えることなく、これらの情報に基づき不具合判定手段により印刷異常のプリンタドライバおよびプリンタファームウェアのいずれにあるかを自動的に特定することができる。
【００２２】
第４の発明によれば、文書データを識別するための符号に関連づけて判定情報が記憶されるので、当該文書データに特有の内容（例えば特定の文字や修飾、画像の形状など）により不都合が引き起こされることを容易に分析することができる。
【００２３】
第５の発明によれば、上記符号を利用者の手により別個に与えることなく、この符号に基づき不具合判定手段により印刷異常のプリンタドライバおよびプリンタファームウェアのいずれにあるかを自動的に特定することができる。
【００２４】
第６の発明によれば、報告書データが印刷されることにより利用者は（検査の途中であっても）文書データ毎の印刷異常の有無やその原因を容易に知ることができる。
【００２５】
第７の発明によれば、データ処理装置が検査用印刷制御装置を備えるので、検査の対象となる画像を印刷装置に印刷させ検査する一連の処理を１つのデータ処理装置により行うことができる。
【００２６】
第８の発明によれば、データ処理装置が検査用印刷装置を備えるので、検査の対象となる画像を印刷し検査する一連の処理を１つのデータ処理装置により行うことができる。
【００２７】
第９の発明によれば、第１の発明における効果を本データ処理方法においても同様に奏することになる。
【００２８】
第１０の発明によれば、第１の発明における効果を本プログラムにおいても同様に奏することになる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の一実施形態について添付図面を参照して説明する。
【００３０】
＜１．  装置全体の構成＞
図１は、本発明における一実施形態に係るデータ処理装置およびプリンタ（印刷装置）の機能的な構成を示すブロック図である。なお、図１に示されるデータ処理装置１０およびプリンタ２０により本実施形態における不具合検査システムが構成されている。
【００３１】
データ処理装置１０は、ＣＲＴディスプレイまたはＬＣＤ等からなる表示装置とキーボードおよびマウスやタッチペンなどのポインティングデバイス等からなる入力装置とを含む操作表示部１１と、ハードディスクなどの磁気記憶媒体を含む記憶部１２と、ＣＰＵ（Central Processing Unit ）および主メモリ（半導体メモリ）などにより構成される主制御部１３と、データ処理装置１０の外部に設けられる検査対象となるテスト用マルチファンクションプリンタ（ＭＦＰ）２０および他の標準的な基準用ＭＦＰ２００などの周辺機器や他のデータ処理装置１０１などと相互に通信可能に接続するための通信制御部１４とを備える。なお、他のデータ処理装置１０１は、本データ処理装置１０と同様の構成を有し同様の動作を行うので、詳しい説明を省略する。
【００３２】
このデータ処理装置１０の外部には、上記テスト用ＭＦＰ２０と、他の基準用ＭＦＰ２００と、データ処理装置１０１とが設けられており、これらは所定のケーブルやハブなどからなるＬＡＮ（Local Area Network）３０により相互に通信可能に接続される。なお、このＬＡＮ３０に代えて、ＷＡＮ（Wide Area Network）やインターネットなど周知の相互通信網またはＵＳＢ（Universal Serial Bus）接続や各種パラレルインタフェースなどの通信接続手段が使用されてもよい。
【００３３】
このデータ処理装置１０に備えられる主制御部１３は、一般的なパーソナルコンピュータにオペレーティングシステム（不図示）と、文書を作成するワードプロセッサ・ソフトウェアや画像を作成するドロー・ソフトウェアなどのアプリケーションプログラム１５と、テスト用ＭＦＰ２０による印刷を制御するためのプリンタドライバのうち検査対象となるテスト用プリンタドライバ１７および他の一般的な基準用プリンタドライバ１８と、これらのプリンタドライバのうち使用すべきものを択一的に切り換えるドライバ切替部１６と、検査対象となるテスト用プリンタドライバ１７またはテスト用ＭＦＰ２０の（後述する）ファームウェアの不具合を検査するための検査プログラム１９とにより構成されている。
【００３４】
データ処理装置１０に備えられる主制御部１３のテスト用プリンタドライバ１７は、アプリケーションプログラム１５に含まれる（文字や画像などを含む）文書の印刷を行う文書印刷指示部１５１から印刷すべき文書データを受け取り所定の情報を付加する情報付加部１７１と、この情報付加部１７１により所定の情報を付加されたデータからプリンタに解釈可能なページ記述言語（ＰＤＬ：Page Description Language）により記述される印刷用データ（以下「ＰＤＬデータ」または「印刷ジョブ」という）を生成するＰＤＬデータ生成部１７２とを備える。これらの詳しい動作は後述する。また、基準用プリンタドライバ１８は、上記構成要素のうち、同様のＰＤＬデータ生成部１７２のみを備え、情報付加部１７１は備えていない。なお、これらのプリンタドライバにより、データ処理装置１０は印刷制御装置として機能する。
【００３５】
データ処理装置１０に備えられる主制御部１３のアプリケーションプログラム１５は、前述したような文書や画像を作成または編集するなどの各種機能を実現する構成要素のほか、さらに当該文書を印刷する機能を有する上記文書印刷指示部１５１を備えている。
【００３６】
また、データ処理装置１０に備えられる主制御部１３の検査プログラム１９は、後述するようにテスト用ＭＰＦ２０において所定の用紙に対応する画像を読み取り、当該画像データを管理するとともに当該画像に含まれる文書ファイル名などの文字をパターン認識するスキャン画像管理部１９１と、当該画像データに基づきテスト用プリンタドライバ１７またはテスト用ＭＦＰ２０のファームウェアの不具合を判断する不具合判断部１９２と、不具合判断部１９２による判断結果をデータベース化して記憶部１２に記憶し管理するデータベース管理部１９３とを備えている。
【００３７】
なお、主制御部１３のこれらの構成要素の機能は、典型的には半導体メモリからなる主メモリに展開されたテスト用プリンタドライバ１７（または基準用プリンタドライバ１８）、検査プログラム１９、およびアプリケーションプログラム１５などをＣＰＵが実行することにより実現される。ここで、上記プログラムは、例えば、そのプログラムを記録した記録媒体であるＣＤ−ＲＯＭによって提供される。すなわち、上記プログラムの記録媒体としてのＣＤ−ＲＯＭがデータ処理装置１０内に補助記憶装置として内蔵された図示されないＣＤ−ＲＯＭ駆動装置に装着され、そのＣＤ−ＲＯＭから上記プログラムが読み出されて記憶部１２であるハードディスク装置にインストールされる。また、上記プログラムは、ＣＤ−ＲＯＭ以外の記録媒体や通信回線を介して提供されてもよい。そして、本データ処理装置１０の起動のための所定操作がなされると、ハードディスク装置にインストールされた所定プログラムは、上記主メモリに転送されてそこに展開され（一時的に格納され）、主制御部１３内のＣＰＵによって実行される。これにより、主制御部１３の各部の制御処理が実現される。
【００３８】
このデータ処理装置１０は、具体的にはオペレーティングシステムとして例えばウィンドウズ（登録商標）が使用される場合、当該オペレーティングシステムにより提供されるサブシステムの１つである図示されないＧＤＩ(Graphic Device Interface)の機能を介して印刷処理を行う。すなわち、アプリケーションプログラム１５が印刷を指示するためにＧＤＩへのＡＰＩ(Application Programming Interface)コールを行うと、ＧＤＩはテスト用プリンタドライバ１７（または基準用プリンタドライバ１８）を動的にリンクし、プリンタドライバはＧＤＩから与えられるデータを受け取ることにより、テスト用ＭＦＰ２０が解釈可能なＰＤＬデータ（印刷ジョブ）を生成し出力する。なお、このＰＤＬデータは、スプーラを介してテスト用ＭＦＰ２０に与えられる。このような構成により、アプリケーションプログラム１５の種類に関わりなく、テスト用プリンタドライバ１７（または基準用プリンタドライバ１８）は印刷のための動作を行うことができる。なお、上記ＰＤＬデータ（印刷ジョブ）は、印刷用データの典型例であってその形式に限定はなく、例えばビットマップデータであってもよい。
【００３９】
また、テスト用ＭＦＰ２０は、ＬＣＤ等からなる表示装置とタッチパネルやボタンスイッチ等からなる入力装置とを含む操作表示部２１と、ハードディスクなどの磁気記憶媒体を含む記憶部２２と、ＣＰＵおよび半導体メモリなどにより構成される主制御部２３と、データ処理装置１０や他のデータ処理装置１０１などと相互に通信可能に接続するための通信制御部２４と、用紙に画像を形成して当該用紙を装置外へ排出するためのプリント部２５と、用紙上の画像を光学的に読み取るためのスキャナ部２６とを備える。なお、プリント部２５は、画像形成のための各種方式（例えば電子写真方式やインクジェット方式など）に応じた周知の構成であるため、詳しい説明は省略する。また、スキャナ部２６も周知の構成であるため、詳しい説明は省略する。
【００４０】
このテスト用ＭＦＰ２０に備えられる主制御部２３は、データ処理装置１０から与えられる印刷ジョブ（ＰＤＬデータ）に所定の情報を追記する情報追記部２３１と、場合により情報が追記された印刷ジョブに基づきこれに対応するビットマップ形式のデータを生成するビットマップデータ生成部２３２と、スキャナ部２６を制御することにより用紙上の画像を読み取る画像読み取り部２３３とを備える。これらの詳しい動作は後述する。
【００４１】
なお、主制御部２３のこれらの構成要素の機能は、主制御部１３と同様、半導体メモリに格納された（具体的には書き込み専用メモリから読み出されて主メモリに展開された）所定プログラム（以下「ファームウェア」という）をＣＰＵが実行することにより実現され、このファームウェアは、ＣＤ−ＲＯＭやそれ以外の記録媒体または通信回線を介して提供されてもよい。また、主制御部２３は、トナー切れや用紙切れなどテスト用ＭＦＰ２０の画像形成に関わる状態を管理するための図示されない機器状態管理部や、操作表示部２１を介して利用者による印刷枚数や濃度指定などの指示入力を受け付け利用者に各種情報を提示するフロントパネル制御部など構成要素を含む。これらの構成要素は周知であるので説明は省略する。
【００４２】
＜２．  データ処理装置におけるプリンタドライバ等の動作＞
次に、データ処理装置１０における検査プログラム１９の動作を除くプリンタドライバ等の動作について説明する。図２は、プリンタドライバ等の処理の流れを示すフローチャートである。ここで、以下の処理は、文書印刷指示部１５１により印刷すべき文書データおよび印刷指示が与えられることにより開始する。
【００４３】
この図２に示すステップＳ１１において、ドライバ切替部１６は、操作表示部１１の操作画面上に、テスト用プリンタドライバ１７を使用する印刷モードである印刷テストモードにより印刷を行うか否かを利用者に選択させる旨の表示を行い、利用者による選択のための操作入力を受け付けたのち、受け付けられた印刷モードが印刷テストモードであるか否かを判定する。判定の結果、印刷テストモードである場合（ステップＳ１１においてＹｅｓの場合）、ドライバ切替部１６は、テスト用プリンタドライバ１７を選択し、選択されたテスト用プリンタドライバ１７によりステップＳ１２〜Ｓ１４の処理が行われる。また上記判定の結果、印刷テストモードでない場合（ステップＳ１１においてＮｏの場合）、ドライバ切替部１６は、基準用プリンタドライバ１８を選択し、選択された基準用プリンタドライバ１８により後述するステップＳ１５，Ｓ１６の処理が行われる。
【００４４】
上記のように印刷テストモードである場合、ステップＳ１２において、テスト用プリンタドライバ１７に含まれる情報付加部１７１は、文書印刷指示部１５１から受け取った文書データのファイル名を抽出する。続いて、ステップＳ１３において、情報付加部１７１は、抽出されたファイル名と、テスト用プリンタドライバ１７の情報（例えば、その種類やバージョンなどを示す情報などであり、以下これらの情報と上記ファイル名とを「プリンタドライバ情報」という）とを文書データに付加して（または文書データとともに）テスト用プリンタドライバ１７に含まれるＰＤＬデータ生成部１７２に与える。このＰＤＬデータ生成部１７２は、印刷されたときに用紙上の予め定められた位置（例えば脚注部など）に上記ファイル名および上記プリンタドライバ情報が表記（画像形成）されるよう、上記文書データを印刷ジョブ（ＰＤＬデータ）に変換する。
【００４５】
次にステップＳ１４において、ＰＤＬデータ生成部１７２は、変換された印刷ジョブを通信制御部１４を介してテスト用ＭＦＰ２０または基準用ＭＦＰ２００に送る。これらのうちのいずれに印刷ジョブが送られるかは予め利用者により定められていてもよいし、ステップＳ１１において利用者による選択のための操作入力を受け付けてもよい。その後、テスト用プリンタドライバ１７の処理は一旦終了し、利用者がアプリケーションプログラムを起動して文書データの印刷指示を行うことにより印刷処理が開始されると、再び上記処理が開始される（Ｓ１１〜）。
【００４６】
また上記のように印刷テストモードでない場合、ステップＳ１５において、基準用プリンタドライバ１８に含まれるＰＤＬデータ生成部は、上記文書データを印刷ジョブ（ＰＤＬデータ）に変換する。続いて、ステップＳ１６において、このＰＤＬデータ生成部は、変換された印刷ジョブを通信制御部１４を介してテスト用ＭＦＰ２０または基準用ＭＦＰ２００に送る。なお、このとき印刷ジョブとともにまたは印刷ジョブの内容として上記文書データに対応する文書ファイル名（および作成したアプリケーションソフトウェア名）が送信されるものとする。また、印刷ジョブに文書ファイル名が含まれることが一般的であるが、含まれない場合には文書ファイル名が文書の内容として予め含まれていてもよい。その後、テスト用プリンタドライバ１７の処理は一旦終了し、利用者がアプリケーションプログラムを起動して文書データの印刷指示を行うことにより印刷処理が開始されると、再び上記処理が開始される（Ｓ１１〜）。
【００４７】
＜３．  テスト用ＭＦＰの動作＞
次に、テスト用ＭＦＰ２０の動作について説明する。図３は、このテスト用ＭＦＰ２０における主制御部２３の処理の流れを示すフローチャートである。以下の処理は、このテスト用ＭＦＰ２０が起動すると開始される。
【００４８】
図３に示すステップＳ２１において、主制御部２３は、操作表示部２１の操作画面上に、テスト用ＭＦＰ２０におけるファームウェア動作をテストするための印刷テストモードにより印刷を行うか否かを利用者に選択させる旨の表示を行い、利用者による選択のための操作入力を受け付けたのち、受け付けられた印刷モードが印刷テストモードであるか否かを判定する。判定の結果、印刷テストモードである場合（ステップＳ２１においてＹｅｓの場合）、主制御部２３は、印刷テストモードで後述するステップＳ２６〜Ｓ３３の処理を行う。また上記判定の結果、印刷テストモードでない場合（ステップＳ２１においてＮｏの場合）、主制御部２３は、基準用ＭＦＰ２００と同様の標準的な印刷モードで、以下のステップＳ２２〜Ｓ２５の処理を行う。なお、利用者による操作入力が受け付けられる前に印刷ジョブが受け取られる場合には直ちにステップＳ２２〜Ｓ２５の処理が行われてもよい。
【００４９】
ステップＳ２２において、ビットマップデータ生成部２３２は、データ処理装置１０から通信制御部２４を介して印刷ジョブ（ＰＤＬデータ）を受け取る。続いてステップＳ２３において、ビットマップデータ生成部２３２は、上記ＰＤＬデータを解釈することにより画像形成のためのビットマップデータを生成し、生成されたビットマップデータをプリント部２５へ送る。なお、このようなＰＤＬデータからビットマップデータへの変換手法は周知であるので、説明は省略する。
【００５０】
次にステップＳ２４において、プリント部２５は、受け取ったビットマップデータにより示される画像を用紙上に形成し、当該用紙を装置外へ排出する。続いてステップＳ２５において、主制御部２３は、操作表示部２１の操作画面上に、印刷モードを切り替え可能である旨の表示を行い、利用者による切り替えのための操作入力を受け付けたのち、印刷モードを切り替える操作入力が受け付けられたか否かを判定する。判定の結果、受け付けられた場合（ステップＳ２５においてＹｅｓの場合）、処理は前述したステップＳ２１に戻る。また上記判定の結果、受け付けられない場合（ステップＳ２５においてＮｏの場合）、処理はステップＳ２２に戻り、利用者が所定のアプリケーションプログラムを起動して印刷指示を行うことにより再びテスト用プリンタドライバ１７または基準用プリンタドライバ１８から印刷ジョブが送信されると（Ｓ１４）、再び標準的な印刷モードでステップＳ２２の処理が開始される。
【００５１】
また印刷テストモードである場合、ステップＳ２６において、ビットマップデータ生成部２３２は、データ処理装置１０から通信制御部２４を介して印刷ジョブ（ＰＤＬデータ）を受け取る。続いてステップＳ２７において、ビットマップデータ生成部２３２は、上記ＰＤＬデータを解釈することにより画像形成のためのビットマップデータを生成を開始する。
【００５２】
次にステップＳ２８において、情報追記部２３１は、受け取った印刷ジョブに（テスト用プリンタドライバ１７の）プリンタドライバ情報が含まれているか否かを判定する。なお、このプリンタドライバ情報は、前述したステップＳ１２において情報付加部１７１により付加されたものであり、基準用プリンタドライバ１８が選択された場合にはこのプリンタドライバ情報は付加されない。上記判定の結果、プリンタドライバ情報が含まれている場合（ステップＳ２８においてＹｅｓの場合）、処理はステップＳ２９に進み、上記判定の結果、プリンタドライバ情報が含まれていない場合（ステップＳ２８においてＮｏの場合）、処理はステップＳ３０に進む。
【００５３】
続いてステップＳ２９において、情報追記部２３１は、印刷ジョブとともに（または印刷ジョブの内容として）送信される文書ファイル名（およびアプリケーションソフトウェア名）を、印刷されたときに用紙上の予め定められた位置（例えば脚注部など）に上記ファイル名が表記（画像形成）されるよう、上記印刷ジョブ（ＰＤＬデータ）に追記する。なお、この文書ファイル名（およびアプリケーションソフトウェア名）は、前述したステップＳ１６において送られるが、送られない場合であっても文書の内容として予め含まれている場合には上記ステップＳ２９の処理は省略される。また、基準用プリンタドライバ１８の情報が送られる場合には、この情報を併せて追記してもよい。
【００５４】
次にステップＳ３０において、情報追記部２３１は、テスト用ＭＦＰ２０におけるファームウェアの情報（例えば、その種類やバージョンなどを示す情報などであり、以下「プリンタファーム情報」という）とを、印刷されたときに用紙上の予め定められた位置（例えば脚注部など）に表記（画像形成）されるよう、上記印刷ジョブ（ＰＤＬデータ）に追記する。
【００５５】
続いてステップＳ３１において、ビットマップデータ生成部２３２は、上記ＰＤＬデータを解釈することにより画像形成のためのビットマップデータを生成し、生成されたビットマップデータをプリント部２５へ送る。
【００５６】
次にステップＳ３２において、プリント部２５は、受け取ったビットマップデータにより示される画像を用紙上に形成し、当該用紙を装置外へ排出する。続いてステップＳ３３において、主制御部２３は、前述したステップＳ２５と同様に利用者による印刷モード切り替えのための操作入力を受け付けたのち、当該操作入力が受け付けられたか否かを判定する。判定の結果、受け付けられた場合（ステップＳ３３においてＹｅｓの場合）、処理は前述したステップＳ２１に戻る。また上記判定の結果、受け付けられない場合（ステップＳ３３においてＮｏの場合）、処理はステップＳ２６に戻り、利用者が所定のアプリケーションプログラムを起動して印刷指示を行うことにより再びテスト用プリンタドライバ１７または基準用プリンタドライバ１８から印刷ジョブが送信されると（Ｓ１４）、再び印刷テストモードでステップＳ２６の処理が開始される。
【００５７】
なお、以上のテスト用ＭＦＰ２０の動作のうち、ステップＳ２２〜Ｓ２４の処理が基準用ＭＦＰ２００と同様であることは前述したとおりであるので、基準用ＭＦＰ２００の動作の説明は省略する。
【００５８】
以上のようなテスト用ＭＦＰ２０の動作により、印刷テストモードで印刷される文書には、必ず文書ファイル名を含むプリンタファーム情報が表記されることになる。また、テスト用プリンタドライバ１７により印刷ジョブが生成される場合、印刷される文書には必ずプリンタドライバ情報が表記されることになる。なお、基準用プリンタドライバ１８により印刷ジョブが生成される場合であっても、通常文書ファイル名が表記されることについては前述したとおりである。このような各種情報が文書中に表記されることにより、次に説明するデータ処理装置１０における検査プログラム１９の動作に必要な情報が与えられる。
【００５９】
＜４．  データ処理装置における検査プログラムの動作＞
次に、データ処理装置１０における検査プログラム１９の動作について説明する。図４は、検査プログラム等の処理の流れを示すフローチャートである。ここで、以下の処理は、主制御部１３において、（利用者による操作入力に基づき）スキャン動作を指示する場合に開始される。このスキャン動作とは、テスト用ＭＦＰ２０（または基準用ＭＦＰ２００）に備えられるスキャナ部２６において文書の画像を光学的に読み取る動作を指す。
【００６０】
この図４に示すステップＳ１０１において、主制御部１３は、操作表示部１１の操作画面上に、検査プログラム１９による印刷テストを行うモードでもある印刷テストモードによりスキャン動作を行わせるか否かを利用者に選択させる旨の表示を行い、利用者による選択のための操作入力を受け付けたのち、受け付けられたモードが印刷テストモードであるか否かを判定する。判定の結果、印刷テストモードである場合（ステップＳ１０１においてＹｅｓの場合）、処理はステップＳ１０３へ進む。また上記判定の結果、印刷テストモードでない場合（ステップＳ１０１においてＮｏの場合）、主制御部１３は、テスト用ＭＦＰ２０（または基準用ＭＦＰ２００）に備えられる画像読み取り部２３３に対して、文書の画像を読み取り、当該画像のデータを画像読み取り部２３３から受け取る通常のスキャン処理を行ったのち（ステップＳ１０２）、ステップＳ１０１の処理に戻る。
【００６１】
なお、このステップＳ１０１において、テスト用ＭＦＰ２０の動作を終了する旨の利用者による操作入力を受け付けてもよい。また、上記スキャン処理において受け取られた文書の画像（以下「スキャン画像」という）は、主制御部１３に含まれるスキャン画像管理部１９１により、画像ファイルの形で記憶部１２に保存される。
【００６２】
次にステップＳ１０３において、主制御部１３の検査プログラム１９に含まれる不具合判断部１９２は、上記ステップＳ１０２と同様の通常のスキャン処理を行ったのち、さらに受け取った画像データに含まれる文字をスキャン画像管理部１９１にパターン認識させる。具体的には、画像上の予め定められた位置（例えば脚注部に対応する位置など）に含まれている可能性があるプリンタドライバ情報およびプリンタファーム情報を示す文字をパターン認識する。この文字パターンの認識手法を含む文字の認識手法については周知であるのでその説明を省略する。このような文字認識により、別に上記情報を入力する必要がなくなるので、利用者の手間を省き、検査の自動化を図ることができる。
【００６３】
続くステップＳ１０４において、主制御部１３の検査プログラム１９に含まれる不具合判断部１９２は、スキャン画像にプリンタドライバ情報およびプリンタファーム情報のいずれも含まれていないか否かを判定する。判定の結果、これらの情報のいずれも含まれていない場合（ステップＳ１０４においてＹｅｓの場合）、処理はステップＳ１０５へ進み、上記情報の一方または双方が含まれている場合（ステップＳ１０４においてＮｏの場合）、処理はステップＳ１０８へ進む。
【００６４】
上記情報がいずれも含まれていない場合、ステップＳ１０５において、不具合判断部１９２は、スキャン画像に文書ファイル名が含まれている場合には（周知のパターン認識の手法で）この文字をスキャン画像管理部１９１にパターン認識させることにより文字コードとして抽出し、含まれていない場合には利用者からファイル名の入力を受け付ける。
【００６５】
次にステップＳ１０６において、不具合判断部１９２は、スキャン画像管理部１９１に対して、（ステップＳ１０５において抽出または入力された）上記文書ファイル名と、（ステップＳ１０３におけるスキャン処理により得られた）スキャン画像とを関連づけて、「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」として記憶させる。
【００６６】
次にステップＳ１０７において、不具合判断部１９２は、スキャン画像管理部１９１に対して、ステップＳ１０６において記憶された上記画像に関連づけられた文書ファイル名と同一の文書ファイル名に関連づけられた「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」が存在するかを問い合わせ、当該画像があるか否かを判定する。判定の結果、上記画像がある場合（ステップＳ１０７においてＹｅｓの場合）、ステップＳ２００のテスト１の処理へ進み、上記画像がない場合（ステップＳ１０７においてＮｏの場合）、このままでは不具合を検査する対象が存在しないことになるので新たな文書の画像をスキャンするため、処理はステップＳ１０８へ進む。なお、ステップＳ２００におけるテスト１の詳細な処理内容については、図６を参照して後述する。
【００６７】
続いてステップＳ１０８において、主制御部１３は、操作表示部２１の操作画面上に、モードを切り替え可能である旨の表示を行い、利用者による切り替えのための操作入力を受け付けたのち、モードを切り替える操作入力が受け付けられたか否かを判定する。判定の結果、受け付けられた場合（ステップＳ１０８においてＹｅｓの場合）、処理は前述したステップＳ１０１に戻る。また上記判定の結果、受け付けられない場合（ステップＳ１０８においてＮｏの場合）、処理はステップＳ１０３に戻る。
【００６８】
また（ステップＳ１０４において）スキャン画像にプリンタドライバ情報およびプリンタファーム情報の一方または双方が含まれている場合、ステップＳ１０９において、不具合判断部１９２は、スキャン画像に上記２つの情報のうちプリンタドライバ情報のみが含まれているか否かを判定する。判定の結果、プリンタドライバ情報のみが含まれている場合（ステップＳ１０９においてＹｅｓの場合）、不具合判断部１９２は、スキャン画像管理部１９１に対して、ステップＳ１０３においてスキャン画像から文字認識により得られた文書ファイル名と、当該スキャン画像（および上記プリンタドライバ情報、典型的にはそのバージョン情報）とを関連づけて、「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」として記憶させ（ステップＳ１１０）、ステップＳ３００におけるテスト２の処理に進む。このステップＳ３００におけるテスト２の詳細な処理内容については、図８を参照して後述する。また上記判定の結果、上記２つの情報のうちプリンタドライバ情報のみが含まれているわけではない場合、すなわちここでは２つの情報がともに含まれているかプリンタファーム情報のみが含まれている場合（ステップＳ１０９においてＮｏの場合）、処理は図５に示される続くステップＳ１１１へ進む。
【００６９】
図５は、検査プログラムにおけるステップＳ１１１以降の処理の流れを示すフローチャートである。図５に示されるステップＳ１１１において、不具合判断部１９２は、スキャン画像に上記２つの情報のうちプリンタファーム情報のみが含まれているか否かを判定する。判定の結果、プリンタファーム情報のみが含まれている場合（ステップＳ１１１においてＹｅｓの場合）、不具合判断部１９２は、スキャン画像管理部１９１に対して、ステップＳ１０３においてスキャン画像から文字認識により得られた文書ファイル名と、当該スキャン画像（および上記プリンタファーム情報、典型的にはそのバージョン情報）とを関連づけて、「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」として記憶させ（ステップＳ１１２）、ステップＳ４００におけるテスト３の処理に進む。このステップＳ４００におけるテスト３の詳細な処理内容については、図９を参照して後述する。また上記判定の結果、上記２つの情報のうちプリンタファーム情報のみが含まれているわけではない場合、すなわちここでは２つの情報がともに含まれている場合（ステップＳ１１１においてＮｏの場合）、処理はステップＳ１１３へ進む。
【００７０】
続いてステップＳ１１３において、不具合判断部１９２は、スキャン画像管理部１９１に対して、ステップＳ１０３においてスキャン画像から文字認識により得られた文書ファイル名と、当該スキャン画像（および上記プリンタドライバ情報およびプリンタファーム情報、典型的にはそれらのバージョン情報）とを関連づけて、「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」として記憶させる。
【００７１】
次にステップＳ１１４において、不具合判断部１９２は、スキャン画像管理部１９１に対して、ステップＳ１０６において記憶された上記画像に関連づけられた文書ファイル名と同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」が存在するかを問い合わせ、当該画像があるか否かを判定する。判定の結果、上記画像がある場合（ステップＳ１１４においてＹｅｓの場合）、（その詳細は図６に示される）ステップＳ２００のテスト１の処理へ進み、上記画像がない場合（ステップＳ１１４においてＮｏの場合）、このままでは不具合を検査するための比較対照となるべき不具合のない基準となる画像が存在しないことになるので新たな文書の画像をスキャンするため、処理は前述した図４に示すステップＳ１０８へ戻る。次に、上記ステップＳ２００のテスト１の詳細な処理内容について図６を参照して説明する。
【００７２】
図６は、テスト１の詳細な処理の流れを示すフローチャートである。図６に示されるステップＳ２０１において、不具合判断部１９２は、互いに同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」と「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」とを比較して相違点を抽出する。具体的には、不具合判断部１９２は、不具合がない「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」を基準として、上記２つの画像の差分を取ることにより得られた画像の形状の相違点（例えば一方にのみ線状の画像が現れている）や色の相違点（例えば一方の画像のみが部分的にモノクロである）など各種相違点を抽出したり、２つの画像に含まれる文字を認識することにより文字コードとして得られる文字列を比較することにより文字化けなどの相違点を抽出する。
【００７３】
続くステップＳ２０２において、不具合判断部１９２は、ステップＳ２０１において上記２つの画像に有意な相違点が抽出されたか否かを判定する。判定の結果、相違点がない場合（ステップＳ２０２においてＮｏの場合）、データベース管理部１９３は、後述する図７に示されるような所定の不具合データベースに上記文書ファイル名に関連づけて不具合が無い旨を登録し（ステップＳ２０３）、前述した図４に示すステップＳ１０１へ戻る。また、上記判定の結果、相違点がある場合（ステップＳ２０２においてＹｅｓの場合）、処理はステップＳ２０４へ進む。
【００７４】
次にステップＳ２０４において、データベース管理部１９３は、プリンタドライバやプリンタファームの不具合を示す上記ステップＳ２０１において抽出された相違点（および相違があることを示す後述する「×」という符号）を、図７に示される不具合データベースに上記文書ファイル名に関連づけて登録する。この不具合データベースについて図７を参照して説明する。
【００７５】
図７は、不具合データベースの構造の一例を示す図である。図７に示されるように、この不具合データベースには、文書ファイル名の他、当該文書ファイルを作成したアプリケーションソフトウェア名が記載されており、不具合のない「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」を基準として比較される画像を形成するための用いられたプリンタドライバ名およびプリンタファーム名毎に、不具合が存在する場合は「×」という符号が登録され、不具合が存在しない場合は「○」という符号が登録される。またさらに、文書ファイル名に関連づけられて、後述する処理により判定された不具合の原因が併せて記載されている。
【００７６】
なお、図７に示される「×（仮）」という符号は不具合が仮に（すなわち確定的でない状態で）存在すると判断されたことを示し、「×（決）」という符号は不具合が間違いなく（すなわち確定的な状態で）存在すると判断されたことを示している。これらの符号を上記不具合データベースに登録する処理については後述する。
【００７７】
また、上記不具合データベースは、文書ファイル名に関連づけて不具合が登録される。このことにより、文書ファイルに特有の内容（例えば特定の文字や修飾、画像の形状など）により不具合が引き起こされることを容易に分析することができる。また、文書ファイル名が文字認識されることにより、別に文書ファイル名を入力することなく自動的に上記関連づけを行うことができる。
【００７８】
次に、ステップＳ３００のテスト２の詳細な処理内容について図８を参照して説明する。図８は、テスト２の詳細な処理の流れを示すフローチャートである。図８に示されるステップＳ３０１において、不具合判断部１９２は、ステップＳ１０３において得られ、ステップＳ１１０において記憶された「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」と、この画像の文書ファイル名と同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」とを比較して相違点を抽出する。なお、この「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」が記憶部１２に記憶されていない場合には比較ができないので、ステップＳ１０８の処理に戻るものとする。
【００７９】
続くステップＳ３０２において、不具合判断部１９２は、ステップＳ３０１において上記２つの画像に有意な相違点が抽出されたか否かを判定する。この判定の結果、相違点がある場合（ステップＳ３０２においてＹｅｓの場合）、さらに次のステップＳ３０３において、不具合データベースを参照することにより上記と同一の文書ファイル名に関連づけられた「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」に対して、後述する図９に示されるステップＳ４１０において付される仮の不具合があることを示す「×（仮）」という符号が登録されているか否かを判定する。この判定の結果、登録されている場合（ステップＳ３０３においてＹｅｓの場合）、ステップＳ３０４において、データベース管理部１９３は、登録されている「×（仮）」という符号を不具合が確定的に存在することを示す「×（決）」という符号に変更し、さらに不具合データベースに含まれる原因の項目に対して「テスト用プリンタドライバ」が原因であることを示す記述を（典型的にはそのバージョン情報とともに）登録して、ステップＳ１０１の処理に戻る。また、この判定の結果、登録されていない場合（ステップＳ３０３においてＮｏの場合）、ステップＳ３０５において、データベース管理部１９３は、上記「×（決）」という符号を不具合データベースに新たに登録し、さらに不具合データベースに含まれる原因の項目に対して「テスト用プリンタドライバ」が原因であることを示す記述を（典型的にはそのバージョン情報とともに）登録して、ステップＳ１０１の処理に戻る。なお、既に上記「×（決）」という符号が登録されている場合には再登録する必要はない。また、上記「×（仮）」という符号が登録されることがある点については後述する。
【００８０】
また上記ステップＳ３０２における判定の結果、相違点がない場合（ステップＳ３０２においてＮｏの場合）、さらに次のステップＳ３０６において、不具合判断部１９２は、不具合データベースを参照することにより上記と同一の文書ファイル名に関連づけられた「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」に対して、前述した図６に示されるステップＳ２０４において付される不具合が存在することを示す「×」という符号が登録されているか否かを判定する。この判定の結果、登録されていない場合（ステップＳ３０６においてＮｏの場合）、ステップＳ３０７において、データベース管理部１９３は、不具合データベースにおける上記スキャン画像（すなわち「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」）に対して不具合が無いことを示す上記「○」という符号を登録してステップＳ１０１の処理に戻る。
【００８１】
また上記ステップＳ３０６における判定の結果、不具合が存在することを示す「×」という符号が登録されている場合（ステップＳ３０６においてＹｅｓの場合）、さらに次のステップＳ３０８において、不具合判断部１９２は、不具合データベースを参照することにより上記と同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」に対して、後述する図９に示されるステップＳ４０７において付される不具合が存在しないことを示す「○」という符号が登録されているか否かを判定する。この判定の結果、登録されている場合（ステップＳ３０７においてＹｅｓの場合）、ステップＳ３０９において、データベース管理部１９３は、不具合データベースにおける上記スキャン画像に対して不具合が無いことを示す上記「○」という符号を登録し、さらに不具合データベースに含まれる原因の項目に対して「テスト用プリンタドライバとテスト用プリンタファームとの組み合わせ」が原因であることを示す記述を（典型的にはそのバージョン情報とともに）登録して、ステップＳ１０１の処理に戻る。
【００８２】
また上記ステップＳ３０８における判定の結果、不具合が存在しないことを示す「○」という符号が登録されていない場合（ステップＳ３０６においてＮｏの場合）、ステップＳ３１０において、データベース管理部１９３は、不具合データベースを参照することにより上記と同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」に対して仮の不具合があることを示す「×（仮）」という符号を登録して、ステップＳ１０１の処理に戻る。なお、ここで既に「×（決）」という符号が登録されている場合には上記「×（仮）」という符号は登録されないものとする。
【００８３】
このようにステップＳ３１０において、未だ検査されていない「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」に対して「×（仮）」という符号を登録するのは、「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」に対して不具合が存在することを示す「×」という符号が登録されている場合であっても、テスト用プリンタドライバとテスト用プリンタファームとの組み合わせが原因で不具合が生じていることが確定的でない以上、その確定的でない状態であることを明確にするためである。このようにすれば、不具合データベースに空欄が少なくなり、検査の途中で不具合データベースを参照しても（例えば利用者が下記報告書等を査読することにより）上記確定的でない状態であることを明確に判別することができる。また、このことにより、「×（仮）」という符号が登録されている画像をスキャンして原因を確定させる必要があることも容易に判別することができる。
【００８４】
ここで、上記ステップＳ３０４，Ｓ３０５，Ｓ３０９，Ｓ３１０において、ステップＳ１０１の処理に戻る前に、データベース管理部１９３は、操作表示部１１の操作画面上に、上記不具合データベースの内容を示す所定形式の報告書を印刷する（または単に表示する）か否かの選択を促す案内を表示し、利用者による選択のための操作入力を受け付けて、報告書を印刷する旨の操作入力が受け付けられた場合、テスト用ＭＦＰ２０または基準用ＭＦＰ２００に、上記不具合データベースの内容を示す所定形式の報告書を印刷させた後、ステップＳ１０１の処理に戻る処理が行われてもよい。このような報告書により、利用者は（検査の途中であっても）文書ファイル毎の印刷異常の有無やその原因を容易に知ることができる。
【００８５】
次に、ステップＳ４００のテスト３の詳細な処理内容について図９を参照して説明する。図９は、テスト３の詳細な処理の流れを示すフローチャートである。この図９に示されるフローチャートは、図８に示されるフローチャートと比較すればわかるように同一の処理の流れである。しかし、図９に示されるステップＳ４０１においては、図８に示されるステップＳ３０１とは異なり、「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」ではなく、「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」と、「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」とが比較され相違点が抽出される。このことに応じて、図９に示される以下のステップＳ４０２〜Ｓ４１０は、図８に示されるステップＳ４０２〜Ｓ４１０とは異なる処理対象となっているが、これらの処理内容は同様である。したがって図９に示す各処理に関する詳しい説明は省略する。
【００８６】
なお、ステップＳ４０３においては、図８に示されるステップＳ３１０において付される仮の不具合があることを示す「×（仮）」という符号が登録されているか否かが判定される。また、ステップＳ４０４，Ｓ４０５，Ｓ４０９，Ｓ４１０において、上記ステップＳ３０４，Ｓ３０５，Ｓ３０９，Ｓ３１０と同様に、ステップＳ１０１の処理に戻る前に、データベース管理部１９３は、利用者の指示に応じて所定形式の報告書を印刷してもよい。
【００８７】
＜５．  効果＞
以上のように本実施形態では、テスト用プリンタドライバ１７および基準用プリンタドライバ１８により、テスト用ＭＦＰ２０および基準用ＭＦＰ２００に所定の文書を印刷させた後に、検査プログラム１９により上記印刷された文書をスキャンすることにより取得した各画像を使用して、互いに同一の文書ファイル名に関連づけられた「基準用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」を基準として、「基準用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」、「テスト用プリンタドライバおよび基準用プリンタファームを用いて印刷した画像」、および「テスト用プリンタドライバおよびテスト用プリンタファームを用いて印刷した画像」をそれぞれ比較することにより、不具合を検出する構成により、印刷異常の原因がテスト用ＭＦＰ２０のファームウェア（印刷装置）およびテスト用プリンタドライバ１７（印刷制御装置）のいずれにあるか（またはその組み合わせにあるのか）を自動的に特定することができる。
【００８８】
＜６．  変形例＞
上記実施形態における基準用プリンタドライバ１８は、データ処理装置１０に備えられ、ドライバ切替部１６により適宜切り替えられる構成であるが、このドライバ切替部１６が省略され、他のデータ処理装置１１０のみが基準用プリンタドライバ１８を備える構成であってもよい。その場合には、利用者によって印刷に使用されるべきデータ処理装置が適宜選択されることになる。
【００８９】
上記実施形態における検査プログラム１９の各構成要素の一部または全部の機能は、アプリケーションプログラム１５またはテスト用プリンタドライバ１７もしくは基準用プリンタドライバ１８などのプログラムにより実現されてもよい。また、上記各実施形態における検査プログラム１９の各構成要素の一部または全部の機能は、テスト用ＭＦＰ２０に含まれる主制御部２３により実現されてもよい。例えば、データ処理装置１０の主制御部１３に含まれる検査プログラム１９が省略され、テスト用ＭＦＰ２０に含まれる主制御部２３にこの検査プログラム１９に相当する全ての構成要素が備えられ、この構成要素により、テスト用プリンタドライバ１７およびテスト用ＭＦＰ２０のプリンタファームウェアのいずれに不具合があるかが検査されてもよい。この場合には上記データ処理装置１０の機能の一部がテスト用ＭＦＰ２０に含まれることになるので、テスト用ＭＦＰ２０もまたデータ処理装置であるといえる。
【００９０】
また、上記実施形態における検査プログラム１９の各構成要素の一部または全部の機能は、データ処理装置１１０または図示されないプリントサーバのみにより実現されてもよい。例えば、データ処理装置１１０が検査プログラム１９の各構成要素の全部の機能を備える場合、データ処理装置１０は、テスト用ＭＦＰ２０および基準用ＭＦＰ２００により所定の用紙上に所定の文書データを印刷し、データ処理装置１１０は、印刷された用紙上の画像をスキャンし以上を判定する処理を行うことになる（Ｓ１０１〜）。
【００９１】
上記実施形態におけるテスト用ＭＦＰ２０に備えられるスキャナ部２６および主制御部２３の画像読み取り部２３３は、基準用ＭＦＰ２００にのみ備えられていてもよいし、図示されないスキャナ装置に備えられていてもよい。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施形態に係るデータ処理装置およびプリンタ（印刷装置）の機能的な構成を示すブロック図である。
【図２】上記実施形態におけるプリンタドライバ等の処理の流れを示すフローチャートである。
【図３】上記実施形態におけるテスト用ＭＦＰにおける主制御部の処理の流れを示すフローチャートである。
【図４】上記実施形態における検査プログラム等の処理の流れを示すフローチャートである。
【図５】上記実施形態の検査プログラムにおけるステップＳ１１１以降の処理の流れを示すフローチャートである。
【図６】上記実施形態におけるテスト１の詳細な処理の流れを示すフローチャートである。
【図７】上記実施形態における不具合データベースの構造の一例を示す図である。
【図８】上記実施形態におけるテスト２の詳細な処理の流れを示すフローチャートである。
【図９】上記実施形態におけるテスト３の詳細な処理の流れを示すフローチャートである。
【符号の説明】
【００９３】
１０，１０１  …データ処理装置
１１，２１  …操作表示部
１２，２２  …記憶部
１３，２３  …主制御部
１４，２４…通信制御部
１５  …アプリケーションプログラム
１６  …ドライバ切替部
１７  …テスト用プリンタドライバ
１８  …基準用プリンタドライバ
１９  …検査プログラム
２０  …テスト用ＭＦＰ（印刷装置）
２５  …プリント部
２６  …スキャン部
３０  …ＬＡＮ
１５１  …文書印刷指示部
１７１  …情報付加部
１７２  …ＰＤＬデータ生成部
１９１  …スキャン画像管理部
１９２  …不具合判断部
１９３  …データベース管理部
２００  …基準用ＭＦＰ（印刷装置）
２３１  …情報追記部
２３２  …ビットマップデータ生成部
２３３  …画像読み取り部
【図１】
2007300351.tif 000003
【図２】
2007300351.tif 000004
【図３】
2007300351.tif 000005
【図４】
2007300351.tif 000006
【図５】
2007300351.tif 000007
【図６】
2007300351.tif 000008
【図７】
2007300351.tif 000009
【図８】
2007300351.tif 000010
【図９】
2007300351.tif 000011