以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図1は、本発明の印刷システムの一実施形態を示す図である。印刷システム100は、ネットワーク130を介して接続されたクライアントPC110a,110bと、プリントサーバ112と、印刷装置120,122,124とを含んで構成されている。
クライアントPC110a,110bは、ユーザが作成した種々のドキュメントデータや画像データをプリントサーバ112に送信して印刷装置120,122,124に印刷させる情報処理装置である。クライアントPC110a,110bは、ユーザの印刷指示により、印刷要求と共に、印刷対象であるドキュメントデータおよび/または画像データをプリントサーバ112に送信する。図1に示す実施形態では、クライアントPC110a,110bとしてデスクトップ型PCが採用されているが、他の実施形態では、ノート型PCやタブレット型PC、スマートフォンなどの情報処理装置を採用することができる。
プリントサーバ112は、クライアントPC110a,110bから受信したデータを処理して印刷装置120,122,124に印刷を実行させる情報処理装置である。プリントサーバ112は、クライアントPC110a,110bから印刷要求を受信すると、当該クライアントPCから受信した印刷要求とドキュメントデータおよび/または画像データとを使用して印刷データを生成すると共に、当該印刷データの出力先である印刷装置120,122,124を決定し、当該印刷装置に印刷を実行させる。
印刷装置120,122,124は、プリントサーバ112から受信した印刷データを、用紙等の印刷媒体に印刷する印刷装置である。図1に示す実施形態では、印刷装置120,122,124としてMFP(Multiple Function Printer)やレーザプリンタを採用するが、他の実施形態では、インクジェットプリンタ等の他の印刷装置を採用してもよい。
ネットワーク130は、イーサネット(登録商標)、光ネットワーク、IEEE802.11などの規格の無線ネットワークを含んで構成することができるネットワークである。また、ネットワーク130は、LANの他、VPN(Virtual Private Network)などによるセキュア環境下で構築されたインターネットなどの広域ネットワークを含んで構成されていてもよい。
図2は、図1に示す実施形態のプリントサーバのハードウェア構成を示す図である。以下、図2を参照して、プリントサーバ112のハードウェア構成について説明する。
プリントサーバ112は、プロセッサ200と、ROM202と、RAM204と、ハードディスク装置(HDD)206と、外部機器接続インタフェース208と、ネットワークインタフェース210とを含んで構成される。
プロセッサ200は、プリントサーバ112が実行する処理を演算する装置であり、PENTIUM(登録商標)やAMD Athlon(登録商標)等のCPUやMPUなどの種々のプロセッサを採用することができる。ROM202は、BIOS等のブートプログラムなどが保存される不揮発性メモリである。
RAM204は、本発明のプログラムを実行するための実行空間を提供する不揮発性メモリである。プリントサーバ112は、WINDOWS(登録商標)シリーズ、Mac(登録商標)OS(Operating System)、UNIX(登録商標)、LINUX(登録商標)などのOSの管理下でアセンブラ、C、C++、Java(登録商標)、JavaScript(登録商標)、PERL、RUBY、PYTHONなどのプログラム言語で記述された本発明のプログラムを展開して実行することにより、後述する各機能手段をプリントサーバ112上に実現する。
HDD206は、大容量の不揮発性メモリであり、本発明のプログラムなどの様々なデータが保存される。本発明のプログラムは、CD−ROM、MO、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納してインストールすることができると共に、ネットワークを介してインストールすることができる。
外部機器接続インタフェース208は、マウスやキーボード、タッチパネル等の入力装置および表示装置などの接続するためのインタフェースであり、USBポートやVGAポート等の物理インタフェースである。ネットワークインタフェース210は、外部ネットワークと接続するインタフェースであり、LANケーブルコネクタやモジュラーケーブルコネクタ等の物理インタフェースである。
図3は、図1に示すクライアントPCおよびプリントサーバの機能構成を示す図である。以下、図3を参照して、クライアントPC110aおよびプリントサーバ112の機能構成について説明する。なお、クライアントPC110bの機能構成は、クライアントPC110aと同様であるため省略する。
クライアントPC110aは、アプリケーションプログラム300を含んで構成される。アプリケーションプログラム300は、印刷対象であるドキュメントデータや画像データを生成するプログラムである。本実施形態では、文書作成ソフトや表計算ソフト、画像作成ソフト、プレゼンテーションソフトなどの種々のアプリケーションプログラムを採用する。アプリケーションプログラム300は、ユーザが発行した印刷指示を受信すると、印刷対象のドキュメントデータおよび/または画像データを、印刷要求と共にプリントサーバ112に送信する。印刷要求には、印刷要求を識別する情報の他、クライアントPC110aのホスト名やIPアドレス、ログインユーザ名等のクライアントPC110aの識別情報と、印刷設定情報とが含まれる。
本実施形態では、アプリケーションプログラム300が印刷対象のドキュメントデータや画像データを生成するが、他の実施形態では、業務アプリケーションプログラムやウェブブラウザなどのプログラムが印刷対象のデータを生成してもよい。
プリントサーバ112は、仮想プリンタドライバ302と、中間データ蓄積部310と、発送処理部320とを含んで構成される。
仮想プリンタドライバ302は、クライアントPC110aから受信した印刷要求と画像データおよび/またはドキュメントデータとを使用して中間データを生成し、中間データ蓄積部310にスプールするプリンタドライバである。仮想プリンタドライバ302は、描画部304と、抽出部306とを含んで構成される。
描画部304は、クライアントPC110aのアプリケーションプログラム300が生成したドキュメントデータおよび/または画像データから印刷対象の描画データを生成する機能手段である。描画部304は、クライアントPC110aから印刷要求を受信すると、当該ドキュメントデータおよび/または画像データから印刷対象の描画データを生成し、中間データ蓄積部310の記憶装置312に描画データをバッファリングする。本実施形態では、描画部304が生成する描画データはラスタデータであり、描画データのデータ形式として、BMF形式およびEMF形式等のデータ形式を採用することができる。
抽出部306は、クライアントPC110aが発行した印刷要求から当該クライアントPCの識別情報および印刷設定情報を含むジョブデータを生成する機能手段である。抽出部306は、印刷要求を受信すると、当該印刷要求に含まれるクライアントPC110aのホスト名やIPアドレス、ログインユーザ名等のクライアントPCの識別情報および印刷設定情報を抽出してジョブデータを生成し、中間データ蓄積部310の記憶装置314に描画データをバッファリングする。
中間データ蓄積部310は、中間データである描画データおよびジョブデータを一時的に蓄積する記憶手段である。中間データ蓄積部310は、仮想プリンタドライバ302が描画データおよびジョブデータを記憶装置312,314に保存すると、その旨を発送処理部320に通知する。
発送処理部320は、印刷を行う印刷装置を決定すると共に、中間データである描画データに選択的に改変を施して印刷データを生成し、当該印刷データを印刷装置に送信する機能手段である。発送処理部320は、印刷制御部322と、出力先決定部324と、記憶装置326と、改変制御部328と、通知部338とを含んで構成される。
印刷制御部322は、出力先決定部324、改変制御部328および通知部338を制御する機能手段である。印刷制御部322は、これらの機能手段を適宜呼び出して、印刷を実行すべき印刷装置を決定し、当該印刷装置に応じて印刷対象の描画データに改変を施して印刷データを生成する。印刷制御部322は、当該印刷装置に印刷データを送信する。
出力先決定部324は、印刷データを印刷する印刷装置を決定する機能手段である。出力先決定部324は、中間データ蓄積部310の記憶装置314からジョブデータを取得し、クライアントPC110a,110bの識別情報と、印刷装置120,122,124の識別情報とが関連付けられたマッピング情報を参照して、当該ジョブデータに含まれるクライアントPCの識別情報に関連付けられた印刷装置を決定する。また、出力先決定部324は、マッピング情報を参照し、クライアントPC110a,110bが印刷出力可能な印刷装置の識別情報を取得し、当該印刷装置の識別情報で構成される出力先一覧情報を生成する。
改変制御部328は、描画データに対して改変を施すか否か判定すると共に、ユーザの指示に基づいて描画データに改変を施す機能手段である。改変制御部328は、判定部330と、記憶装置332と、改変部334,336とを含んで構成される。本実施形態では、2の改変部334,336を備えているが、他の実施形態では、1の改変部や3以上の改変部を備えることができる。
判定部330は、印刷装置120,122,124の属性を判定する機能手段である。印刷装置120,122,124の属性とは、例えば、印刷装置120,122,124のセキュリティレベル等の属性を示す情報である。この場合、印刷装置120,122,124を、セキュリティレベルが高い印刷装置と、セキュリティレベルが中程度の印刷装置と、セキュリティレベルが低い印刷装置とに分類することができる。
記憶装置332には、印刷装置の識別情報と印刷装置の属性とが関連付けられた判定情報が保存されており、判定部330は、判定情報を参照し、印刷制御部322が指定する印刷装置の属性を判定する。なお、本実施形態では、印刷装置の属性としてセキュリティレベルを採用するが、他の実施形態では、印刷装置の属性を規定する他の様々な情報を採用することができる。
改変部334,336は、描画データを選択的に改変する機能手段である。改変部334,336は、印刷データが送信される印刷装置120,122,124の属性および/または描画データを使用して、改変を施すべき描画データであるか否か判断する。例えば、印刷装置の属性としてセキュリティレベルを採用する実施形態では、改変部334が、セキュリティレベルの中程度の印刷装置に送信される描画データを改変し、改変部336が、セキュリティレベルの低い印刷装置に送信される描画データを改変するように構成することができる。
印刷制御部322から描画データの改変の要否を判断する改変要否判断要求を受信した場合、印刷データがセキュリティレベルの中程度の印刷装置に送信されるときは、改変部334は、当該印刷データを構成する描画データを改変対象として判断し、機密情報であることを示す透かし文字を当該描画データに合成することを示す改変情報を生成する。一方、描画データがセキュリティレベルの低い印刷装置に送信されるときは、改変部334は、改変を行わない旨を示す改変情報を生成する。
また、印刷データがセキュリティレベルの低い印刷装置に送信されるときは、改変部336は、当該印刷データを構成する描画データを改変対象として判断し、当該描画データに全面を黒塗りの画像を合成することを示す改変情報を生成する。一方、描画データがセキュリティレベルの高い印刷装置に送信されるときは、改変部336は、改変を行わない旨を示す改変情報を生成する。改変制御部328は、改変部334,336が生成した改変情報をマージして印刷制御部322に提供する。
印刷制御部322から描画データの改変要求を受信した場合、印刷データがセキュリティレベルの中程度の印刷装置に送信されるときは、改変部334は、当該印刷データを構成する描画データを改変対象として判断し、機密情報であることを示す透かし文字を当該描画データに合成することができる。一方、印刷データがセキュリティレベルの低い印刷装置に送信されるときは、改変部336は、当該印刷データを構成する描画データを改変対象として判断し、当該描画データに全面を黒塗りの画像を合成することができる。
また、改変部334,336は、印刷データを構成する描画データの中に機密情報に該当する特定の文字や数字、記号等が含まれるか否か判断し、改変を施すべき描画データであるか否か判断することができる。
本実施形態では、描画データに対して特定の文字を付加し、または特定の画像を合成して描画データを改変するが、他の実施形態では、例えば、描画データを破棄し、または描画データに複数文字の付加するなどの様々な改変が可能である。また、Windows(登録商標)OSを採用する実施形態では、DLL(Dynamic Link Library)によって上述した改変部を実現することができる。
通知部338は、クライアントPC110a,110bのユーザに対し、印刷データを印刷する印刷装置および改変情報を通知する機能手段である。通知部338は、出力先決定部324が生成した出力先一覧情報と、改変制御部328が生成した改変情報とを表示するGUI(Graphical Use Interface)であって、印刷データを印刷する印刷装置を指定可能なGUIである出力先選択画面を構成する情報(以下、「出力先選択画面構成情報」とする。)を生成する。通知部338は、印刷要求を送信したクライアントPC110a,110bに当該出力先選択画面構成情報を送信し、当該クライアントPCの表示装置に当該出力先選択画面を表示させる。
ユーザがクライアントPC110a,110bの表示装置に表示された出力先選択画面を用いて印刷データの出力先の印刷装置を指定すると、クライアントPC110a,110bは、ユーザが指定した出力先の印刷装置の識別情報(以下、「出力先指定情報」とする。)をプリントサーバ112に送信する。通知部338は、当該出力先指定情報を受信し、印刷制御部322に提供する。
上述した実施形態では、プリントサーバ112が仮想プリンタドライバ302を備えているが、他の実施形態では、クライアントPC110a,110bが仮想プリンタドライバ302を備えるように構成してもよい。
図4は、図1に示す印刷システムが実行する印刷処理を示すシーケンス図である。以下、プリントサーバ112が描画データに改変を施す場合の印刷処理のシーケンスについて説明する。
図4に示す実施形態では、ステップS400でクライアントPC110aがプリントサーバ112に印刷要求を送信する。プリントサーバ112の仮想プリンタドライバ302は、印刷要求を受信すると、ステップS401で印刷要求と共に送信されたドキュメントデータおよび/または画像データから描画データを生成して中間データ蓄積部310の記憶装置312に保存すると共に、ステップS402で印刷要求からジョブデータを生成して記憶装置314に保存する。
次に、発送処理部320の印刷制御部322が、ステップS403で記憶装置314からジョブデータをFIFO形式で取得し、ステップS404で当該ジョブデータに関連する描画データを印刷すべき印刷装置を決定する要求である出力先決定要求を出力先決定部324に送信する。ステップS405では、出力先決定部324は、記憶装置326に保存されたマッピング情報を参照し、当該ジョブデータを使用して、当該描画データを含んで構成される印刷データの出力先を決定し、印刷制御部322に通知する。
次に、印刷制御部322は、当該出力先である印刷装置に印刷を実行させた場合に描画データに対して改変が行われるか否かを判断すべく、ステップS406で当該印刷装置を指定して改変要否判断要求を改変制御部328に送信する。ステップS407では、改変制御部328は、記憶装置312から当該描画データを取得し、当該出力先である印刷装置の属性および描画データを使用して改変情報を生成し、印刷制御部322に提供する。
次に、印刷制御部322は、当該印刷要求を送信したクライアントPCが印刷データを出力可能な印刷装置を示す出力先一覧情報を取得すべく、ステップS408で出力先一覧情報要求を出力先決定部324に送信する。ステップS409では、出力先決定部324は、記憶装置326に保存されたマッピング情報を参照して出力先一覧情報を生成し、印刷制御部322に提供する。
次に、印刷制御部322は、出力先一覧情報が示す各印刷装置に印刷を実行させた場合に描画データに対して改変が行われるか否かを判断すべく、ステップS410で当該出力先一覧情報が示す印刷装置を指定して改変要否判断要求を改変制御部328に送信する。ステップS411では、改変制御部328は、記憶装置312から当該描画データを取得し、当該出力先である各印刷装置の属性および描画データを使用して改変情報を生成し、印刷制御部322に提供する。
次に、印刷制御部322は、当該印刷要求を送信したクライアントPCに出力先選択画面を表示すべく、ステップS412で出力先選択画面の表示要求と共に改変情報を通知部338に送信する。ステップS413では、通知部338は、当該改変情報を使用して出力先選択画面構成情報を生成し、当該クライアントPCに出力先選択画面構成情報を送信する。通知部338は、クライアントPCから出力先指定情報を受信すると、当該出力先指定情報を印刷制御部322に提供する。
次に、印刷制御部322は、ステップS414で改変要求と共に当該出力先指定情報を改変制御部328に送信する。ステップS415では、改変制御部328は、記憶装置312から当該描画データを取得し、当該出力先指定情報が示す印刷装置の属性を使用して改変の要否を判断し、当該描画データに改変を施す。そして、印刷制御部322は、改変された描画データと、印刷要求に含まれる印刷設定情報とで構成される印刷データを生成し、ステップS416で出力先指定情報が示す印刷装置に印刷データを送信し、当該印刷装置が印刷を実行する。
図5は、図1に示すプリントサーバが実行する印刷処理を示すフローチャートである。以下、図5を参照して、プリントサーバ112が実行する印刷処理について説明する。
図5に示す処理は、プリントサーバ112がクライアントPC110a,110bから印刷要求を受信することにより、ステップS500から開始する。ステップS501では、プリントサーバ112の仮想プリンタドライバ302が、描画データおよびジョブデータを生成し、中間データ蓄積部310の記憶装置312,314に保存する。
ステップS502では、発送処理部320の印刷制御部322が、出力先決定部324を呼び出し、出力先決定部324が記憶装置314からジョブデータを取得し、当該ジョブデータおよびマッピング情報を使用して、印刷データの出力先である印刷装置を決定する。ステップS503では、印刷制御部322は改変制御部328を呼び出し、改変制御部328が、ステップS502で決定した出力先である印刷装置について、図6に示す改変要否判断処理を実行して改変情報を生成する。
ステップS504では、印刷制御部322は、ステップS503で生成した改変情報を使用して描画データの改変が必要か否か判断する。描画データの改変が必要ないと判断した場合には(no)、処理をステップS505に分岐させる。ステップS505では、印刷制御部322は、記憶装置312から描画データを取得して印刷データを生成し、ステップS502で決定した出力先である印刷装置に印刷データを送信し、ステップS512で処理が終了する。
一方、ステップS504の判定で描画データの改変が必要であると判断した場合には(yes)、処理をステップS506に分岐させる。ステップS506では、印刷制御部322は、出力先決定部324を呼び出し、出力先決定部324が出力先一覧情報を生成する。ステップS507では、印刷制御部322は改変制御部328を呼び出し、改変制御部328は、ステップS506で生成した出力先一覧情報が示す出力先である印刷装置について、図6に示す改変要否判断処理を実行して改変情報を生成する。
ステップS508では、印刷制御部322が通知部338を呼び出し、通知部338は、出力先選択画面構成情報を生成し、印刷要求を送信したクライアントPCに送信する。ステップS509では、通知部338は、当該クライアントPCから出力先指定情報を受信したか否か判断する。出力先指定情報を受信していない場合には(no)、ステップS509の処理を反復する。一方、出力先指定情報を受信した場合には(yes)、処理をステップS510に分岐する。
ステップS510では、印刷制御部322が改変制御部328を呼び出し、改変制御部328は、図7に示す描画データの改変処理を実行する。ステップS511では、印刷制御部322は、描画データおよび印刷設定情報を含む印刷データを生成し、当該クライアントPCから出力先指定情報が示す印刷装置に印刷データを送信し、ステップS512で処理が終了する。
図6は、図1に示すプリントサーバが実行する改変要否判断処理を示すフローチャートである。以下、図6を参照して、図5のステップS503およびS507で改変制御部328が実行する改変要否判断処理について説明する。
図6の処理は、ステップS600から開始し、ステップS601では、改変制御部328の判定部330が、判定情報を参照し、印刷制御部322が指定する印刷装置の属性を判定する。ステップS602では、改変部334が、ステップS601で判定した印刷装置の属性を使用して、当該印刷装置に送信される描画データの改変が必要か否か判断する。改変が必要ではないと判断した場合には(no)、処理をステップS603に分岐させ、描画データの改変が必要でないことを示す改変情報を生成する。一方、改変が必要であると判断した場合には(yes)、処理をステップS604に分岐する。
ステップS604では、改変部334は、記憶装置312から印刷要求に係る描画データを取得し、描画データの中に機密情報に該当する特定の文字や数字、記号等が含まれるか否か判断する。機密情報が含まれる場合には(yes)、処理をステップS605に分岐させ、改変部334は、出力先の印刷装置の属性および描画データに機密情報が含まれることにより、当該描画データに機密情報を示す透かし文字が付加されることを示す改変情報を生成する。一方、機密情報が含まれない場合には(no)、処理をステップS606に分岐させ、改変部334は、出力先の印刷装置の属性により、当該描画データに機密情報を示す透かし文字が付加されることを示す改変情報を生成する。
ステップS607では、改変部336が、ステップS601で判定した印刷装置の属性を使用して、当該印刷装置に送信される描画データの改変が必要か否か判断する。改変が必要ではないと判断した場合には(no)、処理をステップS608に分岐させ、改変部336は、描画データの改変が必要でないことを示す改変情報を生成する。一方、改変が必要であると判断した場合には(yes)、処理をステップS609に分岐させる。
ステップS609では、改変部336は、記憶装置312から印刷要求に係る描画データを取得し、描画データの中に機密情報に該当する特定の文字や数字、記号等が含まれるか否か判断する。機密情報が含まれる場合には(yes)、処理をステップS610に分岐させ、改変部336は、出力先の印刷装置の属性および描画データに機密情報が含まれることにより、当該描画データに機密情報を示す透かし文字が付加されることを示す改変情報を生成する。一方、機密情報が含まれない場合には(no)、処理をステップS611に分岐させ、改変部336は、出力先の印刷装置の属性により、当該描画データに機密情報を示す透かし文字が付加されることを示す改変情報を生成する。
ステップS612では、改変制御部328は、改変部334,336が生成した改変情報をマージして印刷制御部322に提供し、ステップS613で処理が終了する。本実施形態では、改変制御部328が2の改変部334,336を備えるため、これらの改変部が上述した処理を実行するが、他の実施形態では、改変制御部328が有する各改変部が上述した処理を実行する。
図7は、図1に示すプリントサーバが実行する描画データの改変処理を示すフローチャートである。以下、図7を参照して、図5のステップS510で改変制御部328が実行する描画データの改変処理について説明する。
図7の処理は、ステップS700から開始し、ステップS701では、改変制御部328の判定部330が、判定情報を参照し、出力先指定情報を使用して、ユーザが出力先選択画面を用いて指定した印刷装置の属性を判定する。
ステップS702では、改変部334が、ステップS701で判定した印刷装置の属性を使用して、当該印刷装置に送信される描画データの改変が必要か否か判断する。改変が必要ではないと判断した場合には(no)、処理をステップS704に分岐させる。一方、改変が必要であると判断した場合には(yes)、処理をステップS703に分岐させ、改変部334は、描画データに所定の改変を施す。
ステップS704では、改変部336が、ステップS701で判定した印刷装置の属性を使用して、当該印刷装置に送信される描画データの改変が必要か否か判断する。改変が必要ではないと判断した場合には(no)、ステップS706で処理が終了する。一方、改変が必要であると判断した場合には(yes)、処理をステップS705に分岐させ、改変部336は、描画データに所定の改変を施し、ステップS706で処理が終了する。
本実施形態では、改変制御部328が2の改変部334,336を備えるため、これらの改変部が上述した処理を実行するが、他の実施形態では、改変制御部328が有する各改変部が上述した処理を実行する。
図8は、図1に示す実施形態のプリントサーバが使用するマッピング情報および判定情報の一実施形態を示す図である。
マッピング情報800は、プリントシステム100のクライアントPC110a,110bに対し印刷処理を実行する印刷装置を割り当てるための情報である。マッピング情報800では、クライアントPCの識別情報「UserX」、「UserY」および「UserZ」と、印刷装置の識別情報「PrinterX」、「PrinterY」および「PrinterZ」とが関連付けられている。本実施形態のマッピング情報800は、Json(JavaScript(登録商標) Object Notation)形式で記述されたテキストデータであるが、クライアントPCの識別情報と印刷装置の識別情報とを関連付け得る限り、その他の如何なる記述形式のデータを採用することができる。
判定情報810は、プリントシステム100の印刷装置120,122,124の属性を判定するために使用される情報である。判定情報810では、印刷装置の識別情報「PrinterX」、「PrinterY」および「PrinterZ」と、印刷装置の属性「AttributeA」、「AttributeB」および「AttributeC」とが関連付けられている。例えば、印刷装置の属性「AttributeA」はセキュリティレベルが高いことを示す属性を規定し、印刷装置の属性「AttributeB」はセキュリティレベルが中程度であることを示す属性を規定し、印刷装置の属性「AttributeC」はセキュリティレベルが低いことを示す属性を規定する。
本実施形態の判定情報810は、マッピング情報800と同様、Json形式で記述されたテキストデータであるが、印刷装置の識別情報と属性とを関連付け得る限り、その他の如何なる記述形式のデータを採用することができる。
図9は、本発明の情報処理装置が表示する出力先選択画面の一実施形態を示す図である。出力先選択画面900では、出力先である印刷装置の識別情報910と、改変情報912とが関連付けて表示される。ユーザは、出力先選択画面900を介して出力先の印刷装置と当該印刷装置で印刷した場合に施される改変の内容とを確認した上で、印刷データを印刷する印刷装置を指定することができる。本実施形態では、改変情報912として、改変の内容(例えば、透かし文字の付加や黒塗り等)を表示するが、他の実施形態では、改変情報912として、改変の理由(例えば、出力先の印刷装置の属性および描画データに機密情報が含まれることにより改変が施される等)も表示してもよい。
図10は、本発明の印刷システムの別の実施形態を示す図である。印刷システム1000は、ネットワーク130を介して接続された情報処理装置1010と、印刷装置120,122,124とを含んで構成されている。本実施形態は、図1〜9を参照して説明した実施形態と同様の構成を有するため、以下、相違点を中心に説明する。
情報処理装置1010は、ユーザが作成した種々のドキュメントデータや画像データから印刷データを生成し、印刷装置120,122,124に送信して印刷させる情報処理装置である。情報処理装置1010は、印刷データを生成すると共に、当該印刷データの出力先である印刷装置120,122,124を決定し、当該印刷装置に印刷を実行させる。情報処理装置1010は、図2に示すプリントサーバ112のハードウェア構成と同様のハードウェア構成を有する。
図11は、図10に示す情報処理装置の機能構成を示す図である。情報処理装置1010は、アプリケーションプログラム300と、仮想プリンタドライバ302と、中間データ蓄積部310と、発送処理部320とを含んで構成される。
アプリケーションプログラム300は、ユーザが発行した印刷指示を受信すると、印刷要求と共に印刷対象のドキュメントデータや画像データを仮想プリンタドライバ302に送信する。仮想プリンタドライバ302は、当該印刷要求と画像データおよび/またはドキュメントデータとを使用して中間データを生成し、中間データ蓄積部310にスプールする。発送処理部320は、印刷を行う印刷装置および印刷データの改変情報をユーザに通知すると共に、印刷対象の描画データに選択的に改変を施し、ユーザの指定した印刷装置に印刷データを印刷させる。
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、本実施形態の構成要素を変更若しくは削除し、または本実施形態の構成要素を他の構成要素を追加するなど、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用効果を奏する限り、本発明の範囲に含まれるものである。