(57)【要約】【課題】  以前に印刷が行われた文書に対する印刷要求をより効率的に処理できるようにするとともに、以前の文書から変更された印刷要求であってもその変更した箇所のページのみに対して所定の処理を行うことでより効率的に処理できるようにする。【解決手段】  印刷要求された画像データを構成するページをページ検出部１０４で検出し、各ページのデータサイズをページデータサイズ計算部１０５で計算する。計算した各ページのデータサイズと、印刷ログ記憶部１１５から取得したその画像データを以前に処理した際の各ページのデータサイズとをサイズ比較部１０７で比較する。同一であるページは以前に判断した配色情報を用いて印刷部１１６で印刷出力し、異なるページはモノクロ判断部１０８でモノクロ判断を行ってその判断結果である配色情報に基づいて印刷部１１６で印刷出力する。【選択図】図１
2009218902.tif 000002
【特許請求の範囲】
【請求項１】
過去に印刷した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かの白黒判別結果を該印刷データの識別情報に対応して管理する管理手段と、
印刷データを受信する印刷データ受信手段と、
前記印刷データ受信手段で受信した印刷データの識別情報が前記管理手段で管理されている識別情報と一致するか否かを判断する判断手段と、
前記判断手段により前記識別情報が一致すると判断された場合は、該識別情報に対応して前記管理手段により管理されている前記白黒判別結果に基づき前記印刷データ受信手段で受信した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かを判別し、一致しないと判断された場合は、前記印刷データ受信手段で受信した印刷データの各頁毎に解析して各頁が白黒以外の色を含まない白黒画像であるか否かを判別する判別手段と
を具備する画像形成装置。
【請求項２】
前記管理手段は、
各頁毎の白黒判別結果を各頁の頁識別情報に対応して管理し、
前記判断手段は、
前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記頁識別情報が前記印刷データ受信手段で受信した印刷データの頁識別情報と一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該頁の白黒判別結果に基づき判別し、前記頁識別情報が前記印刷データ受信手段で受信した印刷データの各頁の頁識別情報と一致しない場合は、該頁の印刷データを解析して頁が白黒以外の色を含まない白黒画像であるか否かを判別する請求項１記載の画像形成装置。
【請求項３】
前記管理手段は、
各頁毎の白黒判別結果を各頁のデータサイズに対応して管理し、
前記判断手段は、
前記印刷データ受信手段で受信した印刷データの各頁のデータサイズを算出する算出手段
を具備し、
前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記管理手段により管理されている該当頁のデータサイズが前記算出手段により算出した該当頁のデータサイズと一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該当頁の白黒判別結果に基づき判別し、前記管理手段により管理されている該当頁のデータサイズが前記算出手段により算出した該当頁のデータサイズと一致しない場合は、該頁の印刷データを解析して該頁が白黒以外の色を含まない白黒画像であるか否かを判別する請求項１記載の画像形成装置。
【請求項４】
前記管理手段は、
各頁毎の白黒判別結果を各頁のデータを所定のハッシュ関数で算出したハッシュ値に対応して管理し、
前記判断手段は、
前記印刷データ受信手段で受信した印刷データの各頁のデータから前記ハッシュ関数を用いてハッシュ値を算出する算出手段
を具備し、
前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記管理手段により管理されている該当頁のハッシュ値が前記算出手段により算出した該当頁のハッシュ値と一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該当頁の白黒判別結果に基づき判別し、前記管理手段により管理されている該当頁のハッシュ値が前記算出手段により算出した該当頁のハッシュ値と一致しない場合は、該頁の印刷データを解析して該頁が白黒以外の色を含まない白黒画像であるか否かを判別する請求項１記載の画像形成装置。
【請求項５】
コンピュータを、
過去に印刷した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かの白黒判別結果を該印刷データの識別情報に対応して管理する管理手段、
印刷データを受信する印刷データ受信手段、
前記印刷データ受信手段で受信した印刷データの識別情報が前記管理手段で管理されている識別情報と一致するか否かを判断する判断手段、
前記判断手段により前記識別情報が一致すると判断された場合は、該識別情報に対応して前記管理手段により管理されている前記白黒判別結果に基づき前記印刷データ受信手段で受信した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かを判別し、一致しないと判断された場合は、前記印刷データ受信手段で受信した印刷データの各頁毎に解析して各頁が白黒以外の色を含まない白黒画像であるか否かを判別する判別手段
として機能させる画像形成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置および画像形成プログラムに関する。
【背景技術】
【０００２】
作成した電子文書の印刷に用いる配色として、当該電子文書を白黒の２値で印刷するモノクロ印刷のほか、白黒以外の他の色をも用いて印刷するカラー印刷がある。一般にカラー印刷では、ＣＭＹＫ（Cyan、Magenta、Yellow、Keycolor）、ＲＧＢ（Red、Green、Blue）の色料を混合、減色させて印字媒体に印字することにより表現する。
【０００３】
カラー印刷によって印刷された文書はその視認性により、多くの情報を伝えることができるため、複数の色が設定されて作成された文書を印刷出力する際にはカラー印刷が好まれる傾向にある。特に、多くの印刷装置にカラー印刷機能が搭載されていることからもそのカラー印刷の需要が増加している。
【０００４】
このカラー印刷は、白黒の２値で行うモノクロ印刷に比べて多くの色料を使用するためランニングコストが増加する。このため、従来よりカラー印刷の出力制限を行い、そのランニングコストを最小限に抑えることを可能にする技術を用いることによりこのランニングコストを低減している。
【０００５】
この技術では、印刷出力時にカラー印刷であるかモノクロ印刷であるかを識別する必要がある。特に、複数のページからなる文書である場合には各ページに対してこの識別処理を行う必要があり、出力制限により印刷途中で停止してしまうことにより不完全な印刷が行われてしまうことがある。
【０００６】
特許文献１では、印刷データを中間コードに変換してその後、この中間データを元に印刷データの色属性を判断して、その色属性を元に印刷出力を行うという技術である。また、特許文献２では、描画オブジェクトをページ単位で中間データとしてスプールし、その中間データに少なくともカラーデータが含まれるかを判断して色処理モードを決定する。この色処理モードに基づいて前記中間データから生成された印刷データを印刷装置で印刷出力するという技術である。
【特許文献１】特開平１０−２８５４２１号公報
【特許文献２】特開２００４−３３４７０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
印刷要求された文書に対してモノクロ印刷で印刷出力を行うかカラー印刷で印刷出力を行うかが判断されることから、この判断に多くの時間を要することとなる。すなわち、同じ文書を何度かに分けて、印刷出力する場合にもこれらの判断が行われることになる。
【０００８】
そこで、本発明は、以前に印刷が行われた文書に対する印刷要求をより効率的に処理できるようにするとともに、以前の文書から変更された印刷要求であってもその変更した箇所のページのみに対して所定の処理を行うことでより効率的に処理できるようにした画像形成装置および画像形成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１の発明は、過去に印刷した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かの白黒判別結果を該印刷データの識別情報に対応して管理する管理手段と、印刷データを受信する印刷データ受信手段と、前記印刷データ受信手段で受信した印刷データの識別情報が前記管理手段で管理されている識別情報と一致するか否かを判断する判断手段と、前記判断手段により前記識別情報が一致すると判断された場合は、該識別情報に対応して前記管理手段により管理されている前記白黒判別結果に基づき前記印刷データ受信手段で受信した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かを判別し、一致しないと判断された場合は、前記印刷データ受信手段で受信した印刷データの各頁毎に解析して各頁が白黒以外の色を含まない白黒画像であるか否かを判別する判別手段とを具備する。
【００１０】
また、請求項２の発明は、請求項１の発明において、前記管理手段は、各頁毎の白黒判別結果を各頁の頁識別情報に対応して管理し、前記判断手段は、前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記頁識別情報が前記印刷データ受信手段で受信した印刷データの頁識別情報と一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該頁の白黒判別結果に基づき判別し、前記頁識別情報が前記印刷データ受信手段で受信した印刷データの各頁の頁識別情報と一致しない場合は、該頁の印刷データを解析して頁が白黒以外の色を含まない白黒画像であるか否かを判別する。
【００１１】
また、請求項３の発明は、請求項１の発明において、前記管理手段は、各頁毎の白黒判別結果を各頁のデータサイズに対応して管理し、前記判断手段は、前記印刷データ受信手段で受信した印刷データの各頁のデータサイズを算出する算出手段を具備し、前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記管理手段により管理されている該当頁のデータサイズが前記算出手段により算出した該当頁のデータサイズと一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該当頁の白黒判別結果に基づき判別し、前記管理手段により管理されている該当頁のデータサイズが前記算出手段により算出した該当頁のデータサイズと一致しない場合は、該頁の印刷データを解析して該頁が白黒以外の色を含まない白黒画像であるか否かを判別する。
【００１２】
また、請求項４の発明は、請求項１の発明において、前記管理手段は、各頁毎の白黒判別結果を各頁のデータを所定のハッシュ関数で算出したハッシュ値に対応して管理し、前記判断手段は、前記印刷データ受信手段で受信した印刷データの各頁のデータから前記ハッシュ関数を用いてハッシュ値を算出する算出手段を具備し、前記判断手段により前記印刷データ識別情報が一致すると判断され、かつ前記管理手段により管理されている該当頁のハッシュ値が前記算出手段により算出した該当頁のハッシュ値と一致した場合は、該頁が白黒以外の色を含まない白黒画像であるか否かを前記管理手段により管理されている該当頁の白黒判別結果に基づき判別し、前記管理手段により管理されている該当頁のハッシュ値が前記算出手段により算出した該当頁のハッシュ値と一致しない場合は、該頁の印刷データを解析して該頁が白黒以外の色を含まない白黒画像であるか否かを判別する。
【００１３】
また、請求項５の発明は、コンピュータを、過去に印刷した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かの白黒判別結果を該印刷データの識別情報に対応して管理する管理手段、印刷データを受信する印刷データ受信手段、前記印刷データ受信手段で受信した印刷データの識別情報が前記管理手段で管理されている識別情報と一致するか否かを判断する判断手段、前記判断手段により前記識別情報が一致すると判断された場合は、該識別情報に対応して前記管理手段により管理されている前記白黒判別結果に基づき前記印刷データ受信手段で受信した印刷データの各頁が白黒以外の色を含まない白黒画像であるか否かを判別し、一致しないと判断された場合は、前記印刷データ受信手段で受信した印刷データの各頁毎に解析して各頁が白黒以外の色を含まない白黒画像であるか否かを判別する判別手段として機能させる。
【発明の効果】
【００１４】
本発明の請求項１によれば、以前に印刷が行われた文書に対する印刷要求をより効率的に処理できるようになるという効果を奏する。
【００１５】
また、請求項２によれば、以前に印刷が行われた文書に対する印刷要求をページ単位でより効率的に処理できるようになるという効果を奏する。
【００１６】
また、請求項３によれば、以前に印刷が行われた文書の白黒判別結果をデータサイズに基づいて管理することで、より高速に処理が可能になるという効果を奏する。
【００１７】
また、請求項４によれば、ハッシュ値によって以前に印刷された文書と印刷要求された文書とを比較することにより、より高い精度で変更箇所の有無を判断できるようになるという効果を奏する。
【００１８】
また、請求項５によれば、以前に印刷が行われた文書に対する印刷要求をより効率的に処理できるようになるという効果を奏する。
【発明を実施するための最良の形態】
【００１９】
以下、本発明に係わる画像形成装置および画像形成プログラムの一実施例を添付図面を参照して詳細に説明する。
【実施例１】
【００２０】
図１は、本発明の実施の形態における画像形成装置および画像形成プログラムを適用して構成した画像形成装置の装置構成図の一例である。
【００２１】
図１において、画像形成装置は、インターフェース部１０１、蓄積制御部１０２、ジョブ情報検出部１０３、ページ検出部１０４、ページデータサイズ計算部１０５、ジョブ情報比較部１０６、サイズ比較部１０７、モノクロ判断部１０８、スプール１０９、一時記憶部１１０、描画制御部１１１、描画部１１２、印刷制御部１１３、印刷ログ制御部１１４、印刷ログ記憶部１１５、印刷部１１６を具備する構成であり、この画像形成装置の一例として、以下では印刷装置（プリンタ）を例に説明する。
【００２２】
インターフェース部１０１は、外部のクライアント端末と情報通信を行う接続部であり、そのクライアント端末には、当該印刷装置で印刷出力が可能な画像データを生成することが可能なプリンタドライバがインストールされている。
【００２３】
このクライアント端末では、所定のアプリケーションを用いてアプリケーション文書を作成し、ユーザがこのアプリケーション文書に対して印刷指示を行うことにより、プリンタドライバのＰＤＬ生成部（図示せず）がＰＤＬ形式の印刷ジョブデータ（以下、「ＰＤＬ（Page Description Language）データ」という）を生成する。
【００２４】
ＰＤＬデータ生成部により生成されたＰＤＬデータは、印刷装置の印刷部１１６により印刷処理可能な形式で記述されたデータであって、作成元となった文書の文書名や印刷指示を行ったユーザの名称、さらにはそのアプリケーション文書を一意に識別する「文書ＩＤ」やその文書の特徴を示す値等が設定されている。
【００２５】
なお、この文書の特徴を示す値の一例として、例えば文書の大きさを示すデータサイズがある。
【００２６】
このようなＰＤＬデータを生成したクライアント端末では、このＰＤＬデータを印刷装置に送信する。これにより、印刷装置のインターフェース部１０１がそのＰＤＬデータを受信し、印刷装置での処理を開始する。
【００２７】
インターフェース部１０１でＰＤＬデータを受信すると、このインターフェース部１０１はそのＰＤＬデータを蓄積制御部１０２へと転送する。蓄積制御部１０２では、受信したＰＤＬデータの解析処理を行うことにより、ジョブ情報検出部１０３、ページ検出部１０４、ページデータサイズ計算部１０５、ジョブ情報比較部１０６、サイズ比較部１０７での所定の処理を可能とする。
【００２８】
この蓄積制御部１０２では、解析後のＰＤＬデータをジョブ情報検出部１０３へと送信して当該ＰＤＬデータに設定されたジョブ情報の検出要求を行う。
【００２９】
この検出要求を受けたジョブ情報検出部１０３では、ＰＤＬデータの文書に設定されたユーザ名やファイル名、文書ＩＤ、そのＰＤＬデータの特徴を示す値などのジョブ情報を検出する。これらを検出すると、ジョブ情報検出部１０３では、これらのジョブ情報およびＰＤＬデータをページ検出部１０４に送信して、ページの検出要求を行う。このジョブ情報検出部１０３は、さらにジョブ情報比較部１０６に対して検出したジョブ情報を送信する。
【００３０】
まず、ページ検出部１０４では、ジョブ情報検出部１０３よりページ検出要求を受信することにより、ＰＤＬデータの先頭ページおよび最終ページを検出する処理を行う。この検出処理によって各ページに分割された１または複数のページからなるＰＤＬデータを、ページデータサイズ計算部１０５とサイズ比較部１０７に送信する。さらに、ページ全体に対する各ページのページ数をサイズ比較部１０７へ送信する。
【００３１】
次に、ジョブ情報比較部１０６では、ジョブ情報検出部１０３からジョブ情報を受信することにより、ジョブ情報検出部１０３で検出したジョブ情報と、印刷ログ記憶部１１５で記憶するＰＤＬデータの印刷履歴の情報（以下、「印刷ログ」という）に含まれるジョブ情報とを比較して、ジョブ情報検出部１０３で検出したジョブ情報が印刷ログとして記憶されているかを判断する。
【００３２】
これに際して、ジョブ情報比較部１０６は、印刷ログ制御部１１４を介して印刷ログ記憶部１１５で記憶する印刷ログを取得する。印刷ログ記憶部１１５では、図４に示すようなジョブ情報からなる印刷ログを記憶しており、印刷要求されたＰＤＬデータと同一のＰＤＬデータが過去に印刷出力されているか否かの判断に用いる。
【００３３】
そして、ジョブ情報比較部１０６は、ジョブ情報検出部１０３で検出したジョブ情報が印刷ログとして記憶されているかの結果をモノクロ判断部１０８へと送信する。
【００３４】
なお、その結果が同一のジョブ情報を持つ印刷ログが印刷ログ記憶部１１５に記憶しており、印刷要求されたＰＤＬデータを過去、印刷したことがあると判断するという結果である場合には、その結果に加えて、その印刷出力時の印刷ログを特定するログ識別情報をサイズ比較部１０７へと送信する。
【００３５】
それに対して、ジョブ情報比較部１０６による比較結果が、印刷要求されたＰＤＬデータのジョブ情報と同一のジョブ情報を持つ印刷ログが存在しないという結果である場合には、印刷要求された現時点において、当該ＰＤＬデータと同一のデータを印刷出力したことがないものと判断して、そのことを示す比較結果のみをサイズ比較部１０７に送信する。
【００３６】
続いて、ページ検出部１０４から送信されたページ単位のＰＤＬデータをページデータサイズ計算部１０５が受信し、各ページのＰＤＬデータに対してデータサイズを計算する。ページ毎のデータサイズが計算されると、そのデータサイズをサイズ比較部１０７に送信し、さらに当該ページ毎のＰＤＬデータをスプール１０９へと記憶する。
【００３７】
このスプール１０９は、印刷処理対象となるＰＤＬデータを記憶しておく記憶領域であって、スプール１０９に記憶されたＰＤＬデータがページ単位で順次、印刷処理される。
【００３８】
そして、サイズ比較部１０７は、ジョブ情報比較部１０６から比較結果とログ識別情報もしくは比較結果のみを受信する。
【００３９】
まず、サイズ比較部１０７がジョブ情報比較部１０６より比較結果とログ識別情報を受信した場合、当該ログ識別情報より識別される印刷ログを印刷ログ制御部１１４を介して印刷ログ記憶部１１５から取得する。取得した印刷ログに含まれるページ毎のデータサイズと、ページデータサイズ計算部１０５から受信したページごとのデータサイズとを比較して、同一のデータサイズであるかをページ検出部１０４から受信したページ数に基づいてページごとに判断する。そして、この判断結果と印刷ログとをモノクロ判断部１０８へ送信する。
【００４０】
このとき、モノクロ判断部１０８では、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていると判断する結果であり、かつ、サイズ比較部１０７から受信した判断結果が、印刷ログのジョブ情報として記憶するデータサイズと印刷要求されたＰＤＬデータから計算したデータサイズとが同一のデータサイズであると判断する結果である場合、印刷ログのジョブ情報として示されるモノクロ判断結果に基づいてＰＤＬデータのモノクロ判断を行う。
【００４１】
また、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていないと判断する結果である場合には、サイズ比較部１０７から受信した判断結果を問わず、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。なお、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていると判断する結果である場合も、ハッシュ値比較部５０２から受信した判断結果が、印刷ログのジョブ情報として記憶するデータサイズと印刷要求されたＰＤＬデータから計算したデータサイズとが同一のデータサイズでないと判断する結果である場合にも同様に、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。
【００４２】
次に、サイズ比較部１０７がジョブ情報比較部１０６より比較結果のみを受信した場合、サイズ比較部１０７では、印刷ログ制御部１１４を介して取得した印刷ログをモノクロ判断部１０８へと転送する処理（ブリッジ）を行う。ちなみに、この場合、ジョブ情報比較部１０６から受信した比較結果が、過去に印刷出力を行ったＰＤＬと同一ではないことを示していることから、印刷ログのジョブ情報ではなく、印刷要求されたＰＤＬデータからモノクロ判断を行う必要がある。
【００４３】
よって、このときのモノクロ判断部１０８は、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。
【００４４】
そして、このモノクロ判断部１０８によって行われるモノクロ判断処理は、ＰＤＬデータのページごとに配色情報を判断する処理であって、ページ全体が白黒の２色での印刷出力が指示されていることにより当該ページはモノクロ印刷を行うページであると判断する。それに対して、白黒の２色での印刷出力が指示されていると判断できない場合はカラー印刷を行うページであると判断する処理である。
【００４５】
このようにして判断した判断結果を一時記憶部１１０へと記憶する。一時記憶部１１０は、印刷出力における作業領域であり、スプール１０９に記憶するＰＤＬデータに関する諸データを一時的に記憶する。
【００４６】
そして、描画制御部１１１は、スプール１０９に記憶するページ毎のＰＤＬデータを順次読み出し、さらに一時記憶部１１０に記憶されている当該ＰＤＬデータに対するモノクロであるか否かの判断結果を読み出す。これにより、読み出したＰＤＬデータとともにモノクロ判断結果に基づいて、ページごとにモノクロ印刷であるかカラー印刷であるかを指定した描画制御情報を作成して描画部１１２へ送信する。
【００４７】
描画部１１２では、受信したページごとのＰＤＬデータを、描画制御情報に基づいてビットマップ展開して印刷制御部１１３へと転送する。この描画部１１２は、ＰＤＬデータから中間言語形式のデータを生成する生成部を有し、この中間言語形式のデータをスプール１０９に記憶しておくような構成であってもよい。
【００４８】
この場合、スプール１０９では、ＰＤＬ形式の印刷データから生成した中間言語形式のデータを記憶し、モノクロ判断部１０８は中間言語形式のデータを用いてモノクロであるかを判断する。
【００４９】
そして、描画部１１２からビットマップ展開された印刷データを受信した印刷制御部１１３では描画制御情報に基づいてビットマップ展開された各ページを印刷部１１６に送信することで、印刷部１１６が印刷出力を行う。
【００５０】
印刷部１１６で印刷処理が完了すると、印刷制御部１１３は、印刷ログ制御部１１４に対して印刷部１１６で印刷出力を行ったＰＤＬデータに関するさまざまな情報を印刷ログ記憶部１１５に印刷ログとして記憶する。
【００５１】
例えば、ユーザ名、ファイル名、文書ＩＤ、印刷日時、ページごとのモノクロ判断結果、ページごとのＰＤＬデータサイズ等を記憶する。
【００５２】
この印刷ログ記憶部１１５が記憶する印刷ログの一例を図４に示しており、以下で説明する。
【００５３】
図４に示す印刷ログは、[文書ＩＤ]項目４０１、[ユーザ名]項目４０２、[ファイル名]項目４０３、[ページごとのデータサイズ]項目４０４、[モノクロ結果]項目４０５、[印刷日時]項目４０６から構成される。
【００５４】
[文書ＩＤ]項目４０１は、文書を一意に識別する情報であり、[ユーザ名]項目４０２は、印刷処理対象の文書を作成した若しくは所有するユーザの名称であり、[ファイル名]項目４０３は、文書の名称である。
【００５５】
また、[ページごとのデータサイズ]項目４０４は、各ページのデータサイズを示す項目であり、[モノクロ結果]項目４０５は、図１に示すモノクロ判断部１０８でモノクロ判断処理を行った処理結果を示す項目であり、モノクロであると判断されたページには「モノクロ」と示され、モノクロであると判断されないページには「カラー」と示されている。
【００５６】
さらに、[印刷日時]項目４０６は、図１に示す印刷部１１６によって印刷出力が行われた日時を表す情報である。
【００５７】
図１に示すモノクロ判断部１０８では、ジョブ情報比較部１０６におけるジョブ情報の比較結果で印刷処理対象のＰＤＬデータのジョブ情報が印刷ログとして記録されていると判断され、サイズ比較部１０７によって同一のデータサイズであると判断された場合に、図４に示す印刷ログを参照してページ毎にそのページがモノクロ印刷であるかカラー印刷であるかを判断する。
【００５８】
以下では、本発明の実施の形態における画像形成装置で行われる処理の詳細を図２と図３に示すフローチャートを用いて説明する。
【００５９】
図２および図３は、ＰＤＬデータの各ページにおけるデータサイズを用いて、過去に印刷出力されたＰＤＬデータと同じＰＤＬデータの印刷出力であるかを比較して処理を行うフローチャートである。
【００６０】
図２および図３に示すフローチャートは、図１に示す構成に基づいて行われる処理の流れを示している。
【００６１】
図２において、画像形成装置である印刷装置が、当該印刷装置に対応したプリンタドライバがインストールされたクライアント端末から処理対象の文書を印刷形式で表したＰＤＬデータの印刷要求を受信すると処理が開始される。
【００６２】
まず、受信したＰＤＬデータを解析することにより当該ＰＤＬデータからユーザ名やファイル名等のジョブ情報を検出する（２０１）。このとき、検出するジョブ情報としてユーザ名やファイル名のほか、印刷対象の文書を識別する文書ＩＤや文書の特徴を示す値などを検出する。
【００６３】
次に、過去の印刷履歴として記憶している印刷ログを取り出し（２０２）、その印刷ログのジョブ情報としてユーザ名およびファイル名を取得する（２０３）。ＰＤＬデータから検出したユーザ名およびファイル名と、印刷ログのジョブ情報から取得したこれらの情報とを比較し同一であるかを判断する（２０４）。
【００６４】
同一でない場合（２０４でＮＯ）には、受信したＰＤＬデータを印刷出力時の作業記憶領域であるスプールに蓄積し（２０５）、蓄積したＰＤＬデータを構成する各ページのデータサイズを算出する（２０６）。
【００６５】
ページごとのデータサイズを算出後、スプールに記憶したＰＤＬデータを読み出し（２０７）、ＰＤＬデータの各ページがモノクロで構成されたページであるかを判断する（２０８）。算出した各ページのデータサイズおよび当該ページに対するモノクロであるかの判断結果を一時記憶領域に一時記憶する（２０９）。
【００６６】
その後、スプールに記憶するＰＤＬデータを取り出し（２１０）、さらに一時記憶領域に記憶するページごとのモノクロであるかの判断結果を取り出す（２１１）。取り出したＰＤＬデータをモノクロであるかの判断結果に基づいて印刷処理を行う（２１２）。
【００６７】
この印刷処理は、取り出したＰＤＬデータのページごとに判断したモノクロであるか否かの判断結果に基づいて行う印刷処理であって、モノクロであると判断された場合には、白黒の二色印刷を行う。また、モノクロであると判断されていない場合には、カラー印刷を行う。
【００６８】
このような印刷処理が完了すると、ＰＤＬデータから検出した「ユーザ名・ファイル名・印刷日時・ページごとのモノクロ判断結果・ページごとのＰＤＬデータサイズ」を印刷ログのジョブ情報として保存する（２１３）。
【００６９】
これに対して、受信したＰＤＬデータから検出したユーザ名およびファイル名と印刷ログから取り出したこれらの情報とが同一であると判断される場合（２０４でＹＥＳ）には、図３に示すフローチャートの位置「Ａ」から処理が行われる。
【００７０】
図３に示すフローチャートは、クライアント端末から受信したＰＤＬデータから１ページ分のＰＤＬデータを読み込み（２１４）、読み込んだ１ページ分のＰＤＬデータをスプールに蓄積する（２１５）。通常、先頭ページから順次１ページづつ読み込んでいくが、これに限定されず、いずれかのページを読み込むような構成であってもよい。
【００７１】
下記では、先頭ページから最後ページの順で、読み込んでいき、各ページに対して処理を行う処理の流れを示す。
【００７２】
まず、読み込んだ１ページ分のデータが先頭ページである場合において、このとき、スプールに蓄積した先頭ページ１ページ分のＰＤＬデータのデータサイズを算出する（２１６）。続いて、印刷ログとして記憶する当該ＰＤＬデータの先頭ページのデータサイズを取り出し（２１７）、算出した先頭ページのデータサイズと印刷ログから取り出した先頭ページのデータサイズとが同一であるかを判断する（２１８）。
【００７３】
これらのデータサイズが同一である場合（２１８でＹＥＳ）には、印刷ログのジョブ情報として記憶する当該先頭ページがモノクロであるかの判断結果を取り出す（２１９）。それに対して、これらのデータサイズが同一でない場合（２１８でＮＯ）には、スプールに記憶しているＰＤＬデータの先頭ページを読み出し（２２０）、その先頭ページがモノクロであるかを判断する（２２１）。そして、ＰＤＬデータの先頭ページに対してモノクロであるかを判断した判断結果を一時記憶領域に一時記憶する（２２２）。
【００７４】
そして、このようにして得た判断結果がＰＤＬデータの最後のページであるか判断して（２２３）、最後のページである場合（２２３でＹＥＳ）には、図２に示す位置「Ｃ」から処理を行う。すなわち、スプールに記憶しているＰＤＬデータを取り出し（２１０）、上記の処理で一時記憶領域に記憶したモノクロであるかの判断結果を用いて（２１１）取り出したＰＤＬデータをその判断結果に基づく印刷処理を行う（２１２）。
【００７５】
それに対して、上記に示すような先頭ページに対して処理が行われている場合には、最後のページでないと判断される（２２３でＮＯ）。この場合、続いて、印刷ログのジョブ情報の最後ページとの比較であったかを判断する（２２４）。
【００７６】
すなわち、印刷要求されたＰＤＬデータから検出したユーザ名およびファイル名と印刷ログから取り出したこれらの情報とが同一であると判断された場合であっても、印刷要求されたＰＤＬデータのページ数が追加されている場合等がある。この場合の新たに追加されたページに対しては印刷ログのジョブ情報にモノクロの判断結果を記憶していないことから、この追加されたページがモノクロであるかを判断する必要がある。
【００７７】
よって、印刷ログとして記憶するジョブ情報の最後のページとの比較である場合（２２４でＹＥＳ）には、図２に示すフローチャートの位置「Ｂ」から処理が行われる。
【００７８】
ちなみに、印刷ログが最後のページであるかの判断処理（２２４）は、処理対象のＰＤＬデータが最後のページではない場合に行われる処理であって、印刷ログデータが最終ページである場合（２２４でＹＥＳ）は、処理対象のＰＤＬデータよりも印刷ログデータの方がページ数が少ない状態を示している。すなわち、図２に示す（Ｂ）の位置から行われる処理では、印刷ログデータと比較対象のないＰＤＬデータのページに対してデータサイズを算出し、モノクロであるかの判断を行い、その判断結果に基づいて印刷処理を行うというものである。
【００７９】
それに対して、最後のページでない場合（２２４でＮＯ）には、ＰＤＬデータの次のページと印刷ログの次ページに対して上記の処理（２１４から２２２）を再度実行する。先頭ページに対して上記の処理が行われている場合、２ページ目以降のページに対して処理を行う。
【実施例２】
【００８０】
図５は、本発明の実施の形態における画像形成装置および画像形成プログラムを適用して構成した画像形成装置の装置構成図の一例である。
【００８１】
図５において、画像形成装置は、インターフェース部１０１、蓄積制御部１０２、ジョブ情報検出部１０３、ページ検出部１０４、ジョブ情報比較部１０６、モノクロ判断部１０８、スプール１０９、一時記憶部１１０、描画制御部１１１、描画部１１２、印刷制御部１１３、印刷ログ制御部１１４、印刷ログ記憶部１１５、印刷部１１６、ハッシュ値計算部５０１、ハッシュ値比較部５０２を具備する構成である。
【００８２】
この図５に示す構成は、図１に示す構成と類似し、図１を用いた説明と同様、画像形成装置の一例として印刷装置（プリンタ）を例にして説明する。
【００８３】
インターフェース部１０１は、外部のクライアント端末と情報通信を行う接続部であり、そのクライアント端末には、当該印刷装置で印刷出力が可能な画像データを生成することが可能なプリンタドライバがインストールされている。
【００８４】
このクライアント端末では、所定のアプリケーションを用いてアプリケーション文書を作成し、ユーザがこのアプリケーション文書に対して印刷指示を行うことにより、プリンタドライバのＰＤＬ生成部（図示せず）がＰＤＬ形式の印刷ジョブデータ（以下、「ＰＤＬ（Page Description Language）データ」という）を生成する。
【００８５】
ＰＤＬデータ生成部により生成されたＰＤＬデータは、印刷装置の印刷部１１６により印刷処理可能な形式で記述されたデータであって、作成元となった文書の文書名や印刷指示を行ったユーザの名称、さらにはそのアプリケーション文書を一意に識別する「文書ＩＤ」やその文書の特徴を示す値等が設定されている。
【００８６】
なお、この文書の特徴を示す値の一例として、例えば文書全体にハッシュ関数を適用し、算出されたハッシュ値がある。
【００８７】
このようなＰＤＬデータを生成したクライアント端末では、このＰＤＬデータを印刷装置に送信する。これにより、印刷装置のインターフェース部１０１がそのＰＤＬデータを受信し、印刷装置での処理を開始する。
【００８８】
インターフェース部１０１でＰＤＬデータを受信すると、このインターフェース部１０１はそのＰＤＬデータを蓄積制御部１０２へと転送する。蓄積制御部１０２では、受信したＰＤＬデータの解析処理を行うことにより、ジョブ情報検出部１０３、ページ検出部１０４、ジョブ情報比較部１０６、ハッシュ値計算部５０１、ハッシュ値比較部５０２での所定の処理を可能とする。
【００８９】
この蓄積制御部１０２では、解析後のＰＤＬデータをジョブ情報検出部１０３へと送信して当該ＰＤＬデータに設定されたジョブ情報の検出要求を行う。
【００９０】
この検出要求を受けたジョブ情報検出部１０３では、ＰＤＬデータの文書に設定されたユーザ名やファイル名、文書ＩＤ、そのＰＤＬデータの特徴を示す値などのジョブ情報を検出する。これらを検出すると、ジョブ情報検出部１０３では、これらのジョブ情報およびＰＤＬデータをページ検出部１０４に送信して、ページの検出要求を行う。このジョブ情報検出部１０３は、さらにジョブ情報比較部１０６に対して検出したジョブ情報を送信する。
【００９１】
まず、ページ検出部１０４では、ジョブ情報検出部１０３よりページ検出要求を受信することにより、ＰＤＬデータの先頭ページおよび最終ページを検出する処理を行う。この検出処理によって各ページに分割された１または複数のページからなるＰＤＬデータを、ハッシュ値計算部５０１とハッシュ値比較部５０２に送信する。さらに、ページ全体に対する各ページのページ数をハッシュ値比較部５０２へ送信する。
【００９２】
次に、ジョブ情報比較部１０６では、ジョブ情報検出部１０３からジョブ情報を受信することにより、ジョブ情報検出部１０３で検出したジョブ情報と、印刷ログ記憶部１１５で記憶するＰＤＬデータの印刷履歴の情報（以下、「印刷ログ」という）に含まれるジョブ情報とを比較して、ジョブ情報検出部１０３で検出したジョブ情報が印刷ログとして記憶されているかを判断する。
【００９３】
これに際して、ジョブ情報比較部１０６は、印刷ログ制御部１１４を介して印刷ログ記憶部１１５で記憶する印刷ログを取得する。印刷ログ記憶部１１５では、図６に示すようなジョブ情報からなる印刷ログを記憶しており、印刷要求されたＰＤＬデータと同一のＰＤＬデータが過去に印刷出力されているか否かの判断に用いる。
【００９４】
そして、ジョブ情報比較部１０６は、ジョブ情報検出部１０３で検出したジョブ情報が印刷ログとして記憶されているかの結果をモノクロ判断部１０８へと送信する。
【００９５】
なお、その結果が同一のジョブ情報を持つ印刷ログが印刷ログ記憶部１１５に記憶しており、印刷要求されたＰＤＬデータを過去、印刷したことがあると判断するという結果である場合には、その結果に加えて、その印刷出力時の印刷ログを特定するログ識別情報をハッシュ値比較部５０２へと送信する。
【００９６】
それに対して、ジョブ情報比較部１０６による比較結果が、印刷要求されたＰＤＬデータのジョブ情報と同一のジョブ情報を持つ印刷ログが存在しないという結果である場合には、印刷要求された現時点において、当該ＰＤＬデータと同一のデータを印刷出力したことがないものと判断して、そのことを示す比較結果のみをハッシュ値比較部５０２に送信する。
【００９７】
続いて、ハッシュ値計算部５０１は、ページ検出部１０４からページ単位のＰＤＬデータを受信し、各ページのＰＤＬデータにハッシュ関数を適用して各ページに対するハッシュ値を計算する。例えば、５ページからなる文書のＰＤＬデータである場合、各ページに対する５つのハッシュ値が計算される。
【００９８】
各ページのハッシュ値が計算されると、そのハッシュ値をハッシュ値比較部５０２に送信し、さらに当該ページ毎のＰＤＬデータをスプール１０９へと記憶する。
【００９９】
このスプール１０９は、印刷処理対象となるＰＤＬデータを記憶しておく記憶領域であって、スプール１０９に記憶されたＰＤＬデータがページ単位で順次、印刷処理される。
【０１００】
そして、ハッシュ値比較部５０２では、ジョブ情報比較部１０６から比較結果とログ識別情報もしくは比較結果のみを受信する。
【０１０１】
まず、ハッシュ値比較部５０２がジョブ情報比較部１０６より比較結果とログ識別情報を受信した場合、当該ログ識別情報より識別される印刷ログを印刷ログ制御部１１４を介して印刷ログ記憶部１１５から取得する。取得した印刷ログに含まれるページ毎のハッシュ値と、ハッシュ値計算部５０１から受信したページごとのハッシュ値とを比較して、同一のハッシュ値であるかをページ検出部１０４から受信したページ数に基づいてページごとに判断する。そして、この判断結果と印刷ログとをモノクロ判断部１０８へ送信する。
【０１０２】
このとき、モノクロ判断部１０８では、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていると判断する結果であり、かつ、ハッシュ値比較部５０２から受信した判断結果が、印刷ログのジョブ情報として記憶するハッシュ値と印刷要求されたＰＤＬデータから計算したハッシュ値とが同一のハッシュ値であると判断する結果である場合、印刷ログのジョブ情報として示されるモノクロ判断結果に基づいてＰＤＬデータのモノクロ判断を行う。
【０１０３】
また、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていないと判断する結果である場合には、ハッシュ値比較部５０２から受信した判断結果を問わず、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。なお、ジョブ情報比較部１０６から受信した結果が、印刷ログとして記憶されていると判断する結果である場合も、ハッシュ値比較部５０２から受信した判断結果が、印刷ログのジョブ情報として記憶するハッシュ値と印刷要求されたＰＤＬデータから計算したハッシュ値とが同一のハッシュ値でないと判断する結果である場合にも同様に、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。
【０１０４】
次に、ハッシュ値比較部５０２がジョブ情報比較部１０６より比較結果のみを受信した場合、ハッシュ値比較部５０２では、印刷ログ制御部１１４を介して取得した印刷ログをモノクロ判断部１０８へと転送する処理（ブリッジ）を行う。ちなみに、この場合、ジョブ情報比較部１０６から受信した比較結果が、過去に印刷出力を行ったＰＤＬと同一ではないことを示していることから、印刷ログのジョブ情報ではなく、印刷要求されたＰＤＬデータからモノクロ判断を行う必要がある。
【０１０５】
よって、このときのモノクロ判断部１０８は、スプール１０９に記憶されたＰＤＬデータに対してページ単位でモノクロ判断を行う。
【０１０６】
そして、このモノクロ判断部１０８によって行われるモノクロ判断処理は、ＰＤＬデータのページごとに配色情報を判断する処理であって、ページ全体が白黒の２色での印刷出力が指示されていることにより当該ページはモノクロ印刷を行うページであると判断する。それに対して、白黒の２色での印刷出力が指示されていると判断できない場合はカラー印刷を行うページであると判断する処理である。
【０１０７】
このようにして判断した判断結果を一時記憶部１１０へと記憶する。一時記憶部１１０は、印刷出力における作業領域であり、スプール１０９に記憶するＰＤＬデータに関する諸データを一時的に記憶する。
【０１０８】
そして、描画制御部１１１は、スプール１０９に記憶するページ毎のＰＤＬデータを順次読み出し、さらに一時記憶部１１０に記憶されている当該ＰＤＬデータに対するモノクロであるか否かの判断結果を読み出す。これにより、読み出したＰＤＬデータとともにモノクロ判断結果に基づいて、ページごとにモノクロ印刷であるかカラー印刷であるかを指定した描画制御情報を作成して描画部１１２へ送信する。
【０１０９】
描画部１１２では、受信したページごとのＰＤＬデータを、描画制御情報に基づいてビットマップ展開して印刷制御部１１３へと転送する。この描画部１１２は、ＰＤＬデータから中間言語形式のデータを生成する生成部を有し、この中間言語形式のデータをスプール１０９に記憶しておくような構成であってもよい。
【０１１０】
この場合、スプール１０９では、ＰＤＬ形式の印刷データから生成した中間言語形式のデータを記憶し、モノクロ判断部１０８は中間言語形式のデータを用いてモノクロであるかを判断する。
【０１１１】
そして、描画部１１２からビットマップ展開された印刷データを受信した印刷制御部１１３では描画制御情報に基づいてビットマップ展開された各ページを印刷部１１６に送信することで、印刷部１１６が印刷出力を行う。
【０１１２】
印刷部１１６で印刷処理が完了すると、印刷制御部１１３は、印刷ログ制御部１１４に対して印刷部１１６で印刷出力を行ったＰＤＬデータに関するさまざまな情報を印刷ログ記憶部１１５に印刷ログとして記憶する。
【０１１３】
この印刷ログ記憶部１１５が記憶する印刷ログの一例を図６に示しており、以下で説明する。
【０１１４】
図６に示す印刷ログは、[文書ＩＤ]項目６０１、[ユーザ名]項目６０２、[ファイル名]項目６０３、[文書全体のハッシュ値]項目６０４、[ページごとのハッシュ値]項目６０５、[モノクロ結果]項目６０６、[印刷日時]項目６０７から構成される。
【０１１５】
[文書ＩＤ]項目６０１は、文書を一意に識別する情報であり、[ユーザ名]項目６０２は、印刷処理対象の文書を作成した若しくは所有するユーザの名称であり、[ファイル名]項目６０３は、文書の名称である。
【０１１６】
また、[文書全体のハッシュ値]項目６０４は、ＰＤＬデータ全体にハッシュ関数を適用して算出したハッシュ値であり、[ページごとのハッシュ値]項目６０５は、ＰＤＬデータを構成する各ページにハッシュ値を適用して算出したハッシュ値である。
【０１１７】
[モノクロ結果]項目６０６は、図４に示すモノクロ判断部１０８でモノクロ判断処理を行った処理結果を示す項目であり、モノクロであると判断されたページには「モノクロ」と示され、モノクロであると判断されないページには「カラー」と示されている。[印刷日時]項目６０７は、図４に示す印刷部１１６によって印刷出力が行われた日時を表す情報である。
【０１１８】
図４および図５は、本発明の実施の形態における画像形成装置で行われる詳細な処理の流れを示すフローチャートである。
【０１１９】
図４および図５は、ＰＤＬデータの各ページにおけるハッシュ値を用いて、過去に印刷出力されたＰＤＬデータと同じＰＤＬデータの印刷出力であるかを比較して処理を行うフローチャートである。
【０１２０】
図４および図５に示すフローチャートは、図１に示す構成に基づく詳細な処理の流れを示すものであり、さらに図４および図５に示すフローチャートは、図２および図３に示すフローチャートと類似する。
【０１２１】
図４において、プリンタドライバがインストールされたクライアント端末からＰＤＬデータの印刷要求を受信すると処理が開始され、受信したＰＤＬデータを解析することにより当該ＰＤＬデータからユーザ名やファイル名、印刷対象の文書を識別する文書ＩＤや文書の特徴を示す値等のジョブ情報を検出する（４０１）。
【０１２２】
次に、過去の印刷履歴として記憶している印刷ログを取り出し（４０２）、その印刷ログのジョブ情報としてユーザ名およびファイル名を取得する（４０３）。ＰＤＬデータから検出したユーザ名およびファイル名と、印刷ログのジョブ情報から取得したこれらの情報とを比較し同一であるかを判断する（４０４）。
【０１２３】
同一でない場合（４０４でＮＯ）には、受信したＰＤＬデータを印刷出力時の作業記憶領域であるスプールに蓄積し（４０５）、蓄積したＰＤＬデータを構成する各ページにハッシュ関数を適用してページ単位のハッシュ値を算出する（４０６）。
【０１２４】
ページ単位でのハッシュ値を算出後、スプールに記憶したＰＤＬデータを読み出し（４０７）、ＰＤＬデータの各ページがモノクロで構成されたページであるかを判断する（４０８）。算出した各ページのハッシュ値および当該ページに対するモノクロであるかの判断結果を一時記憶領域に一時記憶する（４０９）。
【０１２５】
その後、スプールに記憶するＰＤＬデータを取り出し（４１０）、さらに一時記憶領域に記憶するページごとのモノクロであるかの判断結果を取り出す（４１１）。取り出したＰＤＬデータをモノクロであるかの判断結果に基づいて印刷処理を行う（４１２）。
【０１２６】
この印刷処理は、取り出したＰＤＬデータのページごとに判断したモノクロであるか否かの判断結果に基づいて行う印刷処理であって、モノクロであると判断された場合には、白黒の二色印刷を行う。また、モノクロであると判断されていない場合には、カラー印刷を行う。
【０１２７】
このような印刷処理が完了すると、ＰＤＬデータから検出した「ユーザ名・ファイル名・印刷日時・ページごとのモノクロ判断結果・ページごとハッシュ値」を印刷ログのジョブ情報として保存する（４１３）。
【０１２８】
これに対して、受信したＰＤＬデータから検出したユーザ名およびファイル名と印刷ログから取り出したこれらの情報とが同一であると判断される場合（４０４でＹＥＳ）には、図５に示すフローチャートの位置「Ａ」から処理が行われる。
【０１２９】
図５に示すフローチャートは、クライアント端末から受信したＰＤＬデータから１ページ分のＰＤＬデータを読み込み（４１４）、読み込んだ１ページ分のＰＤＬデータをスプールに蓄積する（４１５）。
【０１３０】
読み込んだ１ページ分のデータが先頭ページである場合では、スプールに蓄積した先頭ページ１ページ分のＰＤＬデータにハッシュ関数を適用することによりハッシュ値を算出する（４１６）。続いて、印刷ログとして記憶する当該ＰＤＬデータの先頭ページのハッシュ値を取り出し（４１７）、算出したハッシュ値と印刷ログから取り出した先頭ページのハッシュ値とが同一であるかを判断する（４１８）。
【０１３１】
これらのハッシュ値が同一である場合（４１８でＹＥＳ）には、印刷ログのジョブ情報として記憶する当該先頭ページがモノクロであるかの判断結果を取り出す（４１９）。それに対して、これらのハッシュ値が同一でない場合（２１８でＮＯ）には、スプールに記憶しているＰＤＬデータの先頭ページを読み出し（２２０）、その先頭ページがモノクロであるかを判断する（２２１）。そして、ＰＤＬデータの先頭ページに対してモノクロであるかを判断した判断結果を一時記憶領域に一時記憶する（２２２）。
【０１３２】
そして、このようにして得た判断結果がＰＤＬデータの最後のページであるか判断して（２２３）、最後のページである場合（２２３でＹＥＳ）には、図４に示す位置「Ｃ」から処理を行う。すなわち、スプールに記憶しているＰＤＬデータを取り出し（２１０）、上記の処理で一時記憶領域に記憶したモノクロであるかの判断結果を用いて（２１１）取り出したＰＤＬデータをその判断結果に基づく印刷処理を行う（２１２）。
【０１３３】
それに対して、上記に示すような先頭ページに対して処理が行われている場合には、最後のページでないと判断される（２２３でＮＯ）。この場合、続いて、印刷ログのジョブ情報の最後ページとの比較であったかを判断する（２２４）。
【０１３４】
印刷ログとして記憶するジョブ情報の最後のページとの比較である場合（２２４でＹＥＳ）には、図４に示すフローチャートの位置「Ｂ」から処理が行われる。それに対して、最後のページでない場合（２２４でＮＯ）には、ＰＤＬデータの次のページと印刷ログの次ページに対して上記の処理（２１４から２２２）を再度実行する。先頭ページに対して上記の処理が行われている場合、２ページ目以降のページに対して処理を行う。
【０１３５】
なお、本発明は、通信機能を備えた画像形成システムで上述の動作を実行させ、あるいは上述の手段を構成させるためのプログラムを格納した記録媒体（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）から該プログラムをコンピュータにインストールし、これを実行させることにより、上述の処理を実行する画像形成システムを構成することも可能である。画像形成システムを構成するコンピュータは、システムバスを介してＣＰＵ（Central Processor Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスクが接続されている。ＣＰＵは、ＲＯＭまたはハードディスクに記憶されているプログラムに従い、ＲＡＭを作業領域にして処理を行う。
【０１３６】
また、プログラムを供給するための媒体は、通信媒体（通信回線、通信システムのように一時的または流動的にプログラムを保持する媒体）でもよい。例えば、通信ネットワークの電子掲示板（ＢＢＳ：Bulletin Board Service）に該プログラムを掲示し、これを通信回線を介して配信するようにしてもよい。
【０１３７】
本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【図面の簡単な説明】
【０１３８】
【図１】本発明の実施の形態における画像形成装置および画像形成プログラムを適用して構成した画像形成装置の装置構成図の一例
【図２】本発明の実施の形態における画像形成装置で行われる詳細な処理の流れを示すフローチャート。
【図３】本発明の実施の形態における画像形成装置で行われる詳細な処理の流れを示すフローチャート。
【図４】印刷ログのジョブ情報の一例を示す図。
【図５】本発明の実施の形態における画像形成装置および画像形成プログラムを適用して構成した画像形成装置の装置構成図の一例
【図６】本発明の実施の形態における画像形成装置で行われる詳細な処理の流れを示すフローチャート。
【図７】本発明の実施の形態における画像形成装置で行われる詳細な処理の流れを示すフローチャート。
【図８】印刷ログのジョブ情報の一例を示す図。
【符号の説明】
【０１３９】
１０１      インターフェース部
１０２      蓄積制御部
１０３      ジョブ情報検出部
１０４      ページ検出部
１０５      ページデータサイズ計算部
１０６      ジョブ情報比較部
１０７      サイズ比較部
１０８      モノクロ判断部
１０９      スプール
１１０      一時記憶部
１１１      描画制御部
１１２      描画部
１１３      印刷制御部
１１４      印刷ログ制御部
１１５      印刷ログ記憶部
１１６      印刷部
５０１      ハッシュ値計算部
５０２      ハッシュ値比較部
【図１】
2009218902.tif 000003
【図２】
2009218902.tif 000004
【図３】
2009218902.tif 000005
【図４】
2009218902.tif 000006
【図５】
2009218902.tif 000007
【図６】
2009218902.tif 000008
【図７】
2009218902.tif 000009
【図８】
2009218902.tif 000010