JP2012181694A - 情報処理装置、プリントシステム、制御方法、及び、プログラム - Google Patents

情報処理装置、プリントシステム、制御方法、及び、プログラム Download PDF

Info

Publication number
JP2012181694A
JP2012181694A JP2011044392A JP2011044392A JP2012181694A JP 2012181694 A JP2012181694 A JP 2012181694A JP 2011044392 A JP2011044392 A JP 2011044392A JP 2011044392 A JP2011044392 A JP 2011044392A JP 2012181694 A JP2012181694 A JP 2012181694A
Authority
JP
Japan
Prior art keywords
data
information
print
printing
printing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2011044392A
Other languages
English (en)
Inventor
Shinya Suzuki
慎也 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2011044392A priority Critical patent/JP2012181694A/ja
Priority to US13/396,508 priority patent/US8773699B2/en
Publication of JP2012181694A publication Critical patent/JP2012181694A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/002Interacting with the operator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1258Configuration of print job parameters, e.g. using UI at the client by updating job settings at the printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1267Job repository, e.g. non-scheduled jobs, delay printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • G06K15/4005Sharing resources or data with other data processing systems; Preparing such data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】印刷ジョブを特定の機種の印刷装置に依存しない中間形式のデータで情報処理装置に留め置きするプリントシステムであっても、印刷ジョブのより詳細な情報を出力前に正確にユーザに提示すること。
【解決手段】プリントサーバ101のジョブ管理サービス402は、印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶しておき、画像形成装置102からの要求に応じて、画像形成装置102に対応するプリンタドライバをインストールし、該プリンタドライバに、前記中間形式のデータから画像形成装置102で実際に印刷される際の体裁を認識できるデータを生成させ、プリントサーバ101の内部の記憶領域に出力させ、該出力データから体裁情報を取得して画像形成装置102に送信する。画像形成装置102のパネル・アプリケーション404は、プリントサーバ101から受信した印刷対象データの体裁情報を表示する。
【選択図】図4

Description

