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

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

Info

Publication number
JP5719198B2
JP5719198B2 JP2011049608A JP2011049608A JP5719198B2 JP 5719198 B2 JP5719198 B2 JP 5719198B2 JP 2011049608 A JP2011049608 A JP 2011049608A JP 2011049608 A JP2011049608 A JP 2011049608A JP 5719198 B2 JP5719198 B2 JP 5719198B2
Authority
JP
Japan
Prior art keywords
information
print
paper
user registration
setting
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.)
Expired - Fee Related
Application number
JP2011049608A
Other languages
English (en)
Other versions
JP2012185748A (ja
Inventor
雅司 中川
雅司 中川
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 JP2011049608A priority Critical patent/JP5719198B2/ja
Priority to US13/397,349 priority patent/US20120229833A1/en
Priority to CN201210055254.4A priority patent/CN102736872B/zh
Publication of JP2012185748A publication Critical patent/JP2012185748A/ja
Application granted granted Critical
Publication of JP5719198B2 publication Critical patent/JP5719198B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/0097Storage of instructions or parameters, e.g. customised instructions or different parameters for different user IDs
    • 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/1222Increasing security of the print job
    • 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/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • H04N1/0023Image pull arrangements, e.g. to a multifunctional peripheral from a networked computer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • H04N1/00233Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing details of image data reproduction, e.g. network printing or remote image display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/0048Indicating an illegal or impossible operation or selection to the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00482Output means outputting a plurality of job set-up options, e.g. number of copies, paper size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Description

本発明は、プルプリント制御方法に関し、特にプリントシステム、情報処理装置、制御方法、及びプログラムに関する。
従来、ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行うことで当該印刷装置から印刷データの出力を可能にする所謂「プルプリント」の印刷システムが提案されている(例えば、特許文献1参照)。これにより、ユーザはアプリケーションから印刷時に指定された特定の印刷装置による出力ではなく、所望の印刷装置からの印刷データ出力を可能としている。
また通常、同一のプラットフォームのクライアント/サーバ環境下では印刷時に使用する用紙情報はサーバの用紙情報データベースをクライアント上で動作するプリンタドライバが参照可能な仕様になっている。異なるプラットフォームのクライアント/サーバ環境下では、クライアント上で動作するプリンタドライバがスプールファイルを生成する際に用紙情報を付加してサーバに転送する。受信したサーバ側のスプール連携部は、スプールファイルから付加された用紙情報を参照し、印刷データに反映する仕組みが提案されている(例えば、特許文献2参照)。
特許第4033857号公報 特許第4119868号公報
従来の方法では、ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行う際に、印刷設定の変更を指示することが困難である。これは、サーバ上に一次蓄積される印刷データの形式が、印刷装置に依存したPDL(Page Description Language)であり、印刷設定変更の指示通りにPDLを編集しなければならないためである。
具体的な例として以下に示す。ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行う際に、4ページを1ページに割り付けるような印刷設定(以後、4in1と称する)を指示したとする。このとき、サーバ上に一次蓄積される印刷データ、即ちPDLを4in1に適合するように変更する必要がある。もし、PDLが印刷装置の解像度に依存するラスタ形式であるなら、4in1を実現するためにラスタ画像を縮小することになるので、細線の消失等、品質上の様々な問題が生じる。また、PDLは多種多様な仕様が存在するので、それら複数のPDLに対応することは多大な労力を必要とする。そもそも、PDLの仕様が非公開の場合には、PDLの内容を変更することもできない。さらに、PDLが変更できないということは、すなわちユーザが印刷指示を行った時点で印刷を行う機種が限定されてしまい、プルプリントする時に自由に機種を変更できないという課題もある。
上記課題を解決するために、例えば、サーバ側でデータを再編集できるようなプリントシステムが望まれるが、クライアントで管理されている用紙情報との整合が必ずしもとれるわけではない。
そこで、本願発明は上記課題を考慮し、ユーザ所望の適切な用紙設定でプルプリントが可能な、印刷システムを提供する。
上記課題を解決するために、本願発明に係る実施形態である情報処理装置は以下の構成を有する。すなわち、ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバに接続され、特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備える情報処理装置であって、ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録手段と、前記印刷ジョブの印刷設定情報から用紙情報を取得する第一取得手段と、前記第一取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定手段と、前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信手段とを有する。
また、本願発明に係る別の実施形態であるプリントシステムは以下の構成を有する。すなわち、特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備えるクライアント装置と、ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバと、印刷装置とを有するプリントシステムであって、前記クライアント装置は、ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録手段と、前記印刷ジョブの印刷設定情報から用紙情報を取得する第一取得手段と、前記第一取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定手段と、前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信手段とを有し、前記プリントサーバは、前記クライアント装置から受信した印刷ジョブを記憶部にて保持する保持手段と、受信した印刷要求に応じて、前記記憶部にて保持している前記中間データ形式の印刷ジョブを、前記印刷設定情報を用いて印刷装置に対応するデータ形式に変換し、前記印刷装置に送信する変換手段とを有し、前記印刷装置は、前記プリントサーバに前記印刷要求を送信する指示手段と、前記指示手段による印刷要求に応じて前記プリントサーバから送信された印刷ジョブを受信し、印刷を行う印刷手段とを有する。
本発明により、ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行う際に、印刷設定の変更を指示することが可能となる。更に、クライアントPCで設定した用紙設定に不整合が発生することなく、ユーザが所望した用紙設定で印刷することが可能になる。
プリントシステムの構成の一例を示すシステム構成図。 各装置のハードウェア構成を示すブロック図。 複合機のコントローラユニットのハードウェア構成の一例を示すブロック図。 プリントシステムに係るプルプリントの全体の流れを説明する模式図。 図4に示した各データフローの詳細を示す表。 クライアントPC上で動作するアプリケーションプログラムの印刷画面の一例を示す模式図。 プリントシステムに係る第1の制御処理手順の一例を示すフローチャート。 プリントシステムに係る第2の制御処理手順の一例を示すフローチャート。 プリントシステムに係る第3の制御処理手順の一例を示すフローチャート。 プリントシステムに係る論理プリンタ生成手順を示すフローチャート。 プリントシステムに係る第4の制御処理手順の一例を示すフローチャート。 プリントシステムに係る第5の制御処理手順の一例を示すフローチャート。 図7のSB703とSC701の間を流れるデータ詳細を示す図。 図8のSC809とSE811の間を流れるデータ詳細を示す図。 図9の処理にて流れるデータ構成の詳細を示す図。 複合機の表示部にCPUの制御により表示される画面例の模式図。 複合機の表示部にCPUの制御により表示される画面例の模式図。 プルプリントシステムにより発生する用紙設定の不整合の一例を示す図。 用紙サイズ情報の更新処理の一例を示すフローチャート。 用紙サイズ情報の更新処理の一例を示すフローチャート。 用紙サイズ情報の置換を行うか否かを通知する画面例の模式図。
以下、本発明を実施するための形態について図面を用いて説明する。
<第一実施形態>
[システム構成]
図1は、本実施形態に係るクライアントPC、プリントサーバ、アドレス管理サーバ、および印刷装置を適用可能なプリントシステムの構成の一例を示すシステム構成図である。図1の「事業所A」に示すように、本実施形態のプリントシステムは、1以上のクライアントPC100(例えば、ユーザ毎)、1以上のプリントサーバ101(例えば、階毎に設置)、1以上の複合機102(例えば、階毎に設置)で構成される。さらに、プリントシステムは、アドレス管理サーバ103、1以上のログインサービスPC104(例えば、階毎に設置)、ディレクトリサービスサーバ105がローカルエリアネットワーク(LAN)106を介して接続される構成となる。
クライアント装置であるクライアントPC100には、仮想プリンタドライバ及びプリントプロセッサがインストールされている。この仮想プリンタドライバは、クライアント・アプリケーションから受け取ったデータに基づいて特定の複合機の機種に依存しない中間データ形式の印刷ジョブを生成し、プリントプロセッサを経由してプリントサーバ101へ送信する。なお、中間データ形式の印刷ジョブとは、フォーマットに関する仕様が公開されていて、かつ再編集が容易な形式の印刷データを意味する。例えば、EMFSPOOL形式(Enhanced Metafile Spool Format)、XPS(XML Paper Specification)などの形式がある。本実施形態においては、EMFSPOOL形式を使って説明するが、XPSやPDFなど他の中間データ形式の印刷データであってもかまわない。
プリントサーバ101は、受信した該印刷ジョブを記憶部である所定の格納場所に保存する。また、プリントサーバ101は、ジョブ管理データベース(以後、ジョブ管理DB)を備え、該印刷ジョブに関するメタデータを、ジョブ管理DBにより記憶管理する。プリントサーバ101は、ジョブ管理DBに記録管理しているメタデータから印刷ジョブ一覧データを生成し、複合機102へ転送する。プリントサーバ101は、ジョブ管理DBに記録管理しているメタデータと複合機102から受信する印刷設定情報とを使って、印刷設定情報の更新を行い、複合機102へ更新した印刷設定を転送する。さらに、プリントサーバ101は、上記所定の格納場所に保存している印刷ジョブと、ジョブ管理DBに記録管理しているメタデータとからPDL(Printer Description Language)データを生成し、複合機102へ転送する。
アドレス管理サーバ103は、アドレス管理データベース(以後、アドレス管理DBと呼ぶ)を備える。そして、アドレス管理サーバ103は、本実施形態の「プルプリント」実行時に、印刷ジョブを管理するプリントサーバ101のアドレスとユーザ識別子とを、アドレス管理DBにより管理する。さらに、アドレス管理サーバ103は、複合機102からの印刷ジョブ一覧要求に応じ、その応答として複合機102から受信したユーザ識別子に対応するプリントサーバ101のアドレスを複合機102へ送信する。
ログインサービスPC104は、複合機102のログインサービスを提供する。機能としては、ディレクトリサービスサーバ105で記憶管理されているクライアントPC100のログインユーザ名、パスワードに基づく認証処理(SSOと称する。Single Sign−ONの略)を行う。このログインユーザ名、パスワードとは例えば、マイクロソフト社のWindows(登録商標)にて用いられるログインユーザ名、パスワードを示す。ログインサービスPCの例としては、キヤノン社のセキュリティエージェント(Security Agent)を搭載したパーソナルコンピュータが挙げられる。
ディレクトリサービスサーバ105は、ネットワーク上に存在するサーバ、クライアント、プリンタ等のハードウェア資源や、それらを使用するユーザの属性、アクセス権等の情報を一元記憶管理するものである。ユーザの属性には、クライアントPC100のログインユーザ名、パスワード(例えば、マイクロソフト社のWindows(登録商標)のログインユーザ名、パスワード)を含む。ディレクトリサービスサーバの例としては、アクティブディレクトリ(Active Directory)機能を搭載したサーバが挙げられる。
また、本実施形態のプリントシステムは、上述した構成の「事業所A」と、「事業所A」と同様の構成が1又は複数の「事業所B」とが、WAN107を介して接続される構成であってもよい。
なお、上記の構成は一例であり、更に他の装置を含む構成であってもよいし、無線ネットワーク(無線LAN等)にて接続されるような構成であっても構わない。また、より多くの「事業所」と接続される構成であっても構わない。
[ハードウェア構成]
図2を用いて、図1に示したクライアントPC100、プリントサーバ101、アドレス管理サーバ103、ログインサービスPC104、及びディレクトリサービスサーバ105に適用可能な情報処理装置のハードウェア構成例について説明する。
図2において、CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステム(以下、OS)が記憶されている。さらに、ROM202あるいは外部メモリ211には、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等も記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードし、該ロードしたプログラムを実行することで各種動作を実現する。また、入力コントローラ205は、キーボード209やマウス等のポインティングデバイス(不図示)等からの入力を制御する。ビデオコントローラ206は、モニタ210への表示を制御する。一般に、モニタ210は、液晶ディスプレイやCRT等の表示器が用いられる。これらは必要に応じて管理者が使用する。
メモリコントローラ207は、外部メモリ211へのアクセスを制御する。ここでの外部メモリ211は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)、SSD(Solid State Drive)、SDメモリーカード等を指す。通信I/Fコントローラ208は、ネットワーク(例えば、図1に示したLAN106)を介して外部機器と接続・通信するものであり、ネットワークに対する通信制御処理を実行する。例えば、本プリントシステムにおいて、TCP/IPを用いた通信等が可能である。なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、モニタ210上での表示を可能としている。また、CPU201は、モニタ210上のマウスカーソル(不図示)等でのユーザ指示を可能とする。本実施形態を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM203にロードされ、CPU201によって実行される。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらの詳細な説明についても後述する。
なお、図2に示した各装置のハードウェア構成は、一般的な情報処理装置を示しており、他の構成を備えても構わない。
図3を用いて、図1に示した複合機102を制御するコントローラユニット316のハードウェア構成例について説明する。図3において、コントローラユニット316は、画像入力デバイスとして機能するスキャナ314や、画像出力デバイスとして機能するプリンタ312と接続する。一方、コントローラユニット316は、LAN(例えば、図1に示したLAN106)や公衆回線(WAN)(例えば、PSTNまたはISDN等)と接続することで、画像データやデバイス情報の入出力を行う。コントローラユニット316において、CPU301は、システム全体を制御するプロセッサである。
RAM302は、CPU301が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。ROM303は、システムのブートプログラムや各種制御プログラムが格納されている。ハードディスクドライブ(HDD)304は、システムを制御するための各種プログラム、画像データ等を格納する。操作部インタフェース(操作部I/F)307はで、操作部(UI)308とのインタフェース部であり、操作部308に表示する画像データを操作部308に対して出力する。また、操作部I/F307は、操作部308から本システムの使用者が入力した情報(例えば、ユーザ情報等)をCPU301に伝える役割を有する。なお、操作部308はタッチパネルを有する表示部(不図示)を備え、該表示部に表示されたボタンを、ユーザが押下(指等でタッチ)することにより、各種指示を行うことができる。
ネットワークインタフェース(Network I/F)305は、ネットワーク(LAN)に接続し、データの入出力を行う。モデム(MODEM)306は、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。外部インタフェース(外部I/F)318は、USB、IEEE1394、プリンタポート、RS−232C等の外部入力を受け付けるためのI/F部である。本実施形態においては認証で必要となるICカードの読み取り用のカードリーダ319が外部I/F318に接続されている。そして、CPU301は、この外部I/F318を介してカードリーダ319によるICカードからの情報読み取りを制御し、コントローラユニット316は該ICカードから読み取られた情報を取得可能である。以上のデバイスがシステムバス309上に配置される。
イメージバスインタフェース(IMAGE BUS I/F)320は、システムバス309と画像データを高速で転送する画像バス315とを接続し、データ構造を変換するバスブリッジである。画像バス315は、PCIバスまたはIEEE1394で構成される。画像バス315上には以下のデバイスが配置される。ラスタイメージプロセッサ(RIP)310は、例えば、PDL形式のコード等のベクトルデータをビットマップイメージに展開する。プリンタインタフェース(プリンタI/F)311は、プリンタ312とコントローラユニット316とを接続し、画像データの同期系/非同期系の変換を行う。また、スキャナインタフェース(スキャナI/F)313は、スキャナ314とコントローラユニット316とを接続し、画像データの同期系/非同期系の変換を行う。画像処理部317は、入力画像データに対し補正、加工、編集を行い、プリント出力画像データに対してプリンタの補正、解像度変換等を行う。また、これに加えて、画像処理部317は、画像データの回転や、多値画像データに対するJPEG、2値画像データに対するJBIG、MMR、MH等の圧縮伸張処理を行う。
スキャナ314は、原稿となる紙上の画像を照明し、CCDラインセンサで走査することで、ラスタイメージデータとして電気信号に変換する。原稿用紙は原稿フィーダのトレイにセットされ、装置使用者が操作部308から読み取り起動指示することにより、CPU301がスキャナ314に指示を与える。そして、原稿フィーダは原稿用紙を1枚ずつフィードし、原稿画像の読み取り動作を行う。プリンタ312は、ラスタイメージデータを用紙上の画像に変換する部分である。その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、CPU301からの指示によって開始する。なお、プリンタ312には、異なる用紙サイズまたは異なる用紙の向きを選択できるように複数の給紙段を備え、それに対応した用紙カセットが備えられる。
操作部308は、LCD表示部を有し、LCD上にタッチパネルシートが貼られている。操作部308がシステムの操作画面を表示し、表示されたキーが操作者により押されると、その位置情報を操作部I/F307を介してCPU301に伝える。また、操作部308は、各種操作キーとして、例えば、スタートキー、ストップキー、IDキー、リセットキー等を備える。ここで、操作部308のスタートキーは、原稿画像の読み取り動作を開始する時などに用いられる。スタートキーの中央部には、緑と赤の2色LEDがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部308のストップキーは、稼働中の動作を停止する働きをする。また、操作部308のIDキーは、使用者のユーザIDを入力する際に用いる。リセットキーは、操作部からの設定を初期化する際に用いる。
カードリーダ319は、CPU301からの制御により、ICカード(例えば、ソニー社のフェリカ(FeliCa)(登録商標))内に記憶されている情報を読み取り、読み取った情報を外部I/F318を介してCPU301へ通知する。以上のような構成により、複合機102は、スキャナ314から読み込んだ画像データをLAN106上に送信し、LAN106から受信した印刷データをプリンタ312により印刷出力することができる。また、スキャナ314から読み込んだ画像データをモデム306により、公衆回線上にFAX送信し、公衆回線からFAX受信した画像データをプリンタ312により出力することができる。
[プルプリントの流れ]
図4を用いて、本実施形態のプリントシステムにおけるプルプリントの全体の流れについて説明する。まず、本実施形態のプルプリントを実行するための前提について説明する。本実施形態のプルプリントを実現するための仮想プリンタドライバ401がプリントサーバ101に共有プリンタとしてインストールされている。仮想プリンタドライバ401は、アプリケーションから指示された印字や描画命令の出力に基づいて印刷データを生成する。さらに、仮想プリンタドライバ401は、当該仮想プリンタドライバ401やプリンタが備える機能を制御するための印刷設定を行う機能(ユーザインタフェース)、およびその印刷設定をインストールされた論理プリンタ毎に外部記憶装置に記憶する機能等を有する。また、この印刷設定は、米国Microsoft社のWindows(登録商標)の場合、DEVMODE構造体に格納される。
DEVMODE構造体とは、プリンタが使用可能な機能、レイアウト設定、仕上げ設定、給・排紙設定、印字品質設定等の論理プリンタに関するデフォルトの動作条件を含む各種設定を記憶するために、米国Microsoft社が規定したものである。この各種設定値は、インストールされた論理プリンタ毎に外部記憶装置に記憶される。クライアントPC100には、仮想プリンタドライバ401に対応する論理プリンタと仮想プリンタドライバ401に対応したプリントプロセッサ402とを追加しておく。
以下、本実施形態のプルプリントの全体の流れについて説明する。図4は、本実施形態のプリントシステムにおけるプルプリントの全体の流れを説明する模式図である。図4に示すように、まず、ユーザは、クライアントPC100にログインし、クライアントPC100で実行されるクライアント・アプリケーション400から仮想プリンタドライバ401に対応する論理プリンタへの印刷指示を行う(1−1)。この印刷指示に応じて、クライアントPC100のクライアント・アプリケーション400は、グラフィックエンジンを介して、仮想プリンタドライバ401にデータを送信する。クライアントPC100の仮想プリンタドライバ401は、クライアント・アプリケーション400からグラフィックエンジンを介して受け取ったデータに基づいて、デバイス(プリンタデバイス)に依存しないEMFSPOOL形式の印刷ジョブを生成する。そして、仮想プリンタドライバ401は、生成したEMFSPOOL形式の印刷ジョブをプリントプロセッサ402に送信する(1−2)。
プリントプロセッサ402は、仮想プリンタドライバ401から送信されたEMFSPOOL形式の印刷ジョブを読み取り、印刷ジョブのメタデータを生成する。生成したメタデータと印刷ジョブとをプリントサーバ101のジョブ管理サービスに送信する(1−4)。
プリントサーバ101にて、ジョブ管理サービス403は、プリントサーバ101上の所定の格納場所に受信したEMFSPOOL形式の印刷ジョブを保存し、さらにメタデータをジョブ管理DB404に登録する(1−5)。このジョブ管理DB404はプリントサーバ101の外部記憶装置上に構築される。このとき、プリントサーバ101は、上記所定の格納場所に印刷ジョブを保存するだけで、印刷装置(例えば、複合機102)への送信は行わない。さらに、プリントサーバ101は、印刷ジョブの識別子とユーザ識別子とをアドレス管理サーバ103上のアドレス管理サービス405へ登録するために送信し、登録指示を行う(1−6)。
アドレス管理サービス405は、プリントサーバ101のジョブ管理サービス403から、印刷ジョブの識別子とユーザ識別子とを受信すると、送信元であるプリントサーバ101のアドレスも加えてアドレス管理DB406に登録する(1−7)。アドレス管理DB406は、アドレス管理サーバ103の外部記憶装置上に構築される。なお、本実施形態では、機器を判別するためのアドレスとしてIPアドレスを使用する。また、本実施形態では、ジョブ識別子としてGUID(Global Unique Identifier)を使用する。なお、この方式に限定するものではなく、識別可能な情報であれば、他の構成を用いても構わない。また、各DBについても、構築する場所を限定するものではない。
複合機102において、カードリーダ319は読み取り可能なICカードを検知すると、該ICカード内の個人認証情報を読み取る。そして、複合機102は、カードリーダ319にて読み取った個人認証情報を認証要求として認証サーバ(不図示)に送信する。個人認証情報は、認証に用いられる情報であり、例えば該ICカードの製造番号でも良い。認証サーバは、複合機102より個人認証情報を受信すると、認証サーバの外部記憶装置上に記憶されるICカード認証用テーブルに基づいて、該個人認証情報の認証処理を行う。そして、認証サーバは、要求の応答として、認証結果を複合機102に返信する。なお、本実施形態において、認証処理に成功した場合は、認証結果として、クライアントPC100のユーザ識別子を送信するものとする。なお、この認証サーバの機能はアドレス管理サーバ103が備えていてもよい。
複合機102上のパネル・アプリケーション407は、認証サーバから認証に成功した旨の認証結果(クライアントPC100のログインユーザ識別子)を受信する。本実施形態では、ユーザ識別子としてユーザ名を使用する。もちろん、これに限定するものではなく、例えばユーザを識別する手段としてICカードの製造番号などを用いてもかまわない。
パネル・アプリケーション407は、プリントサーバ101に印刷ジョブ一覧を要求する前にプリントサーバ101のIPアドレスを取得するための前処理を実行する。まず、アドレス管理サーバ103上のアドレス管理サービス405にユーザ識別子であるユーザ名を送信する(2−1)。アドレス管理サービス405は、アドレス管理DB406を参照し、受信したユーザ名に対応するプリントサーバ101のIPアドレスを得る(2−2)。そして、アドレス管理サービス405は、複合機102のパネル・アプリケーション407へ取得したプリントサーバ101のIPアドレスを返信する(2−3)。
パネル・アプリケーション407は、アドレス管理サーバ103からプリントサーバ101のIPアドレスを受信すると、当該IPアドレスに対応するプリントサーバ101上のジョブ管理サービス403に対し印刷ジョブ一覧を要求する(2−4)。ジョブ管理サービス403は、ジョブ管理DB404を参照し(2−5)、該ユーザ名に対応する印刷ジョブ一覧を生成する。そして、ジョブ管理サービス403は、当該要求に対する応答として、パネル・アプリケーション407へ生成した印刷ジョブ一覧を返信する(2−6)。パネル・アプリケーション407は、プリントサーバ101のジョブ管理サービス403から印刷ジョブ一覧を受信すると、該印刷ジョブ一覧を操作部308のUI上に表示する。
そして、ユーザにより、操作部308に表示された印刷ジョブ一覧の中から印刷ジョブが選択され、印刷設定変更指示がなされると、パネル・アプリケーション407は、選択された印刷ジョブの印刷設定をジョブ管理サービス403に送信する(3−1)。ジョブ管理サービス403は、パネル・アプリケーション407から印刷設定を受信すると、ジョブ管理DB404を参照し(3−2)、印刷設定の変更を行う。そして、ジョブ管理サービス403は、パネル・アプリケーション407へ変更した印刷設定を返信する(3−3)。パネル・アプリケーション407は送信した印刷設定と受信した印刷設定とを比較し、印刷設定変更が正しく機能したか否かを判定する。正しく機能しなかった場合は、操作部308のUI上にその旨のメッセージを表示する。
そして、パネル・アプリケーション407は、ユーザからの指示に基づき、改めてジョブ管理サービス403に対し印刷要求(出力指示)を行う(4−1)。ジョブ管理サービス403は、パネル・アプリケーション407から印刷要求を受信すると、ジョブ管理DB404を参照して印刷に必要な情報を取得する(4−2)。そして、ジョブ管理サービス403は、取得した情報を用い、プリンタドライバ408に印刷指示を行う(4−3)。そして、プリンタドライバ408は、受信した印刷指示に基づいて印刷処理を実行し、複合機102にPDLジョブを送信する(4−4)。その後、複合機102は、プリントサーバから受信したPDLジョブに対する印刷処理を行う。
最後に、ユーザにより、印刷ジョブの削除が指示されると、パネル・アプリケーション407は、プリントサーバ101のジョブ管理サービス403に対し指定された印刷ジョブの削除を指示する(5−1)。ジョブ管理サービス403は、パネル・アプリケーション407から印刷ジョブの削除要求を受信すると、まず、アドレス管理サーバ103のアドレス管理サービス405へ登録した印刷ジョブ識別子の削除を指示する(5−2)。アドレス管理サービス405は、ジョブ管理サービス403から印刷ジョブ識別子の登録解除要求を受信すると、アドレス管理DB406に記憶されているレコードの中から該当するレコードを削除する(5−3)。次に、ジョブ管理サービス403は、ジョブ管理DB404の該当するレコードを削除し、EMFSPOOL形式の印刷ジョブファイルも削除する(5−4)。
以上、プリントシステム全体の流れを説明した。なお、図5は、図4のプリントシステムにおいて用いられるデータの詳細を表形式で表したものである。図5において、図4との対応、データの送受信デバイス、データの内容がそれぞれ対応付けられて定義している。以降、フローチャートを使って詳細に説明するが、その際に図5を併用して説明を補足する。
[印刷指示に係る処理]
図1に示したクライアントPC100上で動作するクライアント・アプリケーション400上での印刷指示について説明する。図6は、図1に示したクライアントPC100上で動作するクライアント・アプリケーション400の印刷画面の一例を示す模式図であり、クライアントPC100のCPUの制御により表示器に表示される。
プリンタ選択部610は、クライアントPC100に設定されている論理プリンタから、印刷を行う論理プリンタを選択するためのものである。プリンタ選択部610において、「どこでも印刷」601は、本実施形態のプルプリント設定された仮想プリンタドライバ401に対応する論理プリンタとする。さらに、「Cxxxx ix3250」602、「Cxxxx ix5051」603は、LANなどに接続されたプリンタに対応する通常のプリンタドライバに対応する論理プリンタとする。プリンタ選択部610において、いずれかの論理プリンタが選択され、OKボタン605が押下されると、クライアント・アプリケーション400は、印刷データを、選択された論理プリンタに対応するプリンタドライバにグラフィックエンジンを介して送信する。以下、プリンタ選択部610で「どこでも印刷」601が選択されて印刷指示がなされた場合のプリンタドライバの動作について説明する。
[第1の制御処理フロー]
図7は、本実施形態に係るプリントシステムにおける第1の制御処理手順の一例を示すフローチャートであり、図4に示した1−1から1−7までの処理手順に対応する。なお、図中において、処理間を結ぶ破線矢印は、各装置間のデータの流れを示している。これは、以下の図を通して同様である。
SAにて示す処理は、図4に示した仮想プリンタドライバ401による印刷ジョブ投入処理に対応する。これらフローチャートの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SBにて示す処理は、図4に示したプリントプロセッサ402によるメタデータ生成・送信処理及び印刷ジョブ転送処理に対応する。これらフローチャートの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SCにて示す処理は、図4に示したジョブ管理サービス403によるメタデータ登録処理及び印刷ジョブ保存処理対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SDにて示す処理は、図4に示したアドレス管理サービス405による印刷ジョブ識別子登録処理に対応する。これらフローチャートの処理は、図1に示したアドレス管理サーバ103のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、仮想プリンタドライバ401による印刷ジョブ投入処理を説明する。仮想プリンタドライバ401の処理が開始すると、SA701において、仮想プリンタドライバ401は、クライアント・アプリケーション400から入力されたデータをEMFSPOOL形式の印刷ジョブとして出力する。これは図4の1−1と1−2に相当する。米国Microsoft社のWindows(登録商標)の場合、仮想プリンタドライバ401への入力は、DDI(Device Driver Interface)と呼ばれるOSによる関数呼び出しによって実施される。
仮想プリンタドライバ401は、DDIの呼び出しと同時に渡されるパラメータを解釈してEMFSPOOL形式の印刷ジョブを生成し、OSが管理するスプーラへ生成した印刷ジョブを出力する。一般に、プリンタドライバの役割は、出力対象のデバイスに依存した印刷ジョブを生成し出力することであるが、本実施形態においては、プリンタデバイス(複合機102)に依存しない中間データ形式の印刷ジョブを生成し、出力する。これにより、出力を行う複合機102の構成が変更されたとしても、本実施形態に係るプリントシステムにおいて仮想プリンタドライバ401の構成に変更は生じない。つまり、本実施形態により、複合機102固有の機能をプルプリントシステムで使用することが容易に実現できる。そして、処理を終了する。
次にプリントプロセッサ402によるメタデータ生成・送信処理及び印刷ジョブ転送処理を説明する。米国Microsoft社のWindows(登録商標)の場合、OSがプリントプロセッサ402に対し印刷ジョブの処理を依頼する際に呼び出すPrintDocumentOnPrintProcessor関数の内部処理を示す。クライアントPC100上で処理を開始されると、SB701において、プリントプロセッサ402は、OSのスプーラに出力されたジョブの種類がRAW形式か否か判定する。RAW形式とは、プリンタドライバが出力した印刷ジョブを意味する。つまり、仮想プリンタドライバ401はSA701にて印刷ジョブを出力しているので当該印刷ジョブはRAW形式であり、ここではRAW形式と判定され(SB701にてYES)、SB702へ進む。RAW形式と判定されない場合は(SB701にてNO)、処理を終了する。
SB702において、プリントプロセッサ402は、メタデータを生成する。メタデータは、図5の「1−4」行の「送信データ」列にある、GUID(Global Unique Identifier)、ジョブ名、ユーザ名、DEVMODE、仮想プリンタドライバの論理プリンタ名である。具体的には、図13のようなXML形式で表現される。JobInfo要素のGuid属性には、本実施形態に係るプリントシステムにおいて、一意となる印刷ジョブの識別子を記述する。JobInfo要素のJobName属性には、図4の1−1の過程で指定されたジョブの名前を記述する。JobInfo要素のUserName属性には、図4の1−1の過程で印刷を実行したユーザの名前を記述する。JobInfo要素のPrintQueueName属性には、図4の1−1の過程で使用された論理プリンタの名前を記述する。DocumentSettings要素のDEVMODESnapshot属性には、図4の1−1の過程で指定された最初ページの印刷設定(DEVMODE)を記述する。なお、DEVMODEはバイナリ形式なので、XMLで記述するためにBase64と呼ばれる手法によりテキスト化している。
SB703おいて、プリントプロセッサ402は、SB702で生成したメタデータをジョブ管理サービス403へ送信する。なお、米国Microsoft社のWindows(登録商標)の場合、送信プロトコルとして名前付きパイプを使うと高効率である。しかも、後述するユーザトークン取得に関しても名前付きパイプの使用は都合が良い。SB704において、プリントプロセッサ402は、OSのスプーラからスプールデータを読み込む。そして、SB705において、プリントプロセッサ402は、読み込んだスプールデータをジョブ管理サービス403へ送信する。そして、処理を終了する。
次にジョブ管理サービス403によるメタデータ登録処理及び印刷ジョブ保存処理を説明する。ジョブ管理サービス403の処理が開始されると、SC701において、ジョブ管理サービス403は、名前付きパイプのサーバとして機能し、プリントプロセッサ402からSB703で送信されたメタデータを図13に示すようなXML形式で受信する。なお、ジョブ管理サービス403は、プリントプロセッサ402とのコネクションを確立する際に、名前付きパイプのクライアント(即ちプリントプロセッサ402)のユーザトークンを取得する(SC702)。ここで取得されたユーザトークンの使用方法については後述する。
SC703において、ジョブ管理サービス403は、印刷ジョブを保存するファイルパスを決定する。SC704において、ジョブ管理サービス403は、プリントプロセッサ402によるSB705から送信されたEMFSPOOL形式の印刷ジョブを受信する。SC705において、ジョブ管理サービス403は、受信したEMFSPOOL形式の印刷ジョブをSC703で決定したファイル名で保存する。SC706において、ジョブ管理サービス403は、現在の日付・時刻情報を生成する。ここで生成された日時・時刻情報により印刷ジョブ投入時刻とする。
SC707において、ジョブ管理サービス403は、SC701で受信したメタデータと、SC702で取得したユーザトークンと、SC703で決定したファイル名と、SC706で生成した日付・時刻とを新規レコードとしてジョブ管理DB404に登録する。SC708において、ジョブ管理サービス403は、アドレス管理サービス405へ印刷ジョブ識別子登録コマンドを送信する。このとき、ジョブ管理サービス403は、SC701で受信したメタデータに含まれるGUIDとユーザ名も併せて送信する。そして、処理を終了する。
次にアドレス管理サービス405による印刷ジョブ識別子登録処理を説明する。アドレス管理サービス405の処理が開始されると、SD701において、アドレス管理サービス405は、ジョブ管理サービス403からSC708で送信されたGUIDとユーザ名を受信する。なお、アドレス管理サービス405は、ジョブ管理サービス403とのコネクションを確立する際に、プリントサーバ101のIPアドレスを取得する(SD702)。SD703において、アドレス管理サービス405は、SD701で受信したGUID及びユーザ名と、SD702で取得したIPアドレスとを関連付けて図4のアドレス管理DB406に新規レコードとして登録する。そして、処理を終了する。
[第2の制御処理フロー]
図8は、本実施形態に係るプリントシステムにおける第2の制御処理手順の一例を示すフローチャートであり、図4に示した2−1から2−6までの処理手順に対応する。
SEにて示す処理は、図4に示したパネル・アプリケーション407による印刷ジョブ一覧表示処理に対応する。これらフローチャートの処理は、図1に示した複合機102のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SDにて示す処理は、図4に示したアドレス管理サービス405によるアドレス解決処理に対応する。これらフローチャートの処理は、図1に示したアドレス管理サーバ103のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SCにて示す処理は、図4に示したジョブ管理サービス403による印刷ジョブ一覧生成処理に対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション407による印刷ジョブ一覧表示処理を説明する。パネル・アプリケーション407の処理が開始されると、SE801において、パネル・アプリケーション407は、ログイン表示画面(図16(a))を操作部308の表示部に表示するように制御する。そして、SE802において、パネル・アプリケーション407は、ICカード等によるユーザ認証を行う。本実施形態において、ユーザ認証は重要なプロセスではないので、ここでは、認証カードの検出方法やICカードの識別ID取得方法や認証サーバによる認証処理といった詳細説明は省略する。
SE803において、認証結果を判定し、認証エラーである旨の認証結果が得られた場合(SE803にてNO)、SE804にて、パネル・アプリケーション407は、エラー表示画面(図16(b))を操作部308の表示部に表示するように制御する。該エラー表示画面にてOKボタン1411の押下を受け付けると、SE801に戻り、パネル・アプリケーション407は、再度、ログイン表示画面を表示制御する。一方、SE803にて認証が成功したと判定した場合(SE803にてYES)、SE805へ進む。SE805において、パネル・アプリケーション407は、認証に成功したユーザ名を取得する。
SE806において、パネル・アプリケーション407は、アドレス管理サーバ103にSE805にて取得したユーザ名を送信する。SE807において、パネル・アプリケーション407は、アドレス管理サービス405からプリントサーバ101のIPアドレスのリストを受信する。つまり、パネル・アプリケーション407は、アドレス管理サービス405に対し、ユーザ名に対応する印刷ジョブを絞り込み、その印刷ジョブを保持するジョブ管理サービス403のIPアドレスを返信することを要求している。
続くSE808からSE811までは、IPアドレスのリストからIPアドレスを列挙するループ処理である。SE808において、パネル・アプリケーション407は、IPアドレスのリストからIPアドレスを一つ取り出す。SE809において、パネル・アプリケーション407は、IPアドレスを取り出せたか否かを判定する。IPアドレスを取り出せた場合(SE809にてYES)、SE810へ進む。SE810において、パネル・アプリケーション407は、ジョブ管理サービス403に印刷ジョブ一覧要求信号として印刷ジョブ一覧要求コマンドを送信する。このとき、ユーザ名も併せて送信する。
SE811において、パネル・アプリケーション407は、ジョブ管理サービス403から印刷ジョブ一覧を受信する。これにより、一覧取得手段を実現する。ここで受信する印刷ジョブ一覧は、図5の「2−6」行の「送信データ」列にある、GUID、ジョブ名、部数、両面、カラーモード、ページ集約、日付・時刻の情報を有する。具体的には、図14のようなXML形式で表現される。JobList要素は、ジョブの数だけのJobInfo子要素を保持する。JobInfo要素のGuid属性は図13で説明したGuidと同じものである。JobInfo要素のJobName属性も図13で説明したJobNameと同じものである。
一方、DocumentSettings要素が保持する各種属性は図13と異なる。CopyCount属性は、印刷部数を指定する。Duplexing属性は片面印刷を使用するか、両面印刷を使用するかを指定する。具体的には、“OneSided”と記述すると、片面印刷を指定する。“TwoSideLongEdge”と記述すると、両面(長辺綴じ)を指定する。“TwoSidedShortEdge”と記述すると、両面(短辺綴じ)を指定する。OutputColor属性は、色に関する出力方法を指定する。“Color”と記述すると、カラーを指定する。“Monochrome”と記述すると、モノクロを指定する。PagePerSheet属性は、用紙の片面に印刷するように選択できるページ数を指定する。DateTime属性は、ジョブ投入時刻を指定する。
SE808からSE811において、IPアドレスのリストからIPアドレスを取り出し終えると(SE809にてNO)、SE812に進む。そして、パネル・アプリケーション407は、印刷ジョブ一覧表示画面(図16(c))を操作部308の表示部に表示するように制御する。そして、処理を終了する。
次にアドレス管理サービス405によるアドレス解決処理を説明する。アドレス管理サービス405の処理が開始されると、SD801において、アドレス管理サービス405は、パネル・アプリケーション407によるSE806から送信されるユーザ名を受信する。SD802において、アドレス管理サービス405は、図4に示すアドレス管理DB406からSD801で受信したユーザ名と一致するレコードを探索する。
SD803において、アドレス管理サービス405は、探索したレコードから1つのレコードを取り出す。SD804において、アドレス管理サービス405は、レコードを取り出せたか否かを判定する。レコードを取り出せた場合(SD804にてYES)、SD805へ進む。SD805にて、アドレス管理サービス405は、取得したレコードからジョブ管理サービス403が動作するプリントサーバ101のIPアドレスを取得する。SD803からSD805において、探索した全レコードからIPアドレスを取り出し終えると(SD804にてNO)、SD806へ進む。そして、アドレス管理サービス405は、パネル・アプリケーション407へIPアドレスのリストを返信する。そして、処理を終了する。
次にジョブ管理サービス403による印刷ジョブ一覧生成処理を説明する。ジョブ管理サービス403の処理が開始されると、SC801において、ジョブ管理サービス403は、パネル・アプリケーション407のSE810から印刷ジョブ一覧要求を受け付ける。このときユーザ名も併せて受信する。SC802において、ジョブ管理サービス403は、図4のジョブ管理DB404からSC801で得たユーザ名と一致するレコードを探索する。SC803において、ジョブ管理サービス403は、探索したレコードから1つのレコードを取り出す。
SC804において、ジョブ管理サービス403は、レコードを取り出せるか否かを判定する。レコードを取り出せた場合(SC804にてYES)、SC805へ進む。SC805にて、ジョブ管理サービス403は、レコードからGUID、ジョブ名、DEVMODE、仮想プリンタドライバの論理プリンタ名、ユーザトークン、及び日付・時刻を取得する。SC806において、ジョブ管理サービス403は、SC804で得たユーザトークンを使って、自身のスレッドを偽装する。ここでの“偽装”するとは、ジョブ管理サービス403が本来割り当てられた権限の代わりに、取得したユーザトークンの権限を用いて、当該ユーザが実行を許可されている処理を行うものである。スレッドを偽装している間、スレッドは図4のクライアント・アプリケーション400で印刷指示を実行したユーザのセキュリティコンテキストで実行される。
SC807において、ジョブ管理サービス403は、SC805で得たDEVMODEからカラーモード、両面、ページ集約、部数、といった個々の情報を取り出す。DEVMODEは、プリンタドライバが管理するプリンタドライバ固有のデータ形式であるので、DEVMODEから個々の情報を取り出すためには、DEVMODEを生成したプリンタドライバに問い合わせる必要がある。SC807で仮想プリンタドライバに対応する論理プリンタ名を取得済みなので、この論理プリンタ名に基づいてDEVMODEから個々の情報を取り出す。一般に、DEVMODEから個々の情報を取り出す手法としては、プリンタドライバにDEVMODEを操作する独自の拡張インタフェースを設け、その拡張インタフェースを経由することが多い。近年は、プリントチケットと呼ばれる米国Microsoft社が規定したXMLによる印刷設定格納形式を利用する方法も利用ある。即ち、プリンタドライバがプリントチケットをサポートするならば、DEVMODEをプリントチケットに変換し、プリントチケットから個々の情報を取り出してもよい。しかし、この手法に限定するものではない。
SC808において、ジョブ管理サービス403は、スレッドの偽装を解除する。SC803からSC808において、探索した全レコードから個々の印刷設定を取り出し終えると(SC804にてNO)、SC809へ進む。そして、ジョブ管理サービス403は、印刷ジョブ一覧(図14)を生成する。そして、ジョブ管理サービス403は、パネル・アプリケーション407へ印刷ジョブ一覧を返信する。そして、処理を終了する。
なお、上記の処理の中で用いた図16に示す各画面の構成は一例であり、上記構成に限定するものではない。よって、他の構成による画面を用いても構わない。
[第3の制御処理フロー]
図9は、本実施形態に係るプリントシステムにおける第3の制御処理手順の一例を示すフローチャートであり、図4に示した3−1から3−3までの処理手順に対応する。
SEにて示す処理は、図4に示したパネル・アプリケーション407による印刷設定変更確認及び印刷指示処理に対応する。これらフローチャートの処理は、図1に示した複合機102のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SCにて示す処理は、図4に示したジョブ管理サービス403による印刷設定変更処理に対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション407による印刷設定変更確認、及び印刷指示処理を説明する。なお、図8のSE812において、印刷ジョブ一覧表示画面(図16(c))を操作部308の表示部に表示するように制御している。パネル・アプリケーション407の処理が開始されると、SE901において、パネル・アプリケーション407は、印刷ジョブ一覧表示画面を介して印刷ジョブの選択、及びプリントするボタン1422の押下を受け付ける。その後、SE902において、パネル・アプリケーション407は、印刷設定変更画面(図17(a))を操作部308の表示部に表示するように制御する。図17(a)に示す印刷設定変更画面において、設定項目1431は、カラーモードの指定を受け付け、モノクロとカラーのどちらかをチェックできる。設定項目1432は、両面・片面の指定を受け付け、片面、両面(長辺綴じ)、両面(短辺綴じ)のうち1つを選択できる。設定項目1433は、ページ集約の指定を受け付け、1in1、2in1、4in1、6in1、8in1、9in1、16in1のうち1つを選択できる。設定項目1434は、印刷部数の指定を受け付け、1から9999までの値を指定できる。なお、図17(a)に示す画面は、図16(c)において文書名「決算報告書」の印刷ジョブの選択を受け付け、「プリントする」ボタン1422の押下を受け付けた場合の印刷設定変更画面を示している。なお、設定項目、設定内容については、上記内容に限定するものではなく、印刷で用いられるデバイス(複合機102)の機能や状態に応じて変更するようにしても構わない。
SE903において、パネル・アプリケーション407は、指定された印刷設定変更を受け付ける。ここでは、図17(a)における設定項目1432の両面・片面指定を、“片面”から“両面(長辺綴じ)”に変更したとする。SE904において、パネル・アプリケーション407は、印刷設定が変更されたかどうか判定する。変更されていない場合は(SE904にてNO)、SE911へ進む。印刷設定が変更された場合は(SE905)、SE905へ進む。
SE905において、パネル・アプリケーション407は、プリントサーバ101のジョブ管理サービス403へ設定変更が行われた印刷設定情報を送信する。この印刷設定情報は、図5の「3−1」行の「送信データ」列にある、GUID、部数、両面、カラーモード、ページ集約、複合機のモデル名である。具体的には、図15(a)に示すようなXML形式で表現される。JobInfo要素のGuid属性は図13で説明したGuidと同じものである。JobInfo要素のDeviceModelName属性は、図1に示す複合機102のモデル名を記述する。DocumentSettings要素が保持する各種属性は図14で説明したものと同様である。ただし、SE903で“片面”を“両面(長辺綴じ)”に設定を変更しているので、Duplexing属性は“TwoSideLongEdge”になる。これにより、印刷設定変更要求として、印刷設定変更指示を行う。
SE906において、パネル・アプリケーション407は、ジョブ管理サービス403から印刷設定変更指示が反映された印刷設定情報を受信する。これにより、設定取得手段を実現する。この印刷設定情報は、図5の「3−3」行の「送信データ」列にある、GUID、部数、両面、カラーモード、ページ集約である。具体的には、図15(b)に示すようなXML形式で表現される。内容は図15(a)とほぼ同じなので説明は省略する。
SE907において、パネル・アプリケーション407は、SE905で送信した印刷設定情報とSE906で受信した印刷設定情報とを比較する。上述したようにSE905で送信した印刷設定情報においてDuplexing属性を“TwoSideLongEdge”と指定した。しかし、SE906で受信した印刷設定情報のDuplexing属性は“OneSided”であるとする。このように送信設定と受信設定とが一致しないことは原理的に生じうる。例えば、SE903で変更対象外の設定情報として用紙サイズがあるが、図4の1−1の段階で用紙サイズは「はがき」になっていたとする。そして、印刷設定の禁則条件として、用紙が「はがき」の場合、両面・片面指定は「片面」しか選択できないとする。さらには、禁則条件適用の優先度は両面・片面指定よりも用紙サイズの指定の方が高いとする。その場合において、Duplexing属性は常に“OneSided”にならざるを得ない。
パネル・アプリケーション407に、プリンタドライバと同様の高度な禁則処理を実装すれば、図17(a)に示す画面の設定変更入力の時点で両面指定を変更できないようにすることも可能ではある。しかし、この方式を採用した場合には、パネル・アプリケーション407の実装難易度が非常に高くなる。本実施形態のように、パネル・アプリケーション407では印刷設定の禁則処理を行わず、印刷設定を変更した場合、その都度、変更可能かどうかプリンタドライバに問い合わせる方が容易なうえ汎用性も増す。
SE905で送信した印刷設定情報とSE906で受信した印刷設定情報とを比較した結果、差異が無い場合は(SE907にてNO)、SE911へ進む。一方、差異がある場合は(SE907にてYES)、SE908へ進み、パネル・アプリケーション407は、エラー表示画面(図17(b))を操作部308の表示部に表示するように制御する。ここで示す例では、SE906で受信した印刷設定のDuplexing属性は“OneSided”になっているので、図17(b)に示すエラー表示画面の例も「片面」から「両面(長辺綴じ)」に変更できなかった旨の内容となっている。
SE909において、パネル・アプリケーション407は、ユーザから表示部を介して印刷続行指示の入力を受け付ける。図17(b)に示すエラー表示画面のOKボタン1442の押下を受け付けると(SE910にてYES)、SE911へ進む。SE911の印刷指示処理については後述する。そしてSE912へ進む。一方、図17(b)のエラー表示画面のキャンセルボタン1441の押下を受け付けると(SE910にてNO)、SE912へ進む。そしてSE912にて、パネル・アプリケーション407は、図17(b)に示すエラー表示画面及び図17(a)に示す印刷設定変更画面を閉じ、処理を終了する。
次にジョブ管理サービス403による印刷設定変更処理を説明する。ジョブ管理サービス403の処理が開始されると、SC901において、ジョブ管理サービス403は、パネル・アプリケーション407によるSE905から図15(a)に示すようなXML形式で印刷設定を受信する。SC902において、ジョブ管理サービス403は、印刷設定変更のための論理プリンタを生成する。ここでの処理の詳細は図10を用いて後述する。
SC903において、ジョブ管理サービス403は、図4に示すジョブ管理DB404において、SC901で得たGUIDと一致するレコードを探索する。SC904において、ジョブ管理サービス403は、探索して得られたレコードからDEVMODEとユーザトークンを取得する。SC905において、ジョブ管理サービス403は、SC904で取得したユーザトークンを用いて、自身のスレッドを偽装する。スレッドを偽装している間、スレッドは図4のクライアント・アプリケーション400で印刷を実行したユーザのセキュリティコンテキストで実行される。
SC906において、ジョブ管理サービス403は、SC901で得た個々の印刷設定をSC904で得たDEVMODEに適用する。DEVMODEは、プリンタドライバが管理するプリンタドライバ固有のデータ形式であるので、DEVMODEに個々の情報を適用するためには、DEVMODEを生成したプリンタドライバにDEVMODEの更新を依頼する必要がある。ここで、SC902で論理プリンタを生成済みなので、この論理プリンタを使ってDEVMODEに対し個々の情報を適用することになる。一般に、DEVMODEに個々の情報を適用する手法としては、プリンタドライバにDEVMODEを操作する独自の拡張インタフェースを設け、そのインタフェースを経由して適用することが行われる。近年は、プリントチケットと呼ばれる米国Microsoft社が規定したXMLによる印刷設定格納形式を利用する方法もある。即ち、プリンタドライバがプリントチケットをサポートするならば、DEVMODEをプリントチケットに変換し、プリントチケットに対し個々の情報を適用し、プリントチケットからDEVMODEに変換してもよい。なお、上記手法に限定するものではない。
SC907において、ジョブ管理サービス403は、ジョブ管理DB404に保存しているDEVMODEを、SC906で変更したDEVMODEを使って更新する。SC908において、ジョブ管理サービス403は、SC906で更新したDEVMODEからカラーモード、両面、ページ集約、部数、といった個々の情報を取り出す。個々の情報の取り出し方は、図8にて示したSC807と同じである。SC909において、ジョブ管理サービス403は、スレッドの偽装を解除する。SC910において、ジョブ管理サービス403は、パネル・アプリケーション407へ図15(b)に示すようなXML形式で変更した印刷設定を返信する。そして、処理を終了する。
[論理プリンタ生成処理フロー]
図10は、図9のSC902で呼び出される論理プリンタ生成処理のフローチャートである。図4に示したジョブ管理サービス403による印刷ジョブ一覧生成処理に対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
ジョブ管理サービス403の処理が開始されると、SC1001において、ジョブ管理サービス403は、図1に示す複合機102のIPアドレスを取得する。この複合機102のIPアドレスは、パネル・アプリケーション407とのデータ送受信のコネクションが確立した際に入手しておく。SC1002において、ジョブ管理サービス403は、図1の複合機102のモデル名をサポートしたプリンタドライバがすでにプリントサーバ101上にインストールされているか否かを判定する。インストールされていない場合(SC1002にてNO)、SC1003へ進み、ジョブ管理サービス403は、図1の複合機102のモデル名をサポートしたプリンタドライバをプリントサーバ101上にインストールする。そして、SC1004へ進む。一方、SC1002でインストール済みと判定された場合は(SC1002にてYES)、SC1004へ進む。なお、この段階でインストール済みとなったプリンタドライバは、図4に示すプリンタドライバ408に相当し、指示に応じて各種処理を実行する。
SC1004において、ジョブ管理サービス403は、インストール済みのプリンタドライバから構成され、かつ、SC1001で得たIPアドレスを出力ポートとして構成される論理プリンタがプリントサーバ101上に存在するか否か判定する。当該論理プリンタが存在しない場合(SC1004にてNO)、SC1005へ進む。そして、S1005にて、ジョブ管理サービス403は、インストール済みのプリンタドライバを用いて、SC1001で得たIPアドレスを出力ポートとする論理プリンタを生成する。そして、処理を終了する。一方、論理プリンタが存在する場合は(S1004にてYES)、処理を終了する。
[第4の制御処理フロー]
図11は、本実施形態に係るプリントシステムにおける第4の制御処理手順の一例を示すフローチャートであり、図9のSE911で呼び出される印刷指示処理のフローチャートでもある。図4に示した4−1から4−4までの処理手順に対応する。
SEにて示す処理は、図4に示したパネル・アプリケーション407による印刷指示処理に対応する。これらフローチャートの処理は、図1に示した複合機102のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SCにて示す処理は、図4に示したジョブ管理サービス403による印刷処理に対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション407による印刷指示処理を説明する。パネル・アプリケーション407の処理が開始されると、SE1101において、パネル・アプリケーション407は、ジョブ管理サービス403へ印刷要求信号として印刷指示要求コマンドを送信する。このとき選択済みの印刷ジョブのGUIDと複合機102のモデル名も併せて送信する。SE1102において、パネル・アプリケーション407は、ジョブ管理サービス403から印刷実行結果(成否)を受信する。SE1103において、パネル・アプリケーション407は、印刷実行に成功したか否かを判定する。印刷実行が失敗した場合は(SE1103にてYES)、SE1104へ進む。SE1104にて、パネル・アプリケーション407は、エラー表示画面(図17(c))を操作部308の表示部に表示するように制御する。そしてSE1107へ進む。
一方、SE1103において、印刷実行に成功した場合は(SE1103にてNO)、SE1105へ進む。SE1105において、パネル・アプリケーション407は、図17(a)に示すプリント後文書消去チェックボックス1435がチェックされていたか否かを判定する。このプリント後文書消去チェックボックス1435は、ユーザにより指定される。プリント後に削除する指示があった場合(SE1105にてYES)、SE1106へ進み、印刷ジョブを削除する。ここでの処理に関する詳細は図12を用いて後述する。そして、処理を終了する。
次にジョブ管理サービス403による印刷処理を説明する。ジョブ管理サービス403の処理が開始されると、SC1101において、ジョブ管理サービス403は、パネル・アプリケーション407のSE1101から印刷指示コマンドを受信する。このとき、印刷対象の印刷ジョブのGUIDと複合機102のモデル名も併せて受信する。SC1102において、ジョブ管理サービス403は、印刷実行変更のための論理プリンタを生成する。ここでの処理内容は、図9に示すSC902と同じである。詳細は図10を用いて述べた通りである。
SC1103において、ジョブ管理サービス403は、図4に示すジョブ管理DB404からSC1101で取得したGUIDと一致するレコードを探索する。SC1104において、ジョブ管理サービス403は、探索して得られたレコードからEMFSPOOLのファイル名、DEVMODE、及びユーザトークンを取得する。SC1105において、ジョブ管理サービス403は、SC1104で得たユーザトークンを使って、自身のスレッドを偽装する。スレッドを偽装している間、スレッドは図4のクライアント・アプリケーション400で印刷を実行したユーザのセキュリティコンテキストで実行される。
SC1106において、ジョブ管理サービス403は、SC1102で取得した論理プリンタに対し、SC1104で取得したEMFSPOOLとDEVMODEをレンダリングして印刷処理を実行させる。このとき、論理プリンタを構成するプリンタドライバは、PDLを生成し、複合機102に生成したPDLを送信する。SC1107において、ジョブ管理サービス403は、スレッドの偽装を解除する。SC1108において、ジョブ管理サービス403は、パネル・アプリケーション407へ印刷実行結果(成否)を返信する。そして、処理を終了する。
[第5の制御処理フロー]
図12は、本実施形態に係るプリントシステムにおける第5の制御処理手順の一例を示すフローチャートであり、図4に示した5−1から5−4までの処理手順に対応する。
SEにて示す処理は、図4に示したパネル・アプリケーション407による印刷ジョブ削除指示処理に対応する。これらフローチャートの処理は、図1に示した複合機102のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SCにて示す処理は、図4に示したジョブ管理サービス403による印刷ジョブ削除処理に対応する。これらフローチャートの処理は、図1に示したプリントサーバ101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
SDにて示す処理は、図4に示したアドレス管理サービス405による印刷ジョブ識別子登録解除処理に対応する。これらフローチャートの処理は、図1に示したアドレス管理サーバ103のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、パネル・アプリケーション407による印刷ジョブ削除指示処理を説明する。なお、前述した通り、本処理の呼び出しは、図11のSE1106により行われるが、図16(c)に示す消去ボタン1421の押下をユーザから受け付けた場合も同様に当ステップを呼び出すことが可能である。パネル・アプリケーション407の処理が開始されると、SE1201において、パネル・アプリケーション407は、削除対象の印刷ジョブのGUIDを取得する。SE1202において、パネル・アプリケーション407は、ジョブ管理サービス403へ印刷ジョブ削除指示コマンドを送信する。このときSE1201で取得したGUIDも併せて送信する。そして、処理を終了する。
次にジョブ管理サービス403による印刷ジョブ削除処理を説明する。ジョブ管理サービス403の処理が開始されると、SC1201において、ジョブ管理サービス403は、パネル・アプリケーション407のSE1202から印刷ジョブ削除指示コマンドを受信する。このとき、削除対象の印刷ジョブのGUIDも併せて受信する。SC1202において、ジョブ管理サービス403は、アドレス管理サービス405へ印刷ジョブ識別子登録解除コマンドを送信する。このとき、SC1201で取得したGUIDも併せて送信する。
SC1203において、ジョブ管理サービス403は、図4に示すジョブ管理DB404からSC1201で得たGUIDと一致するレコードを探索する。そして、SC1204において、ジョブ管理サービス403は、探索して得られたレコードからEMFSPOOLのファイル名を取得する。SC1205において、ジョブ管理サービス403は、取得したファイル名に対応するEMFSPOOLのファイルを削除する。SC1206において、ジョブ管理サービス403は、図4に示すジョブ管理DB404からSC1203で検索して得られたレコードを削除する。そして、処理を終了する。
次にアドレス管理サービス405による印刷ジョブ識別子登録解除処理を説明する。アドレス管理サービス405の処理が開始されると、SD1201において、アドレス管理サービス405は、ジョブ管理サービス403のSC1202から印刷ジョブ識別子登録解除コマンドを受信する。このとき対象の印刷ジョブ識別子であるGUIDも併せて受信する。SD1202において、アドレス管理サービス405は、図4のアドレス管理DB406からSD1201で取得したGUIDと一致するレコードを探索する。そして、SD1203において、アドレス管理サービス405は、図4のジョブ管理DB404からSD1202で探索し得られたレコードを削除する。そして、処理を終了する。
[システムにおいて発生する課題]
これまで説明してきた本実施形態の係るプリントシステムにおいて、以下のような課題が発生する。条件としては、クライアントPC100においてアプリケーション400から印刷指示されたときに渡される印刷設定の用紙が「ユーザ登録用紙」である場合に発生する。ここでの、「ユーザ登録用紙」とは、各ベンダが用意している用紙の他にユーザが独自に用紙の幅や高さ、余白などを設定し、クライアントPC100の記憶領域に保存することができる用紙のことを指す。このユーザ登録用紙は、Windows OSでは、フォームDB409としてOSに標準で搭載されている。この登録されたユーザ登録用紙は、クライアントPC100内のクライアント・アプリケーションやプリンタドライバからも参照することができ、その用紙の設定を使用して印刷時に用いることも可能である。ただし、このフォームDB409は、そのクライアントPC内からのみ参照可能であり、特別な機構を設けない限り外部からの参照は行えない。ここでの特別な機構とは、例えばWindows OSではサーバ側で共有したプリンタをクライアントPC側でネットワークインストールして使用するポイントアンドプリント接続が挙げられる。
この環境下において、クライアントPCのプリンタドライバはサーバ上のフォームDBの用紙情報を参照できるようになる。このように特別な機構を設けない環境では、フォームDBの用紙情報を外部から参照することはできない。従って、先に示した条件で印刷を行おうとするとユーザが意図した用紙サイズとは全く別の用紙サイズで出力してしまう可能性がある。
具体的な例として図18を使って説明する。プルプリントシステムの詳細な説明は既に行っているので省略する。まず、クライアントPC100のクライアント・アプリケーション400がフォームDB409に登録されている用紙「usr1」(高さ:4200、幅:2970 ※単位は0.1mm)を印刷設定情報に設定して印刷指示したとする。仮想プリンタドライバ401は指定されたusr1のままプリントプロセッサ(不図示)を介してプリントサーバ101のジョブ管理サービス403に印刷ジョブを転送する。転送された印刷ジョブはジョブ管理サービス403によって特定の格納場所(ジョブ管理DB404)に保存される。プリンタドライバ408は複合機102からのプルプリント指示があった場合、ジョブ管理サービス403を介して該当する印刷ジョブを取得し、PDLに変換した後、指示された複合機102に転送する。このとき、プリントサーバ101のプリンタドライバ408は、印刷設定に設定されている用紙の「usr1」がサーバ側のフォームDBに登録されていないため、適当な用紙に変換してしまう。大半のプリンタドライバはデフォルトの用紙(A4)に変換してしまうのでユーザが指定した「usr1」と異なる用紙で印刷されてしまう。
[課題に対する処理]
上記問題を解決するための処理を図19のフローチャートに従って説明する。本説明ではクライアントPC100のプリントプロセッサ402が実装することを想定している。従って、本実施形態においては、以下に述べるフローチャートの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。
まず、プリントプロセッサ402は、仮想プリンタドライバ401より印刷ジョブを受信し、その印刷ジョブに含まれている印刷設定情報から用紙サイズの情報を取得する(SB721)。これにより、第一取得手段を実現する。プリントプロセッサ402は、取得した用紙サイズが「ユーザ登録用紙」か否かを判定する(SB722)。ユーザ登録用紙だった場合(SB722にてYES)、印刷設定情報に定義された用紙サイズの情報を「ユーザ定義用紙」に変換する(SB723)。「ユーザ登録用紙」は、ユーザが新たにフォームDB409に定義した用紙情報であるのに対し、この「ユーザ定義用紙」は、Windowsが標準で定義している用紙である。なお、本処理は、図4に示す1−3の工程においてフォームDB409を参照することにより、実現される。
通常、Windows上で印刷を行う際、クライアント・アプリケーションは印刷設定情報の用紙サイズには予め決められた一意のID(用紙ID)のみを設定する。プリンタドライバは、その用紙IDを参照して印刷する際に用いる用紙を決定する。ただし、用紙IDが「ユーザ定義用紙」である場合には、この用紙IDの他に、印刷処理時に用いられる用紙の幅、高さを別途設定しなければならない。逆にいうと、用紙IDを「ユーザ定義用紙」にしておくと、一般的なプリンタドライバは印刷設定情報に設定された幅と高さの情報を参照して印刷する用紙を決定する。
この機能を利用して、プリントプロセッサ402は、クライアント・アプリケーション400から指定されたユーザ登録用紙に定義された幅と高さの情報をフォームDB409から取得する(SB724)。そして、プリントプロセッサ402は、取得した情報を印刷ジョブの印刷設定情報に設定する(SB725)。これにより、クライアントPC100でユーザがどのような用紙を登録し、その用紙を設定して印刷指示を行ったとしても、プルプリント時には正しい幅と高さでの用紙で出力することが可能となる。
本実施形態では、クライアントPC100のプリントプロセッサ402で実装することを前提としていたが、この処理を仮想プリンタドライバ401で行ってもよい。その場合は、クライアント・アプリケーション400からの印刷指示時(1−1)に渡される印刷設定情報に含まれる用紙サイズの情報で判定する。また、プリントサーバ101のジョブ管理サービス403が行ってもよい。その場合は、クライアントPC100上の仮想プリンタドライバ401、もしくはプリントプロセッサ402が指定されているユーザ登録用紙の幅、高さを印刷ジョブに付加するなどの方法で通知することにより実現できる。この場合には、プリントサーバ101にて、フォームDBを備える構成としても構わない。
本実施形態では、ユーザ登録用紙が指定されている場合に、幅と高さの情報を取得して印刷指示を行った。しかし、この情報に限定されるものではなく、ユーザが印刷時に設定する他の用紙に対する項目について取得しても構わない。
<第二実施形態>
第一実施形態では、印刷設定情報における用紙サイズの情報を「ユーザ登録用紙」から「ユーザ定義用紙」に変更してしまう。そのため、複合機102からのプルプリント時に、ユーザが意図した用紙サイズ以外の印刷設定になり、不整合が発生することがある。
具体的な例として以下に説明する。前提として、複合機102は、ユーザ登録用紙の設定では両面印刷が可能で、ユーザ定義用紙の設定では両面印刷は不可の装置であるとする。まず、クライアントPC100のクライアント・アプリケーション400で用紙サイズを「ユーザ登録用紙」とし、かつ「両面印刷」と設定して印刷指示を行う。この印刷指示に伴う印刷ジョブを受信したプリントプロセッサ402は用紙サイズ(ID)の情報を参照し、「ユーザ登録用紙」から「ユーザ定義用紙」に変更する。複合機102からのプルプリント指示を受けて、プリンタドライバ408はこの印刷ジョブを受け取る。ここで印刷設定情報を参照すると、「ユーザ定義用紙」が設定されているので、両面印刷ができないと判定し、印刷設定情報を「両面印刷」から「片面印刷」に設定変更する。ちなみに、ある印刷設定(用紙サイズ)が原因で別の印刷設定(両面印刷)を変更する処理を禁則処理と呼ぶこともある。「ユーザ定義用紙」に設定が変更された結果、上記禁則処理により、プルプリント時にユーザが意図した両面印刷ではなく、片面印刷で出力されてしまう。
[処理フロー]
上記問題を解決するための処理を図20のフローチャートに従って説明する。以下に述べるフローチャートの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。なお、SB731〜SB735は、第一実施形態において、図19を用いて述べたSB720〜SB725と同じ処理なので説明は省略する。
プリントプロセッサ402は、仮想プリンタドライバ401より受信した印刷ジョブに含まれる印刷設定情報から出力用紙サイズ情報を取得する(SB736)。この出力用紙サイズについての説明は後述する。これにより第二取得手段を実現する。SB737にて、プリントプロセッサ402は、用紙サイズ情報と出力用紙サイズ情報とにおいて設定される用紙サイズが変わらない(同一である)か否かを判定する。ここでは出力用紙サイズの設定値が「用紙サイズと同じ」と設定されているか否かで判定することができる。出力用紙サイズに設定された設定値が「用紙サイズと同じ」である場合(SB737にてYES)、SB733にて変更した「ユーザ登録用紙」を出力用紙サイズに設定する(SB738)。
ここで設定される「出力用紙サイズ」とは、実際に出力する用紙サイズを設定することを想定して定義されている。これは、OSの標準的な定義ではなく、ベンダ独自に定義可能な項目であり、各ベンダで独自にフォーマットが定義されるものである。例えば、Windowsでは、印刷設定のDEVMODE構造体の中で、「標準部」と「拡張部」とがあり、それぞれの部位は目的に応じて用いられる。DEVMODE構造体において、「用紙サイズ」の情報は標準部に定義され、「出力用紙サイズ」の情報は拡張部に定義される。そのため、この出力用紙サイズの設定値は、仮想プリンタドライバ401のDEVMODE構造体の拡張部のフォーマットを解釈可能なプリンタドライバのみ参照できる情報となる。
従って、「標準部」に設定された情報はプリンタドライバ(複合機)に依存せずに使用でき、「拡張部」に設定された情報はプリンタドライバに依存して、使用の可否が異なる。なお、「用紙サイズと同じ」という設定値は、DEVMODE構造体における拡張部の「出力用紙サイズ」の項目に設定可能な値である。また通常のプリンタドライバは用紙サイズに設定された用紙情報よりも出力用紙サイズに設定された用紙情報(出力用紙情報)を優先する。なお、本実施形態において、DEVMODE構造体の拡張部を解釈可能なプリンタドライバは、プリントサーバ101にインストール済みであるものとする。
以上、もしクライアントPC100で登録したユーザ登録用紙と同じ用紙情報をプリントサーバ101にも登録済みであれば、プリンタドライバ408は、ユーザ登録用紙の情報を使って他の印刷設定を禁則するか否かを判定する。ここでのユーザ登録用紙の情報とは、「出力用紙サイズ」に設定された用紙情報となる。その結果、プルプリント時にユーザが設定した両面印刷で出力することが可能となる。
<第三実施形態>
第一実施形態では、印刷設定情報の用紙サイズに「ユーザ登録用紙」を設定された場合に「ユーザ定義情報」に変換する例を説明した。本実施形態では、第二実施形態で説明した印刷設定情報の出力用紙サイズ(拡張部)に「ユーザ登録用紙」が設定された場合も、用紙サイズの設定と同様に設定値を「ユーザ定義用紙」に変換する。これにより、用紙サイズの設定値と出力用紙サイズの設定値との間に生じうる不整合の問題も解決できる。
なお、本実施形態において、指定されたユーザ登録用紙の情報は、標準部に設定されるようにしても良いし、拡張部に設定するようにしてもよい。
<第四実施形態>
また、より詳細な用紙情報をプリントサーバ101に通知するために、プリントプロセッサ402は、印刷設定情報に設定された用紙サイズが「ユーザ登録用紙」だった場合、フォームDB409から余白の情報も取得し、印刷設定に反映する。
これにより、用紙に対する更に詳細な情報を設定し、印刷時に用いることができる。なお、第一実施形態と併せて、幅、高さ、余白の情報を用いて印刷時に設定できる実施形態を示したが、この他の情報を取得するようにしても構わない。例えば、余白の位置(上下左右)について、更に詳細な情報を取得しても構わない。
<第五実施形態>
また、クライアント・アプリケーション400からの印刷指示時に、印刷設定情報に設定された用紙サイズが「ユーザ登録用紙」だった場合、第一実施形態で示したユーザ定義サイズに変更する処理を行うか否かの確認をユーザに提示する。提示する具体的なUIの例を図21に示す。図21に示す確認画面において、ユーザにより「はい」ボタン2101が押された場合、プリントプロセッサ402は第一実施形態に示す処理を行う。一方、ユーザにより「いいえ」ボタン2102が押された場合、用紙サイズの設定が「ユーザ登録用紙」であっても、印刷設定情報の用紙サイズを「ユーザ定義用紙」に変更しないで印刷ジョブを送信する。これは設定したユーザ登録用紙と同様の用紙が予めプリントサーバに登録されていることが分かっている場合などに適用することにより余計な変換処理を省略することが可能となる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (14)

  1. ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバに接続され、特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備える情報処理装置であって、
    ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録手段と、
    前記印刷ジョブの印刷設定情報から用紙情報を取得する第一取得手段と、
    前記第一取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定手段と、
    前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信手段と
    を有することを特徴とする情報処理装置。
  2. 前記印刷設定情報は、印刷装置のベンダに依存しない設定項目からなる標準部と、印刷装置のベンダに依存する設定項目からなる拡張部とから構成されることを特徴とする請求項1に記載の情報処理装置。
  3. 前記標準部の用紙情報において前記ユーザ登録用紙が指定されている場合、前記印刷ジョブの印刷設定情報から前記拡張部の出力用紙情報を取得する第二取得手段を更に有し、
    前記設定手段は、前記標準部の用紙情報において指定される情報と、前記拡張部の出力用紙情報において指定される情報とが同一である場合、前記拡張部の出力用紙情報に、前記標準部の用紙情報において指定されていた前記ユーザ登録用紙を設定することを特徴とする請求項2に記載の情報処理装置。
  4. 前記設定手段は、前記第一取得手段により取得された前記標準部の用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得して前記標準部の用紙情報に設定し、さらに前記標準部の用紙情報において指定されていた前記ユーザ登録用紙を前記拡張部の用紙情報に設定することを特徴とする請求項2に記載の情報処理装置。
  5. 前記ユーザ登録用紙の情報は、用紙の幅と高さの情報を含むことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
  6. 前記ユーザ登録用紙の情報は、余白の情報を更に含むことを特徴とする請求項5に記載の情報処理装置。
  7. 前記用紙情報において前記ユーザ登録用紙が指定されている場合、ユーザに対し、用紙情報を変更して印刷を行うか否かを提示する提示手段を更に有することを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置。
  8. 前記印刷設定情報は、DEVMODE構造体にて定義されていることを特徴とする請求項1乃至7のいずれか一項に記載の情報処理装置。
  9. 前記中間データ形式は、EMFSPOOL形式であることを特徴とする請求項1乃至8のいずれか一項に記載の情報処理装置。
  10. 特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備えるクライアント装置と、ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバと、印刷装置とを有するプリントシステムであって、
    前記クライアント装置は、
    ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録手段と、
    前記印刷ジョブの印刷設定情報から用紙情報を取得する第一取得手段と、
    前記第一取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定手段と、
    前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信手段と
    を有し、
    前記プリントサーバは、
    前記クライアント装置から受信した印刷ジョブを記憶部にて保持する保持手段と、
    受信した印刷要求に応じて、前記記憶部にて保持している前記中間データ形式の印刷ジョブを、前記印刷設定情報を用いて印刷装置に対応するデータ形式に変換し、前記印刷装置に送信する変換手段と
    を有し、
    前記印刷装置は、
    前記プリントサーバに前記印刷要求を送信する指示手段と、
    前記指示手段による印刷要求に応じて前記プリントサーバから送信された印刷ジョブを受信し、印刷を行う印刷手段と
    を有することを特徴とするプリントシステム。
  11. 前記変換手段は、前記クライアント装置から受信した中間データ形式の印刷ジョブを前記印刷装置に対応するPDL形式に変換することを特徴とする請求項10に記載のプリントシステム。
  12. ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバに接続され、特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備える情報処理装置の制御方法であって、
    登録手段が、ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録工程と、
    取得手段が、前記印刷ジョブの印刷設定情報から用紙情報を取得する取得工程と、
    設定手段が、前記取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定工程と、
    送信手段が、前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信工程と
    を有することを特徴とする制御方法。
  13. 特定の機種の印刷装置に依存しない中間データ形式の印刷ジョブを生成するプリンタドライバを備えるクライアント装置と、ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバと、印刷装置とを有するプリントシステムにおける制御方法であって、
    前記クライアント装置において、
    登録手段が、ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録工程と、
    第一取得手段が、前記印刷ジョブの印刷設定情報から用紙情報を取得する第一取得工程と、
    設定手段が、記第一取得工程において取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定工程と、
    送信手段が、前記設定工程において印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを前記プリントサーバへ送信する送信工程と
    を有し、
    前記プリントサーバにおいて、
    保持手段が、前記クライアント装置から受信した印刷ジョブを記憶部にて保持する保持工程と、
    変換手段が、受信した印刷要求に応じて、前記記憶部にて保持している前記中間データ形式の印刷ジョブを、前記印刷設定情報を用いて印刷装置に対応するデータ形式に変換し、前記印刷装置に送信する変換工程と
    を有し、
    前記印刷装置において、
    指示手段が、前記プリントサーバに前記印刷要求を送信する指示工程と、
    印刷手段が、前記指示工程による印刷要求に応じて前記プリントサーバから送信された印刷ジョブを受信し、印刷を行う印刷工程と
    を有することを特徴とする制御方法。
  14. コンピュータを、
    ユーザが予め定義した用紙の情報をユーザ登録用紙として自装置の記憶部に登録する登録手段、
    印刷ジョブの印刷設定情報から用紙情報を取得する取得手段、
    前記取得手段により取得された用紙情報において前記ユーザ登録用紙が指定されている場合、前記記憶部から前記ユーザ登録用紙の情報を取得し、前記印刷設定情報の用紙情報として、前記ユーザ登録用紙の指定の代わりに当該取得された前記ユーザ登録用紙の情報を設定する設定手段、
    前記設定手段により印刷設定情報に前記ユーザ登録用紙の情報が設定された印刷ジョブを、ユーザ登録用紙を独自のデータベースを用いて管理しているプリントサーバへ送信する送信手段
    として機能させるためのプログラム。
