次に、本発明を実施するための形態を、以下の実施例に基づき図面を参照しつつ説明する。以下で説明する実施例は一例に過ぎず、本発明が適用される実施の形態は、以下の実施例に限られない。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を用い、繰り返しの説明は省略する。
<実施例>
<プルプリントシステム>
図1は、プルプリントシステムの一実施例を示す。
プルプリントシステムは、クライアント装置100、サーバ装置200、および画像形成装置300を有する。クライアント装置100、サーバ装置200、および画像形成装置300は、後述する通信ネットワーク50を介して相互に接続される。通信ネットワーク50は、特に限定されるものではないが、イーサネット(登録商標)やTCP/IP(Transmission Control Protocol / Internet Protocol)などのトランザクション・プロトコルによるLAN(Local Area Network)、VPN(Virtual Private Network)や専用線を使用して接続されるWAN(Wide Area Network)などによって構成することができる。
クライアント装置100は、画像形成装置300が印刷し、出力する対象となる文書データや画像データを保管し、ユーザの操作によって、保管されている文書データや画像データから生成された印刷ジョブをサーバ装置200に投入する。ユーザは、クライアント装置100を操作することによって、印刷ジョブを生成し投入することができる。印刷ジョブに含まれる印刷データのデータ形式は、特に限定されるものではないが、PostScript(登録商標)、RPDL、PCL、LIPSなどのページ記述言語(PDL)による印刷フォーマットを適用できる。文書データや画像データのデータ形式としては、ビットマップ、JPEG、マルチページTIFFなどの画像フォーマット、ワードプロセッサ、スプレッドシート、プレゼンテーションなどの各種オフィススイート固有のまたはPDF(Portable Document Format)、XPS(XML Paper Specification)、ODF(Open Document Format)などの共通の文書フォーマットを適用できる。文書データや画像データのデータ形式としては、さらに、描画ソフトやCADソフトなどの固有のフォーマットを適用できる。クライアント装置100は、パーソナルコンピュータを適用できるが、特にこれに限定されるものではなく、ワークステーションやサーバ装置などの情報処理装置、スマートフォンやPDA(Personal Digital Assistance)などの情報携帯端末、ネットワーク機能を有するデジタルカメラなどの撮像装置を適用できる。クライアント装置の数は、図1では、1台示されているが、特に限定されるものではなく、1または複数備えることができる。
サーバ装置200は、クライアント装置100から投入された印刷ジョブのプレビュー画像を作成(生成)するための機能を備える。また、印刷ジョブの全てのページのプレビュー画像を作成してもよいし、一部又は先頭のページのプレビュー画像を作成してもよい。サーバ装置200は、クライアント装置100から印刷ジョブが投入されるとその印刷ジョブを蓄積する。この時点では、サーバ装置200は、プレビュー画像を作成しない。これによって、印刷ジョブが投入される際にプレビュー画像が作成される場合よりも、サーバ装置200の処理負荷を軽くすることができる。
画像形成装置300は、サーバ装置200が保管する印刷ジョブを取得し印刷するための機能を備える。具体的には、画像形成装置300は、ユーザからのログイン要求に応じて、認証サーバ400に認証を要求する。認証サーバ400によってユーザが認証されると、又は、ユーザが認証される後に、後述する印刷アプリを選択と、さらに又は、ユーザがジョブリスト画面の表示を要求すると、画像形成装置300は、サーバ装置200へ認証されたユーザの印刷ジョブをリスト化したジョブリストを要求するジョブリスト要求と共に、ユーザを識別するユーザIDなどの識別情報を送信する。その後、画像形成装置300は、サーバ装置200から送信されるジョブリストに基づいてジョブリスト画面を生成し表示する。さらに、画像形成装置300は、ジョブリストからユーザによって選択された印刷ジョブのプレビュー画像を要求するプレビュー画像要求をサーバ装置200に送信し、サーバ装置200から送信されるプレビュー画像の画像データに基づいてプレビュー画像を表示する。さらに、画像形成装置300は、プレビュー画像を参照したユーザによって選択された印刷ジョブの印刷が要求された場合には、その印刷ジョブをサーバ装置200から取得し、その印刷ジョブに基づいて印刷ジョブの印刷データを印刷し、出力する。なお、出力システムの場合、画像形成装置300は、印刷のほか、投影や表示などの画像形成機能を有しているプロジェクタや電子黒板装置などの装置であってもよい。
サーバ装置200は、クライアント装置100から投入された印刷ジョブをユーザIDなど識別情報に対応づけて保管し、画像形成装置300からのジョブリストの要求に応じて、ログインしたユーザが要求しているジョブリストを作成し、画像形成装置300に送信するとともに、ジョブリストに含まれる印刷ジョブのプレビュー画像の作成を開始する。ログインしたユーザが要求しているジョブリストに含まれる印刷ジョブのプレビュー画像を作成することによって、印刷ジョブが投入される際に全印刷ジョブのプレビュー画像が作成される場合よりも、サーバ装置200に蓄積されるプレビュー画像のデータの容量を削減できる。
画像形成装置300は、サーバ装置200から送信されるジョブリストを受信し、受信したジョブリストに基づいてジョブリスト画面を生成し表示する。ユーザはジョブリストを参照し、プレビュー画像を表示させる印刷ジョブを選択できる。ユーザがプレビュー画像を表示させる印刷ジョブを選択することによって、プレビュー画像要求がサーバ装置200に送信される。サーバ装置200は、画像形成装置300からのプレビュー画像要求に応じて、プレビュー画像要求で指定される印刷ジョブに紐付けられたプレビュー画像の画像データを画像形成装置300へ送信する。画像形成装置300は、サーバ装置200から送信されるプレビュー画像の画像データを処理することによってプレビュー画像を表示する。サーバ装置200では、画像形成装置300からのジョブリスト要求が受信された際にプレビュー画像の作成が開始されているので、その後ユーザがプレビュー画像を表示させる印刷ジョブを選択する間に、サーバ装置200ではプレビュー画像が作成されていると想定される。つまり、ユーザによって画像形成装置が操作されてから、プレビュー画像の取得が要求されるより以前に、プレビュー画像の作成(生成)が開始される。ここで、操作には、ジョブリストの要求に限らず、ログイン、印刷アプリの選択が含まれる。これによって、ユーザがプレビュー画像を表示させる印刷ジョブを選択してから、プレビュー画像が表示されるまでの時間を短縮できる。
<クライアント装置100、サーバ装置200>
図2は、本実施形態に係るクライアント装置100のハードウェア構成図である。クライアント装置100は、クライアント装置100全体の動作を制御するCPU101、CPU101の駆動に用いられるプログラムを記憶したROM102、CPU101のワークエリアとして使用されるRAM103を備えている。さらに、クライアント装置100は、クライアント装置用のプログラム等の各種データを記憶するHD104、CPU101の制御にしたがってHD104に対する各種データの読み出しまたは書き込みを制御するHDD(Hard Disk Drive)105を備えている。
さらに、クライアント装置100は、カーソル、メニュー、ウィンドウ、文字、または画像などの各種情報を表示するディスプレイ106、通信ネットワーク50を利用してデータ通信するためのネットワークI/F107を備えている。さらに、クライアント装置100は、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード108、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス109を備えている。さらに、クライアント装置100は、フラッシュメモリ等の記録メディア111に対するデータの読み出しまたは書き込み(記憶)を制御するメディアドライブ110を備えている。さらに、クライアント装置100は、着脱可能な記録媒体の一例としてのCD−ROM(Compact Disc Read Only Memory)113に対する各種データの読み出しまたは書き込みを制御するCD−ROMドライブ112、および、上記各構成要素を図2に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン114を備えている。
一方、サーバ装置200は、上記クライアント装置100と同様のハードウェア構成を有しているため、その説明を省略する。但し、HD104には、サーバ装置200を制御するためのプログラム等の各種データが記憶されている。
<画像形成装置300>
図3は、本実施形態に係る画像形成装置300のハードウェア構成図である。画像形成装置300は、画像形成装置300全体の動作を制御するCPU301、CPU301の駆動に用いられるプログラムを記憶したROM302、CPU301のワークエリアとして使用されるRAM303を備えている。さらに、画像形成装置300は、画像データ、文書データ、プログラム、フォントデータやフォームデータ、画像形成装置用のプログラム等の各種データを記憶するHD304、CPU301の制御にしたがってHD304に対する各種データの読み出しまたは書き込みを制御するHDD(Hard Disk Drive)305を備えている。
さらに、画像形成装置300は、ネットワークを利用してデータ通信するためのネットワークI/F306、メニュー、ウィンドウ、文字、または画像などの各種情報を表示するとともに、文字、数値、各種指示などの入力のための複数のキーを備えた操作パネル307、操作パネル307の操作内容にしたがって、各種印刷処理を行う印刷部308を備えている。さらに、画像形成装置300は、USBフラッシュメモリ、スマートメディア(登録商標)、コンパクトフラッシュ(登録商標)、SDメモリーカード(登録商標)、miniSD(登録商標)カード、microSD(登録商標)カード、メモリースティック(登録商標)、xDピクチャカード(登録商標)などの外部記憶メディアと接続するためインタフェース部である外部記憶装置I/F部309、および、上記各構成要素を図3に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン350を備えている。
<<実施形態の機能構成>>
次に、本実施形態の機能構成について説明する。図4は、本実施形態のプルプリントシステムを構成するクライアント装置100、サーバ装置200、および画像形成装置300の機能ブロック図である。図4では、クライアント装置100、サーバ装置200、および画像形成装置300が、通信ネットワーク50を介してデータ通信することができるように接続されている。上述したように、通信ネットワーク50は、イーサネット(登録商標)やTCP/IPなどのトランザクション・プロトコルによるLAN、VPNや専用線を使用して接続されるWANなどとして構成することができる。
<クライアント装置100の機能構成>
クライアント装置100は、送受信部152、操作入力受付部154、および印刷ジョブ生成部156を有している。これら各部は、図2に示されている各構成要素のいずれかが、HD104からRAM103上に展開されたクライアント装置用のプログラムに従ったCPU101からの命令によって動作することで実現される機能または手段である。
(クライアント装置100の各機能構成)
次に、図2および図4を用いて、クライアント装置100の各機能構成について詳細に説明する。なお、以下では、クライアント装置100の各機能構成を説明するにあたって、図2に示されている各構成要素のうち、クライアント装置100の各機能構成を実現させるための主な構成要素との関係も説明する。
図4に示されているクライアント装置100の送受信部152は、図2に示されているCPU101からの命令、および図2に示されているネットワークI/F107によって実現される。送受信部152は、通信ネットワーク50を介してサーバ装置200と各種データ(または情報)の送受信を行う。
操作入力受付部154は、図2に示されているCPU101からの命令、並びに図2に示されているキーボード108、および/またはマウス109によって実現され、ユーザ(利用者)による各種入力を受け付ける。例えば、ユーザが、図2に示されているキーボード108、および/またはマウス109を操作することによって、文書データや画像データの印刷ジョブの生成要求、又は文書データや印刷データの投入要求を行うと、図4に示されている操作入力受付部154が印刷ジョブの生成要求、又は文書データや印刷データの投入要求を受け付ける。
印刷ジョブ生成部156は、図2に示されているCPU101からの命令によって実現される。印刷ジョブ生成部156は、上記印刷ジョブの生成要求の受け付けを契機として、印刷ジョブを生成する。具体的に、印刷ジョブ生成部156は、クライアント装置100に搭載されたプリントドライバなどのアプリケーションを用いて、指定された文書データや画像データから印刷ジョブを生成する。生成された印刷ジョブの名称などの書誌情報と、印刷条件を示す印刷設定情報と、クライアント装置100から取得した印刷ジョブを識別するためのユーザIDなどの識別情報とを含む印刷ジョブを送受信部152から通信ネットワーク50を介してサーバ装置200に投入する。また、印刷ジョブ生成部156は、PDFデータのような印刷可能な文書データやPDLデータのような印刷データを送受信部152から通信ネットワーク50を介してサーバ装置200に投入してもよい。さらに、文書データや画像データをサーバ装置200に投入し、サーバ装置200において印刷ジョブを生成してもよい。
<サーバ装置200の機能構成>
サーバ装置200は、送受信部252、印刷ジョブ受付部254、記憶読出処理部256、記憶部258、ジョブリスト作成部260、プレビュー画像作成部262、およびプレビュー画像要求受付部264を有している。これら各部は、図2に示されている各構成要素のいずれかが、ROM102またはHD104からRAM103上に展開されたサーバ装置用プログラムに従ったCPU101からの命令によって動作することで実現される機能、または機能される手段である。
(サーバ装置200の各機能構成)
次に、図2および図4を用いて、サーバ装置200の各機能構成について詳細に説明する。なお、以下では、サーバ装置200の各機能構成部を説明するにあたって、図2に示されている各構成要素のうち、サーバ装置200の各機能構成部を実現させるための主な構成要素との関係も説明する。
図4に示されているサーバ装置200の送受信部252は、図2に示されているCPU101からの命令、図2に示されているネットワークI/F107によって実現される。送受信部252は、通信ネットワーク50を介して、クライアント装置100、および画像形成装置300と各種データ(または情報)の送受信を行う。
図4に示されているサーバ装置200の記憶読出処理部256は、図2に示されているCPU101からの命令、並びに図2に示されているHDD105によって実現される。記憶読出処理部256は、記憶部258に各種データを記憶したり、記憶部258に記憶された各種データを読み出す処理を行う。
図4に示されているサーバ装置200の記憶部258は、図2に示されているHD104によって実現される。記憶部258は、さらにジョブテーブル記憶部258aと、印刷データ記憶部258bと、プレビュー画像データ記憶部258cとを含む。ジョブテーブル記憶部は、クライアント装置100から送信される印刷ジョブの書誌情報、印刷設定情報、ユーザIDなどの識別情報、印刷ジョブに含まれる印刷データの保存先、印刷ジョブのプレビュー画像データの保存先、印刷ジョブのプレビュー画像生成状態などをテーブル化したジョブテーブルを記憶する。ジョブテーブル記憶部258aは、例えば、RDBMS(リレーショナルデータベース管理システム)により実現する。印刷データ記憶部258bは、投入された印刷ジョブに含まれる印刷データを記憶する。印刷データ記憶部258bは、RDBMS(リレーショナルデータベース管理システム)やファイルシステムなどにより実現する。プレビュー画像データ記憶部258cは、後述するプレビュー画像作成部262により作成された、印刷ジョブに対応するプレビュー画像を記憶する。プレビュー画像データ記憶部258cは、RDBMS(リレーショナルデータベース管理システム)やファイルシステムなどにより実現する。
<ジョブテーブル>
図5は、ジョブテーブルの一例を示す。ジョブテーブルは、例えば、クライアント装置100から送信される印刷ジョブに含まれる印刷ジョブの名称、ページ数などの書誌情報、部数、カラー情報など印刷条件を示す印刷設定情報、印刷ジョブの所有者を識別するユーザIDなどの識別情報を含む。さらに、ジョブテーブルは、データサイズ、印刷ジョブの投入日時、印刷ジョブに含まれる印刷データの保存先、印刷ジョブのプレビュー画像データの保存先、印刷ジョブのプレビュー画像作成状態などを含む。ジョブテーブルは、投入された印刷ジョブに付与されたジョブIDと紐付けることによって対応付け、テーブル化したものである。また、プレビュー画像作成状態については、ジョブが投入された時点で未作成を登録しておき、プレビュー画像作成が開始するタイミング、又はプレビュー画像作成が完了するタイミングで、プレビュー画像作成状態を更新する。プレビュー画像データの保存先については、ジョブが投入されるタイミングで決定して登録してもよいし、プレビュー画像作成が開始するタイミングで決定して登録してもよい。
図4に戻り説明を続ける。図4に示されているサーバ装置200の印刷ジョブ受付部254は、図2に示されているCPU101からの命令、並びに図2に示されているHDD105によって実現される。印刷ジョブ受付部254は、送受信部252によってクライアント装置100から投入された印刷ジョブが受信されると、記憶読出処理部256にその印刷ジョブに含まれる印刷データを印刷データ記憶部258bに格納し、その印刷ジョブに含まれる印刷ジョブの名称、ページ数などの書誌情報、部数、カラー情報など印刷条件を示す印刷設定情報、印刷ジョブの所有者を識別するユーザIDなどの識別情報、印刷ジョブの投入日時、印刷ジョブに含まれる印刷データの保存先、印刷ジョブのプレビュー画像データの保存先、印刷ジョブのプレビュー画像生成状態などをジョブテーブルに登録し、ジョブテーブル記憶部258aへ記憶させる。
また、印刷ジョブ受付部254は、印刷ジョブに含まれる印刷ジョブのデータサイズ、ページ数、カラー情報のプレビュー画像の作成時間に影響を与える特性に基づいて、所定の作成時間以上の時間がかかると判断される印刷ジョブをプレビュー画像作成部262に入力する。つまり、プレビュー画像の作成に所定の作成時間以上の時間がかかる画像データについては、印刷ジョブを受信した際に、プレビュー画像作成部262にプレビュー画像を作成させる。具体的に、例えば、印刷ジョブ受付部254は、データサイズが1KBの白黒の標準印刷データ、又は1ページの白黒の標準印刷データのプレビュー画像の作成時間である標準時間と、作成時間の閾値とを記憶し、受け付けた印刷ジョブのデータサイズ、ページ数、標準時間に基づいてプレビュー画像作成の所要時間を計算し、さらに、白黒の印刷ジョブの場合は、計算した所要時間を予測時間とし、単色の印刷ジョブの場合、計算した所要時間の2倍を予測時間とし、2色の印刷ジョブの場合、計算した所要時間の3倍を予測時間とし、カラーの印刷ジョブの場合、計算した所要時間の4倍を予測時間とし、予測時間が閾値に達した場合に、印刷ジョブをプレビュー画像作成部262に入力する。
図4に示されているサーバ装置200のジョブリスト作成部260は、図2に示されているCPU101からの命令によって実現され、画像形成装置300からのジョブリスト要求にしたがって、ジョブリストを作成する。ジョブリスト作成部260は、送受信部252によってジョブリスト要求が受信されると、記憶読出処理部256に記憶部258に記憶されたジョブテーブルを読み出させる。そして、ジョブリスト作成部260は、ジョブリスト要求に含まれるユーザID、ジョブリストにおけるジョブの表示の順序を表す情報を取得する。ジョブリスト作成部260は、ジョブテーブルから、ジョブリスト要求に含まれるユーザIDに紐付けられた印刷ジョブの情報を抽出し、ジョブの表示の順序を表す情報にしたがって並べることによってジョブリストを作成する。
図6は、ジョブリストの一例を示す。ジョブリスト作成部260は、ジョブリスト要求に含まれるユーザID(ここでは、「user1」)、ジョブリストにおけるジョブの表示の順序を表す情報(ここでは、「投入日時の降順」)を取得する。そして、ジョブリスト作成部260は、図5に示すジョブテーブルに含まれる印刷ジョブから、ジョブリスト要求に含まれるユーザIDに紐付けられた印刷ジョブを抽出し、ジョブの表示の順序を表す情報にしたがって並べることによってジョブリストを作成する。
図4に戻り説明を続ける。図4に示されているサーバ装置200のプレビュー画像作成部262は、図2に示されているCPU101からの命令によって実現される。プレビュー画像作成部262は、ユーザが画像形成装置300にログインするタイミングや、画像形成装置300の印刷アプリが起動されるタイミングや、画像形成装置300から送信されるジョブリスト要求が受信されるタイミングで、プレビュー画像の作成を開始することができる。ここでは、プレビュー画像作成部262は、画像形成装置300から送信されるジョブリスト要求が送受信部252に受信されたことを契機として、そのジョブリスト要求に含まれるユーザIDに紐付けられる各印刷ジョブのうち、要求されたジョブリストに含まれる印刷ジョブのプレビュー画像の作成をジョブリストにおける印刷ジョブの表示順で開始する。例えば、日時の降順でかつ5件の印刷ジョブを含むジョブリストのジョブリスト要求が受信された場合に、そのジョブリスト要求に含まれるユーザIDに紐付けられる各印刷ジョブのうち、日時の降順の上位5件の印刷ジョブのプレビュー画像の作成を、日時の降順で開始する。
プレビュー画像作成部262は、プレビュー画像を作成する際に、ジョブテーブル記憶部258aに格納されるジョブテーブルにそのプレビュー画像の元となる印刷ジョブのプレビュー画像作成状態の値を更新する。例えば、プレビュー画像作成を開始すると作成中に更新し、プレビュー画像作成が完了すると作成済に更新する。
具体的に説明する前に、プレビュー画像を作成するまでの処理について説明する。ジョブリスト作成部260は、画像形成装置300から送信されるジョブリスト要求が送受信部252に受信されると、記憶読出処理部256にジョブテーブル記憶部258aに記憶されたジョブテーブルを読み出させる。そして、ジョブリスト作成部260は、ジョブリスト要求に含まれるユーザID、ジョブリストにおけるジョブの表示の順序を表す情報を取得する。ジョブリスト作成部260は、ジョブテーブルに含まれる印刷ジョブから、ジョブリスト要求に含まれるユーザIDに紐付けられた印刷ジョブを抽出し、ジョブの表示の順序を表す情報にしたがって並べることによってジョブリストを作成する。
プレビュー画像作成部262は、ジョブリスト作成部260によって作成したジョブリストに含まれる印刷ジョブのジョブIDに紐付けられた印刷ジョブのプレビュー画像を順次作成し、記憶読出処理部256に作成したプレビュー画像を記憶部258に記憶させる。ここで、プレビュー画像を作成する順番は、ジョブリストの順番とすることもできるし、異なる順番とすることもできる。ここで、既に作成しているプレビュー画像をプレビュー画像データ記憶部258cに記憶させる。また、必要に応じて、ジョブテーブルのプレビュー画像データ保存先の値を更新する。
また、プレビュー画像作成部262は、後述するプレビュー画像要求受付部264から、ユーザからのプレビュー画像要求によって要求されたプレビュー画像が作成されていないことが通知された場合に、そのプレビュー画像が作成中であればその作成処理を継続し、作成中でなければ直ちにそのプレビュー画像を作成する処理を実行する。
図7は、プレビュー画像作成部262の処理を示す。
プレビュー画像作成部262には、普通のキュー2622、優先のキュー2624、および状態取得部2626が用意される。さらに、普通のキュー2622には、投入時に重い、つまりプレビュー画像の作成に時間がかかる印刷ジョブのプレビュー画像を作成するためのキューQ1、およびジョブリスト取得の際に印刷ジョブのプレビュー画像を作成するためのキューQ2が用意される。優先のキュー2624には、一番優先的に印刷ジョブの画像を作成するためのキューQ3が用意される。
画像形成装置300から、ジョブの名称が「doc003」という印刷ジョブのプレビュー画像が要求される(1)。つまり、画像形成装置300に表示される図6に示すジョブリストを参照したユーザによって、「doc003」が選択され、サーバ装置200へプレビュー画像要求が送信される。このプレビュー画像要求には、ユーザID(ここでは、「user1」)、ジョブの名称(ここでは、「doc003」)が含まれる。
プレビュー画像要求受付部264は、状態取得部2626を介して、ジョブの名称に基づいてジョブテーブルのプレビュー画像作成情報項目を参照する。その結果、プレビュー画像作成部262は、ジョブの名称が「doc003」のプレビュー画像が「未作成」であることを確認できる(2)。これによって、プレビュー画像作成部262は、プレビュー画像要求受付部264からプレビュー画像が作成されていないことが通知される。
ジョブの名称が「doc003」である印刷ジョブは、普通のキューのキューQ2に保持されている。プレビュー画像作成部262は、キューQ2に保持されているジョブの名称が「doc003」である印刷データを優先のキューのキューQ3に移動させる(3)。これによって、現在処理されているジョブの名称が「doc002」である印刷ジョブとともに、ジョブの名称が「doc003」である印刷データのプレビュー画像作成が並行して処理される。これによって、画像形成装置300から要求されたプレビュー画像が未作成であっても、直ちにプレビュー画像を作成できるため、プレビュー画像の応答性を高めることができる。この例では、ジョブの名称を用いて印刷ジョブを特定するが、ジョブの名称の一意性が保証されない場合は、ジョブIDやジョブ投入日時を利用してもよい。
図4に示されているサーバ装置200のプレビュー画像要求受付部264は、図2に示されているCPU101からの命令によって実現される。プレビュー画像要求受付部264は、画像形成装置300から送信されるプレビュー画像要求が送受信部252によって受信されると、ジョブテーブルに格納されるジョブテーブルのプレビュー画像作成状態項目を参照し、プレビュー画像要求によって要求されるプレビュー画像が作成済であるか否かを確認する。プレビュー画像要求受付部264は、プレビュー画像要求によって要求されるプレビュー画像が作成済であることが確認できた場合に、記憶読出処理部256にそのプレビュー画像要求に含まれるジョブIDに基づき、ジョブテーブルのプレビュー画像データ保存先を参照し、プレビュー画像を取得し、送受信部252から画像形成装置300へ送信する。
プレビュー画像要求受付部264は、プレビュー画像要求によって要求されるプレビュー画像が作成済であることが確認できない場合には、プレビュー画像作成部262にプレビュー画像が作成されていないことを通知し、所定の時間の間待機する。所定の時間を経過後、ジョブテーブルのプレビュー画像作成状態項目を参照し、プレビュー画像要求によって要求されるプレビュー画像が作成済であるか否かを再度確認する。
<画像形成装置300の機能構成>
画像形成装置300は、送受信部352、認証処理部354、操作受付部356、ジョブリスト取得部358、プレビュー画像作成要求部360、プレビュー画像取得部362、印刷データ取得部364、および印刷処理部366を有している。これら各部は、図3に示されている各構成要素のいずれかが、ROM302またはHD304からRAM303上に展開された画像形成装置用プログラムに従ったCPU301からの命令によって動作することで実現される機能、または機能される手段である。
(画像形成装置300の各機能構成)
次に、図3および図4を用いて、画像形成装置300の各機能構成について詳細に説明する。なお、以下では、画像形成装置300の各機能構成部を説明するにあたって、図3に示されている各構成要素のうち、画像形成装置300の各機能構成部を実現させるための主な構成要素との関係も説明する。
図4に示されている画像形成装置300の送受信部352は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306によって実現される。送受信部352は、通信ネットワーク50を介して、サーバ装置200と各種データ(または情報)の送受信を行う。
図4に示されている画像形成装置300の認証処理部354は、図3に示されているCPU301からの命令によって実現され、認証サーバ400に画像形成装置300にログインするユーザの認証を要求する。例えば、認証処理部354は、ユーザに対して操作パネル307に表示されるログイン画面にユーザID、およびパスワードの入力を要求する。認証処理部354は、送受信部352から認証サーバ400にユーザID、およびパスワードを送信する。認証サーバ400は、画像形成装置300から送信されたユーザIDとパスワードとの組み合わせが記憶されているか否かに応じて、そのユーザを認証するか否かを判断する。また、ユーザIDおよびパスワードの入力の代わりに、ユーザは、画像形成装置300に備えるカードリーダにカードをかざすと、そのカードに記憶されているカードIDが、画像形成装置300に受信され、認証処理部354に入力される。そして、認証処理部354は、送受信部352から認証サーバ400にユーザID、およびパスワードを送信する。認証サーバ400は、画像形成装置300から送信されたカードIDが記憶されているか否かに応じて、そのユーザを認証するか否かを判断する。
認証サーバ400は、画像形成装置300から送信されたユーザIDとパスワードとの組み合わせ、又はカードIDが記憶されている場合にはそのユーザに画像形成装置300を使用することを許可する。また、認証サーバ400は、画像形成装置300から送信されたユーザIDとパスワードとの組み合わせ、又はカードいDが記憶されていない場合にはそのユーザに画像形成装置300を使用することを許可しない。また、認証処理部354は、EAP−TLS(Extensible Authentication Protocol Transport Layer Security)によって、認証サーバ400との間で相互で証明書による認証を行うことや、PEAP(protected EAP)によって認証を行うことができる。
また、認証サーバ400にユーザ認証を依頼する代わりに、認証処理部354は、画像形成装置300を使用することを許可するユーザIDとパスワードとの組み合わせ、又はカードIDを格納することもできる。この場合、認証処理部354は、ユーザによって入力されたユーザIDとパスワードとの組み合わせ、又はカードIDが記憶されているか否かによって、記憶されている場合には画像形成装置300を使用することを許可し、記憶されていない場合には画像形成装置300を使用することを許可しない。
図4に示されている画像形成装置300の操作受付部356は、図3に示されているCPU301からの命令、図3に示されている操作パネル307によって実現され、ユーザ(利用者)による各種入力を受け付ける。例えば、操作パネル307をタッチパネルによって構成することができる。この場合、操作パネル307には、図6に示すジョブリストが表示され、ユーザは、そのジョブリストを参照し、プレビュー画像を表示する印刷ジョブを選択することができる。ユーザがプレビュー画像を表示する印刷ジョブの部分を押し下げること、又はユーザがプレビュー画像を表示する印刷ジョブを選択し、非図示のプレビューボタンを押し下げることによって、図4に示されている操作受付部356は、プレビュー画像要求を受け付ける。また、操作パネル307には、プレビュー画像要求によって要求したプレビュー画像が表示され、ユーザは、そのプレビュー画像を参照し、印刷を実行するか否かを判断することができる。ユーザがプレビュー画像に対応する印刷ジョブを印刷する場合、印刷ボタンを押し下げることによって、図4に示されている操作受付部356は、印刷要求を受け付ける。
図4に示されている画像形成装置300のジョブリスト取得部358は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306、および操作パネル307によって実現される。ジョブリスト取得部358は、認証処理部354によってユーザが認証された際に、そのユーザのユーザID、ジョブリストにおけるジョブの表示の順序を表す情報などを含むジョブリスト要求を作成し、送受信部352から送信する。また、ジョブリスト取得部358は、ジョブリスト要求に対する応答として、サーバ装置200から送信されるジョブリストが送受信部352によって受信されると、そのジョブリストに基づいて、図6に示されているようなジョブリスト画面を操作パネル307に表示する。
図4に示されている画像形成装置300のプレビュー画像作成要求部360は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306によって実現される。プレビュー画像作成要求部360は、認証処理部354によってユーザが認証された際に、又は画像形成装置300の印刷アプリが起動された際に、そのユーザによってサーバ装置200に投入された印刷ジョブの画像データのプレビュー画像を作成することを要求するプレビュー画像要求を作成し、送受信部352から送信する。
図4に示されている画像形成装置300のプレビュー画像取得部362は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306、および操作パネル307によって実現される。プレビュー画像取得部362は、操作パネル307に表示されるジョブリストを参照してユーザによって選択された印刷ジョブに紐付けられたプレビュー画像の画像データを取得する。プレビュー画像取得部362は、操作受付部356によって受け付けられたプレビュー画像要求を送受信部352から送信する。また、プレビュー画像取得部362は、プレビュー画像要求に対する応答として、サーバ装置200から送信されるプレビュー画像の画像データが送受信部352によって受信されると、そのプレビュー画像の画像データに基づいて、プレビュー画像を操作パネル307に表示する。
図4に示されている画像形成装置300の印刷データ取得部364は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306、および操作パネル307によって実現される。印刷データ取得部364は、操作パネル307に表示されるジョブリストにおいて、ユーザがジョブを選択して印刷ボタンを押し下げた場合、その選択された印刷ジョブの印刷データを取得する印刷データ要求を作成し、送受信部352から送信する。印刷データ取得部364は、印刷データ要求に対する応答として、送受信部352に受信された印刷データを取得し、印刷処理部366に入力する。
図4に示されている画像形成装置300の印刷処理部366は、図3に示されているCPU301からの命令、図3に示されている印刷部308によって実現される。印刷処理部366は、印刷データ取得部364から入力される印刷データに基づいて印刷処理を実行し、印刷された画像を出力する。
<サーバ装置200の動作>
図8は、サーバ装置200の動作の一実施例を示す。
図8は、サーバ装置200が画像形成装置300から送信されるプレビュー画像要求を受信した際の動作を示す。
ステップS902では、送受信部252によって、画像形成装置300から送信されるプレビュー画像要求が受信される。
ステップS904では、プレビュー画像要求受付部264は、送受信部252によって受信したプレビュー画像要求によって要求されているプレビュー画像が作成済みであるか否かを判断する。プレビュー画像要求受付部264は、ジョブテーブル記憶部258aに格納されているジョブテーブルを参照し、プレビュー画像要求に含まれるジョブIDに紐付けられる印刷ジョブのプレビュー画像作成状態が作成済みであるか否かを判断する。
ステップS906では、プレビュー画像作成状態が作成済みである場合、プレビュー画像要求受付部264は、記憶読出処理部256に記憶部258に格納されたジョブテーブルから、プレビュー画像要求に含まれるジョブIDに紐付けられた印刷ジョブのプレビュー画像の画像データを取得し、送受信部252から送信する。
ステップS908では、プレビュー画像作成状態が作成済みでない場合、プレビュー画像要求受付部264は、プレビュー画像要求に含まれるジョブIDに紐付けられる印刷ジョブのプレビュー画像作成状態が作成中であるか否かを判断する。
ステップS910では、プレビュー画像作成状態が作成中である場合、プレビュー画像要求受付部264は、所定の時間の間待機する。所定の時間の経過後、ステップS904の処理に戻る。
ステップS912では、プレビュー画像作成状態が作成中でない場合、プレビュー画像作成部262は、プレビュー画像要求によって要求されているプレビュー画像を作成する処理を直ちに開始する。プレビュー画像要求受付部264は、プレビュー画像作成状態が作成中でない場合、プレビュー画像作成部262にプレビュー画像が作成されていないことを通知する。プレビュー画像作成部262は、プレビュー画像が作成されていないことが通知されると、そのプレビュー画像を作成する印刷ジョブを優先のキュー2624へ移動ささせることによって直ちにそのプレビュー画像を作成する処理を開始する。その後、ステップS910の処理を実行する。
図8に示されるフローは一例であり、この順序と異なる順序で処理が実施されてもよい。
また、ステップS906によってプレビュー画像の送信が実施された後に、そのプレビュー画像の画像データを削除することもできる。
また、プレビュー画像の画像データの削除は、画像形成装置300において、ユーザがログアウトしたタイミングで実施することもできるし、定期的に実施することもできる。
また、クライアント装置100から印刷ジョブを投入した際に作成されるプレビュー画像などのプレビュー画像の作成に時間がかかるものは削除しないで、それ以外のプレビュー画像の画像データを削除することもできる。これによって、再度プレビュー画像の作成に時間がかかる画像のプレビュー画像が要求された場合でも、そのプレビュー画像の画像データをただちに送信できる。
プレビュー画像の画像データを削除することによって、プレビュー画像の画像データが増加し続けることによって、サーバ装置200の記憶部258の容量が圧迫されるのを防止できる。
<プルプリントシステムの動作>
図9は、プルプリントシステムの動作の一実施例を示す。
図9は、クライアント装置100からサーバ装置200に印刷ジョブが投入され、サーバ装置200によって印刷ジョブが受け付けられた後の処理を示す。
ステップS1002では、ユーザは画像形成装置300にログインを要求する。ユーザは、画像形成装置300に備えるカードリーダにカードをかざすことによって、そのカードに記憶されているカードIDが、画像形成装置300に受信され、認証処理部354に入力される。例えば、カードと、画像形成装置300との間は、NFC、FeliCa、ISO/IEC 14443 (MIFARE)、ISO/IEC 18092などの近距離無線通信技術を適用することによって無線接続される。
また、画像形成装置300にログインする際にカードをかざすかわりに、操作パネル307に表示されるログイン画面にユーザID、およびパスワードを入力することもできる。
ステップS1004では、画像形成装置300は、ユーザからのログイン要求に応じて、認証処理を行う。画像形成装置300の認証処理部354は、認証サーバ400にカードID、又はユーザIDおよびパスワードを送信することによって認証を要求する。また、画像形成装置300の認証処理部354は、カードID、又はユーザIDおよびパスワードに基づいて、ユーザを認証することもできる。例えば、認証処理部354は、カードID、又はユーザIDおよびパスワードの組み合わせが、画像形成装置300に記憶されたものと一致する場合にユーザが画像形成装置300を使用することを許可し、一致しない場合にユーザが画像形成装置300を使用することを許可しない。また、カードIDに基づいて認証された場合に、認証処理部354は、カードIDに対応するユーザIDを取得しておく。画像形成装置300を使用することを許可しない場合、ユーザに認証エラーであることを通知することもできる(ステップS1011)。ここでは、ユーザが画像形成装置300を使用することを許可した場合について説明する。
ステップS1006では、画像形成装置300は、サーバ装置200にジョブリスト要求を送信する。画像形成装置300のジョブリスト取得部358は、ユーザID、ジョブリストにおけるジョブの表示の順序であるオーダー順を表す情報などを含むジョブリスト要求を作成し、送受信部352から送信する。
ステップS1008では、サーバ装置200は、画像形成装置300から送信されるジョブリスト要求にしたがって、ジョブリストを作成するとともに、オーダー順でプレビュー画像を作成する処理を開始する。画像形成装置300から送信されるジョブリスト要求は、サーバ装置200のジョブリスト作成部260に入力されるとともに、プレビュー画像作成部262に入力される。ジョブリスト作成部260はジョブリスト要求にしたがってジョブリストを作成し、プレビュー画像作成部262は、ジョブリスト要求に基づいて、プレビュー画像を作成する処理を開始する。
ステップS1010では、サーバ装置200は、画像形成装置300へジョブリストを送信する。サーバ装置200のジョブリスト作成部260は、ジョブリストを作成すると、送受信部252から送信する。
ステップS1012では、ユーザは、画像形成装置300の操作パネル307に表示されるジョブリストを参照し、プレビュー画像を表示させる印刷ジョブを選択できる。ユーザによって操作パネル307のプレビュー画像を表示させる印刷ジョブボタンが押し下げられることによって操作受付部356にプレビュー画像要求が受け付けられる。また、ジョブリストから表示したいジョブを選択し、操作パネルに表示されるプレビューボタンを押し下げることによって、操作受付部356にプレビュー画像要求を受け付けさせることができる。
ステップS1014では、画像形成装置300からサーバ装置200へプレビュー画像要求が送信される。画像形成装置300の操作受付部356によってプレビュー画像要求が受け付けられると、プレビュー画像取得部362は、送受信部352からプレビュー画像が要求された印刷ジョブのジョブIDを含むプレビュー画像要求を送信する。
ステップS1016では、サーバ装置200は、画像形成装置300から送信されるプレビュー画像要求にしたがって、そのプレビュー画像要求によって要求されているプレビュー画像が作成されているか否かを判断する。画像形成装置300から送信されるプレビュー画像要求は、サーバ装置200のプレビュー画像要求受付部264に入力され、プレビュー画像要求受付部264は、ジョブテーブル記憶部258aに格納されているジョブテーブルを参照し、プレビュー画像要求によって要求されている、プレビュー画像要求に含まれるジョブIDに対応する印刷ジョブのプレビュー画像が作成されているか、作成中であるか、未作成であるかを判断する。ここでは、サーバ装置200がプレビュー画像要求によって要求されているプレビュー画像が作成済みである場合について説明する。
ステップS1018では、サーバ装置200は、プレビュー画像要求によって要求されているプレビュー画像が作成済みであると判断する。サーバ装置200のプレビュー画像要求受付部264は、ジョブテーブル記憶部258aに格納されているジョブテーブルを参照した結果、プレビュー画像要求によって要求されているプレビュー画像が作成済みであると判断する。
ステップS1020では、サーバ装置200は、プレビュー画像要求によって要求されているプレビュー画像の画像データを画像形成装置300へ送信する。サーバ装置200のプレビュー画像要求受付部264は、記憶読出処理部256に記憶部258に格納されたプレビュー画像の画像データを読み出させ、そのプレビュー画像の画像データを送受信部252に送信させる。送信されたプレビュー画像の画像データに基づいてプレビュー画像が操作パネル307に表示される。
ステップS1022では、ユーザは、画像形成装置300の操作パネル307に表示されるプレビュー画像を参照し、プレビュー画像に対応する印刷ジョブを印刷するか否かを判断できる。ユーザによって操作パネル307の印刷ボタンが押し下げられることによって操作受付部356に印刷要求が受け付けられる。
ステップS1024では、画像形成装置300からサーバ装置200へプレビュー画像に対応する印刷ジョブの要求が送信される。画像形成装置300の操作受付部356によって印刷要求が受け付けられると、印刷データ取得部364は、送受信部352から印刷要求された印刷データのジョブIDを含む印刷データ取得要求を送信する。
ステップS1026では、サーバ装置200は、印刷データ取得要求によって要求されている印刷データを画像形成装置300へ送信する。サーバ装置200の印刷ジョブ受付部254は、記憶読出処理部256に記憶部258に格納された印刷データのうち、印刷データ取得要求によって要求されている、印刷データ取得要求に含まれるジョブIDに対応する印刷データを読み出させ、印刷データを送受信部252に送信させる。
図9では、サーバ装置200は、画像形成装置300から送信されるジョブリスト要求にしたがって、ジョブリストを作成するとともに、そのジョブリストにおけるジョブの表示の順序であるオーダー順でプレビュー画像を作成する処理を開始する場合について説明した。プレビュー画像を作成する処理を開始するタイミングは、この例に限られず、このタイミングと異なるタイミングでも可能である。
図10は、画像形成装置300の操作パネル307に表示される画面の一例を示す。操作パネル307に表示される画面には、ログイン画面(1)、アプリ選択画面(メイン画面)(2)が含まれる。画像形成装置300には、ログイン画面(1)によってユーザがログインする場合に、図6に示したジョブリスト、又はアプリ選択画面(2)へ遷移するものと、アプリ選択画面(2)によってプリントが選択された場合に、印刷アプリが起動され、図6に示したジョブリストへ遷移するものがある。
サーバ装置200のプレビュー画像作成部262は、画像形成装置300の操作パネル307にログイン画面(1)が表示され、ユーザからユーザID、およびパスワードが入力され、又はユーザによってカードリーダにカードがかざされ、認証されたタイミングでプレビュー画像を作成する処理を開始することもできる。
また、サーバ装置200のプレビュー画像作成部262は、画像形成装置300の操作パネル307にアプリ選択画面(2)が表示され、ユーザからプリントが選択され、印刷アプリが選択されたことが、サーバ装置200に受信されたタイミングでプレビュー画像を作成する処理を開始することもできる。
プルプリントシステムの一実施例によれば、ユーザによって画像形成装置が操作されてから、プレビュー画像の取得が要求されるより以前に、プレビュー画像の作成(生成)が開始される。このため、プレビュー画像の作成のための処理負荷を低減できるとともに、画像形成装置からのプレビュー画像の要求に応じて、迅速に対応できる。
<変形例>
<プルプリントシステム>
図11は、プルプリントシステムの一変形例を示す。プリプリントシステムの一変形例は、図1に示したプルプリントシステムにおいて、サーバ装置で実行されていた処理を画像形成装置で実行するようにしたものである。
プルプリントシステムは、クライアント装置100、および画像形成装置500を有する。クライアント装置100、および画像形成装置500は、通信ネットワーク50を介して相互に接続される。通信ネットワーク50は、特に限定されるものではないが、イーサネット(登録商標)やTCP/IPなどのトランザクション・プロトコルによるLAN、VPNや専用線を使用して接続されるWANなどによって構成することができる。
クライアント装置100は、画像形成装置500が印刷し、出力する対象となる文書データや画像データを保管し、ユーザの操作によって、保管されている文書データや画像データから生成された印刷ジョブを画像形成装置500に投入する。ユーザは、クライアント装置100を操作することによって、印刷ジョブを生成し投入することができる。印刷ジョブのデータ形式は、特に限定されるものではないが、PostScript(登録商標)、RPDL、PCL、LIPSなどのページ記述言語(PDL)による印刷フォーマットを適用できる。文書データや画像データのデータ形式としては、ビットマップ、JPEG、マルチページTIFFなどの画像フォーマット、ワードプロセッサ、スプレッドシート、プレゼンテーションなどの各種オフィススイート固有のまたはPDF、XPS、ODFなどの共通の文書フォーマットを適用できる。文書データや画像データのデータ形式としては、さらに、描画ソフトやCADソフトなどの固有のフォーマットを適用できる。クライアント装置100は、パーソナルコンピュータを適用できるが、特にこれに限定されるものではなく、ワークステーションやサーバ装置などの情報処理装置、スマートフォンやPDAなどの情報携帯端末、ネットワーク機能を有するデジタルカメラなどの撮像装置を適用できる。クライアント装置の数は、図11では、1台示されているが、特に限定されるものではなく、1または複数備えることができる。
画像形成装置500は、クライアント装置100から投入された印刷ジョブのプレビュー画像を作成するための機能を備える。また、印刷ジョブの全てのページのプレビュー画像を作成してもよいし、一部又は先頭のページのプレビュー画像を作成してもよい。画像形成装置500は、クライアント装置100から印刷ジョブが投入されるとその印刷ジョブを蓄積する。この時点では、画像形成装置500は、プレビュー画像を作成しない。これによって、印刷ジョブが投入される際にプレビュー画像が作成される場合よりも、画像形成装置500の処理負荷を軽くすることができる。
さらに、画像形成装置500は、保管する印刷ジョブを取得し印刷するための機能を備える。具体的には、画像形成装置500は、ユーザからのログイン要求に応じて、認証サーバ400に認証を要求する。認証サーバ400によってユーザが認証されると、又は、ユーザがジョブリスト画面の表示を要求すると、画像形成装置500は、認証されることによってログインしたユーザの印刷ジョブをリスト化したジョブリストを作成するとともに、ジョブリストに含まれる印刷ジョブのプレビュー画像の作成を開始する。画像形成装置500は、ジョブリスト画面を生成し表示する。これによって、ログインしたユーザが要求している印刷ジョブのプレビュー画像を作成することによって、印刷ジョブが投入される際に全印刷ジョブのプレビュー画像が作成される場合よりも、画像形成装置500に蓄積されるプレビュー画像のデータの容量を削減できる。
さらに、画像形成装置500は、ジョブリストからユーザによって選択された印刷ジョブのプレビュー画像を要求するプレビュー画像要求に応じて、そのプレビュー画像の画像データに基づいてプレビュー画像を表示する。ジョブリストを作成する際にプレビュー画像の作成が開始されているので、その後ユーザがプレビュー画像を表示させる印刷ジョブを選択する間に、プレビュー画像が作成されていると想定される。これによって、ユーザがプレビュー画像を表示させる印刷ジョブを選択してから、プレビュー画像が表示されるまでの時間を短縮できる。さらに、画像形成装置500は、プレビュー画像を参照したユーザによって、画像の印刷が要求された場合には、その画像の画像データに基づいて画像を印刷し、出力する。
<クライアント装置100、画像形成装置500>
クライアント装置100のハードウェア構成は図2を参照して説明した図を適用でき、画像形成装置500のハードウェア構成は図3を参照して説明した図を適用できる。
<<変形例の機能構成>>
次に、本変形例の機能構成について説明する。図12は、本変形例のシステムを構成するクライアント装置100、および画像形成装置500の機能ブロック図である。図12では、クライアント装置100、および画像形成装置500が、通信ネットワーク50を介してデータ通信することができるように接続されている。上述したように、通信ネットワーク50は、イーサネット(登録商標)やTCP/IPなどのトランザクション・プロトコルによるLAN、VPNや専用線を使用して接続されるWANなどとして構成することができる。
<クライアント装置100の機能構成>
クライアント装置100の機能構成は、図4、図2を参照して説明した内容を適用できる。
<画像形成装置500の機能構成>
画像形成装置500は、送受信部552、印刷ジョブ受付部554、記憶読出処理部556、記憶部558、認証処理部560、操作受付部562、ジョブリスト作成部564、プレビュー画像作成部566、プレビュー画像要求受付部568、および印刷処理部572を有している。これら各部は、図3に示されている各構成要素のいずれかが、ROM302またはHD304からRAM303上に展開された画像形成装置用プログラムに従ったCPU301からの命令によって動作することで実現される機能、または機能される手段である。
(画像形成装置500の各機能構成)
次に、図12および図3を用いて、画像形成装置500の各機能構成について詳細に説明する。なお、以下では、画像形成装置500の各機能構成部を説明するにあたって、図3に示されている各構成要素のうち、画像形成装置500の各機能構成部を実現させるための主な構成要素との関係も説明する。
図12に示されている画像形成装置500の送受信部552は、図3に示されているCPU301からの命令、図3に示されているネットワークI/F306によって実現される。送受信部552は、通信ネットワーク50を介して、クライアント装置100と各種データ(または情報)の送受信を行う。
図12に示されている画像形成装置500の印刷ジョブ受付部554は、図3に示されているCPU301からの命令、並びに図3に示されているHDD305によって実現される。印刷ジョブ受付部554は、送受信部552によってクライアント装置100から投入された印刷ジョブが受信されると、記憶読出処理部556にその印刷ジョブに含まれる印刷データを印刷データ記憶部258bに格納し、その印刷ジョブに含まれる印刷ジョブの名称、ページ数などの書誌情報、部数、カラー情報など印刷条件を示す印刷設定情報、印刷ジョブの所有者を識別するユーザIDなどの識別情報、データサイズ、印刷ジョブの投入日時、印刷ジョブに含まれる印刷データの保存先、印刷ジョブのプレビュー画像データの保存先、印刷ジョブのプレビュー画像生成状態などをジョブテーブルに登録し、ジョブテーブル記憶部558aへ記憶させる。
また、印刷ジョブ受付部554は、印刷ジョブに含まれる印刷ジョブのデータサイズ、ページ数、カラー情報のプレビュー画像の作成時間に影響を与える特性に基づいて、所定の作成時間以上の時間がかかると判断される印刷ジョブをプレビュー画像作成部566に入力する。つまり、プレビュー画像の作成に所定の作成時間以上の時間がかかる画像データについては、印刷ジョブを受信した際に、プレビュー画像作成部566にプレビュー画像を作成させる。具体的に、例えば、印刷ジョブ受付部554は、データサイズが1KBの白黒の標準印刷データ、又は1ページの白黒の標準印刷データのプレビュー画像の作成時間である標準時間と、作成時間の閾値とを記憶し、受け付けた印刷ジョブのデータサイズ、ページ数、標準時間に基づいてプレビュー画像作成の所要時間を計算し、さらに、白黒の印刷ジョブの場合は、計算した所要時間を予測時間とし、単色の印刷ジョブの場合、計算した所要時間の2倍を予測時間とし、2色の印刷ジョブの場合、計算した所要時間の3倍を予測時間とし、カラーの印刷ジョブの場合、計算した所要時間の4倍を予測時間とし、予測時間が閾値に達した場合に、印刷ジョブをプレビュー画像作成部566に入力する。
図12に示されている画像形成装置500の記憶読出処理部556は、図3に示されているCPU301からの命令、並びに図3に示されているHDD305によって実現される。記憶読出処理部556は、記憶部558に各種データを記憶したり、記憶部558に記憶された各種データを読み出す処理を行う。
図12に示されている画像形成装置500の記憶部558は、図3に示されているHD304によって実現される。記憶部558は、さらにジョブテーブル記憶部558aと、印刷データ記憶部558bと、プレビュー画像データ記憶部558cとを含む。ジョブテーブル記憶部558aは、クライアント装置100から送信される印刷ジョブの書誌情報、印刷設定情報、ユーザIDなどの識別情報、印刷ジョブに含まれる印刷データの保存先、印刷ジョブのプレビュー画像データの保存先、印刷ジョブのプレビュー画像生成状態などをテーブル化したジョブテーブルを記憶する。ジョブテーブル記憶部558aは、例えば、RDBMS(リレーショナルデータベース管理システム)により実現する。印刷データ記憶部558bは、投入された印刷ジョブに含まれる印刷データを記憶する。印刷データ記憶部558bは、RDBMS(リレーショナルデータベース管理システム)やファイルシステムなどにより実現する。プレビュー画像データ記憶部558cは、後述するプレビュー画像作成部566により作成された、印刷ジョブに対応するプレビュー画像を記憶する。プレビュー画像データ記憶部558cは、RDBMS(リレーショナルデータベース管理システム)やファイルシステムなどにより実現する。ジョブテーブルは、図5を適用できる。
図12に示されている画像形成装置500の認証処理部560は、図3に示されているCPU301からの命令によって実現される。認証処理部560は、認証サーバ400に画像形成装置500にログインするユーザの認証を要求する。例えば、認証処理部560は、ユーザに対して操作パネル307に表示されるログイン画面にユーザID、およびパスワードの入力を要求する。
認証処理部560は、送受信部552から認証サーバ400にユーザID、およびパスワードを送信する。認証サーバ400は、画像形成装置500から送信されたユーザIDとパスワードとの組み合わせが記憶されているか否かに応じて、そのユーザを認証するか否かを判断する。また、ユーザIDおよびパスワードの入力の代わりに、ユーザは、画像形成装置500に備えるカードリーダにカードをかざすと、そのカードに記憶されているカードIDが、画像形成装置500に受信され、認証処理部560に入力される。そして、認証処理部560は、送受信部552から認証サーバ400にユーザID、およびパスワードを送信する。認証サーバ400は、画像形成装置500から送信されたカードIDが記憶されているか否かに応じて、そのユーザを認証するか否かを判断する。
認証サーバ400は、画像形成装置300から送信されたユーザIDとパスワードとの組み合わせ、又はカードIDが記憶されている場合にはそのユーザに画像形成装置500を使用することを許可し、記憶されていない場合にはそのユーザに画像形成装置500を使用することを許可しない。また、認証処理部560は、EAP−TLSによって、認証サーバ400との間で相互で証明書による認証を行うことや、PEAPによって認証を行うことができる。
また、認証サーバ400にユーザ認証を依頼する代わりに、認証処理部560は、画像形成装置500を使用することを許可するユーザIDとパスワードとの組み合わせ、又はカードIDを格納することもできる。この場合、認証処理部560は、ユーザによって入力されたユーザIDとパスワードとの組み合わせ、又はカードIDが記憶されているか否かによって、記憶されている場合には画像形成装置500を使用することを許可し、記憶されていない場合には画像形成装置500を使用することを許可しない。
図12に示されている画像形成装置500の操作受付部562は、図3に示されているCPU301からの命令、図3に示されている操作パネル307によって実現される。操作受付部562は、ユーザ(利用者)による各種入力を受け付ける。例えば、操作パネル307をタッチパネルによって構成することができる。この場合、操作パネル307には、図6に示すジョブリストが表示され、ユーザは、そのジョブリストを参照し、プレビュー画像を表示する印刷ジョブを選択することができる。ユーザがプレビュー画像を表示する印刷ジョブの部分を押し下げること、又はユーザがプレビュー画像を表示する印刷ジョブを選択し、非図示のプレビューボタンを押し下げることによって、図12に示されている操作受付部562は、プレビュー画像要求を受け付ける。また、操作パネル307には、プレビュー画像要求によって要求したプレビュー画像が表示され、ユーザは、そのプレビュー画像を参照し、印刷を実行するか否かを判断することができる。ユーザがプレビュー画像に対応する印刷ジョブを印刷する場合、印刷ボタンを押し下げることによって、図12に示されている操作受付部562は、印刷要求を受け付ける。
図12に示されている画像形成装置500のジョブリスト作成部564は、図3に示されているCPU301からの命令によって実現され、ジョブリスト要求にしたがって、ジョブリストを作成する。ジョブリスト作成部564は、送受信部552によってジョブリスト要求が受信されると、記憶読出処理部556に記憶部558に記憶されたジョブテーブルを読み出させる。そして、ジョブリスト作成部564は、ジョブリスト要求に含まれるユーザID、ジョブリストにおけるジョブの表示の順序を表す情報を取得し、ジョブテーブルに含まれる印刷ジョブから、ジョブリスト要求に含まれるユーザIDに紐付けられた印刷ジョブを抽出し、ジョブの表示の順序を表す情報にしたがって並べることによってジョブリストを作成する。
ジョブリストの一例は、図6を適用できる。
図12に示されている画像形成装置500のプレビュー画像作成部566は、図3に示されているCPU301からの命令によって実現される。プレビュー画像作成部566は、認証処理部560によってユーザが認証された際に、又は画像形成装置500の印刷アプリが起動された際に、そのユーザによって投入された印刷ジョブの画像データのプレビュー画像を作成することができる。ここでは、プレビュー画像作成部566は、ジョブリスト要求が操作受付部562に受け付けられたことを契機として、そのジョブリスト要求に含まれるユーザIDに紐付けられる各印刷ジョブのうち、要求されたジョブリストに含まれる印刷ジョブのプレビュー画像の作成をジョブリストにおける印刷ジョブの表示順で開始する。例えば、日時の降順でかつ5件の印刷ジョブを含むジョブリストのジョブリスト要求が受信された場合に、そのジョブリスト要求に含まれるユーザIDに紐付けられる各印刷ジョブのうち、日時の降順の上位5件の印刷ジョブのプレビュー画像の作成を、日時の降順で開始する。
プレビュー画像作成部566は、プレビュー画像を作成する際に、ジョブテーブル記憶部558aに格納されるジョブテーブルにそのプレビュー画像の元となる印刷ジョブのプレビュー画像作成状態の値を更新する。例えば、プレビュー画像作成を開始すると作成中に更新し、プレビュー画像作成が完了すると作成済に更新する。
具体的に説明する前に、プレビュー画像を作成するまでの処理について説明する。ジョブリスト作成部564は、ジョブリスト要求が操作受付部562に受け付けられると、記憶読出処理部556にジョブテーブル記憶部558aに記憶されたジョブテーブルを読み出させる。そして、ジョブリスト作成部564は、ジョブリスト要求に含まれるユーザID、ジョブリストにおけるジョブの表示の順序を表す情報を取得する。ジョブリスト作成部564は、ジョブテーブルに含まれる印刷ジョブから、ジョブリスト要求に含まれるユーザIDに紐付けられた印刷ジョブを抽出し、ジョブの表示の順序を表す情報にしたがって並べることによってジョブリストを作成する。
プレビュー画像作成部566は、ジョブリスト作成部564によって作成したジョブリストに含まれる印刷ジョブのジョブIDに紐付けられた印刷ジョブのプレビュー画像を順次作成し、記憶読出処理部556に作成したプレビュー画像を記憶部558に記憶させる。ここで、プレビュー画像を作成する順番は、ジョブリストの順番とすることもできるし、異なる順番とすることもできる。ここで、既に作成しているプレビュー画像をプレビュー画像データ記憶部558cに記憶させる。また、必要に応じて、ジョブテーブルのプレビュー画像データ保存先の値を更新する。
また、プレビュー画像作成部566は、後述するプレビュー画像要求受付部568から、ユーザからのプレビュー画像要求によって要求されたプレビュー画像が作成されていないことが通知された場合に、そのプレビュー画像が作成中であればその作成処理を継続し、作成中でなければ直ちにそのプレビュー画像を作成する処理を実行する。
プレビュー画像作成部566の処理は、図7を適用できる。
図12に示されている画像形成装置500のプレビュー画像要求受付部568は、図3に示されているCPU301からの命令によって実現される。プレビュー画像要求受付部568は、プレビュー画像要求が操作受付部562によって受け付けられると、ジョブテーブルに格納されるジョブテーブルのプレビュー画像作成状態項目を参照する。プレビュー画像要求受付部568は、プレビュー画像要求によって要求されるプレビュー画像が作成済であるか否かを確認する。プレビュー画像要求受付部568は、プレビュー画像要求によって要求されるプレビュー画像が作成済であることが確認できた場合に、記憶読出処理部556にそのプレビュー画像要求に含まれるジョブIDに基づき、ジョブテーブルのプレビュー画像データ保存先を参照し、プレビュー画像を取得する。
プレビュー画像要求受付部568は、プレビュー画像要求によって要求されるプレビュー画像が作成済であることが確認できない場合には、プレビュー画像作成部566にプレビュー画像が作成されていないことを通知し、所定の時間の間待機する。所定の時間を経過後、ジョブテーブルのプレビュー画像作成状態項目を参照し、プレビュー画像要求によって要求されるプレビュー画像が作成済であるか否かを再度確認する。
図12に示されている画像形成装置500の印刷処理部572は、図3に示されているCPU301からの命令、図3に示されている操作パネル307、および印刷部308によって実現される。印刷処理部572は、操作パネル307に表示されるプレビュー画像を参照したユーザによって印刷することが選択された場合、記憶読出処理部556に、そのプレビュー画像に紐付けられる印刷データを記憶部558から読み出させ、その印刷データに基づいて印刷処理を実行し、印刷された画像を出力する。
<システムの動作>
図13は、システムの動作の一変形例を示す。
図13は、クライアント装置100から画像形成装置500に印刷ジョブが投入され、画像形成装置500によって印刷ジョブが受け付けられた後の処理を示す。
ステップS1402では、ユーザは画像形成装置500にログインを要求する。ユーザは、画像形成装置500に備えるカードリーダにカードをかざすことによって、そのカードに記憶されているカードIDが、画像形成装置500に受信され、認証処理部560に入力される。例えば、カードと、画像形成装置300との間は、NFC、FeliCa、ISO/IEC 14443 (MIFARE)、ISO/IEC 18092などの近距離無線通信技術を適用することによって無線接続される。
また、画像形成装置500にログインする際にカードをかざすかわりに、操作パネル307に表示されるログイン画面にユーザID、およびパスワードを入力することもできる。
ステップS1404では、画像形成装置500は、ユーザからのログイン要求に応じて、認証処理を行う。画像形成装置500の認証処理部560は、認証サーバ400にカードID、又はユーザIDおよびパスワードを送信することによって認証を要求する。また、画像形成装置500の認証処理部560は、カードID、又はユーザIDおよびパスワードに基づいて、ユーザを認証することもできる。例えば、認証処理部560は、カードID、又はユーザIDおよびパスワードの組み合わせが、画像形成装置500に記憶されたものと一致する場合にユーザが画像形成装置500を使用することを許可し、一致しない場合にユーザが画像形成装置500を使用することを許可しない。また、カードIDに基づいて認証された場合に、認証処理部560は、カードIDに対応するユーザIDを取得しておく。画像形成装置500を使用することを許可しない場合、ユーザに認証エラーであることを通知することもできる(ステップS1408)。ここでは、ユーザが画像形成装置500を使用することを許可した場合について説明を続ける。
ステップS1406では、画像形成装置500は、ジョブリスト要求にしたがって、ジョブリストを作成するとともに、そのジョブリストにおけるジョブの順序でプレビュー画像を作成する処理を開始する。ジョブリスト要求には、ユーザID、ジョブリストにおけるジョブの表示の順序であるオーダー順を表す情報などが含まれる。操作受付部562によってジョブリスト要求が受け付けられると、そのジョブリスト要求は、ジョブリスト作成部564に入力されるとともに、プレビュー画像作成部566に入力される。ジョブリスト作成部564はジョブリスト要求にしたがってジョブリストを作成し、プレビュー画像作成部566は、ジョブリスト要求、およびジョブリスト作成部564によって作成されるジョブリストに基づいて、プレビュー画像を作成する処理を開始する。
ステップS1410では、ユーザは、画像形成装置500の操作パネル307に表示されるジョブリストを参照し、プレビュー画像を表示させる印刷ジョブを選択できる。ユーザによって操作パネル307のプレビュー画像を表示させる印刷ジョブの部分が押し下げられることによって操作受付部562にプレビュー画像要求が受け付けられる。また、ジョブリストから表示したいジョブを選択し、操作パネルに表示されるプレビューボタンを押し下げることによって、操作受付部562にプレビュー画像要求が受け付けられることができる。
ステップS1412では、プレビュー画像要求が受け付けられると、画像形成装置500は、そのプレビュー画像要求にしたがって、そのプレビュー画像要求によって要求されているプレビュー画像が作成されているか否かを判断する。プレビュー画像要求は、画像形成装置500のプレビュー画像要求受付部568に入力される。プレビュー画像要求受付部568は、ジョブテーブル記憶部558aに格納されているジョブテーブルを参照し、プレビュー画像要求によって要求されている、プレビュー画像要求に含まれるジョブIDに対応する印刷ジョブのプレビュー画像が作成されているか、作成中であるか、未作成であるかを判断する。ここでは、がプレビュー画像要求によって要求されているプレビュー画像が作成済みである場合について説明する。
ステップS1414では、画像形成装置500は、プレビュー画像要求によって要求されているプレビュー画像が作成済みであると判断する。画像形成装置500のプレビュー画像要求受付部568は、ジョブテーブル記憶部558aに格納されているジョブテーブルを参照した結果、プレビュー画像要求によって要求されているプレビュー画像が作成済みであると判断する。
ステップS1416では、ユーザは、画像形成装置500の操作パネル307に表示されるプレビュー画像を参照し、プレビュー画像に対応する印刷ジョブを印刷するか否かを判断できる。ユーザによって操作パネル307の印刷ボタンが押し下げられることによって操作受付部562に印刷要求が受け付けられる。
ステップS1418では、画像形成装置500は、印刷要求を受け付ける。画像形成装置500の操作受付部562によって印刷要求が受け付けられると、印刷処理部572は、記憶読出処理部556に記憶部558に格納された印刷データ取得要求によって要求されている印刷データを読み出させる。印刷処理部572は、その印刷データに基づいて印刷処理を実行する。
プルプリントシステムの一変形例によれば、画像形成装置はユーザが認証された際に、又はユーザによって画像形成装置が操作されることによって、例えば、印刷アプリが起動された際に、そのジョブリストの印刷ジョブに紐付けられる画像データのプレビュー画像の作成(生成)を開始できる。画像データのプレビュー画像の作成を開始するタイミングについては、図10を参照して説明したタイミングを適用できる。このため、プレビュー画像の作成のための処理負荷を低減できるとともに、画像形成装置からのプレビュー画像の要求に応じて、迅速に対応できる。また、画像形成装置にサーバ装置によって行われていた処理を実行させることによって、サーバ装置と画像形成装置との間で行われていた情報の送受信を省略できる。
上述した実施例、および変形例において、プリプリントシステムは出力システムの一例であり、サーバ装置、及び画像形成装置は情報処理装置の一例であり、画像形成装置は出力装置の一例である。印刷データは出力データの一例である。
本発明は特定の実施例、変形例を参照しながら説明されてきたが、各実施例、変形例は単なる例示に過ぎず、当業者は様々な変形例、修正例、代替例、置換例等を理解するであろう。説明の便宜上、本発明の実施例に従った装置は機能的なブロック図を用いて説明されたが、そのような装置はハードウェアで、ソフトウエアでまたはそれらの組み合わせで実現されてもよい。本発明は上記実施例に限定されず、本発明の精神から逸脱することなく、様々な変形例、修正例、代替例、置換例等が包含される。