本発明は、プルプリントの制御に関する。
従来、ユーザが印刷装置からサーバ上に一時蓄積されたPDL(Page Description Language)データに対して印刷要求を行うことで当該印刷装置から印刷データの出力を可能にする所謂「プルプリント」の印刷システムが提案されている(例えば、特許文献1参照)。
この印刷システムにより、ユーザはアプリケーションからの印刷時に特定の印刷装置への出力ではなく、所望の印刷装置からの印刷データ出力を可能としている。その際、サーバ上に一時蓄積されたPDLデータの解析を行うことで、ユーザは所望の印刷装置上で印刷設定の確認を行うことが可能である。
特許第4033857号公報
しかし、従来のプルプリントシステムでは、対象となる印刷装置の機種及びPDL種類に対応した解析用のプログラムを用いて、PDLデータを解析し印刷設定情報をユーザに提示することはできた。
例えば、4ページデータの印刷設定を2in1に設定して、従来のプルプリントシステムで印刷することを想定する。ここで、PDLデータを解析することなく、従来のシステムで得られる情報は「4ページ・2in1」という程度の情報にとどまる。このため、従来のプルプリントシステムでは、PDLデータを解析することなく、レンダリング後の総ページ数、カラーページ数、モノクロページ数といった、実際に印刷装置で印刷される体裁を表すような詳細な情報を得ることができなかった。具体的には、レンダリングの結果が「総ページ数:2ページ、カラーページ数:1ページ、モノクロページ数:1ページ」となる等の詳細な情報を得ることができなかった。
このような詳細な情報を得るためには、印刷装置のパネル・アプリケーションで出力結果の情報を導出する必要があるが、その導出方法は、各PDL・各モデルによって異なる。このため、PDLやモデル数の組み合わせを全て考慮して、印刷装置のパネル・アプリケーションで出力結果の情報を導出するための構成(解析プログラム)を事前に印刷装置に実装するのは、現実的ではなかった。
また、プリントサーバのサービスで出力結果の情報を導出する場合でも、印刷装置から要求を受けるたびに、プリントサーバがこの処理を行うと、プリントサーバに大きな負荷がかかってしまい、パフォーマンスに影響を与える恐れがあった。
本発明は、上記の問題点を解決するためになされたものである。本発明は、印刷ジョブを特定の機種の印刷装置に依存しない中間形式のデータで情報処理装置に留め置きするプリントシステムを想定し、その目的は、印刷ジョブのより詳細な情報を出力前に正確にユーザに提示することができる仕組みを提供することである。
本発明は、印刷装置と通信可能な情報処理装置であって、印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶する記憶手段と、印刷装置からの要求に応じて、当該印刷装置に対応するプリンタドライバのインストールを行うインストール手段と、前記インストール手段によりインストールされたプリンタドライバに、前記中間形式のデータから前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させる処理手段と、前記処理手段による出力データから体裁情報を取得して前記印刷装置に送信する送信手段と、を有し、前記印刷装置では、前記印刷対象となるデータの前記体裁情報の表示が行われることを特徴とする。
本発明によれば、印刷ジョブを特定の機種の印刷装置に依存しない中間形式のデータで情報処理装置に留め置きするプリントシステムであっても、印刷ジョブのより詳細な情報を出力前に正確にユーザに提示することができる。
本発明の一実施例を示すプリントシステムの構成の一例を示すシステム構成図である。 図1に示したクライアントPC100、プリントサーバ101、ログインサービスPC103、ディレクトリサービスサーバ104に適用可能な情報処理装置のハードウェア構成を示すブロック図である。 図1に示した画像形成装置102のコントローラユニットのハードウェア構成の一例を示すブロック図である。 本実施形態のプリントシステムの全体の流れを説明する模式図である。 図1に示したクライアントPC100上で動作するクライアント・アプリケーション400の印刷画面の一例を示す模式図である。 本発明のプリントシステムにおける第1の制御処理手順の一例を示すフローチャートである。 本発明のプリントシステムにおける第2の制御処理手順の一例を示すフローチャートである。 図7のステップSB702で呼び出される論理プリンタ作成処理のフローチャートである。 図7のステップSB707で呼び出されるEMFSPOOL形式印刷ジョブの加工処理のフローチャートである。 本発明のプリントシステムにおける中間形式印刷ジョブの加工処理の一例を示す図である。 本発明のプリントシステムにおける第3の制御処理手順の一例を示すフローチャートである。 本発明のプリントシステムにおける第4の制御処理手順の一例を示すフローチャートである。 画像形成装置102の操作部308に表示される画面の一例を示す図である。 画像形成装置102の操作部308に表示される画面の一例を示す図である。 画像形成装置102の操作部308に表示される画面の一例を示す図である。
以下、本発明を実施するための形態について図面を用いて説明する。
図1は、本発明の一実施例を示すプリントシステムの構成の一例を示すシステム構成図である。
図1の「事業所A」に示すように、本実施形態のプリントシステムは、1又は複数のクライアントPC100(例えば、ユーザ毎)、1又は複数のプリントサーバ101(例えば、階毎に設置)、1又は複数の画像形成装置(印刷装置)102(例えば、階毎に設置)、1又は複数のログインサービスPC103(例えば、階毎に設置)、ディレクトリサービスサーバ104がローカルエリアネットワーク(LAN)105を介して通信可能に接続される構成となっている。
クライアントPC100には、仮想プリンタドライバがインストールされている。この仮想プリンタドライバは、クライアント・アプリケーションから受け取ったデータに基づいて特定の機種の画像形成装置に依存しない中間形式の印刷ジョブを生成し、プリントサーバ101へ送信する。
なお、中間形式の印刷ジョブとは、フォーマットに関する仕様が公開されていて、かつ再編集が容易な形式の印刷データを意味する。例えば、EMFSPOOL形式(Enhanced Metafile Spool Format)、PDF(Portable Document Format)、XPS(XML Paper Specification)などがある。本実施形態においては、EMFSPOOL形式を使って説明するが、XPSやPDFなど他の中間形式の印刷データであってもかまわない。
プリントサーバ101は、クライアントPC100等から受信した該印刷ジョブを所定の格納場所に格納する。また、プリントサーバ101は、ジョブ管理データベース(以後、ジョブ管理DBと呼ぶ)を備え、ジョブ管理DBにより印刷設定に関わるメタデータおよび印刷ジョブを記憶管理する。
また、プリントサーバ101は、ジョブ管理DBに記録管理している該印刷ジョブの描画データを加工し、メタデータと加工済のEMFSPOOL形式の印刷ジョブを利用してPDL(Page Description Language)データを生成し、生成されたPDLデータを解析する。プリントサーバ101は、メタデータと解析結果から印刷ジョブ一覧データを生成し、画像形成装置102へ転送制御する。
さらに、プリントサーバ101は、画像形成装置102から上記印刷ジョブ一覧に含まれる印刷ジョブに関する印刷設定の変更情報を受信した場合、該受信した印刷設定の変更情報に基づいて、ジョブ管理DB403(図4)に記録管理しているメタデータを更新し、再度、PDLデータを生成して解析する。そして、プリントサーバ101は、メタデータと解析結果から印刷設定情報を生成し、対象ジョブの印刷設定情報を画像形成装置102へ転送する。
また、プリントサーバ101は、画像形成装置102から上記印刷ジョブ一覧に含まれる印刷ジョブに関する印刷指示を受信すると、上記所定の格納場所に保存している印刷ジョブとメタデータを利用し、プリンタドライバで印刷処理を実行する。
ログインサービスPC103は、画像形成装置102のログインサービスとして、ディレクトリサービスサーバ104で記憶管理されているクライアントPC100のログインユーザ名、パスワード(例えば、マイクロソフト社のWindows(登録商標)のログインユーザ名、パスワード)に基づく認証処理(SSOと称する。Single Sign-ONの略)を行うものである。例えば、ログインサービスPC103は、キヤノン社のセキュリティエージェント(Security Agent)を搭載したパーソナルコンピュータである。
ディレクトリサービスサーバ104は、ネットワーク上に存在するサーバ、クライアント、プリンタ等のハードウェア資源や、それらを使用するユーザの属性(クライアントPC100のログインユーザ名、パスワード(例えば、マイクロソフト社のWindows(登録商標)のログインユーザ名、パスワード)を含む)、アクセス権等の情報を一元記憶管理するものである。例えば、ディレクトリサービスサーバ104は、アクティブディレクトリ(Active Directory)機能を搭載したサーバである。
また、本実施形態のプリントシステムは、上述した構成の「事業所A」と、1又は複数のクライアントPC100,1又は複数のプリントサーバ101,1又は複数の画像形成装置102がLAN105を介して接続される構成の1又は複数の「事業所B」とが、WAN106を介して接続される構成であってもよい。
以下、図2を用いて、図1に示したクライアントPC100、プリントサーバ101、ログインサービスPC103、ディレクトリサービスサーバ104に適用可能な情報処理装置のハードウェア構成について説明する。
図2は、図1に示したクライアントPC100、プリントサーバ101、ログインサービスPC103、ディレクトリサービスサーバ104に適用可能な情報処理装置のハードウェア構成を示すブロック図である。
図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
205は入力コントローラで、キーボード209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、モニター210への表示を制御する。一般に、モニター210は液晶ディスプレイやCRT等の表示器である。これらは必要に応じて管理者等が使用するものである。
207はメモリコントローラで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)、SSD(Solid State Drive)、SDメモリーカード等の外部メモリ211へのアクセスを制御する。
208は通信I/Fコントローラで、ネットワーク(例えば、図1に示したLAN105)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、通信I/Fコントローラ208は、TCP/IPを用いた通信等が可能である。
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、モニター210上での表示を可能としている。また、CPU201は、モニター210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。
以下、図3を用いて、図1に示した画像形成装置102を制御するコントローラユニットのハードウェア構成について説明する。
図3は、図1に示した画像形成装置102のコントローラユニットのハードウェア構成の一例を示すブロック図である。
図3において、316はコントローラユニットで、画像入力装置として機能するスキャナ部314や、画像出力装置として機能するプリンタ部312と接続する一方、LAN(例えば、図1に示したLAN105)や公衆回線(WAN)(例えば、PSTNまたはISDN等)と接続することで、画像データやデバイス情報の入出力を行う。
コントローラユニット316において、301はCPUで、システム全体を制御するプロセッサである。302はRAMで、CPU301が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
303はROMで、システムのブートプログラムや各種制御プログラムが格納されている。304はハードディスクドライブ(HDD)で、システムを制御するための各種プログラム,画像データ等を格納する。なお、コントローラユニット316は、HDD304の代わりにSSD等のその他の記憶装置を備える構成であってもよい。
307は操作部インタフェース(操作部I/F)で、操作部(UI)308とのインタフェース部であり、操作部308に表示する画像データを操作部308に対して出力する。また、操作部I/F307は、操作部308から本システム使用者が入力した情報(例えば、ユーザ情報等)をCPU301に伝える役割をする。なお、操作部308は、タッチパネルを有する表示部を備え、該表示部に表示されたボタンを、ユーザが押下(指等でタッチ)することにより、各種指示を行うことができる。
305はネットワークインタフェース(Network I/F)で、ネットワーク(LAN)に接続し、データの入出力を行う。306はモデム(MODEM)で、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。
318は外部インタフェース(外部I/F)で、USB、IEEE1394,プリンタポート,RS−232C等の外部入力を受け付けるI/F部である。外部I/F318は、本実施形態においては認証で必要となるICカードの読み取り用のカードリーダ319が外部I/F部318に接続されている。CPU301は、この外部I/F318を介してカードリーダ319によるICカードからの情報読み取りを制御し、該ICカードから読み取られた情報を取得可能である。以上のデバイスがシステムバス309上に配置される。
320はイメージバスインタフェース(IMAGE BUS I/F)であり、システムバス309と画像データを高速で転送する画像バス315とを接続し、データ構造を変換するバスブリッジである。
画像バス315は、PCIバスまたはIEEE1394で構成される。画像バス315上には以下のデバイスが配置される。
310はラスターイメージプロセッサ(RIP)で、例えば、PDLコード等のベクトルデータをビットマップイメージに展開する。311はプリンタインタフェース(プリンタI/F)で、プリンタ部312とコントローラユニット316を接続し、画像データの同期系/非同期系の変換を行う。313はスキャナインタフェース(スキャナI/F)で、スキャナ部314とコントローラユニット316を接続し、画像データの同期系/非同期系の変換を行う。
317は画像処理部で、入力画像データに対し補正、加工、編集を行い、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。また、これに加えて、画像処理部317は、画像データの回転や、多値画像データに対してはJPEG、2値画像データはJBIG、MMR、MH等の圧縮伸張処理を行う。
スキャナ部314は、原稿となる紙上の画像を照明し、CCDラインセンサーで走査することで、ラスターイメージデータとして電気信号に変換する。原稿用紙をスキャナ部314の原稿フィーダのトレイにセットし、装置使用者が操作部308から読み取り起動指示することにより、CPU301がスキャナ部314に指示を与える。この指示により、スキャナ部314はフィーダにより原稿用紙を1枚ずつフィードし原稿画像の読み取り動作を行う。
プリンタ部312は、ラスターイメージデータを用紙上の画像に変換する部分である。プリント方式は、感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、プリンタ部312はどの方式を用いるものでも構わない。プリンタ部312のプリント動作の起動は、CPU301からの指示によって開始する。なお、プリンタ部312には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
操作部308は、LCD表示部を有し、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報を操作部I/F307を介してCPU301に伝える。
また、操作部308は、各種操作キーとして、例えば、スタートキー、ストップキー、IDキー、リセットキー等を備える。ここで、操作部308のスタートキーは、原稿画像の読み取り動作を開始する時などに用いる。スタートキーの中央部には、緑と赤の2色LEDがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部308のストップキーは、稼働中の動作を止める働きをする。また、操作部308のIDキーは、使用者のユーザIDを入力する時に用いる。リセットキーは、操作部からの設定を初期化する時に用いる。
カードリーダ319は、CPU301からの制御により、ICカード(例えば、ソニー社のフェリカ(FeliCa)(登録商標))内に記憶されている情報を読み取り、該読み取った情報を外部I/F318を介してCPU301へ通知する。
以上のような構成によって、画像形成装置102は、スキャナ部314から読み込んだ画像データをLAN105上に送信したり、LAN105から受信した印刷データをプリンタ部312により印刷出力することができる。また、スキャナ部314から読み込んだ画像データをモデム306により、公衆回線上にFAX送信したり、公衆回線からFAX受信した画像データをプリンタ部312により出力することできる。
以下、図4を用いて、本実施形態のプリントシステムにおける詳細情報表示のための全体の流れについて説明する。
その前に、まず、本実施形態のプルプリントを実行するための前提について説明する。
本実施形態のプルプリントを実現するための仮想プリンタドライバをプリントサーバ101に共有プリンタとしてインストールしておく。プリンタドライバは、アプリケーションから指示された印字や描画命令の出力に基づいて印刷データを生成するだけでなく、プリンタドライバやプリンタが持つ機能を制御するための印刷設定を行う機能(ユーザインタフェース)と、その印刷設定をインストールされた論理プリンタ毎に外部メモリに記憶する機能等を有する。また、この印刷設定は、米国Microsoft社のWindows(登録商標)の場合、DEVMODE構造体(以降、DEVMODEと呼ぶ)に格納される。このDEVMODEとは、プリンタが使用可能な機能,レイアウト設定,仕上げ設定,給・排紙設定,印字品質設定等の論理プリンタに関するデフォルトの動作条件を含む各種設定を記憶するために、米国Microsoft社が規定したものであり、インストールされた論理プリンタ毎に外部メモリに記憶される。各クライアントPC100へは、仮想プリンタドライバを前記プリントサーバ101からポイント&プリント等でダウンロードしてインストールして、該仮想プリンタドライバの論理プリンタを追加しておく。
以下、本実施形態のプルプリントの全体の流れについて説明する。
図4は、本実施形態のプリントシステムの全体の流れを説明する模式図である。
図4に示すように、まずユーザは、クライアントPC100にログインし、該クライアントPC100で実行されるクライアント・アプリケーション400から仮想プリンタドライバ401に対応する論理プリンタへの印刷指示を行う(1−1)。この印刷指示に応じて、クライアントPC100のクライアント・アプリケーション400は、グラフィックエンジンを介して、仮想プリンタドライバ401にデータを送信する。
クライアントPC100の仮想プリンタドライバ401は、該クライアント・アプリケーションからグラフィックエンジンを介して受け取ったデータに基づいて画像形成装置に依存しないEMFSPOOL形式印刷ジョブを生成する。さらに、仮想プリンタドライバ401の印刷設定(DEVMODE等)やクライアントPCのユーザ情報等を含むメタデータを作成する。そして、クライアントPC100は、生成したEMFSPOOL形式の印刷ジョブと印刷設定情報を含むメタデータをプリントサーバ101に送信する(1−2)。
プリントサーバ101のジョブ管理サービス402は、クライアントPC100からEMFSPOOL形式の印刷ジョブとメタデータを受信する。そして、プリントサーバ101のジョブ管理サービス402は、プリントサーバ101上の所定の格納場所にEMFSPOOL形式の印刷ジョブを保存し、さらにメタデータおよびEMFSPOOL形式印刷ジョブのファイル名をジョブ管理DB403(プリントサーバ101の外部メモリ上に構築される)に登録する(1−3)。このとき、プリントサーバ101は、上記所定の格納場所に印刷ジョブを保存するだけで、印刷ジョブの画像形成装置への送信は行わない。
画像形成装置102は、カードリーダ319により読み取り可能なICカードを検知すると、該ICカード内の個人認証情報を読み取り、該読み取った個人認証情報を認証要求として不出図の認証サーバに送信する。個人認証情報は、認証に用いられる情報であり該ICカードの製造番号でも良い。認証サーバは、画像形成装置102より個人認証情報を受信すると、該個人認証情報の認証処理を認証サーバの外部メモリ上に記憶されるICカード認証用テーブルに基づいて行い、認証結果を画像形成装置102に返信する。なお、認証処理に成功した場合には、認証結果として、クライアントPC100のユーザ識別子を送信するものとする。
画像形成装置102上のパネル・アプリケーション404は、認証に成功した旨の認証結果(クライアントPC100のログインユーザ識別子)を受信する。本実施形態では、ユーザ識別子としてユーザ名を使用する。もちろん、ユーザを識別する手段としてICカードの製造番号などでもかまわない。そして、パネル・アプリケーション404は、プリントサーバ101上のジョブ管理サービス402へ対し印刷ジョブ一覧を要求すると同時に画像形成装置102のモデル名・ユーザ名を送信する(2−1)。
ジョブ管理サービス402は、パネル・アプリケーション404から送信されたモデル名を使用して、そのモデルに適したプリンタドライバ406をインストールする(2−2)。また、ジョブ管理サービス402は、パネル・アプリケーション404から送信されたユーザ識別子を用いて、ジョブ管理DB403から対象とされるメタデータおよびEMFSPOOL形式印刷ジョブを参照し(2−3)、EMFSPOOL形式印刷ジョブの描画データを加工する(2―4)。描画データの加工とは、EMFSPOOL形式の印刷ジョブのGDIコマンドを論理ページごとに削除し、任意のGDIコマンドを追加する処理のことを言う。描画データの加工については後述する。
さらに、ジョブ管理サービス402は、加工したEMFSPOOL形式印刷ジョブと参照したメタデータをプリンタドライバ406に送信し、ローカルポート印刷を行う(2−5)。ここでローカルポート印刷とは、プリンタドライバが作成したPDLデータをファイル形式で装置内部の記憶領域に保存(出力)することをいう。さらに、ジョブ管理サービス402は、保存されたPDLデータ(ローカルポート印刷の出力データ)を取得して(2−6)解析し、該ユーザ識別子に対応する印刷ジョブ一覧を生成し始める(2−7)。
ジョブ管理サービス402は、該ユーザ識別子に対応する印刷ジョブをジョブ管理DB403のレコードを全て参照するまで2−3〜2−7の処理を繰り返して印刷ジョブ一覧を生成する。そして、ジョブ管理サービス402は、印刷ジョブ一覧の生成が完了次第、パネル・アプリケーション404へ印刷ジョブ一覧を返信する(2−8)。
パネル・アプリケーション404は、ジョブ管理サービス402から印刷ジョブ一覧を受信すると、該印刷データ一覧を操作部308のUI上に表示する。そして、ユーザにより印刷ジョブが選択され、印刷設定変更がなされると、パネル・アプリケーション404は、印刷設定変更情報をジョブ管理サービス402に送信する(3−1)。
ジョブ管理サービス402は、パネル・アプリケーション404から印刷設定変更情報を受信すると、ジョブ管理DB403から対象とされるメタデータおよびEMFSPOOL形式印刷ジョブを参照し(3−2)、前記印刷設定変更情報をもとにメタデータを更新する。
さらに、ジョブ管理サービス402は、EMFSPOOL形式印刷ジョブの描画データを加工する(3―3)。
そして、ジョブ管理サービス402は、加工したEMFSPOOL形式印刷ジョブと更新したメタデータをプリンタドライバ406に送信し、ローカルポート印刷を行って、PDLデータをファイル形式で装置内部の記憶領域に保存(出力)させる(3−4)。そして、ジョブ管理サービス402は、保存されたPDLデータ(ローカルポート印刷の出力データ)を取得して(3−5)、解析し(3−6)、該印刷ジョブの印刷設定変更結果に反映してパネル・アプリケーション404に送信する(3−7)。
そして、パネル・アプリケーション404は、ジョブ管理サービス402から印刷設定変更結果を受信すると、該印刷データ一覧を操作部308のUI上に表示する。
そして、パネル・アプリケーション404において、ユーザにより印刷ジョブが選択され印刷指示がなされると、ジョブ管理サービス402は、出力指示を受信し(4−1)、対象ジョブをジョブ管理DBから参照する(4−2)。
さらに、ジョブ管理サービス402は、ジョブ管理DB403のメタデータ及びEMFSPOOL形式印刷ジョブを、出力ポートが画像形成装置102のアドレスに設定された論理プリンタで印刷し(4−3)、画像形成装置102で出力させる(4−4)。
以上、プリントシステム全体の流れを説明した。以降、フローチャートを使って詳細に説明する。なお、図4に示したクライアント・アプリケーション400、及び仮想プリンタドライバ401は、クライアントPC100のCPUが外部メモリにコンピュータ読み取り可能に記録されたプログラムを実行することにより実現される。また、ジョブ管理サービス402、及びプリンタドライバ406は、プリントサーバ101のCPUが外部メモリにコンピュータ読み取り可能に記録されたプログラムを実行することにより実現される。また、画像形成装置102上のパネル・アプリケーション404は、画像形成装置102のCPU301がHDD304にコンピュータ読み取り可能に記録されたプログラムを実行することにより実現される。
以下、図5を参照して、図1に示したクライアントPC100上で動作するクライアント・アプリケーション400上での印刷指示について説明する。
図5は、図1に示したクライアントPC100上で動作するクライアント・アプリケーション400の印刷画面の一例を示す模式図であり、クライアントPC100のCPUの制御によりクライアントPC100のモニターに表示される。
図5において、510は論理プリンタ選択部で、クライアントPC100に設定されている論理プリンタから、印刷を行う論理プリンタを選択するためのものである。このプリンタ選択部510において、「プルプリント」501は、本実施形態のプルプリント設定された仮想プリンタドライバ(図4の401)に対応する論理プリンタとする。さらに、「Cxxxx ix3250」502,「Cxxxx ix5051」503は、通常のプリンタドライバに対応する論理プリンタとする。
プリンタ選択部510で、いずれかの論理プリンタが選択され、OKボタン505がポインティングデバイス等で指示されると、クライアント・アプリケーション400は、印刷のためのデータを、プリンタ選択部510で選択された論理プリンタに対応するプリンタドライバにグラフィックエンジンを介して送信する。
以下、図6を参照して、プリンタ選択部510で「プルプリント」501が選択されて印刷指示がなされた場合のプリンタドライバの動作について説明する。
図6は、本発明のプリントシステムにおける第1の制御処理手順の一例を示すフローチャートであり、図4に示した1−1〜1−3の処理手順に対応する。なお、ステップSA600〜SA602は、図4に示した仮想プリンタドライバ401による印刷ジョブ投入処理に対応する。即ち、これらの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。また、ステップSB600〜SB606は、図4に示したジョブ管理サービス402によるEMFSPOOL形式の印刷ジョブおよびメタデータ登録処理、EMFSPOOL形式の印刷ジョブ保存処理に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、仮想プリンタドライバ401による印刷ジョブ投入処理を説明する。
ステップSA600において、仮想プリンタドライバ401の処理が開始する。ステップSA601において、仮想プリンタドライバ401は、クライアント・アプリケーション400から仮想プリンタドライバ401に入力されたデータを、EMFSPOOL形式印刷ジョブとして出力する。この処理は図4の1−1に相当する。米国Microsoft社のWindows(登録商標)の場合、プリンタドライバへの入力はDDI(Device Driver Interface)と呼ばれるOS(Operating System)による関数呼び出しによって実施される。仮想プリンタドライバ401は、DDIの呼び出しと同時に渡されるパラメーターを解釈して、EMFSPOOL形式印刷ジョブを生成し、OSが管理するスプーラへ生成したジョブを出力する。一般に、プリンタドライバの役割は、出力対象の画像形成装置に依存した印刷ジョブを生成し出力することであるが、本実施形態においては、画像形成装置102に依存しない中間形式の印刷ジョブを生成し、出力することが重要である。これによって、画像形成装置102の構成が変更されたとしても、本発明のプリントシステムにおいて仮想プリンタドライバ401の構成に変更は生じない。つまり、画像形成装置固有の機能をプルプリントシステムで使用することが容易に実現できる。さらに、仮想プリンタドライバ401は、印刷設定情報を含むメタデータを送信している。本実施形態では、メタデータをEMFSPOOL形式の印刷ジョブに付加してジョブ管理サービス402に送信しているが、これらを別のデータとして、分けて送信しても構わない。
ここで、メタデータについて詳しく説明する。
メタデータは、印刷設定情報を持つデータ群となっている。具体的に言うと、メタデータは、DEVMODEや集約情報、論理ページ数、物理ページ数、印刷データのカラー判定結果、クライアントPC101のユーザ名・ドメイン名・コンピュータ名等の情報を保持している。そのため、ジョブ管理サービス402は、メタデータの情報を受信することで、クライアントの情報を知ることができる。ただし、上記のメタデータを全て導出するためには、各PDL・各モデルにおいて用紙やページの考え方が異なっているため、各プリンタドライバの内部実装の導出方法をジョブ管理サービス402もしくはパネル・アプリケーション404に実装しなければならない。これは、実装には負荷が大きく現実的ではない。そのため、本発明ではこの問題を解決するために、仮想プリンタドライバ401とプリンタドライバ406を通じて得た解析データを使用して、メタデータを更新する手法を提案している。最後に、仮想プリンタドライバ401は、ステップSA602で処理を終了する。
次に、ジョブ管理サービス402によるメタデータ登録処理及び印刷ジョブ保存処理を説明する。
ステップSB600において、ジョブ管理サービス402は、プリントサーバ101上で処理を開始する。ステップSB601において、ジョブ管理サービス402は、印刷ジョブを保存するファイルパスを決定する。本実施形態では、ジョブ管理サービス402は、GUID(Global Unique Identifier)を生成し、該GUIDを、受信する印刷ジョブのジョブ識別子として使用する。このジョブ識別子としてのGUID(Global Unique Identifier)を、受信する印刷ジョブを保存するファイルパスの決定に利用してもよい。
次に、ステップSB602において、ジョブ管理サービス402は、仮想プリンタドライバ401から送信されたメタデータおよびEMFSPOOL形式の印刷ジョブを受信する。
ステップSB603において、ジョブ管理サービス402は、受信したEMFSPOOL形式の印刷ジョブをステップSB601で決定したファイル名で保存する。
ステップSB604において、ジョブ管理サービス402は、現在の日付・時刻を生成する。これをもって印刷ジョブ投入時刻とする。
ステップSB605において、ジョブ管理サービス402は、上記SB601で決定したファイル名とメタデータとステップSB604で生成した日付・時刻を、新規レコードとして図4のジョブ管理DB403に登録する。
最後に、ジョブ管理サービス402は、ステップSB606で処理を終了する。
図7は、本発明のプリントシステムにおける第2の制御処理手順の一例を示すフローチャートであり、図4に示した2−1〜2−8の処理手順に対応する。なお、ステップSC700〜SC710は、図4に示したパネル・アプリケーション404による印刷ジョブ一覧表示処理に対応する。即ち、これらの処理は、図1に示した画像形成装置102のCPU301がROM303又はHDD304に格納されたプログラムをRAM302上にロードして実行することにより実現される。また、ステップSB700〜SB713は、図4に示したジョブ管理サービス402によるジョブ加工・解析および印刷ジョブ一覧生成に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション404による印刷ジョブ一覧表示処理を説明する。
ステップSC700において、パネル・アプリケーション404の処理が開始する。ステップSC701において、パネル・アプリケーション404は、ログイン表示画面(図13(a))を操作部308の表示部に表示するように制御する。
図13(a)は、画像形成装置102の操作部308に表示されるログイン表示画面の一例を示す図である。
そして、ステップSC702において、パネル・アプリケーション404は、ICカード等によるユーザ認証を行う。本実施形態において、ユーザ認証は重要なプロセスではないので、ここでは、認証カードの検出方法やICカードの識別ID取得方法や認証サーバによる認証処理といった詳細説明を省略する。
ステップSC703において、パネル・アプリケーション404は、認証結果を判定する。そして、認証エラーである旨の認証結果が得られた場合(SC703でNo)、パネル・アプリケーション404は、ステップSC704において、エラー表示画面(図13(b))を操作部308の表示部に表示するように制御する。
図13(b)は、画像形成装置102の操作部308に表示されるエラー表示画面の一例を示す図である。
該エラー表示画面にてOKボタンの押下を受け付けると、パネル・アプリケーション404は、ステップSC701に処理を戻し、再度、ログイン表示画面を表示制御する。
一方、ステップSC703にて認証が成功したと判定した場合(SC703でYes)、パネル・アプリケーション404は、ステップSC705へ処理を進める。
ステップSC705では、パネル・アプリケーション404は、認証に成功したユーザ名を取得する。
ステップSC706において、パネル・アプリケーション404は、ユーザ名と対応するサーバのIPアドレスを取得する。本実施形態において、ユーザ毎のプリントサーバのアドレス解決方法は重要なプロセスではないため、ここでは各ユーザで使用するプリントサーバは一意に決まっているものとし、詳細な説明を省略する。実現方法としては、ユーザ認証後にユーザ名と対象プリントサーバアドレスの対応が登録されているDB等を参照してアドレス解決を行う方法がある。また、画像形成装置内のHDD304にユーザ名と対象プリントサーバのアドレスの対応表などが保存され、ユーザ認証後に対応表からユーザが使用しているプリントサーバのアドレスを取得する方法でも構わない。
次に、ステップSC707において、パネル・アプリケーション404は、ジョブ管理サービス402に印刷ジョブ一覧要求コマンドを送信する。このときユーザ名および画像形成装置102のモデル名も送信する。
そして、ステップSC708において、パネル・アプリケーション404は、ジョブ管理サービス402から印刷ジョブ一覧を受信する。この印刷ジョブ一覧は、印刷ジョブ毎に、GUID、ジョブ名、部数、両面、カラーモード、ページ集約、日付・時刻、ページ数、カラーページ数、モノクロページ数などの項目の情報を含む。本実施形態では、これらの印刷ジョブ一覧データは、XML形式のような拡張が容易なデータ形式を使用する。さらに、印刷ジョブ一覧に使用する項目を上記しているが、必要に応じて増減しても構わない。
次に、ステップSC709に進み、パネル・アプリケーション404は、印刷ジョブ一覧表示画面(図14(a))を操作部308の表示部に表示するように制御する。
図14(a)は、画像形成装置102の操作部308に表示される印刷ジョブ一覧表示画面の一例を示す図である。
図14(a)の印刷ジョブ一覧表示画面を表示すると、パネル・アプリケーション404は、ステップSC710で処理を終了する。
次にジョブ管理サービス402によるジョブ加工・解析および印刷ジョブ一覧生成を説明する。
ステップSB700において、ジョブ管理サービス402の処理が開始する。ステップSB701において、ジョブ管理サービス402は、パネル・アプリケーション404から印刷ジョブ一覧要求を受信する。このときユーザ名および画像形成装置102のモデル名も受信する。上記印刷ジョブ一覧要求等は、上記SC707で送信されたものである。
ステップSB702において、ジョブ管理サービス402は、上記SB701で受信した画像形成装置102のモデル名に適応したプリンタドライバをインストールする。本処理に関しては後述する図8にて詳細に説明する。
次に、ステップSB703において、ジョブ管理サービス402は、図4のジョブ管理DB403から上記SB701で得たユーザ名と一致するレコードを探索する。
そして、ステップSB704において、ジョブ管理サービス402は、上記SB703で探索したレコードから1つのレコードを取り出す処理を行う。
次に、ステップSB705において、ジョブ管理サービス402は、上記SB704にてレコードを取り出せたかどうかを判定する。そして、取り出せたと判定した場合(SB705でYes)、ジョブ管理サービス402は、ステップSB706へ処理を進める。
ステップSB706では、ジョブ管理サービス402は、上記SB704で取り出したレコード(現在のレコード)の情報を利用してEMFSPOOL形式印刷ジョブを取得する。
ステップSB707において、ジョブ管理サービス402は、EMFSPOOL形式の印刷ジョブを加工する。本処理については後述する図9にて詳細に説明する。
次に、ステップSB708において、ジョブ管理サービス402は、現在のレコードからメタデータのDEVMODEを取得する。
次に、ステップSB709において、ジョブ管理サービス402は、上記SB707で加工した加工済み印刷ジョブおよび上記SB708で取得したDEVMODEを使用し、プリンタドライバ406を用いてローカルポート印刷を行う。この際、プリンタドライバ406は、上記SB702で作成した出力ポートがローカルポートに設定された論理プリンタを使用する。即ち、SB709では、ジョブ管理サービス402は、プリンタドライバ406を用いて、加工済み印刷ジョブと印刷設定情報から、画像形成装置102で実際に印刷される際の体裁をプリントサーバ101上で認識するためのPDLデータを生成し、プリントサーバ101のローカルの記憶領域に出力する。
次に、ステップSB710において、ジョブ管理サービス402は、上記SB709のローカルポート印刷によりファイルとして保存されたPDLデータを解析し、PDLデータから体裁情報(画像形成装置102で実際に印刷される際の体裁を示す情報)等を取得してメタデータを更新する。なお、更新されたメタデータは、後述する印刷ジョブ一覧の生成に用いるためにRAM内に記憶しておく。
次に、ステップSB711において、ジョブ管理サービス402は、上記SB707で作成されたPDLデータを削除し、上記SB704に処理を戻し、次のレコードの取り出し処理を行う。
そして、ステップSB705において、ジョブ管理サービス402は、レコードが取り出せなかったと判定した場合(SB705でNo)、全レコードを取り出し終えたと判断し、ステップSB712へ処理を進める。
ステップSB712では、ジョブ管理サービス402は、上記SB704〜SB711で更新されたメタデータ等を用いて印刷ジョブ一覧(図14(a))を生成し、パネル・アプリケーション404へ印刷ジョブ一覧を返信する。この印刷ジョブ一覧は、各印刷ジョブの体裁情報を含むものであり、ステップSC708において画像形成装置102のパネル・アプリケーションにより受信される。そして、ジョブ管理サービス402は、ステップSB713で処理を終了する。
図8は、図7のステップSB702で呼び出される論理プリンタ作成処理のフローチャートである。なお、ステップSB800〜SB808は、図4に示したジョブ管理サービス402による論理プリンタ作成処理に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
ステップSB800において、ジョブ管理サービス402による論理プリンタ作成処理を開始する。ステップSB801において、ジョブ管理サービス402は、画像形成装置102(図7のSB701でユーザ名・モデル名を受信した画像形成装置)のIPアドレスを取得する。この画像形成装置102のIPアドレスは、ジョブ管理サービス402とパネル・アプリケーション404とのデータ送受信のコネクションが確立した際に、ジョブ管理サービス402が入手してRAM内に格納しておくものとする。
ステップSB802において、ジョブ管理サービス402は、上記画像形成装置102のモデル名(例えば図7のSB701で受信)をサポートしたプリンタドライバがプリントサーバ101上にインストールされているかどうか判定する。そして、インストールされていないと判定した場合(SB802でNo)、ジョブ管理サービス402は、ステップSB803へ処理を進める。
ステップSB803では、ジョブ管理サービス402は、図1の画像形成装置102のモデル名をサポートしたプリンタドライバをプリントサーバ101上にインストールする。そして、ステップSB804へ処理を進める。
一方、ステップSB802でインストール済みと判定した場合(SB802でYes)、ジョブ管理サービス402は、そのままステップSB804へ処理を進める。なお、この段階でインストール済みとなったプリンタドライバは、図4のプリンタドライバ406に相当する。
ステップSB804では、ジョブ管理サービス402は、ローカルポート印刷用の論理プリンタがプリントサーバ101上に存在するかどうか判定する。なお、ローカルポート印刷用の論理プリンタとは、上記インストール済みのプリンタドライバから構成され、かつ、出力ポートが規定ファイルパスとなるように設定された論理プリンタを示す。
そして、ローカルポート印刷用の論理プリンタが存在しないと判定した場合(SB804でNo)、ジョブ管理サービス402は、ステップSB805へ処理を進める。
ステップSB805では、ジョブ管理サービス402は、上記インストール済みのプリンタドライバを使って、出力ポートを規定ファイルパスに設定した論理プリンタを作成する。ここで、出力ポートのファイル名は、例えば独自のローカルポートモニター等を作成し、このローカルポートモニターによりユーザごとのフォルダに保持しているジョブを順番に保存していくことも可能である。このような設定にしておくと、ジョブごとに論理プリンタを作成することはなくユーザごとに論理プリンタを作成することになる。もちろん、GUIDのようなジョブ識別子を利用してファイル名を決めてもよいし、任意のファイル名としてもよい。
上記SB805の処理を完了すると、ジョブ管理サービス402は、ステップSB806へ処理を進める。
一方、ローカルポート印刷用の論理プリンタが存在すると判定した場合(SB804でYes)、ジョブ管理サービス402は、そのままステップSB806へ処理を進める。
ステップSB806では、ジョブ管理サービス402は、画像形成装置印刷用の論理プリンタがプリントサーバ101上に存在するかどうか判定する。なお、画像形成装置印刷用の論理プリンタとは、上記インストール済みのプリンタドライバから構成され、かつ、上記SB801で得たIPアドレスが出力ポートに設定された論理プリンタを示す。
そして、画像形成装置印刷用の論理プリンタが存在しないと判定した場合(SB806でNo)、ジョブ管理サービス402は、ステップSB807へ処理を進める。
ステップSB807では、ジョブ管理サービス402は、上記インストール済みのプリンタドライバを使って、上記SB801で得たIPアドレスを出力ポートに設定した論理プリンタを作成する。そして、ステップSB808へ進め、処理を終了する。
一方、画像形成装置印刷用の論理プリンタが存在すると判定した場合(SB806でYes)、ジョブ管理サービス402は、そのままステップSB808へ進め、処理を終了する。
図9は、図7のステップSB707で呼び出されるEMFSPOOL形式印刷ジョブの加工処理のフローチャートである。なお、ステップSB900〜SB907は、図4に示したジョブ管理サービス402によるEMFSPOOL形式印刷ジョブの加工処理に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
図7のステップSB709において、印刷指示されたオリジナル文書をそのままローカルポート印刷すると、印刷データの容量に応じてパフォーマンスが著しく落ちてしまう。さらに、ローカルポート印刷を頻繁に行うため、本処理のパフォーマンスの劣化はシステム全体に影響を及ぼしてしまう。そのため本処理で、EMFSPOOL形式の印刷ジョブを加工し、ローカルポート印刷のパフォーマンスを向上させる。本処理で必要な情報は、印刷後の印刷設定情報のため、描画データはオリジナルの文書である必要がない。ただし、最終的に印刷に使用されるデータではオリジナル文書が必要となるため、本実施形態では印刷設定情報を取得するためだけにローカルポート印刷を行うこととする。
EMFSPOOL形式データは、一連のGDIコマンド(例えば、マイクロソフト社のWindows(登録商標)のグラフィックAPI)として記録されたもので、プリンタドライバ406は、このGDIコマンドをPDLコマンドに変換することになる。そのため、EMFSPOOL形式データの段階では、レンダリングを行っていないため、GDIコマンドの追加・削除が非常に容易に可能である。本実施形態では、1ページ間の描画命令コマンドを全て削除し、オリジナル文書のページのカラー情報を用いて1ドット追加するGDIコマンドを挿入する。このような加工済みEMFSPOOL形式印刷ジョブとメタデータを利用してプリンタドライバ406で印刷を行うと、最小限の描画がされたPDLデータが生成され、このPDLデータを解析することによって、最終出力物の印刷設定情報を取得することが可能となる。
以下、図9を用いて、EMFSPOOL形式の加工処理について説明する。
ステップSB900において、ジョブ管理サービスの加工処理を開始する。ステップSB901において、ジョブ管理サービス402は、全てのページの加工が終了したかを判定する。そして、まだ全てのページの加工が終わっていないと判定した場合(SB901でNo)、ジョブ管理サービス402は、ステップSB902に処理を進める。SB902〜SB906の処理は全てページ単位で行われる。
ステップSB902において、ジョブ管理サービス402は、現在のページからカラー情報を取得する。EMFSPOOL形式データでは前述したとおり、描画コマンドをそのまま保持しているため、カラー情報を取得することも容易となっている。
ステップSB903において、ジョブ管理サービス402は、描画データをページ単位で削除する。即ち、現在のページ内の描画データを全て削除する。
次に、ステップSB904において、ジョブ管理サービス402は、上記SB902で取得したカラー情報から現在のページがモノクロページであったかカラーページであったかを判定する。この判定処理では、ジョブ管理サービス402は、ページ内にカラー(黒色以外の色)で描画を行うコマンドが含まれている場合には、そのページをカラーベージと判定し、一方、カラー(黒色以外の色)で描画を行うコマンドが含まれていない場合には、そのページをモノクロページと判定する。
現在のページがカラーページであると判定した場合(SB904でYes)、ジョブ管理サービス402は、ステップSB905に処理を進め、黒色以外の任意の色(カラー)で1ドットの描画を行う描画コマンドを現在のページに追加する。
一方、現在のページがモノクロページである(カラーページでない)と判定した場合(SB904でNo)、ジョブ管理サービス402は、ステップSB906に処理を進め、黒色で1ドットの描画を行う描画コマンドを現在のページに追加する。
そして、ジョブ管理サービス402は、上記SB905又はSB906の処理を完了すると、SB901に処理を戻し、次のページの処理を行う。
そして、全てのページの加工が終わったと判定した場合(SB901でYes)、ジョブ管理サービス402は、ステップSB907へ進め、加工処理を終了する。
ここで、図10に示す具体例を用いて説明する。
図10は、本発明のプリントシステムにおける中間形式印刷ジョブの加工処理の一例を示す図である。
例えば図10の1001のようなオリジナル文書(モノクロ3ページ、カラー1ページ)を加工する場合について説明する。まず、オリジナル文書を図10の1010のような印刷設定にし、仮想プリンタドライバ401で印刷すると、ページ数4のEMFSPOOL形式印刷ジョブが生成される。
ここで、本実施例の加工処理を行うと、図10の1002のような、それぞれのページから得たカラー情報が1ドット追加されたEMFSPOOL形式印刷ジョブが生成される。この加工済みEMFSPOOL形式印刷ジョブを、図10の1010に示す印刷設定1010aでローカルポート印刷すると、図10の1003のようなPDLデータが作成される。このPDLデータを解析すると、図10の1011に示す印刷設定1011aのように、集約情報2in1の設定が適用されていることが分かり、ページ数が2ページとなっていることが分かる。さらに、PDLデータの各ページのカラー情報を鑑みると、カラーページ数が1ページ、モノクロページ数が1ページといった、印刷するまでは知りえなかったカラー/モノクロのページ数を容易に取得することが可能となる。例えば、ジョブ管理サービス402は、ページ内にカラー(黒色以外の色)で描画を行うコマンドが含まれている場合には、そのページをカラーベージと判定し、一方、カラー(黒色以外の色)で描画を行うコマンドが含まれていない場合には、そのページをモノクロページと判定し、PDLデータのカラーページ数、モノクロページ数をカウントする。ジョブ管理サービス402は、これらの処理を、図7のSB710で行う。なお、ジョブ管理サービス402は、両面/片面の情報、及びPDLデータから解析した情報等から、画像形成装置102で実際に出力した際の用紙枚数を算出するようにしてもよい。
本実施形態では追加するコマンドを1ドットとしたが、これはパフォーマンスを向上するための最低限の印字となっており、異なる描画コマンドでもよいし、オリジナル文書から抽出したコマンドでも構わない。さらに、追加する描画コマンドの位置も自由に設定することが可能である。本実施形態では、左上基準に描画を行うPDLの場合を想定したが、左上に描画コマンドを追加しても印字領域外と判断され、解析できない場合もある。そこで、描画コマンドを用紙の中心に設定し、すべてのPDLやモデルで解析可能な形式に加工してもよい。このように、EMFSPOOL形式の加工を行うことで、柔軟に対応が可能である。
以上示したように、ジョブ管理サービス402は、EMFSPOOL形式の各ページのデータを各ページのカラー情報に対応する疑似データ(1ドットの描画コマンド)に置換した上で、ローカル印刷を行ってPDLデータを生成する。これにより、プリントサーバが処理するデータ量を軽減して、プリントサーバのパフォーマンスの低下を軽減することができる。
図11は、本発明のプリントシステムにおける第3の制御処理手順の一例を示すフローチャートであり、図4に示した3−1〜3−7の処理手順に対応する。ステップSC1100〜SC1111は、図4に示したパネル・アプリケーション404の処理に対応する。即ち、これらの処理は、図1に示した画像形成装置102のCPU301がROM303又はHDD304に格納されたプログラムをRAM302上にロードして実行することにより実現される。ステップSB1100〜SB1110は、図4に示したジョブ管理サービス402処理に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション404による印刷設定変更について説明する。
パネル・アプリケーション404は、図7のステップSC709で画像形成装置102の操作部308の表示部に表示された印刷ジョブ一覧表示画面(図14(a))上で、印刷ジョブの選択と印刷設定変更ボタン1330の押下を検知すると、ステップSC1100において、処理を開始する。
ステップSC1101において、パネル・アプリケーション404は、選択された印刷ジョブの印刷設定を表示する印刷設定変更画面(図14(b))を操作部308の表示部に表示するように制御する。
次に、ステップSC1102において、印刷設定変更画面(図14(b))からパネル・アプリケーション404は、印刷設定変更入力を受け付ける。
図14(b)は、画像形成装置102の操作部308に表示される印刷設定変更画面の一例を示す図である。
図14(b)において、1340は、カラーモードの指定を意味し、モノクロとカラーのどちらかをチェックできる。1341は、両面・片面の指定を意味し、片面、両面(長辺綴じ)、両面(短辺綴じ)のうち1つを選択できる。1342は、ページ集約の指定を意味し、1in1、2in1、4in1、6in1、8in1、9in1、16in1のうち1つを選択できる。1343は、印刷部数の指定を意味し、1から9999までの値を指定できる。
1344は、出力される印刷物の総ページ数を意味し、変更することはできないがユーザは印刷設定変更すると、ページ数がどのように変遷するかを見ることができる。さらに、1345はカラーページ数、1346はモノクロページ数をそれぞれ意味し、印刷設定を反映した後のカラーページ数、モノクロページ数を表示している。
1347は、印刷後に文書を削除する指定を意味し、このチェックボックスにチェックがついていた場合は、印刷後に削除するコマンドが印刷ジョブと同時にジョブ管理サービス402に送信される。
1348は、1304〜1343で印刷設定を変更した場合に設定変更確認を行うためのボタンであり、このボタンが押下されると、印刷設定情報がジョブ管理サービス402に送信される。1349は、印刷を行うためのボタンである。
なお、図14(b)は、図14(a)において文書名「決算報告書」の印刷ジョブの選択を受け付けて、印刷設定変更ボタン1330の押下を受け付けた場合の印刷設定変更例を示している。
なお、図14(b)の印刷設定変更画面上に、そのジョブを画像形成装置102で実際に出力した際の用紙枚数を表示するようにしてもよい。また、図14(b)の印刷設定変更画面上に、画像形成装置102で実際に出力した際の形態を模式的に表す画像を表示するためのプレビュー領域を設けるようにしてもよい。このプレビュー領域は、実際にジョブで出力される画像そのものを表示するためのものではなく、ジョブに設定されているカラーモード、両面/片面、ページ集約等の設定状態(即ち、実際に出力される形態)を表すシンボルを表示するようにする。
以上のように、パネル・アプリケーション404は、印刷設定変更画面(図14(b))上に、プリントサーバ101から受信した印刷ジョブ一覧に含まれる印刷ジョブ(特に図14(a)で選択された印刷ジョブ)の体裁情報(画像形成装置102で実際に印刷される際の体裁を示す情報)を変更可能に表示する。
以下、図11のフローチャートの説明に戻す。
パネル・アプリケーション404は、印刷設定変更画面(図14(b))上で、印刷設定の変更と設定変更確認ボタン1348の押下を検知すると、パネル・アプリケーション404は、ステップSC1103に処理を進める。なお、図11には示していないが、設定変更確認ボタン1348を押下することなくプリント開始ボタン1349が押下された場合には、パネル・アプリケーション404は、そのままSC1109に処理を進めるものとする。
ステップSC1103では、パネル・アプリケーション404は、ジョブ管理サービス402へ印刷設定情報を送信する。この印刷設定情報は対応する印刷ジョブのジョブ識別子としてのGUIDを含むものであり、前述したXML形式を使ってもよい。
そして、ステップSC1104において、パネル・アプリケーション404は、ジョブ管理サービス402から印刷設定変更指示が反映された印刷設定情報を受信する。
次に、ステップSC1105において、パネル・アプリケーション404は、上記SC1103で送信した印刷設定情報と上記SC1104で受信した印刷設定情報とを比較する。
例えば、ステップSC1102で変更対象外の設定情報として用紙サイズがあるが、図4の1−1の段階で用紙サイズは「はがき」になっていたとする。そして、印刷設定の禁則条件として、用紙が「はがき」の場合、両面・片面指定は片面しか選択できないとする。さらに、禁則条件適用の優先度は両面・片面指定よりも用紙サイズの指定の方が高いとする。この場合、両面・片面指定を両面に設定変更することはできない。パネル・アプリケーションに404に、プリンタドライバと同様の高度な禁則処理を実装すれば、図14(b)の設定変更入力の時点で両面指定を変更できないようにすることも可能であるが、パネル・アプリケーションの実装難易度が非常に高くなる。本実施形態のように、パネル・アプリケーション404では印刷設定の禁則処理を行わず、印刷設定を変更したら都度、変更可能かどうかプリントサーバ101側のプリンタドライバに問い合わせる方が容易なうえ汎用性も増す。
そして、上記SC1103で送信した印刷設定情報と上記SC1104で受信した印刷設定情報を比較した結果、差異が有ると判定した場合(SC1105でYes)、パネル・アプリケーションに404は、ステップSC1106へ処理を進める。
ステップSC1106では、パネル・アプリケーションに404は、エラー表示画面(図15(a))を操作部308の表示部に表示するように制御する。
図15(a)は、画像形成装置102の操作部308に表示されるエラー表示画面の一例を示す図である。
ここでは両面ができない場合は、図15(a)のような「片面」から「両面(長辺綴じ)」に変更できなかった旨のエラー表示を行う。エラー表示画面(図15(a))の1350が押下されたことを検知すると、パネル・アプリケーションに404は、ステップSC1107へ処理を進める。
一方、上記SC1103で送信した印刷設定情報と上記SC1104で受信した印刷設定情報とに差異が無いと判定した場合(SC1105でNo)、パネル・アプリケーションに404は、そのままステップSC1107へ処理を進める。
ステップSC1107では、パネル・アプリケーションに404は、上記SC1104で受信した印刷設定情報を、印刷設定変更画面(図14(b))上に表示するように制御する。ここに表示される印刷設定情報は、後述するローカルポート印刷ファイルの解析結果を表示しているため、詳細な情報が表示される。
次に、ステップSC1108において、パネル・アプリケーションに404は、印刷実行を行うか判定する。印刷設定変更画面(図14(b))上でプリント開始ボタン1349以外の操作を検知すると、パネル・アプリケーションに404は、印刷実行を行わず、印刷設定変更の入力を行うと判定し(SC1108でNo)、ステップSC1102へ処理を戻す。そして、印刷設定変更の入力を受け付ける。
一方、印刷設定変更画面(図14(b))上でプリント開始ボタン1349の操作を検知すると、印刷実行を行うと判定し(SC1108でYes)、パネル・アプリケーションに404は、ステップSC1109へ処理を進める。
ステップSC1109では、パネル・アプリケーションに404は、ジョブ管理サービス402に印刷指示コマンドを送信する。なお、この処理は、後述する図12で詳細に説明する。
そして、ステップSC1110において、パネル・アプリケーションに404は、図14(b)の印刷設定変更画面を閉じ、ステップSC1111で処理を終了する。
次にジョブ管理サービス402による印刷設定変更処理を説明する。
ステップSB1100において、ジョブ管理サービス402の処理を開始する。ステップSB1101において、ジョブ管理サービス402は、パネル・アプリケーション404から印刷設定変更指示を受信する。この印刷設定変更指示は、ステップSC1103で送信されたものであり、ジョブ識別子としてGUIDが含まれている。
次に、ステップSB1102において、ジョブ管理サービス402は、図4のジョブ管理DB403から上記SB1101で得たGUIDと一致するレコードを探索して取得する。
そして、ステップSB1103において、ジョブ管理サービス402は、上記SB1102で探索して取得されたレコードからメタデータのDEVMODEおよびEMFSPOOL形式の印刷ジョブを取得する。
さらに、ステップSB1104において、ジョブ管理サービス402は、上記SB1101で得た印刷設定を上記SB1103で得たメタデータのDEVMODEに適用する。
次に、ステップSB1105において、ジョブ管理サービス402は、EMFSPOOL形式の印刷ジョブの描画データを加工する。本処理については、前述したSB707と同様なため説明を省略する。
次に、ステップSB1106において、ジョブ管理サービス402は、上記SB1105で加工した加工済み印刷ジョブおよびDEVMODEを使用して、プリンタドライバ406を用いてローカルポート印刷を行う。プリンタドライバ406は、図8のSB805で作成した出力ポートが規定ファイルの論理プリンタを使用する。この処理により、現在処理中の印刷ジョブに対応するPDLデータが再生成されてプリントサーバ101の外部メモリ等に再出力されてファイルとして保存される。
次に、ステップSB1107において、ジョブ管理サービス402は、上記SB1106のローカル印刷でファイルとして保存されたPDLデータを解析して、印刷設定情報等を再取得し、メタデータを更新する。なお、この処理は、図7のSB710の処理と同様である。
さらに、ステップSB1108において、ジョブ管理サービス402は、上記SB1106でローカルポート印刷されたPDLデータを削除する。
さらに、ステップSB1109において、ジョブ管理サービス402は、上記SB1107で取得した印刷設定情報を、パネル・アプリケーション404へ返信(再送信)し、ステップSB1110で処理を終了する。
図12は、本発明のプリントシステムにおける第4の制御処理手順の一例を示すフローチャートであり、図4に示した4−1〜4−4の処理手順に対応する。ステップSC1200〜SC1205は、図4に示したパネル・アプリケーション404による印刷指示処理(図11のSC1109)に対応するものである。即ち、これらの処理は、図1に示した画像形成装置102のCPU301がROM303又はHDD304に格納されたプログラムをRAM302上にロードして実行することにより実現される。ステップSB1200〜SB1209は、図4に示したジョブ管理サービス402による印刷処理に対応する。即ち、これらの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション404による印刷指示処理を説明する。
ステップSC1200において、パネル・アプリケーション404の処理を開始する。ステップSC1201において、パネル・アプリケーション404は、ジョブ管理サービス402へ印刷指示要求コマンドを送信する。このとき選択済みの印刷ジョブのGUIDと画像形成装置102のモデル名も送信する。さらに、印刷設定変更表示図14(b)の1347において、プリント後文書消去チェックボックスにチェックがついていた場合は、印刷後に削除するコマンド(削除コマンド)を印刷ジョブと同時に送信しておく。
そして、ステップSC1202において、パネル・アプリケーション404は、ジョブ管理サービス402から印刷実行結果(成否)を受信する。
次に、ステップSC1203において、パネル・アプリケーション404は、印刷実行に成功したかどうかを判定する。そして、印刷実行に失敗したと判定した場合(SC1203でYes)、パネル・アプリケーション404は、ステップSC1204へ処理を進める。
ステップSC1204では、パネル・アプリケーション404は、エラー表示画面(図15(b))を操作部308の表示部に表示するように制御する。
図15(b)は、画像形成装置102の操作部308に表示されるエラー表示画面の一例を示す図である。
エラー表示画面(図15(b))のOKボタンが押下されたことを検知すると、パネル・アプリケーション404は、ステップSC1205へ進み、処理を終了する。
一方、印刷実行に成功した(印刷実行に失敗しなかった)と判定した場合(SC1203でNo)、パネル・アプリケーション404は、そのままステップSC1205へ進み、処理を終了する。
次にジョブ管理サービス402による印刷処理を説明する。
ステップSB1200において、ジョブ管理サービス402の処理を開始する。ステップSB1201において、ジョブ管理サービス402は、パネル・アプリケーション404から印刷指示コマンド(ステップSC1201で送信された印刷指示コマンド)を受信する。このとき、印刷対象の印刷ジョブのGUIDも受信する。さらに、削除コマンドも一緒に送信されている場合には、削除コマンドも受信する。
次に、ステップSB1202において、ジョブ管理サービス402は、図4のジョブ管理DB403から上記SB1201で得たGUIDと一致するレコードを探索する。
さらに、ステップSB1203において、ジョブ管理サービス402は、上記SB1202で探索して得られたレコードからEMFSPOOL形式印刷ジョブとDEVMODEを取得する。
ステップSB1204において、ジョブ管理サービス402は、プリンタドライバをインストールする。本処理は前述したSB702の処理と同様のため省略する。
ステップSB1205において、ジョブ管理サービス402は、上記SC1203で得たEMFSPOOL形式印刷ジョブとDEVMODEをレンダリングして印刷処理を実行する。この際、上記SB1201で印刷指示コマンドを受信した画像形成装置102のIPアドレスが出力ポートに設定された論理プリンタを用いる。該論理プリンタを構成するプリンタドライバはPDLを生成し、画像形成装置102にPDLを送信する。
そして、ステップSB1206において、ジョブ管理サービス402は、上記SB1205での印刷実行の成否をパネル・アプリケーション404へ送信する。
さらに、ステップSB1207において、ジョブ管理サービス402は、上記SB1201で受信した情報に削除コマンドがあるか否かを判定する。そして、削除コマンドがあると判定した場合(SB1207でYes)、ジョブ管理サービス402は、ステップSB1208に処理に進める。
ステップSB1208では、ジョブ管理サービス402は、上記SB1202で探索したレコードをジョブ管理DB403から削除し、上記SB1203で取得したファイルパスの印刷ジョブを削除し、ステップSB1209に進み、処理を終了する。
一方、削除コマンドがないと判定した場合(SB1207でNo)、ジョブ管理サービス402は、ステップSB1209に進み、処理を終了する。
以上の処理により、画像形成装置のモデルに対応したレンダリング結果を情報に反映できるため、画像形成装置のパネル・アプリケーションに画像形成装置の各モデルや各PDLに対応した実装をすることなく、印刷ジョブのより正確な情報をユーザに提示することが可能となる。
さらに、EMFSPOOL形式の印刷ジョブを加工した上で印刷ジョブに関する情報を取得するため、プリントサーバの負荷(パフォーマンスの低下)を軽減することができる。
さらに、画像形成装置のパネル・アプリケーションで印刷設定を変更した場合でも、変更時にプリントサーバから解析情報を再び取得できるため、ユーザは印刷設定変更した場合にどのような結果になるかを、印刷出力前に正確に知ることができる。
本実施形態では、プリントサーバで印刷・加工・解析を行ったが、一部を画像形成装置で処理を行うことも可能である。例えば、画像形成装置にHDD304のような記憶装置が存在する場合、プリンタドライバはローカルポート印刷ではなく、画像形成装置の記憶装置にPDLデータを保存させる。そして、このPDLデータを画像形成装置が解析し、画像形成装置の操作部の表示部に表示することも可能である。
なお、図14(b)の印刷設定変更画面の表示に、選択されたジョブを画像形成装置102で実際に出力した際の用紙枚数の情報を含めるようにしてもよい。
また、図14(b)に「プレビュー」ボタンを設け、このボタンが指示された場合、画像形成装置102のパネル・アプリケーション404がプリントサーバ101にプレビュー指示を送信する。プレビュー指示を受信したプリントサーバ101のジョブ管理サービス402は、図12のSB1202〜SB1205の処理を実行してPDLデータを画像形成装置102に送信する。画像形成装置102のパネル・アプリケーション404は、プリントサーバ101からPDLデータを受信して、操作部308の表示部にプレビューするようにしてもよい。
以上示したように、本実施例は、印刷対象となるデータをEMFSPOOL形式のような特定の画像形成装置に依存しない中間形式でプリントサーバ101に溜め置きして、画像形成装置102からの要求に従い、プリントサーバ101で画像形成装置102に依存するデータ(PDLデータ)を生成して画像形成装置102に送信して、画像形成装置102で印刷するプリントシステムである。このようなプリントシステムであっても、本発明によれば、印刷ジョブの出力結果の情報を導出するための構成を、画像形成装置102のパネル・アプリケーション404上に、画像形成装置の各モデルや各PDLに対応させて実装することなく、印刷ジョブのより正確な情報(例えば、実際に出力されるモノクロページ数、カラーページ数等の情報)をユーザに提示することができる。
以上のように、プリントサーバでEMFSPOOL形式の中間データで溜め置きして、画像形成装置からの要求に従い、プリントサーバでPDLを生成してから印刷データを画像形成装置に送信して印刷させるプリントシステムの課題を解決することができる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
(他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
101 プリントサーバ
102 画像形成装置
105 LAN

Claims (13)

  1. 印刷装置と通信可能な情報処理装置であって、
    印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶する記憶手段と、
    印刷装置からの要求に応じて、当該印刷装置に対応するプリンタドライバのインストールを行うインストール手段と、
    前記インストール手段によりインストールされたプリンタドライバに、前記中間形式のデータから前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させる処理手段と、
    前記処理手段による出力データから体裁情報を取得して前記印刷装置に送信する送信手段と、を有し、
    前記印刷装置では、前記印刷対象となるデータの前記体裁情報の表示が行われることを特徴とする情報処理装置。
  2. 印刷装置からの要求に応じて、前記プリンタドライバを用いて、前記中間形式のデータから、前記印刷装置に依存するデータを生成して前記印刷装置に出力する印刷処理手段を有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記体裁情報は、前記印刷装置で実際に出力される用紙枚数の情報を含むことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記体裁情報は、前記印刷装置で実際に出力されるモノクロページ数の情報、及びカラーページ数の情報を含むことを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記処理手段は、前記プリンタドライバに、前記印刷対象となるデータの各ページのデータを疑似データに置換した上で、前記印刷装置で実際に印刷される際の体裁が認識できるデータを生成させることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記疑似データは、前記印刷対象となるデータの各ページのデータのカラー情報に対応するデータであることを特徴とする請求項5に記載の情報処理装置。
  7. 前記中間形式は、EMFSPOOL形式(Enhanced Metafile Spool Format)であることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記処理手段は、前記プリンタドライバに、PDL(Page Description Language)データを生成させることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記記憶手段は、前記中間形式のデータに対応する印刷設定情報をも記憶するものであり、
    前記処理手段は、前記プリンタドライバに、前記中間形式のデータ及び前記中間形式のデータに対応する印刷設定情報から、前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させるものであり、
    前記印刷装置から印刷設定の変更指示を受信した場合、前記変更指示に応じて前記中間形式のデータに対応する印刷設定情報を変更し、前記処理手段による当該印刷設定情報の変更に伴い再生成され、出力されたデータから取得される体裁情報を、前記送信手段に再送信させるように制御する制御手段を有することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 情報処理装置と印刷装置とを含むプリントシステムであって、
    前記情報処理装置は、
    印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶する記憶手段と、
    前記印刷装置からの要求に応じて、当該印刷装置に対応するプリンタドライバのインストールを行うインストール手段と、
    前記インストール手段によりインストールされたプリンタドライバに、前記中間形式のデータから前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させる処理手段と、
    前記処理手段による出力データから体裁情報を取得して前記印刷装置に送信する送信手段と、を有し、
    前記印刷装置は、
    前記情報処理装置に対して、前記印刷すべきデータに関する情報の要求を行う要求手段と、
    前記情報処理装置から受信される前記印刷対象となるデータの前記体裁情報を表示する表示手段と、を有する、
    ことを特徴とするプリントシステム。
  11. 印刷装置と通信可能な情報処理装置における制御方法であって、
    印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶手段に記憶する記憶ステップと、
    印刷装置からの要求に応じて、当該印刷装置に対応するプリンタドライバのインストールを行うインストールステップと、
    前記プリンタドライバに、前記中間形式のデータから前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させる処理ステップと、
    前記処理ステップによる出力データから体裁情報を取得して前記印刷装置に送信する送信ステップと、を有し、
    前記印刷装置では、前記印刷対象となるデータの前記体裁情報の表示が行われることを特徴とする制御方法。
  12. 情報処理装置と印刷装置とを含むプリントシステムにおける制御方法であって、
    前記情報処理装置のコントローラが、
    印刷対象となるデータを、特定の機種の印刷装置に依存しない中間形式で記憶手段に記憶する記憶ステップと、
    印刷装置からの要求に応じて、当該印刷装置に対応するプリンタドライバのインストールを行うインストールステップと、
    前記プリンタドライバに、前記中間形式のデータから前記印刷装置で実際に印刷される際の体裁を認識できるデータを生成させ、前記情報処理装置の内部の記憶領域に出力させる処理ステップと、
    前記処理ステップによる出力データから体裁情報を取得して前記印刷装置に送信する送信ステップと、を実行し、
    前記印刷装置のコントローラが、
    前記情報処理装置に対して、前記印刷すべきデータに関する情報の要求を行う要求ステップと、
    前記情報処理装置から受信される前記印刷対象となるデータの前記体裁情報を表示する表示ステップと、を実行する、
    ことを特徴とする制御方法。
  13. 請求項1乃至9のいずれか1項に記載の手段としてコンピュータを機能させるためのプログラム。
JP2011044392A 2011-03-01 2011-03-01 情報処理装置、プリントシステム、制御方法、及び、プログラム Withdrawn JP2012181694A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011044392A JP2012181694A (ja) 2011-03-01 2011-03-01 情報処理装置、プリントシステム、制御方法、及び、プログラム
US13/396,508 US8773699B2 (en) 2011-03-01 2012-02-14 Information processing apparatus, printing system, and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011044392A JP2012181694A (ja) 2011-03-01 2011-03-01 情報処理装置、プリントシステム、制御方法、及び、プログラム

Publications (1)

Publication Number Publication Date
JP2012181694A true JP2012181694A (ja) 2012-09-20

Family

ID=46753113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011044392A Withdrawn JP2012181694A (ja) 2011-03-01 2011-03-01 情報処理装置、プリントシステム、制御方法、及び、プログラム

Country Status (2)

Country Link
US (1) US8773699B2 (ja)
JP (1) JP2012181694A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615388B (zh) * 2013-11-01 2017-12-22 精工爱普生株式会社 打印控制系统
IN2014DE02931A (ja) * 2013-11-01 2015-06-26 Seiko Epson Corp
JP5929946B2 (ja) * 2014-02-27 2016-06-08 コニカミノルタ株式会社 画像形成システム、中継サーバー、通信制御方法及びプログラム
JP6773139B2 (ja) * 2017-02-01 2020-10-21 京セラドキュメントソリューションズ株式会社 サーバー装置及び情報処理システム
EP3594801A1 (en) * 2018-06-29 2020-01-15 Canon Kabushiki Kaisha Information processing apparatus processing print setting, control method, and control program
US11245801B2 (en) * 2020-03-31 2022-02-08 Kyocera Document Solutions Inc. Image forming apparatus and image forming method capable of changing guidance screen from terminal
US11625208B2 (en) * 2021-03-04 2023-04-11 Kyocera Document Solutions Inc. Portable printer settings system
JP2023143184A (ja) * 2022-03-25 2023-10-06 ブラザー工業株式会社 サポートプログラムおよび印刷システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754747A (en) * 1995-06-06 1998-05-19 Apple Computer, Inc. Architecture for network printing systems
JP4033857B2 (ja) * 2004-09-03 2008-01-16 キヤノンマーケティングジャパン株式会社 プリントシステムおよび印刷管理サーバおよび印刷方法および印刷管理方法およびプログラム
JP4869031B2 (ja) * 2005-12-28 2012-02-01 キヤノン株式会社 印刷システム、サーバ装置及びジョブ制御方法
JP2010097301A (ja) * 2008-10-15 2010-04-30 Seiko Epson Corp ネットワークシステム、サーバ装置、および、プリンタドライバ

Also Published As

Publication number Publication date
US20120224197A1 (en) 2012-09-06
US8773699B2 (en) 2014-07-08

Similar Documents

Publication Publication Date Title
JP5854654B2 (ja) プリントシステム、印刷方法、プリントサーバ、制御方法、及びプログラム
JP5763904B2 (ja) プリントシステム、印刷方法、プリントサーバおよびその制御方法、並びにプログラム
JP5680926B2 (ja) プリントシステム、印刷方法、プリントサーバ及びその制御方法、並びにプログラム
JP5719198B2 (ja) プリントシステム、情報処理装置、制御方法、およびプログラム
US9258437B2 (en) Printing system, control method, and computer-readable medium for controlling printing of data stored in a print server
US8970865B2 (en) Printing control device, storage medium storing printing control program, and printing control method
US9202154B2 (en) Information processing apparatus and method for controlling re-execution of print jobs, and storage medium
JP6454213B2 (ja) 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム
JP2012181694A (ja) 情報処理装置、プリントシステム、制御方法、及び、プログラム
JP5797052B2 (ja) 印刷システム、サーバー装置、情報処理方法及びプログラム
JP2020004158A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6415209B2 (ja) 印刷装置、印刷装置の制御方法、及びプログラム
US8213032B2 (en) Information processing apparatus and method and computer-readable storage medium thereof
JP2012181695A (ja) 情報処理装置、プリントシステム、制御方法、及び、プログラム
JP2012221198A (ja) プリントシステム
JP5764924B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム、記憶媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140513