以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する部材には同一符号を付しており、それらについての重複する説明は省略する。
(第1の実施の形態)
図1は、本実施形態における画像形成システムの一構成例を示す図である。この画像処理システムは、複合機やMFP(Multi Function Peripheral)などと称される画像形成装置1と、パーソナルコンピュータ(PC)などで構成されるコンピュータ10と、画像形成装置1とは異なる複数の印刷装置12,13,14,15とを備えている。画像形成装置1、コンピュータ10、および複数の印刷装置12,13,14,15は、LANなどのネットワーク9を介して相互にデータ通信可能に接続されている。尚、本実施形態においては、ネットワーク9に対し、4台の印刷装置12,13,14,15が接続された例を示すが、印刷装置の台数はこれに限られるものではない。
本実施形態の画像形成装置1は、例えばプリンタ機能、コピー機能、スキャナ機能、FAX機能などの複数の機能を備えた装置である。ただし、必ずしもそれら複数の機能を備えた装置に限られるものではなく、本実施形態では少なくともプリンタ機能を備えた装置であれば良い。つまり、本実施形態の画像形成装置1は、少なくとも印刷ジョブを実行することができるものであれば良い。
この画像形成装置1は装置本体の上部に、自動原稿搬送装置(ADF)2aとスキャナ部2bとを有する画像読取部2を備えている。例えばユーザがコピージョブ、スキャナジョブ或いはFAX送信ジョブの実行を指示した場合、この画像読取部2が機能し、原稿の画像を読み取ることができる。このときADF2aは複数枚の原稿を1枚ずつスキャナ部2bに搬送し、スキャナ部2bはADF2aによって搬送される原稿の画像を1枚ずつ読み取ることで複数枚の原稿の連続自動読み取りが可能である。
また画像形成装置1は装置本体の下部に、プリンタ部3aと給紙部3bとを有する画像形成部3を有している。例えばユーザが印刷ジョブ、コピージョブ或いはFAX受信ジョブの実行を指示した場合、この画像形成部3が機能し、印刷出力を行う。給紙部3bには、複数枚の出力用紙がストックされており、印刷出力を行う際には出力用紙を1枚ずつ取り出してプリンタ部3aに搬送する。プリンタ部3aは、給紙部3bから搬送される出力用紙に対してトナーを転写することにより画像形成を行って出力する。
また画像形成装置1は、画像読取部2の正面側に、ユーザが操作可能な操作パネル4を備えている。操作パネル4は、ユーザに対して各種情報を表示するための液晶ディスプレイなどで構成された表示部4aと、ユーザが操作入力を行うための複数の操作キーから成る入力部4bとを備えている。ここで入力部4bを構成する操作キーには、表示部4aの表面に配置されたタッチパネルキーと、表示部4aの周囲に配置された押しボタンキーとの双方が含まれる。
また図示を省略しているが、画像形成装置1は、画像形成部3において画像形成を行った後、複数枚の出力用紙を束ねた状態でステープルやパンチ、中綴じなどの後処理を行う後処理ユニットを備えたものであっても構わない。このような後処理ユニットは、通常、画像形成装置1に対して追加搭載可能なオプションユニットとなっている。そのため、画像形成装置1にそのようなオプションユニットを搭載することで、印刷ジョブの実行に伴い必要な後処理を行うことができるようになる。
図2は、画像形成装置1のハードウェア構成の一例を示すブロック図である。図2に示すように画像形成装置1は、上述した画像読取部2、画像形成部3および操作パネル4の他に、制御部20と、ネットワークインタフェース25と、記憶装置30とを備え、これらがデータバス27を介して接続されている。制御部20は、CPU21とメモリ22とを備えており、CPU21が、記憶装置30に記憶されているプログラム34を読み出して実行することにより、各部の動作を制御する。メモリ22は、CPU21がプログラム34を実行する際に一時的なデータなどを記憶するためのものである。
またCPU21は、記憶装置30に記憶されているWEBサーバプログラム36を読み出して実行することにより、画像形成装置1をWEBサーバとして機能させる。例えばコンピュータ10などにおいてWEBブラウザプログラムなどが起動された状態で、そのコンピュータ10が画像形成装置1にアクセスすると、画像形成装置1のWEBサーバ機能は、コンピュータ10に対し、WEBブラウザプログラムにより表示可能な表示画面を出力する。
ネットワークインタフェース25は、ネットワーク9を介してコンピュータ10や他の印刷装置12,13,14,15とデータ通信を行うためのものである。
記憶装置30は、例えばハードディスク装置などの不揮発性記憶装置によって構成される。この記憶装置30には、画像形成装置1に予めインストールされたプログラム34やWEBサーバプログラム36が記憶される。また記憶装置30には、コンピュータ10から受信する印刷ジョブを記憶する印刷ジョブ記憶部31、印刷装置12,13,14,15から受信する印刷装置情報150を記憶する印刷装置情報記憶部32、コンピュータ10から受信する印刷装置選択結果信号を記憶する印刷装置選択結果記憶部33、画像形成装置1が生成する印刷プレビュー画像を記憶するための印刷プレビュー画像記憶部35、複数の印刷プレビュー画像を配置した印刷プレビュー表示画面を記憶する印刷プレビュー表示画面記憶部37が設けられる。
次に、印刷装置12,13,14,15のそれぞれは少なくともプリンタ機能を備えており、ネットワーク9を介して受信する印刷ジョブを実行することにより印刷出力を行うように構成される。図3は、印刷装置12,13,14,15のハードウェア構成の一例を示すブロック図である。図3に示すように印刷装置12等は、画像読取部44、画像形成部45、操作パネル46、ネットワークインタフェース43、制御部40、および記憶装置50を備え、これらがデータバス47を介して接続されている。
制御部40は、CPU41とメモリ42とを備えており、CPU41が記憶装置50に記憶されているプログラム53を読み出して実行することにより、各部の動作を制御する。メモリ42はプログラム53の実行時に一時的なデータなどを記憶する。
ネットワークインタフェース43は、ネットワーク9を介して画像形成装置1とデータ通信を行うためのものである。
記憶装置50は、例えばハードディスク装置などの不揮発性記憶装置によって構成される。この記憶装置50には、印刷装置12等に予めインストールされたプログラム53が記憶される。また記憶装置50には、画像形成装置1から転送される印刷ジョブを記憶するための印刷ジョブ記憶部51、および印刷装置12等の自機に関する印刷装置情報150を記憶する印刷装置情報記憶部52が設けられる。尚、印刷装置情報150は、各印刷装置の特性や状態などが記録された情報であるが、その詳細については後述する。
次に、コンピュータ10は、画像形成装置1に対して印刷指示を与えるためのものである。図4は、コンピュータ10のハードウェア構成の一例を示すブロック図である。図4に示すようにコンピュータ10は、表示部64、入力部65、ネットワークインタフェース63、制御部60、および記憶装置70を備え、これらがデータバス66を介して接続されている。表示部5は、例えば液晶ディスプレイなどにより構成され、コンピュータ10を使用するユーザに対して各種情報を表示する。例えば、画像形成装置1から送信されてくる画像や、表示画面などを表示して、その内容をユーザが閲覧できるようになっている。入力部6は、例えばキーボードやマウスなどで構成されており、ユーザが操作入力を行えるようになっている。
制御部60は、コンピュータ10の各部を制御すると共に、各種の演算処理を行うものである。この制御部60は、CPU61とメモリ62とを備えている。CPU61は、記憶装置70に記憶されているプログラム71,72,73を読み出して実行することにより、各部の制御や、各種の演算処理を行う。メモリ62は、CPU61による演算処理などに伴って生成される一時的なデータなどを記憶するものである。
ネットワークインタフェース63は、ネットワーク9を介して画像形成装置1とデータ通信を行うためのものである。
記憶装置70は、例えばハードディスク装置などの不揮発性記憶装置によって構成され、コンピュータ10に予めインストールされたプログラム71,72,73を記憶する。この記憶装置70には、オペレーティングシステムであるシステムプログラム71と、入力部65より入力される編集操作に伴って文書データなどを作成するためのアプリケーションプログラム72と、アプリケーションプログラム72の実行中に文書データの印刷指示が与えられた場合に起動するドライバプログラム(プリンタドライバ)73とがインストールされている。このドライバプログラム73は、例えば、画像形成装置1に対して印刷指令を与えるためのプログラムとなっている。
したがって、ユーザがコンピュータ10に電源を投入すると、システムプログラム71が起動し、続いてアプリケーションプログラム72を起動すると、文書データを作成することができる。そしてユーザが入力部65より、文書データの印刷指示を入力すると、それに伴って制御部60がドライバプログラム73を起動する。制御部60は、ドライバプログラム73を起動することにより、文書データから画像形成装置1において実行可能な印刷ジョブを生成し、その印刷ジョブを含む印刷指令を画像形成装置1に送信する。このドライバプログラム73は、画像形成装置1に送信した印刷ジョブの実行が完了するまで、制御部60において起動状態となったまま常駐する。そしてドライバプログラム73は、ネットワーク9を介して画像形成装置1と相互にデータ通信を行うように制御部60を機能させる。
画像形成装置1は、コンピュータ10から印刷指令を受信すると、それに伴って受信した印刷ジョブを実行することにより印刷出力を開始する。このとき、画像形成装置1に、用紙不足、トナー残量不足、課金残高不足、ステープラ不足などのエラーが発生すると、印刷ジョブを実行することができなくなる。例えば、給紙部3bに出力用紙が1枚しか残っていないのに、印刷ジョブが10枚の出力用紙に画像形成を行うジョブである場合、最初の1枚の印刷出力を行った時点で印刷ジョブが停止し、それ以降のジョブを実行することができなくなる。また印刷ジョブの実行開始時に給紙部3bに出力用紙が1枚もストックされていない場合、印刷ジョブの実行を開始することができない。このことは、トナーやステープラなどについても同様である。またさらに、ユーザ毎に、或いはユーザの所属する部門毎に課金管理を行っている場合において、印刷ジョブの実行開始前又は実行開始後に課金残高が不足した場合もそれ以降のジョブを実行することができなくなる。
このような場合、画像形成装置1は、印刷ジョブの実行を停止し、ネットワーク9に接続されている他の印刷装置12,13,14,15のいずれか一つに対してその印刷ジョブを転送し、印刷ジョブを転送した印刷装置において印刷ジョブを代替的に実行させるように構成される。ただし、この場合、印刷ジョブを単に他の印刷装置12,13,14,15のいずれかに送信するだけでは、上記従来技術で説明したように、ユーザの所望する印刷出力とはならず、印刷出力を無駄にする可能性がある。
そこで本実施形態の画像形成装置1は、例えば印刷ジョブ実行時に印刷出力を継続して行うことが困難なエラーが発生した場合、その印刷ジョブを当該画像形成装置1において実行した場合の第1印刷プレビュー画像を生成し、さらにネットワーク9に接続された他の印刷装置12,13,14,15のそれぞれにおいてその印刷ジョブを実行した場合の第2印刷プレビュー画像を生成する。ここで印刷プレビュー画像とは、印刷ジョブを実行した場合の印刷出力形態を演算処理によって模擬的に画像として表した画像データである。そのため、第1印刷プレビュー画像は、画像形成装置1の特性などが反映された印刷出力形態を示す画像となる。また他の印刷装置12,13,14,15のそれぞれについて生成される第2印刷プレビュー画像は、それぞれの装置の特性などが反映された印刷出力形態を示す画像となる。
そして画像形成装置1は、それら第1印刷プレビュー画像と第2印刷プレビュー画像とを併せてユーザに掲示する。これにより、ユーザは、印刷指令を与えた画像形成装置1で印刷ジョブを実行した場合の第1印刷プレビュー画像を基準として、他の印刷装置12,13,14,15のそれぞれについて生成される複数の第2印刷プレビュー画像のそれぞれを比較することにより、ユーザの所望する印刷出力形態で出力可能な印刷装置を選択することができる。画像形成装置1は、ユーザが他の印刷装置12,13,14,15のうちから一の印刷装置を選択した場合、その一の印刷装置を印刷ジョブの転送対象として特定し、画像形成装置1において実行することが困難になった印刷ジョブを転送する。
図5は、画像形成装置1が印刷ジョブの転送を行うための処理シーケンスを示す図である。コンピュータ10に、ユーザによる印刷指示が入力されると(プロセスP1)、コンピュータ10はそれに伴い、画像形成装置1に印刷指令を送信する。この印刷指令には、印刷ジョブが付加される。
画像形成装置1は、印刷指令を受信すると、それと共に受信した印刷ジョブに基づいて印刷出力を開始する(プロセスP2)。そして画像形成装置1において印刷出力を継続して行うことが困難なエラーなど、所定のイベントが発生すると(プロセスP3)、画像形成装置1は印刷ジョブの実行を停止し、ネットワーク9に接続されている他の印刷装置12,13,14,15に対して印刷装置情報送信要求を行う。
各印刷装置12,13,14,15は、この印刷装置情報送信要求を受信すると、印刷装置情報記憶部52に記憶されている印刷装置情報150を読み出して画像形成装置1に送信する。
画像形成装置1は、印刷装置12,13,14,15のそれぞれから印刷装置情報150を受信すると、それらの印刷装置情報150に基づいて、印刷装置12,13,14,15のそれぞれにおいて印刷ジョブを実行した場合の第2印刷プレビュー画像を生成する。また画像形成装置1は、自身で印刷ジョブを実行した場合の第1印刷プレビュー画像を生成する(プロセスP4)。そして第1印刷プレビュー画像と、第2印刷プレビュー画像とをコンピュータ10に送信する。
コンピュータ10は、画像形成装置1から第1印刷プレビュー画像と、第2印刷プレビュー画像とを受信すると、それらの印刷プレビュー画像を表示部64に表示し(プロセスP5)、ユーザによる印刷装置選択操作を受け付ける(プロセスP6)。そしてユーザが所望の印刷出力形態を実現する一の印刷装置を選択した場合、コンピュータ10はユーザによる印刷装置選択結果を画像形成装置1に送信する。
画像形成装置1は、コンピュータ10から印刷装置選択結果を受信すると、複数の印刷装置12,13,14,15のうちから、印刷ジョブの転送対象となる一の印刷装置を特定し、その特定した印刷装置において実行可能なデータ形式に印刷ジョブを変換する(プロセスP7)。そして画像形成装置1は、印刷ジョブの転送対象である一の印刷装置に対し、印刷ジョブを転送する。
画像形成装置1から印刷ジョブを転送された一の印刷装置は、その印刷ジョブを実行することにより印刷出力を開始する(プロセスP8)。これにより、画像形成装置1で実行することが困難になった印刷ジョブが、画像形成装置1とは異なる他の印刷装置において代替的に実行されるようになる。このとき印刷ジョブを実行する印刷装置は、ネットワークに接続された複数の印刷装置12,13,14,15の中から、ユーザの所望する印刷出力形態を実現するものとしてユーザが選択した印刷装置であるため、これによる印刷出力が無駄になることはない。
次に上記のような動作を実現するための、画像形成装置1における具体的な内部機能について説明する。図6は、画像形成装置1の制御部20がプログラム34を実行することによって実現される詳細な機能構成を示すブロック図である。尚、図6では、画像形成装置1にエラーなどのイベントが発生して印刷ジョブの実行が不可能となった場合に、画像形成装置1における第1印刷プレビュー画像と、印刷装置12,13,14,15のそれぞれにおける第2印刷プレビュー画像とを生成してコンピュータ10に送信し、その後、ユーザによる印刷装置の選択結果に応じて複数の印刷装置12,13,14,15のうちの一の印刷装置に印刷ジョブを転送する、という機能に関するブロックのみを示しており、それ以外の機能については図示を省略している。
図6に示すように、制御部20は、プログラム34を実行することにより、印刷ジョブ管理部81、イベント検知部82、印刷装置情報管理部83、印刷プレビュー処理部84、印刷装置選択結果管理部87、印刷ジョブ変換部88、および印刷ジョブ転送部80、として機能する。また印刷プレビュー処理部84は、さらに印刷プレビュー生成部85および印刷プレビュー表示画面生成部86として機能する。
印刷ジョブ管理部81は、コンピュータ10がユーザの指示に基づいて生成した印刷ジョブを受信することによって、画像形成装置1が印刷ジョブを取得した場合に、これを印刷ジョブ記憶部31に保存する。また画像形成装置1は、例えば記憶装置30に予め保存されている文書データを読み出して印刷ジョブを生成することもできるようになっており、この場合、印刷ジョブ管理部81は、記憶装置30から読み出された文書データから生成された印刷ジョブを取得して印刷ジョブ記憶部31に保存する。さらに印刷ジョブ管理部81は、印刷ジョブの保存後、後述するイベント検知部82が所定のイベントを検知しないことを条件として、印刷ジョブの実行が可能となったタイミングでその印刷ジョブを読み出し、画像形成部3に出力することで印刷出力を実行させる。
イベント検知部82は、実行対象である印刷ジョブが印刷ジョブ記憶部31に保存されている状態で機能し、画像形成装置1において発生する所定のイベントを検知する。ここで、所定のイベントとは、例えば本実施形態においてはトナー切れ、用紙切れ、ステープラ切れ、課金残高不足等の、画像形成装置1において印刷ジョブを実行することが困難となる状態のことをいう。具体的な検知方法としては、例えば用紙切れの検知の場合、給紙部3bに設けられた図示しない用紙の有無を検知するセンサからの信号をイベント検知部82が受信することによって行う。尚、イベント検知部82が検知するイベントの種類は上述のものに限られない。イベント検知部82がどのようなイベントを検知するかは任意に設定可能であり、予め設定しておくことができる。
印刷装置情報管理部83は、イベント検知部82により所定のイベントが検知された場合に機能し、ネットワークインタフェース25を介して、ネットワーク9に接続されている他の印刷装置を検索する。そしてネットワーク9に複数の印刷装置12,13,14,15が接続されていることが判明した場合、それら複数の印刷装置12,13,14,15のそれぞれに対して印刷装置情報150を送信するように要求する。そして複数の印刷装置12,13,14,15のそれぞれから印刷装置情報150を受信した場合は、それらの印刷装置情報150を印刷装置情報記憶部32に保存する。また、印刷装置情報記憶部32には、画像形成装置1に関する印刷装置情報150も予め保存されている。そのため、印刷装置情報管理部83が、ネットワーク9を介して他の印刷装置12,13,14,15のそれぞれから取得した印刷装置情報150を印刷装置情報記憶部32に保存すると、印刷装置情報記憶部32には複数の印刷装置情報150が保存された状態となる。
図7は印刷装置情報150の一例を示す図である。印刷装置情報150は、画像形成装置1および各印刷装置12,13,14,15のそれぞれに固有の装置情報から構成されている。具体的には、図7に示すように、各装置に対して個別に付与された装置名151、各装置を識別するためのID152、各装置の特性情報153、各装置に搭載されているオプション情報154、各種出力用紙の有無を示す用紙情報155、およびトナー残量の有無を示すトナー情報156の各種情報で構成されている。尚、装置名151には、各装置のモデル名などを記録しておいても良い。
各装置の特性情報153には、画像形成装置1または各印刷装置における種々の印刷装置特性情報が格納されている。例えば、本実施形態では、カラープロファイル、所持フォント、内部処理解像度、画像圧縮方法、画像圧縮率、限界余白サイズ、データフォーマット等の各種情報が格納されている。特に、所持フォントの項目には、各所持フォントのフォントデータも格納されている。そのため、この特性情報153を参照すれば、各装置で印刷ジョブを実行した場合の印刷プレビュー画像を生成することができる。
オプション情報154には、画像形成装置1または各印刷装置における各種オプションの有無に関する情報が格納されている。例えば、パンチの有無、ステープラの有無、両面印刷の有無、製本印刷の有無、等の情報が格納されている。
図6に戻り、印刷プレビュー処理部84は、画像形成装置1および印刷装置12,13,14,15のそれぞれで同一の印刷ジョブを実行した場合の印刷プレビュー画像を取得してそれらを出力する処理を行う。特に、本実施形態では、印刷プレビュー処理部84に印刷プレビュー生成部85が設けられているので、印刷プレビュー処理部84は印刷プレビュー生成部85から印刷プレビュー画像を取得する。
つまり、印刷プレビュー生成部85は、印刷ジョブ記憶部31に保存されている印刷ジョブに基づいて第1印刷プレビュー画像および第2印刷プレビュー画像を生成する。具体的に説明すると、印刷プレビュー生成部85は、印刷装置情報記憶部32に保存されている各装置の印刷装置情報150に基づいて、各装置の特性をエミュレートすることにより、第1印刷プレビュー画像および第2印刷プレビュー画像を生成する。例えば、第1印刷プレビュー画像は、印刷装置情報記憶部32に保存されている画像形成装置1の印刷装置情報150に基づいて画像形成装置1における特性をエミュレートすることにより生成される。また第2印刷プレビュー画像は、印刷装置情報記憶部32に保存されている各印刷装置12,13,14,15の印刷装置情報150に基づいて、それぞれの装置の特性をエミュレートすることにより生成される。以下、これらの印刷プレビュー画像を生成する方法について、より具体的な一例を述べる。
まず、印刷プレビュー生成部85は、印刷ジョブ記憶部31に保存されている印刷ジョブを読み込む。例えば、印刷ジョブにはユーザがコンピュータ10等で作成したベクターイメージからなる描画データ、ユーザの所望する用紙サイズや余白サイズ等が設定された印刷設定情報、および印刷ジョブを識別するためのジョブID情報、などの情報が含まれるので、これらを読み込む。そして、この読み込んだ印刷ジョブから、第1印刷プレビュー画像を生成する。つまり、描画データをラスタライズしてラスターイメージを取得し、そのラスターイメージを、用紙サイズ、余白サイズ等の印刷設定情報に基づいて適宜拡大縮小し、さらに画像形成装置1の印刷装置情報150に基づいて画像形成装置1の印刷特性を反映させたものが第1印刷プレビュー画像となる。
次に印刷プレビュー生成部85は、印刷装置情報記憶部32に保存されている他の印刷装置12,13,14,15の印刷装置情報150を読み込む。具体的には、各印刷装置12,13,14,15の印刷装置情報150に格納されている特性情報153を読み込む。そして、それら特性情報153に基づき、第1印刷プレビュー画像を、各印刷装置12,13,14,15の印刷特性に適合させて変換することにより第2印刷プレビュー画像を生成する。尚、第2印刷プレビュー画像は、複数の印刷装置12,13,14,15のそれぞれについて生成される。
このように本実施形態では印刷プレビュー生成部85は、まず第1印刷プレビュー画像を生成し、その第1印刷プレビュー画像を、変換することにより印刷装置12,13,14,15の印刷特性に適合させて変換することにより第2印刷プレビュー画像を生成する。このとき、重要となるのは、次の4つの変換、すなわち(1)色変換、(2)フォント変換、(3)用紙サイズ変換、および(4)余白変換である。そこで、以下にこれら4つの変換(1)〜(4)について詳述する。尚、これら4つの変換が行われる順序は任意である。
(1)印刷プレビュー生成部85は、画像形成装置1および各印刷装置のカラープロファイルを、各々の印刷装置の特性情報153から読み込み、画像形成装置1のカラープロファイルと各印刷装置のカラープロファイルとを比較する。そして第1印刷プレビュー画像の色を、各印刷装置のカラープロファイルに適合するように変換する。
(2)印刷プレビュー生成部85は、画像形成装置1および各印刷装置の所持フォントリストと、画像形成装置1および各印刷装置の各所持フォントのフォントデータとを、各々の印刷装置の特性情報153から読み込む。ここで、第1印刷プレビュー画像において使用されているが、各印刷装置の所持フォントにはないフォントXが存在すれば、該フォントXのフォントデータおよび各印刷装置の各所持フォントのフォントデータをラスタライズし、生成されたラスタイメージを重ね合わせる。このとき、各印刷装置の各所持フォントのラスタイメージのうち、フォントXのラスタイメージと重なり合うピクセルの数が最も多いものを代替フォントとして選択し、第1印刷プレビュー画像において使用されているフォントXのフォントデータをこの代替フォントのフォントデータに置き換える変換を行う。また、第1印刷プレビュー画像において使用されており、かつ各印刷装置の所持フォントに存在するフォントYについては、第1印刷プレビュー画像において使用されているフォントYのフォントデータを各印刷装置におけるフォントYのフォントデータに置き換える変換を行う。
(3)印刷プレビュー生成部85は、各印刷装置におけるサイズ毎の出力用紙の有無に関する情報を、各印刷装置の用紙情報155から読み込み、第1印刷プレビュー画像生成時に選択されたサイズの用紙が各印刷装置の用紙情報155において「無し」となっている場合には、各印刷装置の用紙情報155において「有り」となっているサイズの出力用紙から、第1印刷プレビュー画像生成時において選択されたサイズの出力用紙に最も近いサイズの用紙を選択して、該選択された用紙サイズに合わせて第1印刷プレビュー画像を拡大縮小又は平行移動する変換を行う。
(4)印刷プレビュー生成部85は、各印刷装置の限界余白サイズを、各印刷装置の特性情報153から読み込み、これを第1印刷プレビュー画像の余白サイズと比較し、第1印刷プレビュー画像の余白サイズが各印刷装置の限界余白サイズを下回っている場合は、第1印刷プレビュー画像を拡大縮小、平行移動、又はその一部を削除する変換を行い、第1印刷プレビュー画像を各印刷装置の特性情報153から読み込んだ限界余白サイズに適合させる。
印刷プレビュー生成部85は、以上の4つの変換に加え、更に内部処理解像度を適合させる変換等を行い、第1印刷プレビュー画像から各印刷装置において印刷ジョブを実行した場合の第2印刷プレビュー画像を生成する。ただし、例えば印刷装置が画像形成装置1と同機種である場合や、印刷装置と画像形成装置1とで同一のオプションを備えている場合等は、上述の変換のうちいくつかまたは全てが不要であるので、そのような不要な変換は行われない。
上記のようにして生成される、第2印刷プレビュー画像は印刷装置12,13,14,15のそれぞれにおけるカラープロファイル、使用可能フォント等を反映した印刷出力に対応する画像となっており、また第1印刷プレビュー画像は画像形成装置1におけるカラープロファイル、使用可能フォント等を反映した印刷出力に対応する画像となっている。したがって、画像形成装置1と各印刷装置12,13,14,15とで適用されるカラープロファイル等の特性が異なれば、印刷出力が異なるものとなるので、第1印刷プレビュー画像と、第2印刷プレビュー画像とはそれぞれ異なる画像となる。また各印刷装置12,13,14,15のそれぞれについて得られる複数の第2印刷プレビュー画像もそれぞれ異なる画像となる。
そして印刷プレビュー生成部85は、第1印刷プレビュー画像と第2印刷プレビュー画像の双方を一時的に記憶装置30の印刷プレビュー画像記憶部35に保存する(図2参照)。
次に、印刷プレビュー処理部84に設けられた印刷プレビュー表示画面生成部86は、上記のようにして生成される第1印刷プレビュー画像と第2印刷プレビュー画像のそれぞれを所定の配列パターンに従って配置した表示画面を生成する。ここで生成される表示画面は、例えばコンピュータ10の表示部64に表示するための画面である。また所定の配列パターンとしては、例えば第1印刷プレビュー画像を所定の基準位置に配置し、複数の第2印刷プレビュー画像を、その基準位置の周囲に配置する。このとき、例えば、印刷プレビュー表示画面生成部86は、複数の第2印刷プレビュー画像のそれぞれを第1印刷プレビュー画像と比較し、第1印刷プレビュー画像との差分が小さいものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像が配置された基準位置の近傍に配置していく。またこのとき、印刷プレビュー表示画面生成部86は、画像形成装置1および他の印刷装置12,13,14,15の印刷装置情報150に含まれる所定の情報を画面内に表示するようにしても良い。
図10および図11には、印刷プレビュー表示画面生成部86によって生成される印刷プレビュー表示画面120の一例を示している。印刷プレビュー表示画面生成部86で生成する表示画面は、図10(a),図10(b),図11(a),図11(b)に示す表示画面のうちのいずれの画面構成であっても良い。
まず、図10(a)に示す印刷プレビュー表示画面120は、画面左側に第1印刷プレビュー画像G1を表示するための基準位置となる第1表示部121を有し、その右側の残りの部分が複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dを表示するための第2表示部122となっている。図10(a)の表示画面120では、第2表示部122において第1表示部121の近傍位置から複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dがこの順に配置されている。つまり、これら第2印刷プレビュー画像G2a,G2b,G2c,G2dは、第1印刷プレビュー画像G1との差分が小さいものから順に第1印刷プレビュー画像G1の近傍に配置されている。尚、第2印刷プレビュー画像G2a,G2b,G2c,G2dはそれぞれ印刷装置A,B,C,D(これらは、図1に示した印刷装置12,13,14,15のそれぞれに対応している。)で印刷ジョブを実行した場合の印刷プレビュー画像である。
また第2表示部122における各第2印刷プレビュー画像G2a,G2b,G2c,G2dの下方には、ユーザの所望する印刷出力となっている一の第2印刷プレビュー画像を選択し、その印刷出力を行うことが可能な印刷装置において代替的に印刷ジョブを実行させるための選択ボタン124a,124b,124c,124dが表示されている。したがって、ユーザは、印刷指令を与えた画像形成装置1で印刷ジョブを実行した場合の印刷出力を示す第1印刷プレビュー画像G1と対比させた状態で、複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dのうちから所望する印刷出力を選択し、それに対応する一の選択ボタンを操作することにより、代替的に印刷ジョブを実行させる印刷装置を選択することができる。
次に、図10(b)に示す印刷プレビュー表示画面120は、複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dを第1印刷プレビュー画像G1と対比可能なように表示するだけでなく、印刷ジョブにおいて指定されたオプションを他の印刷装置12,13,14,15で実行可能であるか否かを表示するように構成された画面である。つまり、第1表示部121には、第1印刷プレビュー画像G1の下欄に、印刷ジョブにおいて指定されたオプション表示欄125が表示される。図例では、印刷ジョブには、両面印刷と、ステープラとが指定されている場合を示している。また第2表示部122における各第2印刷プレビュー画像G2a,G2b,G2c,G2dの下欄には、各印刷装置A,B,C,Dで印刷ジョブを実行する際に実行可能なオプション表示欄125a,125b,125c,125dが表示される。図例では、印刷装置Aが両面印刷とステープラとの双方を実行可能であり、印刷装置BとCが両面印刷のみを実行可能であり、印刷装置Dが両面印刷およびステープラのいずれも実行できない場合を示している。したがって、ユーザは、第1印刷プレビュー画像G1と対比させた状態で、複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dのうちから所望する印刷出力を選択することができると共に、その選択を行う際には、画像形成装置1に印刷指令を与える際に印刷ジョブに指定したオプションを、他の印刷装置12,13,14,15のそれぞれで実行できるか否かを確認することができる。それ故、ユーザは、他の印刷装置12,13,14,15で実行可能なオプションを考慮しつつ、印刷ジョブを代替的に実行させる一の印刷装置を選択することができる。
次に、図11(a)に示す印刷プレビュー表示画面120は、その下欄に、第2印刷プレビュー画像G2a,G2b,G2c,G2dのそれぞれにおいて使用されているフォントが第1印刷プレビュー画像G1で使用されているフォントにどの程度類似しているかを示すフォント類似度表示欄126を表示するように構成された画面である。印刷プレビュー表示画面生成部86は、複数の第2印刷プレビュー画像のそれぞれを第1印刷プレビュー画像と比較する際、各第2印刷プレビュー画像で使用されているフォントと第1印刷プレビュー画像で使用されているフォントとの類似度を評価する。そして第2表示部122には、その類似度の高いものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像の近傍に配置して表示する。またフォント類似度表示欄126には、各第2印刷プレビュー画像で使用されているフォントの第1印刷プレビュー画像で使用されているフォントに対する類似度を数値や棒グラフなどで表示する。したがって、ユーザは、他の印刷装置12,13,14,15で印刷ジョブを実行した場合、画像形成装置1で印刷ジョブを実行した場合と比較して、どの程度フォントの差異が生じるかを具体的に把握することができる。
次に、図11(b)に示す印刷プレビュー表示画面120は、その下欄に、第2印刷プレビュー画像G2a,G2b,G2c,G2dのそれぞれで表現される色が第1印刷プレビュー画像G1で表現される色にどの程度類似しているかを示す色類似度表示欄127を表示するように構成された画面である。印刷プレビュー表示画面生成部86は、複数の第2印刷プレビュー画像のそれぞれを第1印刷プレビュー画像と比較する際、各第2印刷プレビュー画像で表現される色と第1印刷プレビュー画像で表現される色との類似度を評価する。そして第2表示部122には、その類似度の高いものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像の近傍に配置して表示する。また色類似度表示欄127には、各第2印刷プレビュー画像で表現される色の、第1印刷プレビュー画像で表現される色に対する類似度を数値や棒グラフなどで表示する。したがって、ユーザは、他の印刷装置12,13,14,15で印刷ジョブを実行した場合、画像形成装置1で印刷ジョブを実行した場合と比較して、どの程度色の差異が生じるかを具体的に把握することができる。
図12は、上述したフォント類似度と、色類似度とを同時に表示する場合の表示態様の一例を示す図である。図12では、色類似度をX軸、フォント類似度をY軸にとったX−Y座標系であって類似度が低くなる向きを正とするようなX−Y座標系を示している。この表示態様では、第1印刷プレビュー画像はX−Y座標系の原点近傍に配置された状態で表示される。また複数の第2印刷プレビュー画像のそれぞれは、第1印刷プレビュー画像に対するフォント類似度および色類似度のそれぞれに対応する座標に配置された状態で表示される。したがって、このような表示態様とすれば、上述した印刷プレビュー表示画面120において、第2印刷プレビュー画像の第1印刷プレビュー画像に対するフォント類似度と色類似度の双方を同時に表示することができるようになり、ユーザは、他の印刷装置12,13,14,15で印刷ジョブを実行した場合、画像形成装置1で印刷ジョブを実行した場合と比較して、フォントと色とのそれぞれにどの程度の差異が生じるかを具体的に把握することができる。
以上、幾つか例示した表示画面では、複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dが、第1印刷プレビュー画像G1との差異が小さい程、第1印刷プレビュー画像G1に近い位置に並べられることになる。後述するように、ユーザはこのような印刷プレビュー表示画面120を閲覧して、所望の印刷出力を実現する一の印刷装置を、代替的に印刷ジョブを実行させる印刷装置として選択するのであるから、上述したように複数の第2印刷プレビュー画像G2a,G2b,G2c,G2dを配置することによって、ユーザは画像形成装置1において印刷ジョブを実行した場合の印刷出力結果により近い印刷出力結果が得られる一の印刷装置を容易に特定でき、素早く選択操作を行うことが可能となる。特に、図12に示したようにフォントや色などの複数の要素に基づいて第2印刷プレビュー画像を第1印刷プレビュー画像と対比させた結果を反映した表示態様であれば、画像形成装置1における印刷出力結果により近い印刷出力結果が得られる印刷装置を選択する際、複数の要素を総合的に判断して一の印刷装置を選択することができるようになるという利点がある。
また、印刷プレビュー表示画面生成部86は、第2印刷プレビュー画像において、第1印刷プレビュー画像と異なる部分がある場合には、その異なる部分を強調表示したり、或いは、その異なる部分のみを抽出表示した印刷プレビュー表示画面120を生成しても良い。この場合、第2印刷プレビュー画像が第1印刷プレビュー画像と異なる部分を、ユーザに注目させることができる。したがって、ユーザは、画像形成装置1で印刷ジョブを実行した場合の印刷出力結果と、他の印刷装置12,13,14,15で印刷ジョブを実行した場合の印刷出力結果とで差異が生じる部分を明確に把握することができるようになる。
上述した幾つか表示画面の例では、第1印刷プレビュー画像との差分が小さいものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像の近傍に配置している。しかし、上述した画面例以外にも、印刷プレビュー表示画面生成部86が生成する印刷プレビュー表示画面には種々の態様がある。以下、他の画面構成例について幾つか説明する。図13は、他の画面構成例を示す図である。
図13(a)は、他の印刷装置12,13,14,15のそれぞれで印刷ジョブを実行した場合の印刷コストを、画像形成装置1で印刷ジョブを実行した場合の印刷コストと対比させて表示する印刷プレビュー表示画面120の一例を示す図である。この印刷プレビュー表示画面120は、その下欄に、他の印刷装置12,13,14,15のそれぞれで印刷ジョブを実行した場合の印刷コストを示す印刷コスト表示欄128を表示するように構成される。そして第2表示部122には、その印刷コストが安いものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像の近傍に配置して表示する。このような画面構成の場合、ユーザは、他の印刷装置12,13,14,15で印刷ジョブを代替的に実行させた場合、画像形成装置1で印刷ジョブを実行した場合と比較して、どの程度の印刷コストを要するのかを具体的に把握することができ、それぞれの印刷コストを考慮して一の印刷装置を選択することができる。
図13(b)は、ユーザによる他の印刷装置12,13,14,15の使用頻度を表示する印刷プレビュー表示画面120の一例を示す図である。この印刷プレビュー表示画面120は、その下欄に、他の印刷装置12,13,14,15のそれぞれを使用した回数を示す使用頻度表示欄129を表示するように構成される。この場合の使用頻度とは、例えば、画像形成装置1において印刷ジョブを実行することが困難なイベントが発生した場合に、ユーザがその印刷ジョブを代替的に実行させた回数を示している。そして第2表示部122には、その使用頻度の多いものから順に、複数の第2印刷プレビュー画像を第1印刷プレビュー画像の近傍に配置して表示する。このような画面構成の場合、ユーザは、他の印刷装置12,13,14,15において過去に印刷ジョブを代替的に実行させた回数を具体的に把握することができ、過去の使用実績に基づいて一の印刷装置を選択することができるようになる。
尚、印刷プレビュー表示画面生成部86が上述した幾つかの印刷プレビュー表示画面120のうちのいずれを生成するかは、任意に設定可能であり、予め画像形成装置1に設定しておくことができる。
そして印刷プレビュー表示画面生成部86は、上記のようにして印刷プレビュー表示画面120を生成すると、その印刷プレビュー表示画面120を印刷プレビュー表示画面記憶部37に保存する。
図6に戻り、次に、印刷プレビュー処理部84は、第1印刷プレビュー画像と第2印刷プレビュー画像とをコンピュータ10の表示部64に表示させるべく、ネットワークインタフェース25を介してコンピュータ10に送信して出力する。ここで、印刷プレビュー処理部84が、第1印刷プレビュー画像と第2印刷プレビュー画像とをコンピュータ10に送信する方法として、幾つかの方法がある。第1の方法は、上述したWEBサーバ機能により、コンピュータ10がネットワーク9を介して画像形成装置1にアクセスしてきた場合に、印刷プレビュー表示画面記憶部37に保存した印刷プレビュー表示画面120を読み出してコンピュータ10に送信する方法である。第2の方法は、第1印刷プレビュー画像と第2印刷プレビュー画像とを電子メールに添付してコンピュータ10に送信する方法であり、画像形成装置1が印刷プレビュー画像記憶部35に保存した第1印刷プレビュー画像と第2印刷プレビュー画像との双方を読み出し、それらを添付した電子メールを作成してコンピュータ10に対応する電子メールアドレスに送信する方法である。第3の方法は、印刷プレビュー処理部84がネットワーク9を介してコンピュータ10の制御部60に対して直接、印刷プレビュー表示画面120を送信し、その制御部60において常駐しているドライバプログラム73の機能によって表示部64にその印刷プレビュー表示画面120をポップアップ表示させる方法である。
上記3つの方法のうち、第1の方法および第3の方法では、印刷プレビュー表示画面生成部86が生成した印刷プレビュー表示画面120がコンピュータ10の表示部64に表示される。そのため、ユーザは、表示部64に表示される印刷プレビュー表示画面120を閲覧することにより、ネットワーク9に接続されている複数の印刷装置12,13,14,15のうちから所望の印刷出力を行うことが可能な一の印刷装置を特定することができると共に、その印刷プレビュー表示画面120に対して一の印刷装置を選択する選択操作を行うことができる。その結果、画像形成装置1は、ユーザによって選択された一の印刷装置を特定した印刷装置選択結果をコンピュータ10から受信する。
また上述した第2の方法では、第1印刷プレビュー画像と第2印刷プレビュー画像とが電子メールに添付された状態で送信されるため、コンピュータ10の表示部64には、コンピュータ10によって受信された電子メールの内容が表示される。図14は、この電子メール130の一例を示す図である。図14に示すように、電子メール130には、ヘッダ情報131と、本文情報132と、添付ファイル情報133とが含まれる。ヘッダ情報131に含まれる件名欄には、ユーザが代替印刷装置を選択すべき旨の表示と、画像形成装置1に送信した印刷ジョブのジョブIDとが含まれる。また本文情報132には、印刷ジョブを送信した画像形成装置1が印刷ジョブを実行することができない旨が表示され、さらに印刷装置A,B,C,Dのそれぞれで印刷ジョブを実行した場合の第2印刷プレビュー画像のファイル名が付されている。また添付ファイル情報133には、第1印刷プレビュー画像(MFP1.jpg)と第2印刷プレビュー画像(printerA.jpg, printerB.jpg, printerC.jpg, printerD.jpg)とが含まれる。この場合、ユーザは、電子メール130に添付された各画像を手動操作などで閲覧し、複数の印刷装置12,13,14,15のうちから所望の印刷出力を行うことが可能な一の印刷装置を特定する。そして画像形成装置1に対し、特定した一の印刷装置を通知するため、その一の印刷装置に対応するIDをメール本文に記入した電子メールを返信する。その結果、画像形成装置1は、その返信メールを、ユーザによる印刷装置選択結果として受信する。
図6に示す印刷装置選択結果管理部87は、画像形成装置1がユーザによる印刷装置選択結果をコンピュータ10から受信した場合に、それを印刷装置選択結果記憶部33に保存する処理部である。
印刷ジョブ変換部88は、印刷ジョブ記憶部31から印刷ジョブを読み込み、その印刷ジョブを、印刷装置選択結果において指定された一の印刷装置において実行可能なデータフォーマットへと変換する。具体的には、印刷装置選択結果記憶部33に保存されている印刷装置選択結果に基づいて、ユーザによって選択された一の印刷装置に関する印刷装置情報150を印刷装置情報記憶部32から読み込み、その一の印刷装置において実行可能なデータフォーマットを特定して、印刷ジョブをそのデータフォーマットに変換する。ただし、画像形成装置1と印刷装置選択結果で指定された一の印刷装置とが同一のデータフォーマットであれば、上述のような印刷ジョブの変換は行われない。
印刷ジョブ転送部80は、印刷ジョブ変換部88によって変換された印刷ジョブを、印刷装置選択結果によって指定された一の印刷装置へ送信する処理部である。したがって、ユーザによって選択された印刷装置は、印刷ジョブ転送部80によって送信される印刷ジョブを受信し、画像形成装置1に代わって印刷ジョブを実行する。これにより、ユーザは、画像形成装置1が印刷ジョブを実行することが困難な状況であっても、他の印刷装置で印刷ジョブを実行させることにより、それによる印刷出力を得ることができる。そしてこの場合、ユーザは所望の印刷出力となることを事前に確認しているので、他の印刷装置から得られる印刷出力結果を見て不満を抱くことはなく、他の印刷装置による印刷出力が無駄になることはない。
ここで、印刷ジョブ転送部80が一の印刷装置に送信した印刷ジョブを当該一の印刷装置において実行させるために、画像形成装置1の課金残高(チャージ)を利用するようにしても良い。例えば、画像形成装置1において予めチャージされた課金残高を記憶しておく。そして印刷ジョブ転送部80がユーザによって選択された一の印刷装置に印刷ジョブを送信する際、画像形成装置1が、自機で記憶している課金残高から当該一の印刷装置で印刷ジョブを実行させるために必要な金額を差し引く処理を行う。そして画像形成装置1は、この金額に関する情報を、印刷ジョブと共に一の印刷装置に送信する。この金額に関する情報および印刷ジョブを受信した一の印刷装置は、画像形成装置1において差し引かれた金額を自機で記憶している課金残高に追加する処理を行い、その後、印刷ジョブを実行する。そして一の印刷装置は、その印刷ジョブの実行に伴い、自機の課金残高からその印刷ジョブの実行に必要な金額を差し引く。このような処理では、画像形成装置1に代わって他の印刷装置が印刷ジョブを実行した場合、その印刷ジョブの実行に必要な費用を画像形成装置1に課金することができる。また画像形成装置1においてユーザ毎に課金残高を管理しているような形態であれば、画像形成装置1から他の一の印刷装置に対して印刷ジョブを転送して実行させた場合であっても、その印刷ジョブの実行に必要な費用をそのユーザに対して課金することができる。
次に、他の印刷装置12,13,14,15の機能構成について説明する。図8は、印刷装置12,13,14,15のそれぞれにおける制御部40がプログラム53を実行することによって実現される機能構成の一例を示すブロック図である。尚、図8では、画像形成装置1にイベントが発生して印刷ジョブを実行することが困難な状況となった場合に、印刷装置12,13,14,15が画像形成装置1からの要求に応じて画像形成装置1に印刷装置情報150を送信し、その後、画像形成装置1から送信されてくる印刷ジョブを取得して実行するための機能のみを示しており、コピー機能、スキャン機能、FAX機能などのその他の機能については図示を省略している。
図8に示すように、制御部40は、プログラム53を実行することにより、印刷装置情報管理部91、印刷ジョブ管理部92、および印刷ジョブ実行部93、として機能する。
印刷装置情報管理部91は、出力用紙の有無やトナーの有無などを定期的にチェックし、印刷装置情報記憶部52に記憶されている印刷装置情報150を更新する。そして画像形成装置1から送信される印刷装置情報送信要求を受信した場合に、印刷装置情報記憶部52から印刷装置情報150を読み出し、画像形成装置1に送信する。ただし、本実施形態では、印刷装置情報管理部91は、画像形成装置1から印刷装置情報送信要求を受信したとき、当該印刷装置において印刷可能な状態であるか否かを判断し、印刷可能な状態である場合に、印刷装置情報記憶部52から印刷装置情報150を読み出して画像形成装置1に送信するように構成される。ここで、印刷可能な状態とは、例えば、当該印刷装置においてトナーが有り、かつ少なくとも一種類の出力用紙が一枚以上有る状態である。
印刷ジョブ管理部92は、画像形成装置1から実行可能な印刷ジョブが送信されてきた場合に、これを受信して印刷ジョブ記憶部51に保存する処理部である。また印刷ジョブ実行部93は、印刷ジョブ管理部92が印刷ジョブ記憶部51に保存した印刷ジョブを読み込んで、これを実行し、印刷出力を行うための動作を制御する処理部である。印刷ジョブ実行部93が印刷ジョブを実行することにより得られる印刷出力は、ユーザが事前に確認して選択した第2印刷プレビュー画像に対応するものとなっている。
次に、コンピュータ10の機能構成について説明する。図9は、コンピュータ10における制御部60がシステムプログラム71およびアプリケーションプログラム72を起動し、さらにドライバプログラム73を起動した状態で実現される機能構成の一例を示すブロック図である。尚、図9では、画像形成装置1に対して印刷指令を送信し、画像形成装置1にイベントが発生して印刷ジョブの実行が不可能となった場合に、ユーザに対して第1印刷プレビュー画像および第2印刷プレビュー画像を掲示して、ユーザによる印刷装置選択結果を画像形成装置1に送信するための機能のみを示しており、その他の機能については図示を省略している。
図9に示すように、制御部60は、印刷指令送信部101、印刷プレビュー表示処理部102および印刷装置選択結果送信部103として機能する。印刷指令送信部101は、ユーザが文書データの印刷指示を入力した場合、それに伴って画像形成装置1に印刷指令を送信する処理部である。この印刷指令送信部101により、画像形成装置1に送信される印刷ジョブが生成される。印刷プレビュー表示処理部102は、画像形成装置1から受信する印刷プレビュー表示画面120を表示部64に表示する処理部である。尚、コンピュータ10が、画像形成装置1から第1印刷プレビュー画像と第2印刷プレビュー画像とが添付された電子メールを受信した場合、印刷プレビュー表示処理部102はその電子メールの内容および添付された画像を表示部64に表示する。印刷装置選択結果送信部103は、ユーザが複数の印刷装置12,13,14,15のうちから一の印刷装置を選択した場合に、そのユーザによる選択結果、すなわち印刷装置選択結果を画像形成装置1に送信する処理部である。
他の印刷装置12,13,14,15およびコンピュータ10のそれぞれが、図8および図9に示したような機能を有することにより、図5に示した処理シーケンスを行うことが可能となり、画像形成装置1が印刷ジョブを実行することが困難な状況となった場合に、その印刷ジョブを転送する他の印刷装置をユーザに選択させ、ユーザの所望する印刷出力を行うことが可能な一の印刷装置でその印刷ジョブを実行させることが可能になる。
次に、画像形成装置1の動作について説明する。図15は、画像形成装置1が印刷ジョブを受信した場合に行う処理手順の一例を示すフローチャートである。画像形成装置1は、コンピュータ10から印刷ジョブを受信したか否かを監視している(ステップS101)。画像形成装置1が印刷ジョブを受信したならば(ステップS101でYES)、印刷ジョブ管理部81が機能し、その印刷ジョブを印刷ジョブ記憶部31に保存する(ステップS102)。そして印刷ジョブ管理部81は、印刷ジョブ記憶部31に保存した印刷ジョブを実行することが可能となったタイミングで読み出し、印刷ジョブの実行を開始する(ステップS103)。
一方、イベント検知部82が、画像形成装置1においてイベントの発生を検知した場合(ステップS104でYES)、印刷ジョブ管理部81は印刷ジョブの実行を停止させる(ステップS105)。そして第1印刷プレビュー画像および第2印刷プレビュー画像を生成するための印刷プレビュー生成処理を実行する(ステップS106)。この処理が終わると、印刷プレビュー処理部84は、第1印刷プレビュー画像および第2印刷プレビュー画像を出力するための印刷プレビュー出力処理を実行する(ステップS107)。その後、画像形成装置1は、コンピュータ10から印刷装置選択結果を受信するまで待機し(ステップS108)、受信すると(ステップS108でYES)、印刷装置選択結果管理部87が機能して、受信した印刷装置選択結果を印刷装置選択結果記憶部33に保存する(ステップS109)。そして、印刷ジョブ変換部88および印刷ジョブ転送部80が機能し、印刷ジョブ転送処理を実行して(ステップS110)、処理を終了する。尚、イベント検知部82がイベントを検知しなかった場合には(ステップS104でNO)、画像形成装置1において印刷ジョブの実行が完了し、この処理が終了する。
図16は、印刷プレビュー生成処理(図15のステップS106)の詳細な処理手順の一例を示すフローチャートである。印刷プレビュー生成処理に進むと、まず印刷装置情報管理部83が機能し、ネットワーク9に接続されている他の印刷装置12,13,14,15を検索する(ステップS201)。この検索処理により、現在稼働中の他の印刷装置の全てを抽出することができる。そして印刷装置情報管理部83は、検索により抽出した他の印刷装置12,13,14,15のそれぞれに対して印刷装置情報150の送信要求を行う(ステップS202)。そして、それら他の印刷装置12,13,14,15のそれぞれから印刷装置情報150を受信するのを待機する(ステップS203)。印刷装置情報管理部83は、各印刷装置12,13,14,15から印刷装置情報150を受信した場合(ステップS203でYES)、その受信した印刷装置情報150を印刷装置情報記憶部32に保存する(ステップS204)。その後、印刷プレビュー処理部84において印刷プレビュー生成部85が機能し、印刷ジョブ記憶部31から印刷ジョブを読み込み(ステップS205)、まず第1印刷プレビュー画像を生成する(ステップS206)。そして第1印刷プレビュー画像が生成されると、次に第2印刷プレビュー画像を生成する(ステップS207)。これら第1および第2印刷プレビュー画像は、印刷プレビュー画像記憶部35に保存される(ステップS208)。
続いて、印刷プレビュー処理部84において印刷プレビュー表示画面生成部86が機能し、印刷プレビュー画像記憶部35に保存された第1および第2印刷プレビュー画像のそれぞれを所定のパターンで配置した印刷プレビュー表示画面120を生成する(ステップS209)。そして生成した印刷プレビュー表示画面120を印刷プレビュー表示画面記憶部37に保存して(ステップS210)、印刷プレビュー生成処理を終了する。
次に図17は、印刷プレビュー出力処理(図15のステップS107)の詳細な処理手順の一例を示すフローチャートである。この処理に進むと、印刷プレビュー処理部84は、まず、印刷プレビュー画像の出力設定(すなわち、上述した第1〜第3の方法のうちのいずれの送信方法が設定されているか)を読み込む(ステップS301)。ここで電子メールによる出力が設定されている場合(ステップS302でYES)、印刷プレビュー処理部84は、コンピュータ10に送信するための電子メールを作成する(ステップS303)。そして印刷プレビュー画像記憶部35に保存された第1印刷プレビュー画像および第2印刷プレビュー画像を読み出し、この電子メールに添付する(ステップS304)。そしてコンピュータ10に対応する電子メールアドレスにその電子メールを送信し(ステップS305)、この処理を終了する。
一方、WEBサーバによる出力が設定されている場合(ステップS306でYES)、印刷プレビュー処理部84は、コンピュータ10に対し、画像形成装置1にアクセスするためのURLを通知する(ステップS307)。この通知は、例えばコンピュータ10に常駐しているドライバプログラム73の機能により、コンピュータ10の表示部64にポップアップ表示される。そしてコンピュータ10からのアクセスがあるまで待機する状態となり(ステップS308)、コンピュータ10からのアクセスがあると、印刷プレビュー表示画面記憶部37に保存されている印刷プレビュー表示画面120を読み出してコンピュータ10に出力し(ステップS309)、この処理を終了する。
さらに、上記以外の出力が設定されている場合(ステップS306でNO)、印刷プレビュー処理部84は、コンピュータ10に常駐しているドライバプログラム73の機能によって表示部64に印刷プレビュー表示画面120をポップアップ表示させるべく、印刷プレビュー表示画面記憶部37に保存されている印刷プレビュー表示画面120を読み出してコンピュータ10に出力し(ステップS310)、この処理を終了する。尚、ステップS309とS310とで出力される印刷プレビュー表示画面120は厳密には異なる画面データとなっているが、それについての説明は省略する。
次に図18は、印刷ジョブ転送処理(図15のステップS110)の詳細な処理手順の一例を示すフローチャートである。この処理に進むと、まず印刷ジョブ変換部88が機能し、印刷装置選択結果記憶部33から印刷装置選択結果を読み込む(ステップS401)。次に、印刷装置情報記憶部32から、印刷装置選択結果で指定されている一の印刷装置に関する印刷装置情報150を読み込む(ステップS402)。そして印刷ジョブ記憶部31から図15のステップS102で保存した印刷ジョブを読み込み(ステップS403)、この印刷ジョブのデータフォーマットをユーザによって選択された一の印刷装置に適合するデータフォーマットへと変換する(ステップS404)。すると、印刷ジョブ転送部80が機能し、この変換後の印刷ジョブを、印刷装置選択結果において指定された一の印刷装置へ送信して(ステップS405)、印刷ジョブ転送処理を終了する。
次に、他の印刷装置12,13,14,15における動作について説明する。図19は、印刷装置12,13,14,15のそれぞれが定期的に繰り返し実行する処理手順の一例を示すフローチャートである。各印刷装置は、画像形成装置1から印刷装置情報送信要求を受信したか否かを判断し(ステップS501)、印刷装置情報送信要求を受信した場合(ステップS501でYES)、現在の自機の状態が印刷可能な状態か否かを判断する(ステップS502)。ここで印刷可能な状態であれば(ステップS502でYES)、印刷装置情報管理部91が機能し、印刷装置情報記憶部52に保存されている印刷装置情報150を読み込み(ステップS503)、その印刷装置情報150を画像形成装置1へ送信する(ステップS504)。一方、印刷装置情報送信要求を受信していない場合(ステップS501でNO)、および、印刷不可能と判断した場合(ステップS502でNO)、印刷装置情報150の送信は行わない。
次に各印刷装置は、画像形成装置1から印刷ジョブを受信したか否かを判断し(ステップS505)、印刷ジョブを受信した場合(ステップS505でYES)、その印刷ジョブを印刷ジョブ記憶部51に保存し(ステップS506)、その後、その保存した印刷ジョブを実行する(ステップS507)。一方、印刷ジョブを受信していない場合(ステップS505でNO)、この処理は終了する。
以上のように、本実施形態の画像形成装置1は、受信した印刷ジョブを実行することが困難なイベントが発生した場合、自機でその印刷ジョブを実行した場合の第1印刷プレビュー画像を生成すると共に、ネットワーク9に接続されている他の印刷装置12,13,14,15でその印刷ジョブを実行した場合の第2印刷プレビュー画像を生成する。そして、それら第1印刷プレビュー画像と第2印刷プレビュー画像とを併せて、印刷ジョブの送信元であるコンピュータ10に出力する構成である。そのため、ユーザは、他の印刷装置12,13,14,15で印刷ジョブを実行した場合の印刷出力結果を第2印刷プレビュー画像で確認することができると共に、その確認を行う際には、画像形成装置1においてその印刷ジョブを実行した場合の印刷出力結果を示す第1印刷プレビュー画像と対比させた状態で確認が行える。
また本実施形態の画像形成装置1によれば、画像形成装置1にエラーなどが発生して印刷ジョブを実行することができなくなった状態でも、ユーザ自身がネットワーク9に接続された他の印刷可能な印刷装置を調べる必要はない。それ故、印刷ジョブを他の印刷装置において代替的に実行させる際のユーザの操作負担を軽減することが可能である。さらに、第2印刷プレビュー画像、すなわち他の印刷装置12,13,14,15の印刷プレビュー画像の生成、および印刷ジョブの変換は、画像形成装置1で行われるため、ユーザは、他の印刷装置12,13,14,15のドライバプログラムをコンピュータ10にインストールする等の事前設定を行う必要がなく、その点からもユーザの操作負担は軽減される。
尚、上記においては、画像形成装置1が他の印刷装置12,13,14,15から印刷装置情報150を取得するために、画像形成装置1から他の印刷装置12,13,14,15に対して印刷装置情報送信要求を送信する場合を例示したが、画像形成装置1が他の印刷装置12,13,14,15の印刷装置情報150を取得する方法は必ずしもこれに限られない。例えば、他の印刷装置12,13,14,15のそれぞれが定期的に画像形成装置1に対して自身の印刷装置情報150を送信し、画像形成装置1では他の印刷装置12,13,14,15から定期的に送られてくる印刷装置情報150を保存しておき、イベント発生時には予め保存しておいた印刷装置情報150に基づいて第2印刷プレビュー画像を生成するようにしても良い。
(第2の実施の形態)
次に、第2の実施の形態について説明する。この第2実施形態が第1実施形態と異なる点は、画像形成装置1が他の印刷装置12,13,14,15のそれぞれで印刷ジョブを実行した場合の第2印刷プレビュー画像を取得する方法である。
図20は、第2実施形態において画像形成装置1が印刷ジョブの転送を行うための処理シーケンスを示す図である。尚、図20に示すプロセスP1,P2,P3までの処理は、図5に示したものと同様である。第2実施形態では、画像形成装置1において印刷出力を継続して行うことが困難なエラーなど、所定のイベントが発生すると(プロセスP3)、画像形成装置1は印刷ジョブの実行を停止し、ネットワーク9に接続されている他の印刷装置12,13,14,15に対して印刷プレビュー画像送信要求を行う。各印刷装置12,13,14,15は、この印刷プレビュー画像送信要求を受信すると、それぞれの装置において印刷ジョブを実行した場合の第2印刷プレビュー画像を生成し、その生成した第2印刷プレビュー画像を画像形成装置1に送信する。
画像形成装置1は、印刷装置12,13,14,15のそれぞれから第2印刷プレビュー画像を受信すると、画像形成装置1自身が印刷ジョブを実行した場合の第1印刷プレビュー画像を生成する(プロセスP4)。そして第1印刷プレビュー画像と、第2印刷プレビュー画像とをコンピュータ10に送信する。尚、これ以降のプロセスは、第1の実施の形態(図5参照)で説明したものと同様である。
次に、上記のような処理を行うための画像形成装置1の動作について説明する。本実施形態でも、画像形成装置1は、図15に示したフローチャートに基づく処理を実行する。ただし、本実施形態では、印刷プレビュー生成処理(ステップS106)の詳細が第1の実施の形態と異なっている。以下、本実施形態における印刷プレビュー生成処理(ステップS106)について説明する。
図21は、第2実施形態における印刷プレビュー生成処理(図15のステップS106)の詳細な処理手順の一例を示すフローチャートである。印刷プレビュー生成処理に進むと、まず印刷装置情報管理部83が機能し、ネットワーク9に接続されている他の印刷装置12,13,14,15を検索する(ステップS601)。この検索処理により、現在稼働中の他の印刷装置の全てを抽出することができる。そして印刷装置情報管理部83は、検索により抽出した他の印刷装置12,13,14,15のそれぞれに対し、印刷プレビュー画像送信要求を行う(ステップS602)。この印刷プレビュー送信要求には、印刷ジョブが含まれる。したがって、他の印刷装置12,13,14,15は、画像形成装置1から印刷プレビュー画像送信要求を受信すると、それに含まれる印刷ジョブを解析し、自機でその印刷ジョブを実行した場合の印刷プレビュー画像を生成して画像形成装置1に送信する。
画像形成装置1は、印刷プレビュー画像送信要求を送信した後、他の印刷装置12,13,14,15のそれぞれから第2印刷プレビュー画像を受信するのを待機する(ステップS603)。印刷プレビュー処理部84は、各印刷装置12,13,14,15から第2印刷プレビュー画像を受信した場合(ステップS603でYES)、その受信した第2印刷プレビュー画像を印刷プレビュー画像記憶部35に保存する(ステップS604)。その後、印刷プレビュー処理部84では印刷プレビュー生成部85が機能し、第1印刷プレビュー画像を生成する(ステップS605)。その第1印刷プレビュー画像は、印刷プレビュー画像記憶部35に保存される(ステップS606)。
続いて、印刷プレビュー処理部84において印刷プレビュー表示画面生成部86が機能し、印刷プレビュー画像記憶部35に保存された第1および第2印刷プレビュー画像のそれぞれを所定のパターンで配置した印刷プレビュー表示画面120を生成する(ステップS607)。そして生成した印刷プレビュー表示画面120を印刷プレビュー表示画面記憶部37に保存して(ステップS608)、印刷プレビュー生成処理を終了する。
このように本実施形態では、他の印刷装置12,13,14,15のそれぞれで印刷ジョブを実行した場合の第2印刷プレビュー画像を、画像形成装置1が生成するのではなく、それぞれの印刷装置12,13,14,15が生成する。したがって、画像形成装置1では第2印刷プレビュー画像を生成する必要がなくなるので、イベント発生時における画像形成装置1の処理効率が向上するという利点がある。
(第3の実施の形態)
次に第3の実施の形態について説明する。図22は、第3実施形態における画像形成システムの一構成例を示す図である。この画像処理システムは、プリントサーバとして機能する情報処理装置8と、コンピュータ10と、複数の印刷装置12,13,14,15とを備えている。情報処理装置8、コンピュータ10および複数の印刷装置12,13,14,15のそれぞれは、LANなどのネットワーク9を介して相互にデータ通信可能に接続されている。尚、実施形態においては、コンピュータ10および複数の印刷装置12,13,14,15は、第1の実施の形態で説明したものと同様である。
情報処理装置8は、例えばコンピュータ10からネットワーク9を介してユーザの印刷指令に基づく印刷ジョブを入力し、複数の印刷装置12,13,14,15のうち印刷指令によって指定された一の印刷装置に対して印刷ジョブを送信する。例えば、ユーザが印刷装置12を指定していた場合、情報処理装置8は、その印刷ジョブを、ネットワーク9を介して印刷装置12に送信する。
印刷装置12は、情報処理装置8から印刷ジョブを受信すると、その印刷ジョブを実行する。その印刷ジョブ実行時に、上述したような印刷ジョブを実行することが困難なイベントが発生した場合、印刷装置12は、情報処理装置8に対してイベントの発生を通知する。
このような場合、情報処理装置8は、第1の実施の形態又は第2の実施の形態で説明した画像形成装置1と同様の処理を行うように構成される。つまり、情報処理装置8は、印刷装置12において印刷出力を行うことが困難なイベントの発生を検知するように構成され、そのイベントの発生を検知した場合には、印刷装置12において印刷ジョブを実行した場合の第1印刷プレビュー画像と、印刷装置12を除く他の印刷装置13,14,15において印刷ジョブを実行した場合の第2印刷プレビュー画像とを取得し、第1印刷プレビュー画像と第2印刷プレビュー画像とを併せてコンピュータ10に出力する。そしてユーザに、他の印刷装置13,14,15のうちから印刷ジョブを代替的に実行させる一の印刷装置を選択させ、情報処理装置8はユーザによって選択された一の印刷装置に対してその印刷ジョブを転送する。
図23は、第3実施形態において情報処理装置8が印刷ジョブの転送を行うための処理シーケンスを示す図である。コンピュータ10に対し、ユーザによる印刷指示が入力されると(プロセスP10)、コンピュータ10はそれに伴い、情報処理装置8に印刷指令を送信する。この印刷指令には、ユーザによって指定された印刷装置12に関する情報と印刷ジョブとが付加される。
情報処理装置8は、その印刷指令を受信すると、その印刷ジョブを保存する(プロセスP11)。そしてユーザによって指定された印刷装置12に対し、その印刷ジョブを送信する。
印刷装置12は、情報処理装置8から印刷ジョブを受信すると、その印刷ジョブに基づいて印刷出力を開始する(プロセスP12)。そして印刷装置12において印刷出力を継続して行うことが困難なエラーなど、所定のイベントが発生すると(プロセスP13)、印刷装置12は印刷ジョブの実行を停止し、情報処理装置8に対してイベントの通知を行う。
情報処理装置8は、印刷装置12から通知されるイベントにより、印刷装置12において印刷ジョブを実行することが困難なイベントが発生したことを検知する(プロセスP14)。すると、情報処理装置8は、印刷装置12および他の印刷装置13,14,15に対して印刷装置情報送信要求を行う。各印刷装置12,13,14,15は、この印刷装置情報送信要求を受信すると、自機の印刷装置情報150を読み出して情報処理装置8に送信する。
情報処理装置8は、印刷装置12,13,14,15のそれぞれから印刷装置情報150を受信すると、それらの印刷装置情報150に基づいて、印刷装置12,13,14,15のそれぞれにおいて印刷ジョブを実行した場合の印刷プレビュー画像を生成する。このとき情報処理装置8は、印刷装置12が印刷ジョブを実行した場合の第1印刷プレビュー画像と、他の印刷装置13,14,15のそれぞれが印刷ジョブを実行した場合の第2印刷プレビュー画像とを生成する(プロセスP15)。そして情報処理装置8は、第1印刷プレビュー画像と、第2印刷プレビュー画像とを併せてコンピュータ10に送信する。
コンピュータ10は、情報処理装置8から第1印刷プレビュー画像と、第2印刷プレビュー画像とを受信すると、それらの印刷プレビュー画像を表示部64に表示し(プロセスP16)、ユーザによる印刷装置選択操作を受け付ける(プロセスP17)。そしてユーザが所望の印刷出力形態を実現する一の印刷装置を選択した場合、コンピュータ10はユーザによる印刷装置選択結果を情報処理装置8に送信する。
情報処理装置8は、コンピュータ10から印刷装置選択結果を受信すると、印刷装置12を除く他の印刷装置13,14,15のうちから、印刷ジョブの転送対象となる一の印刷装置を特定し、その特定した印刷装置において実行可能なデータ形式に印刷ジョブを変換する(プロセスP18)。そして情報処理装置8は、印刷ジョブの転送対象である一の印刷装置に対し、印刷ジョブを転送する。
情報処理装置8から印刷ジョブを転送された一の印刷装置は、その印刷ジョブを実行することにより印刷出力を開始する(プロセスP19)。これにより、印刷装置12で実行することが困難になった印刷ジョブが、印刷装置12とは異なる他の印刷装置において代替的に実行されるようになる。このとき印刷ジョブを実行する印刷装置は、ネットワークに接続された他の複数の印刷装置13,14,15の中から、ユーザの所望する印刷出力形態としてユーザが選択した印刷装置であるため、これによる印刷出力が無駄になることはない。
尚、上記においては、情報処理装置8が第1印刷プレビュー画像と第2印刷プレビュー画像との双方を生成する場合を例示したが、情報処理装置8が印刷装置12,13,14,15のそれぞれに印刷プレビュー画像送信要求を送信することにより、各印刷装置12,13,14,15において印刷プレビュー画像を生成させるようにしても良い。
(変形例)
以上、本発明に関するいくつかの実施形態について説明したが、本発明は上述した内容に限られるものではなく、種々の変形例が適用可能である。
例えば、上述した実施形態では、画像形成装置1又は情報処理装置8において検知するイベントが印刷ジョブを実行することが困難となるイベントである場合を例示したが、必ずしもそのようなイベントに限られるものではない。
また上述した画像形成装置1は、ユーザが操作パネル4を操作することによって印刷ジョブの実行を指示した場合、その印刷ジョブを実行することもできる。したがって、そのような場合には、第1印刷プレビュー画像および第2印刷プレビュー画像を操作パネル4の表示部4aに出力して表示させることも可能である。
また上述した実施形態において、例えば画像形成装置1にイベントが発生し、画像形成装置1が印刷装置12,13,14,15から印刷装置情報150を受信した後などに、画像形成装置1が印刷ジョブを実行することが可能な状態に復帰したときには、印刷ジョブの転送を行わずに画像形成装置1自らが実行するようにしても良い。
また上述した実施形態において、画像形成装置1や情報処理装置8による印刷装置情報送信要求は、印刷プレビュー生成処理を行うたびに送信されるようになっているが、これに限らず、例えば一度受信すれば、その後所定期間は新たな送信要求を行わず、その期間が経過するまでは以前受信した印刷装置情報150に基づいて第2印刷プレビュー画像の生成を行うようにして良い。
また上述した実施形態において、印刷プレビュー表示画面120の生成はすべて画像形成装置1で行われるようになっているが、例えば、コンピュータ10に常駐しているドライバプログラム73の機能によって印刷プレビュー生成画面120が表示されるように設定されている場合には、コンピュータ10において印刷プレビュー生成画面120を生成するようにしてもよい。