(57)【要約】【課題】  過去の印刷遅延と同様の遅延を防ぐとともに印刷処理の高速化を図る。【解決手段】  プリンタ１０は印刷処理時間を計測するタイマー１０８と処理速度情報及び印刷終了信号を送信するシステム制御部１０７とを備え、ホストＰＣ２０は描画命令を変換して印刷データを生成するプリンタドライバ２０３と印刷データを送信し印刷終了信号及び処理速度情報を受信する通信インタフェース２０５と印刷データ生成の総印刷時間を計測するタイマー２１２と処理速度情報や総印刷時間にもとづき遅延判定する処理速度情報分析部２０８とを備え、通信インタフェース２０５は遅延描画命令を他の描画命令に変換した学習用印刷データを送信し処理速度情報分析部２０８は学習用印刷データの処理速度情報や総印刷時間にもとづき最速描画命令を特定しプリンタドライバ２０３は描画命令を最速描画命令に変換して印刷データを生成する構成としてある。【選択図】  図３
2010122917.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータと画像形成装置とを有する画像形成システムであって、
前記画像形成装置は、
前記ホストコンピュータから印刷データを受信する印刷データ受信手段と、
受信した前記印刷データにもとづき印刷処理を行う印刷実行手段と、
当該画像形成装置における印刷処理時間を計測する第一計時手段と、
前記印刷処理時間を含む所定の処理速度情報を前記ホストコンピュータに送信する処理時間送信手段と、
前記印刷データの印刷処理の終了に応じて所定の印刷終了信号を前記ホストコンピュータに送信する印刷終了通知手段と、を備えるとともに、
前記ホストコンピュータは、
描画命令を生成する描画命令生成手段と、
前記描画命令を組み合わせて印刷データを生成する印刷データ生成手段と、
前記印刷データを前記画像形成装置に送信する印刷データ送信手段と、
前記画像形成装置から前記印刷終了信号を受信する印刷終了受信手段と、
前記画像形成装置から前記処理速度情報を受信する処理時間受信手段と、
前記印刷データ生成手段の実行から前記印刷終了信号の受信までに要した総印刷時間を計測する第二計時手段と、
前記処理速度情報及び／又は前記総印刷時間にもとづく所定基準により印刷データの処理における遅延の有無を判定する遅延判定手段と、
遅延有と判定された印刷データの元の描画命令を他の描画命令に変換して学習用印刷データを生成する学習印刷データ生成手段と、
前記学習用印刷データを前記画像形成装置に送信する学習印刷データ送信手段と、
前記学習用印刷データに関する前記処理速度情報及び／又は前記総印刷時間にもとづく所定基準により前記元の描画命令の印刷処理が最速となる描画命令を特定する最速データ特定手段と、を備え、
前記印刷データ生成手段は、
前記描画命令生成手段によって生成された描画命令の一部又は全部を前記最速データ特定手段によって特定された前記描画命令に変換して印刷データを生成することを特徴とする画像形成システム。
【請求項２】
前記画像形成装置は、
当該画像形成装置の状態を監視する監視手段と、
当該画像形成装置の状態に応じて所定の通知信号を前記ホストコンピュータに送信する通知手段と、を備え、
前記ホストコンピュータは、
前記通知信号の受信に応じて前記印刷データ生成手段、前記学習印刷データ送信手段、前記最速データ特定手段のうちのいずれか一以上の実行を制御する実行制御手段を備える請求項１に記載の画像形成システム。
【請求項３】
前記ホストコンピュータは、
前記画像形成装置の所定の性能情報を格納するプリンタ情報管理手段を備え、
前記遅延判定手段は、前記処理速度情報及び／又は前記総印刷時間に加え、前記性能情報にもとづく所定基準により印刷データの処理における遅延の有無を判定する請求項１又は２に記載の画像形成システム。
【請求項４】
前記最速データ特定手段は、前記処理速度情報及び／又は前記総印刷時間に加え、前記性能情報にもとづく所定基準により前記元の描画命令の印刷処理が最速となる描画命令を特定する請求項３に記載の画像形成システム。
【請求項５】
前記性能情報は、
少なくとも前記画像形成装置に搭載されるＣＰＵ及び／又はメモリの性能情報である請求項３又は４に記載の画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成システムに関し、より詳しくは、遅延を解消するとともに高速化を図る画像形成システムに関する。
【背景技術】
【０００２】
プリンタ等の画像形成装置において印刷遅延が発生した場合、ログ等の履歴情報を参照することによってその原因や傾向を特定できることが多い。
このため、ログの解析は、有効な遅延対策として従来から利用されている。
しかしながら、ログの解析は、通常、技術者等、人間によって行われるため、その効果は技術レベルや経験に左右されやすく、必ずしも正確で合理的な方法ではない。
そこで、エラーログにもとづくプログラムの書き換えやシステムの設定変更を可能とするファクシミリ装置や、エラーログにもとづくエラー頻度の多寡に応じて印刷データの出力制御を行う印刷制御装置が提案されている（例えば、特許文献１、２参照）。
【０００３】
【特許文献１】特開平１０−２３３９０９号公報（第１−４頁、第１図）
【特許文献２】特開平１１−２４８５４号公報（第１−２頁、第６図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載されているファクシミリ装置は、センタ装置からの要求に応じてエラーログの内容等をセンタ装置に転送する等、主に各装置間のデータのやりとりについて考案された技術であって、ファクシミリ装置等がエラーログの解析を行うものではない。つまり、エラーログの解析やプログラム等の作成に人間が介入せざるを得ない仕組みとなっている。
また、特許文献２に記載の印刷制御装置は、エラーログにもとづくエラー頻度に応じて出力順序制御を行っているにすぎない。
このため、印刷遅延そのものを解消することは本来的に不可能な仕組みとなっている。
また、エラー頻度の低い装置の印刷遅延を解消することは可能だが、エラー頻度の高い装置の印刷遅延を解消するには至っていない。つまり、その効果や態様は限定的なものとなっている。
したがって、前述の特許文献１や特許文献２に代表される従来の技術によっては、印刷遅延を本質的に解消するための有効な技術対策は存在せず、本技術分野における課題となっていた。
【０００５】
本発明は、以上のような従来の技術が有する問題を解決するために提案されたものであり、過去に発生した印刷遅延の再発を防ぐとともに、印刷処理の高速化を図る画像形成システムの提供を目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の画像形成システムは、ホストコンピュータと画像形成装置とを有する画像形成システムであって、前記画像形成装置は、前記ホストコンピュータから印刷データを受信する印刷データ受信手段と、受信した前記印刷データにもとづき印刷処理を行う印刷実行手段と、当該画像形成装置における印刷処理時間を計測する第一計時手段と、前記印刷処理時間を含む所定の処理速度情報を前記ホストコンピュータに送信する処理時間送信手段と、前記印刷データの印刷処理の終了に応じて所定の印刷終了信号を前記ホストコンピュータに送信する印刷終了通知手段と、を備えるとともに、前記ホストコンピュータは、描画命令を生成する描画命令生成手段と、前記描画命令を組み合わせて印刷データを生成する印刷データ生成手段と、前記印刷データを前記画像形成装置に送信する印刷データ送信手段と、前記画像形成装置から前記印刷終了信号を受信する印刷終了受信手段と、前記画像形成装置から前記処理速度情報を受信する処理時間受信手段と、前記印刷データ生成手段の実行から前記印刷終了信号の受信までに要した総印刷時間を計測する第二計時手段と、前記処理速度情報及び／又は前記総印刷時間にもとづく所定基準により印刷データの処理における遅延の有無を判定する遅延判定手段と、遅延有と判定された印刷データの元の描画命令を他の描画命令に変換して学習用印刷データを生成する学習印刷データ生成手段と、前記学習用印刷データを前記画像形成装置に送信する学習印刷データ送信手段と、前記学習用印刷データに関する前記処理速度情報及び／又は前記総印刷時間にもとづく所定基準により前記元の描画命令の印刷処理が最速となる描画命令を特定する最速データ特定手段と、を備え、前記印刷データ生成手段は、前記描画命令生成手段によって生成された描画命令の一部又は全部が前記元の描画命令の一部又は全部と同一である場合、その描画命令を前記最速データ特定手段によって特定された前記描画命令に変換して印刷データを生成する構成としてある。
【発明の効果】
【０００７】
本発明の画像形成システムによれば、印刷処理の遅延を防ぐとともにその高速化を図ることで高い利便性と信頼性を実現することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の好ましい実施形態について図面を参照しながら説明する。
図１及び図３は、本発明の一実施形態に係る画像形成システムのプリンタ及びホストＰＣ（Host  Personal  Computer）の構成を示すブロック図である。
これらの図に示すとおり、本実施形態の画像形成システム１は、プリンタ１０とホストＰＣ２０との電気的な接続によって構成されており、基本動作としては、ホストＰＣ２０が生成し送信した印刷データをプリンタ１０が受信し描画処理を施して紙媒体等に印刷するようになっている。
なお、これら各装置間は有線・無線等によって直接接続される他、インターネット、ＬＡＮ（Local  Area  Network）等、所定のネットワークを介して接続される形態であっても良い。
【０００９】
まず、プリンタ（本発明の画像形成装置）１０の構成について図１を参照しながら説明する。
通信インタフェース１０１は、ホストＰＣ２０との間で通信を行うためのインタフェースであり、印刷データの他、各種信号・データの送受信が行われる。
データ受信部１０２（印刷データ受信手段）は、通信インタフェース１０１を介して印刷データ（又は後述する学習用印刷データ）を受信するものである。
【００１０】
データ解析部１０３は、データ受信部１０２が受信したデータの解析を行うものである。例えば、データ解析部１０３は、受信したデータ内の各描画命令が文字処理か、ベクター処理か、イメージ処理か、文字、ベクターまたはイメージをどのように描画するかを解析する。解析結果は、受信データから印刷データを抽出し、描画データ処理部１０４に描画処理を行わせる動作の基礎となるものである。
描画データ処理部１０４は、データ解析部１０３から受け渡される印刷データに基づいて中間形式の処理命令（ディスプレイリスト）を生成するものである。
描画部１０５は、描画データ処理部１０４によって生成されたディスプレイリストをビットマップデータに変換し、図示しないＶＲＡＭ（Video  Random  Access  Memory）等からなるメモリに保持させる。
【００１１】
出力部１０６は、ビットマップデータに基づいて紙媒体等への顕像化処理を実行するものである。
具体的には、出力部１０６は、データ解析部１０３、描画データ処理部１０４及び描画部１０５を介して得たビットマップデータを紙媒体等にトナーやインク等の着色剤を転写して顕像化処理することとなる。
データ解析部１０３、描画データ処理部１０４、描画部１０５及び出力部１０６を組み合わせて、本発明の印刷実行手段を構成し、これらの各部が上記のように連携して印刷処理が行われる。
ただし、本実施形態においては、印刷時間の分析のために学習用印刷データを仮想的に処理する必要があるため、この場合には印刷処理において、紙媒体等への無駄な顕像化処理は行わないよう出力部１０６の処理を制限することも可能である。
【００１２】
システム制御部１０７は、装置全体の共有情報を管理し、各構成部の制御を行うものである。一般には、ＣＰＵ（Central  Processing  Unit）やその制御プログラムが格納されるＲＯＭ（Read  Only  Memory）に相当する部分である。
また、システム制御部１０７は、プリンタ１０の稼働状況を監視しており、利用者からのアクセスの有無、ＣＰＵや所定の周辺機器の作動状況等を定期又は不定期に検知できるようになっている（本発明の監視手段としての動作）。
そして、本実施形態の画像形成システム１においては、この監視機能を利用して次のような実行制御を可能としている。
【００１３】
例えば、プリンタ１０において一定時間不稼働の状態を検知すると、システム制御部１０７は、その旨の通知信号をホストＰＣ２０に送信し（本発明の通知手段）、ホストＰＣ２０は、その通知信号の受信に応じて後述の学習プロセスを開始させるように制御することができる（本発明の実行制御手段としての動作）。
一方、学習プロセスの実行途中で、利用者からのアクセスやデータ入力があった場合には、そのタイミングで他の通知信号をホストＰＣ２０に送信することで、ホストＰＣ２０では実行中の学習プロセスを中止又は中断するように制御することもできる。
なお、中止・中断時の学習結果はデータベース２１０に保存しておき、学習プロセスを再開した際に利用する。
つまり、このような実行制御を介して、プリンタ１０における輻輳や輻輳に伴う処理能力の低下を防ぎつつ、本発明を効率よく実施できるようになっている。
【００１４】
タイマー１０８（第一計時手段）は、プリンタ１０における印刷処理時間を計測するものである。具体的には、タイマー１０８は、データ解析部１０３、描画データ処理部１０４及び描画部１０５における各処理時間を合算することによって計測する。更に、タイマー１０８は、データ解析部１０３、描画データ処理部１０４及び描画部１０５における印刷処理のうち、文字処理やベクター処理といった処理時間も個別に記録するようになって
処理速度情報制御部１０９は、タイマー１０８によって測定された印刷処理時間、文字処理時間、ベクター処理時間を処理速度情報作成部１１０に出力する。
そして、処理速度情報作成部１１０は、処理速度情報制御部１０９から入力した印刷処理時間にもとづき所定の処理速度情報を作成するようにしている。
【００１５】
図２は、処理速度情報作成部１１０によって作成される処理速度情報の例を示した図である。
同図に示すように、処理速度情報は、プリンタ１０における印刷処理時間、文字処理時間、ベクター処理時間の他、関連する元の描画命令の種類、印刷データの形式、データサイズ（文字の数、パスの数等の描画データ情報）等によって複合的に形成されている。また、処理速度情報として、処理に長時間を要したと推定される部分の印刷内容、すなわち該当するページ記述言語（Page  Description  Language：以下ＰＤＬという。）の描画命令の情報（「0 0 moveto」、「100 0 lineto」等）が形成されている。更に、プリンタに搭載されるメモリの容量やＣＰＵの速度などを抽出して処理速度情報に加えることも可能である。
なお、処理速度情報作成部１１０によって作成された処理速度情報は、通信インタフェース１０１を介してホストＰＣ２０に送信され（処理時間送信手段）、処理速度の分析に用いられる。
【００１６】
次に、ホストＰＣ（本発明のホストコンピュータ）２０の構成について図３を参照しながら説明する。
アプリケーション部２０１は、ホストＰＣ２０上で動作するワードプロセッサやスプレッドシート（表計算ソフト）等のアプリケーションプログラムを実行するものである。
グラフィックスライブラリ２０２は、ホストＰＣ２０上のＯＳ（Operating  System）がサポートしているグラフィックス関係のモジュールである。具体的には、アプリケーション部２０１で作成された図形等についての描画命令が生成され（描画命令生成手段）、プリンタドライバ２０３に出力される。
【００１７】
プリンタドライバ２０３は、グラフィックスライブラリ２０２から送られてきた描画命令を予め設定された描画命令に変換して印刷データを生成するものである（印刷データ生成手段）。
本実施形態に係るプリンタドライバ２０３は、学習印刷データ生成手段を備えており、遅延が生じていると判定された印刷データの元の描画命令を他の描画命令に自動変換することによって、学習用の印刷データを生成する点に特徴を有している。
なお、プリンタドライバ２０３は、印刷データ又は学習用印刷データの生成とともにタイマー２１２を起動させ、総印刷時間（ホストＰＣ２０側の処理時間＋プリンタ１０側の処理時間）の計測を開始させる。
【００１８】
スプーラ２０４は、プリンタドライバ２０３で生成された印刷データを一時的にハードディスク等に保持させておくことで並列処理を実現するなど、印刷処理の効率化に利用される。
通信インタフェース２０５は、プリンタ１０との間で各種データ・信号の送受を行うものであり、例えば、プリンタ１０に印刷データを送信したり（本発明の印刷データ送信手段）、学習用印刷データを送信したり（本発明の学習印刷データ送信手段）する。
データ受信部２０６は、通信インタフェース２０５を介してプリンタ１０からの印刷終了信号を受信したり（本発明の印刷終了受信手段）、処理速度情報を受信したり（本発明の処理時間受信手段）する。
また、データ受信部２０６は、プリンタ１０がスリープモードに切り替わったことを示す通知信号やアクティブモードに切り替わったことを示す通知信号（本発明の他の通知信号）を受信する。
【００１９】
データ解析部２０７は、データ受信部２０６によって受信したデータの解析を行うものである。
基本動作としては、受信データが処理速度情報か印刷終了信号かを判定・抽出したうえで、処理速度情報分析部２０８に対して各データの受け渡しを行う。
【００２０】
処理速度情報分析部２０８は、直前に実行した印刷処理についての遅延判定を行うものである。
具体的には、プリンタ１０単体の印刷処理時間等（処理速度情報）や印刷データ生成から印刷処理終了までの時間（総印刷時間）を主な判断材料として遅延の有無を判定する（本発明の遅延判定手段）。
例えば、処理速度情報に含まれる印刷処理時間の基準時間をＡとし、総印刷時間の基準時間をＢとしそれぞれ所定の閾値を設定する。そして、実際の計測時間がＡを超過した場合あるいはＢを超過した場合にその印刷処理は遅延有りと判定するようにしてもよく、Ａ及びＢのいずれも超過した場合にのみ遅延と判定してもよい。また、プリンタ情報管理部２０９に格納されてあるプリンタ１０のメモリ容量やＣＰＵ速度を勘案してＡやＢの値を変更しても良い。また、上記Ａ及びＢを基準データサイズに置き換えて、計測時間の場合と同様に印刷データサイズと比較して遅延を判定しても良い。
【００２１】
また、処理速度情報分析部２０８は、遅延判定手段によって遅延有りと判定された印刷処理の描画命令に対し、最速となる描画命令を学習して割り当てる手段（最速データ特定手段）も備えている。
具体的には、プリンタドライバ２０３が生成した学習用の印刷データに対して、処理速度情報分析部２０８がその処理速度情報や印刷処理時間を分析し、その中から最も処理が速いとされる描画命令を特定するものである。
【００２２】
プリンタ情報管理部（プリンタ情報管理手段）２０９は、上述したように、プリンタ１０のＣＰＵ速度やメモリ容量などの性能情報を格納しておくものであり、処理速度情報分析部２０８による遅延判定や最速となる描画命令の特定の際に利用される。
【００２３】
データベース２１０は、処理速度情報分析部２０８が遅延有りと判定した印刷データやその元の描画命令が保存されるものである。また、この描画命令に対する最速な描画命令も対応づけて保存される。
具体的には、所定の基準時間を超過し、処理速度が遅いと判定された描画命令、処理速度、データサイズ、トータル印刷時間、遅いとみなされた部分の描画命令、その描画命令に最適な（最速の）描画命令等が保存される。
このため、実際の印刷処理の際にデータベース２１０を参照することで遅延発生を予見し、そのうえで、遅延の発生を回避し、さらに高速処理を実現できる仕組みとなっている。
【００２４】
描画命令保存部２１１は、プリンタドライバ２０３の制御により、グラフィックスライブラリ２０２が生成した描画命令を一時的に保存しておくものであり、円滑に印刷処理が終了した時点で自動的に消去するようにしている。
なお、描画命令保存部２１１に保存されている描画命令のうち遅延が認められた描画命令については、後述する学習用データ保存部２１３に移行される。
タイマー（第二計時手段）２１２は、印刷処理に関しホストＰＣ２０及びプリンタ１０によって要した総合的な処理時間（総印刷時間）を計測するものであり、具体的には、印刷データの生成処理から印刷終了（印刷終了信号の受信）に至るまでの時間を計測する。
【００２５】
学習用データ保存部２１３は、処理速度情報分析部２０８が遅延有りと判定した描画命令を描画命令保存部２１１から移行し、保存しておくものである。
学習制御部２１４は、各構成部に働きかけ、遅延と判定された描画命令に対して所定の学習プロセスにもとづくシミュレーションを実施し最適な描画命令を求めるものである。
具体的には、学習用データ保存部２１３に保存されている遅延有りと判定された描画命令を一以上の描画命令に変換させる処理をプリンタドライバ２０３に行わせる。
そして、処理速度情報分析部２０８に処理速度情報等を分析させて最速の描画命令を特定させる制御を行う。
なお、最速と判定された描画命令は、データベース２１０に格納される。
【００２６】
次に、以上のような構成からなる本実施形態の画像形成システムにおける動作手順について図４〜図８を参照しながら説明する。
図４は、ホストＰＣにおいて印刷データが生成されプリンタに送信されるまでの動作手順を、図５は、プリンタが印刷データを受信し処理速度情報をホストＰＣに送信するまでの動作手順を、図６は、ホストＰＣにおいて印刷終了信号を受信した場合の動作手順を、図７は、ホストＰＣにおいて処理速度情報を受信した場合の動作手順を、図８は、最適な描画命令を習得するための学習プロセスを、それぞれ示したフローチャートである。
【００２７】
図４に示すとおり、ホストＰＣ２０では、アプリケーション部２０１に格納される所定のアプリケーションプログラムによって印刷処理が実行されると（Ｓ５０１）、グラフィックスライブラリ２０２を介して所定の描画命令が生成される（Ｓ５０２）。
ここで、プリンタドライバ２０３は、ステップＳ５０２で生成された描画命令について、その印刷処理が遅くなりそうな描画命令か否かを判定する（Ｓ５０３）。
【００２８】
具体的には、データベース２１０を参照することによって、その描画命令の内容と同じ内容の描画命令が格納されているか否かを確認し、同じ内容の描画命令が検出された場合には印刷遅延の可能性が高いと判定し（Ｓ５０３：ＹＥＳ）、同じ内容の描画命令が検出されなければ印刷遅延の可能性は低いと判定する（Ｓ５０３：ＮＯ）。また、プリンタ情報管理部２０９に問い合わせて、そのプリンタ１０に搭載されるＣＰＵやメモリの性能情報を勘案して印刷遅延の可能性を総合的に判断する。
【００２９】
ステップＳ５０３の結果、印刷遅延の可能性が低いと判定された場合（Ｓ５０３：ＮＯ）、プリンタドライバ２０３は、グラフィックスライブラリ２０２からの描画命令を他の描画命令に変換して印刷データを生成する（Ｓ５０４）。
一方、ステップＳ５０３の結果、印刷遅延の可能性が高いと判定された場合（Ｓ５０３：ＹＥＳ）、プリンタドライバ２０３は、グラフィックスライブラリ２０２からの描画命令を用いて印刷データを生成する（Ｓ５０９）。
この場合、具体的には、後述する学習プロセス（図８参照）を介してデータベース２１０に格納された最速の描画命令に変換して印刷データを生成することとなる。
なお、プリンタドライバ２０３は、ステップＳ５０４又はステップＳ５０９における印刷データの生成のタイミングに合わせてタイマー２１２を起動させ、これにより総印刷時間の計測が開始されることとなる（図６参照）。
【００３０】
次に、プリンタドライバ２０３は、ステップＳ５０４又はステップＳ５０９において生成した印刷データをスプーラ２０４に一旦蓄積させる（Ｓ５０５）。
一方、プリンタドライバ２０３は、印刷データの元の描画命令を描画命令保存部２１１に保存しておく（Ｓ５０６）。
そして、プリンタドライバ２０３は、対象となる描画命令をすべて印刷データに変換したか否かを判断する（Ｓ５０７）。
ステップＳ５０７において、全ての描画命令に対する印刷データの生成処理が終了した場合（Ｓ５０７：ＹＥＳ）、スプーラ２０４は、蓄積している印刷データを、通信インタフェース２０５を介して順次プリンタ１０に送信する（Ｓ５０８）。
一方、全ての描画命令に対して印刷データの生成処理が終了していない場合（Ｓ５０７：ＮＯ）、対象となる全ての描画命令についての印刷データ生成処理がされるまで、ステップＳ５０２以降の処理が繰り返されることとなる。
【００３１】
次に、図５を参照しながら、印刷データを受信したプリンタの動作手順を説明する。
プリンタ１０では、ホストＰＣ２０から送信されたデータを、通信インタフェース１０１を介してデータ受信部１０２が受信する（Ｓ６０１）。
受信データはデータ解析部１０３によって解析され、描画データ処理部１０４、描画部１０５及び出力部１０６を介して印刷処理が行われる（Ｓ６０２）。
具体的には、データ受信部１０２が受信した印刷データに基づいて、描画処理部１０４が描画命令を生成し、それを描画部１０５がビットマップデータに変換する。そして、このビットマップデータにもとづき出力部１０６が紙媒体等に印刷を行う。
【００３２】
印刷の実行に際し、システム制御部１０７は、その印刷処理に要した時間を取得する（Ｓ６０３）。
具体的には、システム制御部１０７の制御のもと、タイマー１０８がデータ解析部１０３、描画データ処理部１０４及び描画部１０５における描画処理に要した時間を計測し、各処理時間の合計値を印刷処理時間として取得する。
なお、印刷データをベクター部、イメージ部、文字部に分けてそれぞれの処理時間を計測して詳細な分析に利用することも可能である。また、所定のページ単位、印刷ジョブ単位で処理時間を計測することも可能である。
【００３３】
ステップＳ６０４では、システム制御部１０７が、印刷処理が終了した時点でその旨の信号（印刷終了信号）を、通信インタフェース１０１を介してホストＰＣ２０に送信する（本発明の印刷終了通知手段）。
次に、処理速度情報制御部１０９は、ステップＳ６０３で計測した印刷処理時間や描画関連データとともにそのプリンタに搭載されるプリンタのメモリ量やＣＰＵ性能データを、システム制御部１０７を介して収集する（Ｓ６０５）。
処理速度情報作成部１１０は、ステップＳ６０５において収集された各データにもとづいて処理速度情報を作成する（Ｓ６０６）。
そして、ステップＳ６０６において処理速度情報の作成が完了すると、処理速度情報制御部１０９は、その処理速度情報をホストＰＣ２０に送信する（Ｓ６０７）。
【００３４】
次に、図６を参照しながら、印刷終了信号を受信したホストＰＣの動作手順を説明する。
ホストＰＣ２０では、プリンタから送信された印刷終了信号を、通信インタフェース２０５を介しデータ受信部２０６が受信する（Ｓ７０１）。
これに応じて、データ解析部２０７は、受信データを解析し、受信データが印刷終了信号であることを確認すると処理速度情報分析部２０８に所定の通知を行う。
次に、処理速度情報分析部２０８は、タイマー２１２に問い合わせることによって総印刷時間を取得し、これを図示しない記憶部に保存しておく（Ｓ７０２）。
これによって、処理速度情報分析部２０８は、印刷データ生成開始から印刷処理終了までの総印刷時間を取得することができ、処理速度情報とともに速度分析に利用できるようになる。
【００３５】
次に、図７を参照しながら、処理速度情報を受信したホストＰＣの動作手順を説明する。
ホストＰＣ２０では、プリンタ１０から送信された処理速度情報を、通信インタフェース２０５を介し、データ受信部２０６が受信する（Ｓ８０１）。
次に、データ解析部２０７が、受信データを解析し、受信データが所定の処理速度情報であることを確認すると処理速度情報分析部２０８に処理速度情報が渡され、さらにその内容が分析されることとなる（Ｓ８０２）。
具体的には、処理速度情報に含まれる印刷処理時間が所定の基準時間を超過しているか否か、ステップＳ７０２で保存した総印刷時間が所定の基準時間を超過しているか否か等によって印刷遅延の有無が判定されることとなる。
【００３６】
そして、処理速度情報分析部２０８は、Ｓ８０２で分析した結果を、データベース２１０に保存する（Ｓ８０３）。
具体的には、印刷遅延と判定された描画命令等を保存する。
これにより、プリンタドライバ２０３は、印刷処理のたびにデータベース２１０を参照することによって、今から処理を行う描画命令が遅延する可能性が高いか否かを判断できるようになる。
なお、ステップＳ８０３においては、描画命令保存部２１１に保存してあった描画命令を学習用データ保存部２１３に移行する処理も行う。ただし、印刷遅延と判断されなかった場合この処理は行わず、描画命令保存部２１１に保存してある描画命令を消去する。
【００３７】
次に、図８を参照しながら、最適な描画命令を習得するための学習プロセスの手順について説明する。
前提として、プリンタ１０において一定時間受信データが無い状態や稼働がされてない状態となり、スリープモードに切り替わったものとする。
これに応じて、プリンタ１０からは学習プロセスの準備ができた旨を示す通知信号が送出される。
そこで、ホストＰＣ２０は、データ解析部２０７が、プリンタ１０からの通知信号の受信を確認すると（Ｓ９０１）、学習制御部２１４が各構成部に働きかけて最速データを検出するための学習プロセスを開始する。
【００３８】
まず、学習制御部２１４は、学習用データ保存部２１３とデータベース２１０とを参照し、学習を行う描画命令及び変換すべき描画命令の準備をプリンタドライバ２０３に行わせる（Ｓ９０２）。
具体的には、プリンタドライバ２０３は、学習用保存部２１３に保存してある（遅延が生じたとされる）描画命令に対応する新たな描画命令として、現在設定されている描画命令以外の他の描画命令を指定する。
例えば、ベクター処理の描画命令に代えて、新たな描画命令としてイメージ処理の描画命令を指定する。
【００３９】
次に、プリンタドライバ２０３は、学習用データ保存部２１３に保存されている描画命令に対し新たな描画命令にしたがって印刷データ（以下、学習用印刷データと呼称する。）に変換する（Ｓ９０３）。
なお、プリンタドライバ２０３は、学習用印刷データを生成するタイミングでタイマー２１２を起動し総印刷時間の計測を開始させる。
ステップＳ９０３で生成された学習用印刷データは、スプーラ２０４及び通信インタフェース２０５を介してプリンタ１０に送信される（Ｓ９０４）。
【００４０】
プリンタ１０は、学習用印刷データを受信すると印刷処理を行い、印刷処理が終了すると処理速度情報及び印刷終了信号をホストＰＣに送信する（Ｓ９０５）。
具体的には、ホストＰＣ２０からの学習用印刷データは、通信インタフェース１０１を介してデータ受信部１０２が受信する。次いで、データ解析部１０３、描画データ処理部１０４及び描画部１０５が各描画処理を行う。そして、その間の処理時間はタイマー１０８で計測され、処理速度情報が処理速度情報制御部１０９及び処理速度情報作成部１１０によって作成された後、通信インタフェース１０１を介してホストＰＣ２０に送信される。
また、システム制御部１０７は、描画処理が終了すると、所定の印刷終了信号をホストＰＣ２０に送信する。
なお、ここでの描画処理は分析のために実行されるものであるため、実際に紙媒体等への印刷処理は行わない。
【００４１】
次に、ホストＰＣ２０の処理速度情報分析部２０８は、プリンタ１０から受信した処理速度情報及び印刷終了信号を分析して直前に実行した印刷処理についての速度評価を行う（Ｓ９０６）。
具体的には、所定の基準時間との対照により一定の処理速度が得られたか否かを判定する。
なお、速度評価は、前述した遅延判定手段と同様、プリンタ情報管理部２０９に格納されてあるプリンタ１０の性能も参酌して行い、一定の処理速度を得た描画命令は図示しない記憶部に一旦保持しておく。
【００４２】
ここで、プリンタドライバ２０３は、準備した描画命令の数だけ印刷データの変換処理と速度評価を行う（Ｓ９０７）。
すなわち、学習制御部２１４は、変換していない描画命令がある場合（Ｓ９０７：ＮＯ）、ステップＳ９０２からの処理を繰り返して速度評価を行わせ、一方、変換していない描画命令がある場合（Ｓ９０７：ＹＥＳ）、ステップＳ９０８に進む。
【００４３】
ステップＳ９０８では、学習制御部２１４が、ステップＳ９０７で得た速度評価にもとづき、最速の評価を得た描画命令を抽出し、対応する描画命令とともにデータベース２１０に保存させる。
ステップＳ９０８の後、学習制御部２１４は、学習用データ保存部２１３を検索して学習用の描画命令（遅延を生じたと判断された描画命令）が保存されているか否かを確認し、描画命令が保存されている場合（Ｓ９０９：ＹＥＳ）、ステップＳ９０２からの処理を繰り返し実施するようにする。
一方、学習用データ保存部２１３に学習用の描画命令が保存されていない場合（Ｓ９０９：ＮＯ）、学習モードは終了する。
【００４４】
ここで、上記に示す本実施形態の画像形成システムは、プログラム（ソフトウェア）の命令によりコンピュータで実行される処理，手段，機能によって実現される。プログラムは、コンピュータの各構成要素に指令を送り、以下に示すような所定の処理・機能を行わせる。すなわち、本実施形態の画像形成システムにおける各処理・手段は、プログラムとコンピュータとが協働した具体的手段によって実現される。
なお、プログラムの全部又は一部は、例えば、磁気ディスク，光ディスク，半導体メモリ，その他任意のコンピュータで読取り可能な記録媒体により提供され、記録媒体から読み出されたプログラムがコンピュータにインストールされて実行される。また、プログラムは、記録媒体を介さず、通信回線を通じて直接にコンピュータにロードし実行することもできる。
【００４５】
以上説明したように、本実施形態の画像形成システム１によれば、印刷処理に要した時間を計測・分析して、印刷遅延が生じたときの描画命令をデータベース２１０に保存するようにしている。
また、学習プロセスを通してその描画命令についての最適な描画命令を求め、データベース２１０に保存するようにしている。
そして、データベース２１０に保存されてある描画命令と同様の描画命令を処理する場合には、自動的に最適な印刷データが生成されるようにしている。
【００４６】
このため、本実施形態によれば、印刷遅延の再発を防ぐとともに印刷処理の高速化を実現することができる。
このため、信頼性及び利便性に優れた画像形成システム１を提供することができる。
【００４７】
加えて、本実施形態の画像形成システム１は、プリンタ１０がその状態を検出する監視手段を備えるとともに、ホストＰＣ２０が状態に応じて学習プロセスの実行を制御する実行制御手段を備える構成となっている。
このため、プリンタ１０が稼働中の場合、所定の学習プロセスを実行させず、また、プリンタ１０が非稼働の場合、所定の学習プロセスを実行させるといった制御を可能としている。
このため、プリンタ１０における無用な輻輳を抑制し、実際の利用者に対するサービス低下を防ぐようにしている。
【００４８】
さらに、プリンタ１０は、ＣＰＵ速度やメモリ容量等のプリンタ性能情報を格納するプリンタ情報管理部２０９を備えており、印刷処理や学習プロセスの際にこれらのデータやデータベース２１０を参照するようにしている
このため、正確な遅延判定や速度評価を可能としている。
そして、本実施形態に係る画像形成システム１によれば、プリンタ１０やホストＰＣ２０の性能や機種を問わず様々な態様で本発明を実施することができるなど、高い拡張性を発揮することができる。
【００４９】
以上、本発明の画像形成システムについて、好ましい実施形態を示して説明したが、本発明にかかる画像形成システムは、上述した実施形態にのみ限定されるものではなく、本発明の範囲で種々の変更実施が可能であることは言うまでもない。
例えば、本実施形態に係るプリンタ１０は、所定の場合には印刷データをポリゴンによって生成するようにしてもよい。具体的には、印刷対象が特定の円や楕円の図形データの場合、所定の描画命令によって生成された印刷データの処理において過去に遅延が発生しているような場合には、あらためてポリゴンによって印刷データを生成することで遅延を回避することができる場合も考えられる。
また、学習用印刷データに所定の信号を付して送信し、プリンタ１０のメモリ等のリセットを促す構成であっても良い。
これにより、一定条件のもと、速度評価を実施することが可能となり、より信頼性の高い画像形成システムを実現することが可能となる。
また、上記実施形態において、遅延の判断に用いる描画命令はＰＤＬの描画命令としたが、ＰＤＬ変換前のオペレーティングシステムのＧＤＩの描画命令を遅延の判断に用いても良い。この場合、図４のステップＳ５０３をステップＳ５０１とステップＳ５０２の間に置き、ステップＳ５０９でデータベース上でＧＤＩの描画命令に対応付けられたＰＤＬの描画命令に変換すればよい。
【産業上の利用可能性】
【００５０】
本発明は、ホストコンピュータと画像形成装置とからなる画像形成システムに好適に利用することができる。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施形態に係る画像形成システムを構成するプリンタの機能構成を示すブロック図である。
【図２】本発明の一実施形態に係るプリンタの処理速度情報作成部によって作成される処理速度情報の例を示した図である。
【図３】本発明の一実施形態に係る画像形成システムを構成するホストＰＣの機能構成を示すブロック図である。
【図４】本発明の一実施形態に係る画像形成システムのホストＰＣにおいて印刷データが生成されプリンタに送信されるまでの動作手順を示したフローチャートである。
【図５】本発明の一実施形態に係る画像形成システムにおいて、プリンタが印刷データを受信し処理速度情報をホストＰＣに送信するまでの動作手順を示したフローチャートである。
【図６】本発明の一実施形態に係る画像形成システムのホストＰＣにおいて印刷終了信号を受信した場合の動作手順を示したフローチャートである。
【図７】本発明の一実施形態に係る画像形成システムのホストＰＣにおいて処理速度情報を受信した場合の動作手順を示したフローチャートである。
【図８】本発明の一実施形態に係る画像形成システムにおいて、最適な描画命令を習得するための学習プロセスを示したフローチャートである。
【符号の説明】
【００５２】
１  画像形成システム
１０  プリンタ（画像形成装置）
２０  ホストＰＣ（ホストコンピュータ）
【図１】
2010122917.tif 000003
【図２】
2010122917.tif 000004
【図３】
2010122917.tif 000005
【図４】
2010122917.tif 000006
【図５】
2010122917.tif 000007
【図６】
2010122917.tif 000008
【図７】
2010122917.tif 000009
【図８】
2010122917.tif 000010