JP2011049608A 2011-03-07 2011-03-07 プリントシステム、情報処理装置、制御方法、およびプログラム Expired - Fee Related JP5719198B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011049608A JP5719198B2 (ja) 2011-03-07 2011-03-07 プリントシステム、情報処理装置、制御方法、およびプログラム
US13/397,349 US20120229833A1 (en) 2011-03-07 2012-02-15 Printing system, information processing apparatus, control method, and computer-readable medium
CN201210055254.4A CN102736872B (zh) 2011-03-07 2012-03-05 打印系统、信息处理装置及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011049608A JP5719198B2 (ja) 2011-03-07 2011-03-07 プリントシステム、情報処理装置、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2012185748A JP2012185748A (ja) 2012-09-27
JP5719198B2 true JP5719198B2 (ja) 2015-05-13

Family

ID=46795305

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011049608A Expired - Fee Related JP5719198B2 (ja) 2011-03-07 2011-03-07 プリントシステム、情報処理装置、制御方法、およびプログラム

Country Status (3)

Country Link
US (1) US20120229833A1 (ja)
JP (1) JP5719198B2 (ja)
CN (1) CN102736872B (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924443B2 (en) * 2012-10-05 2014-12-30 Gary Robin Maze Document management systems and methods
JP5928520B2 (ja) * 2014-04-14 2016-06-01 コニカミノルタ株式会社 画像出力システム、画像出力方法、ドキュメントサーバー及びプログラム
JP6370156B2 (ja) 2014-08-06 2018-08-08 キヤノン株式会社 情報処理装置及びその制御方法
JP6145116B2 (ja) * 2015-01-14 2017-06-07 キヤノン株式会社 情報処理装置とその制御方法およびプログラム
JP6447564B2 (ja) * 2016-04-07 2019-01-09 京セラドキュメントソリューションズ株式会社 画像形成装置、プログラム及び情報処理システム
JP6528905B2 (ja) * 2016-05-16 2019-06-12 富士通株式会社 印刷出力方法、印刷出力プログラムおよび印刷出力システム
JP6883196B2 (ja) * 2017-01-24 2021-06-09 富士フイルムビジネスイノベーション株式会社 処理装置、情報処理装置、処理システム、処理プログラム及び情報処理プログラム
JP6848665B2 (ja) 2017-05-12 2021-03-24 株式会社リコー 情報処理装置、電子機器、設定情報利用方法、プログラム
JP7240115B2 (ja) 2018-08-31 2023-03-15 キヤノン株式会社 情報処理装置及びその方法及びコンピュータプログラム
JP7169838B2 (ja) * 2018-10-04 2022-11-11 キヤノン株式会社 印刷装置、その制御方法、及びプログラム
JP2021130245A (ja) * 2020-02-19 2021-09-09 キヤノン株式会社 用紙種類の情報を送信する印刷装置とその制御方法、及びプログラム
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
CN112596689A (zh) * 2020-12-26 2021-04-02 中国农业银行股份有限公司 一种业务凭证的生成方法、装置及设备
JP2022138489A (ja) 2021-03-10 2022-09-26 富士フイルムビジネスイノベーション株式会社 画像形成装置、画像形成システム、及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4345248B2 (ja) * 2001-07-25 2009-10-14 コニカミノルタビジネステクノロジーズ株式会社 印刷データ処理装置、印刷装置、印刷データ処理方法、及び、印刷データ処理プログラム
JP3634784B2 (ja) * 2001-09-14 2005-03-30 キヤノン株式会社 情報処理方法及び印刷制御装置
JP4310172B2 (ja) * 2003-11-12 2009-08-05 キヤノン株式会社 情報処理装置、方法、システム、制御プログラム
EP2458497A1 (en) * 2004-11-24 2012-05-30 Canon Kabushiki Kaisha Information processing apparatus, printing system, and control method therefor
JP2009042977A (ja) * 2007-08-08 2009-02-26 Konica Minolta Business Technologies Inc 画像形成システム、画像形成装置及びプログラム
US20090147295A1 (en) * 2007-12-08 2009-06-11 Konica Minolta Systems Laboratory, Inc. Paper name database in a print shop management system
JP4690449B2 (ja) * 2007-12-26 2011-06-01 キヤノンItソリューションズ株式会社 印刷制御システム、印刷制御サーバ、画像形成装置と、その処理方法及びプログラム
US20100171975A1 (en) * 2009-01-05 2010-07-08 Konica Minolta Systems Laboratory, Inc. Focus Image Centering and Printing on a Specified Paper Size
JP5241522B2 (ja) * 2009-01-07 2013-07-17 キヤノン株式会社 プリンタサーバ、画像形成装置およびこれらを用いた印刷システムとその制御方法ならびにプログラムおよび記録媒体
JP5240170B2 (ja) * 2009-03-18 2013-07-17 株式会社リコー 画像形成装置、プログラムおよび情報処理システム
JP5444881B2 (ja) * 2009-06-26 2014-03-19 株式会社リコー 情報処理装置および情報処理システム
JP5366710B2 (ja) * 2009-08-24 2013-12-11 キヤノン株式会社 情報処理装置、情報処理方法、および情報処理装置制御プログラム
JP2011084066A (ja) * 2009-09-18 2011-04-28 Canon Inc 画像形成装置及びその処理方法

Also Published As

Publication number Publication date
CN102736872A (zh) 2012-10-17
CN102736872B (zh) 2016-03-02
JP2012185748A (ja) 2012-09-27
US20120229833A1 (en) 2012-09-13

Similar Documents

Publication Publication Date Title
JP5854654B2 (ja) プリントシステム、印刷方法、プリントサーバ、制御方法、及びプログラム
JP5719198B2 (ja) プリントシステム、情報処理装置、制御方法、およびプログラム
JP5680926B2 (ja) プリントシステム、印刷方法、プリントサーバ及びその制御方法、並びにプログラム
JP5763904B2 (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
JP6257170B2 (ja) 画像形成システム、並びに画像形成装置及びその制御方法
US8773699B2 (en) Information processing apparatus, printing system, and method for controlling the same
JP2007179197A (ja) プリントシステムおよびプリントサーバおよび印刷管理サーバおよび印刷装置およびプリント方法およびプログラムおよび記録媒体
US8941867B2 (en) Printing system, server apparatus, information processing method, and storage medium
JP2007286831A (ja) プリントシステムおよび印刷管理サーバおよび印刷装置および印刷管理サーバの制御方法および印刷装置の制御方法およびプログラムおよび記憶媒体
JP2008165529A (ja) プリントシステムおよび印刷管理サーバおよび印刷装置および印刷管理サーバの制御方法および印刷装置の制御方法およびプログラム
JP2012181695A (ja) 情報処理装置、プリントシステム、制御方法、及び、プログラム
JP2012221198A (ja) プリントシステム
JP7443054B2 (ja) 印刷システム、印刷装置、制御方法、およびプログラム
JP5764924B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム、記憶媒体
JPWO2013108377A1 (ja) デバイス、情報処理装置、情報処理システム、制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150320

R151 Written notification of patent or utility model registration

Ref document number: 5719198

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees