JP4618610B2 - 印刷制御装置、印刷制御方法、印刷制御プログラム - Google Patents

印刷制御装置、印刷制御方法、印刷制御プログラム Download PDF

Info

Publication number
JP4618610B2
JP4618610B2 JP2004377774A JP2004377774A JP4618610B2 JP 4618610 B2 JP4618610 B2 JP 4618610B2 JP 2004377774 A JP2004377774 A JP 2004377774A JP 2004377774 A JP2004377774 A JP 2004377774A JP 4618610 B2 JP4618610 B2 JP 4618610B2
Authority
JP
Japan
Prior art keywords
printer driver
printer
function
print control
functions
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
JP2004377774A
Other languages
English (en)
Other versions
JP2006185157A5 (ja
JP2006185157A (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 Marketing Japan Inc
Original Assignee
Canon Marketing Japan 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 Marketing Japan Inc filed Critical Canon Marketing Japan Inc
Priority to JP2004377774A priority Critical patent/JP4618610B2/ja
Publication of JP2006185157A publication Critical patent/JP2006185157A/ja
Publication of JP2006185157A5 publication Critical patent/JP2006185157A5/ja
Application granted granted Critical
Publication of JP4618610B2 publication Critical patent/JP4618610B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、複数のプリンタに通信可能に接続される印刷制御装置、印刷制御方法、印刷制御プログラムに関し、特にプリンタドライバの機能の使用許可を制限する印刷制御装置、印刷制御方法、印刷制御プログラムに関する。
従来から、プリンタを共有するためにネットワークを介してクライアントコンピュータとプリンタが接続される構成がとられ、複数のクライアントコンピュータがネットワーク上に接続されたプリンタを共有して使用することができるようになっている。
しかし、機密保持や経費節約の観点から、特定のユーザや特定のクライアントコンピュータからはプリンタへの出力を許可しないように、プリンタの使用を制限したい又はプリンタの機能の使用制限を行いたいというニーズが発生している。
これに対して、例えば、クライアントコンピュータからプリンタに印刷を行う際、「利用者管理ファイル」に記載されている「MachineName」「UserName」「Time」「Status」の情報を元に、印刷ジョブを送信するクライアントコンピュータ名、ログインユーザ名、及び印刷を行う時間等の条件が一致すれば、印刷を許可する印刷システムが知られている(例えば、特許文献1参照)。
また、ネットワーク上に多数のプリンタが存在する場合、ユーザが望む印刷体裁を得るためにどの印刷装置を使用するべきか判断に迷うことがある。特に、どのプリンタが利用できるのかが分からない場合や、プリンタに関し知識の少ないユーザにとっては、難を強いられる。また、ユーザが印刷を実行した後、ユーザが望む印刷出力を得られていない問題が発生する。ユーザの希望する出力を得るために、使用可能のプリンタの中から、ユーザの望む印刷が行えるプリンタを自動で選択し、印刷を行う印刷制御システムが知られている(例えば特許文献2参照)。
この印刷制御システムでは、ユーザが設定した印刷設定にマッチしたプリンタドライバとプリンタを自動選択し、印刷処理を行わせる。また、この印刷制御システムでは、あらかじめグループ分けされたプリンタの中から、選択された機能をより満たすプリンタを自動的に選択する。
特開2001−188663号公報 特開平7−121322号公報
しかしながら、特許文献1の印刷システムは、印刷開始を指示した後、「利用者管理情報ファイル」の参照を行い、プリンタへ印刷ジョブを送信する段階で印刷ができるか否かが決定される。印刷開始を指示した後に、初めて印刷が行えるのかについて結果がわかる仕組みになっている。そのため、印刷開始を指示するまで印刷が行えるか分からないという課題があった。そして、印刷を管理する機構は、プリンタサーバとクライアントとの相互通信でおこなわれており、スタンドアローンなクライアントには適応することができないという課題があった。
また、管理者がクライアントに対して一方的に印刷制限を行った場合には、どのプリンタで印刷が可能で、また利用可能なプリンタではどの機能が利用できるのかが不明である。そこで、希望する条件で印刷できるプリンタを自動的に検索するために特許文献2の技術を利用することが考えられる。
しかしながら、特許文献2では、あらかじめグループ分けされたプリンタ群の中からユーザの希望する機能にマッチするプリンタグループを選択するものであるため、ユーザの要求に応えるプリンタは限られた範囲から選択されることになる。そのため、暗にユーザが望む機能の範囲を狭めてしまっているという課題が挙げられる。
また、特許文献2では、ユーザに対して、プリンタの機能把握を強いる面があるという課題が挙げられる。更には、クライアントが利用可能なプリンタがどれであり、それらから選ぶことが可能な機能が何であるかを示唆することができないので無駄な設定を行ってしまうという欠点を有している。
本発明の目的は、印刷制御装置にインストールされている複数のプリンタドライバが備える機能を示す機能情報を収集し、収集される複数のプリンタドライバの機能情報のうち、使用が制限されない使用可能な機能情報のみを備えた仮想プリンタドライバを生成し、当該生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示し、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えているプリンタドライバが、印刷制御装置にインストールされている場合は、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えている当該プリンタドライバを、印刷データを生成するために用いるプリンタドライバとして、印刷制御装置にインストールされている複数のプリンタドライバの中から選択し、一方、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えているプリンタドライバが、印刷制御装置にインストールされていない場合は、該設定画面を介してユーザの操作により受け付けた機能と、使用が制限されない使用可能な機能と、が一致している数を示す一致度を、印刷制御装置にインストールされているプリンタドライバ毎に計算し、当該計算された一致度が高いプリンタドライバの順番に当該プリンタドライバをユーザが選択するための選択画面を表示し、当該選択画面を介してユーザにより選択されたプリンタドライバを、印刷データを生成するために用いるプリンタドライバとして選択することにより、印刷開始を指示する前に、使用可能な複数のプリンタドライバの機能のみをユーザに認識させ、ユーザによる設定を円滑に行わせると共に、プリンタドライバの選択におけるユーザの煩わしさを軽減する仕組みを提供することにある。
上記目的を達成するため、請求項1の印刷制御装置は、プリンタドライバが備える機能の使用を制限する制限情報を記憶したサーバ及び複数のプリンタと通信可能であり、前記複数のプリンタに対する印刷データを生成するための複数のプリンタドライバがインストールされた印刷制御装置であって、前記印刷制御装置にインストールされているプリンタドライバが備える機能を示す機能情報を記憶する記憶手段と、前記制限情報を前記サーバから取得する制限情報取得手段と、前記制限情報取得手段で取得した制限情報と、前記記憶手段に記憶された機能情報とに従って、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定する判定手段と、前記印刷制御装置にインストールされている複数のプリンタドライバの機能情報を前記記憶手段から収集する収集手段と、前記収集手段により収集される機能情報のうち、前記判定手段で使用が制限されないと判定された複数のプリンタドライバが備える機能を示す機能情報のみを備えた仮想プリンタドライバを生成する生成手段と、前記生成手段により生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示する表示制御手段と、ユーザが操作部を操作することにより、前記表示制御手段により表示された設定画面を介して、前記仮想プリンタドライバが備える機能の選択指示を受け付ける受付手段と、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中にあるかを判定するドライバ判定手段と、前記ドライバ判定手段により、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが前記印刷制御装置にインストールされている複数のプリンタドライバの中にあると判定された場合に、当該プリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択する選択手段と、前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された場合に、前記受付手段で受け付けた機能と、前記判定手段で使用が制限されないと判定された使用可能な機能とが一致している数を示す一致度を、前記印刷制御装置にインストールされているプリンタドライバ毎に計算する計算手段と、前記計算手段で計算された一致度が高いプリンタドライバの順番に、前記印刷データを生成するために用いるプリンタドライバを前記ユーザが選択するための選択画面を表示する選択画面表示手段と、を備え、前記選択手段は、前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された後に前記選択画面表示手段で表示された選択画面を介してユーザにより選択されたプリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択することを特徴とする。
本発明によれば、印刷制御装置にインストールされている複数のプリンタドライバが備える機能を示す機能情報を収集し、収集される複数のプリンタドライバの機能情報のうち、使用が制限されない使用可能な機能情報のみを備えた仮想プリンタドライバを生成し、当該生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示し、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えているプリンタドライバが、印刷制御装置にインストールされている場合は、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えている当該プリンタドライバを、印刷データを生成するために用いるプリンタドライバとして、印刷制御装置にインストールされている複数のプリンタドライバの中から選択し、一方、該設定画面を介してユーザの操作により受け付けた機能の全てを使用可能な機能として備えているプリンタドライバが、印刷制御装置にインストールされていない場合は、該設定画面を介してユーザの操作により受け付けた機能と、使用が制限されない使用可能な機能と、が一致している数を示す一致度を、印刷制御装置にインストールされているプリンタドライバ毎に計算し、当該計算された一致度が高いプリンタドライバの順番に当該プリンタドライバをユーザが選択するための選択画面を表示し、当該選択画面を介してユーザにより選択されたプリンタドライバを、印刷データを生成するために用いるプリンタドライバとして選択することにより、印刷開始を指示する前に、使用可能なプリンタドライバの機能のみをユーザに認識させ、ユーザによる設定を円滑に行わせると共に、プリンタドライバの選択におけるユーザの煩わしさを軽減することができる。
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
図1は、本発明の実施の形態に係る印刷制御装置が適用される印刷システムの構成を示すブロック図である。
図1の印刷システムは、主として印刷制御装置としてのクライアントコンピュータ(以下、「クライアントPC」という)3000とプリンタ1500とを備えている。
図1において、クライアントPC3000に含まれるROM103又は外部メモリ111には、CPU101の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステムプログラム(以下「OS」という)や、クライアントPC3000の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。本実施の形態で使用するOSは、例えば、マイクロソフト社製のウィンドウズ(登録商標)XPを想定するが、これに限るものではない。RAM102は、CPU101の主メモリ又はワークエリアとして機能する。CPU101は、各種処理の実行に際して必要なプログラムや必要なデータ等をRAM102にロードして、プログラムを実行することで各種処理を実現する。
また、入力コントローラ(入力C)105は、キーボード(KB)109や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ(VC)106は、CRTディスプレイ(CRT)110等の表示器への表示を制御する。表示器はCRTだけでなく、液晶ディスプレイ等でもよい。これらは必要に応じて管理者が使用するものである。
メモリコントローラ(MC)107は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、又は各種データ等を記憶するハードディスク(HD)やフロッピー(登録商標)ディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ111へのアクセスを制御する。
通信I/Fコントローラ(通信I/FC)108は、ネットワーク121を介して、外部機器と接続及び通信するものであり、クライアントPC3000の通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信やプリンタ1500との間でデータの送受信等がを実行する。
CPU101は、例えば、RAM102内の表示情報用領域(不図示)でアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT110の表示を可能としている。また、CPU101は、CRT110上の不図示のマウスカーソル等でのユーザ指示を可能とする。
プリンタ1500に含まれるCPU112は、ROM113bのプログラム用ROMに記憶された制御プログラム又は外部メモリ114に記憶された制御プログラム等に基づいてシステムバス115に接続される印刷部(プリンタエンジン)117に出力情報としての画像信号を出力する。また、ROM113bのプログラムROMには、CPU112の制御プログラム等が記憶される。ROM113aのフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ROM113cのデータ用ROMにはハードディスク等の外部メモリ114がないプリンタの場合には、コンピュータ上で利用される情報等も記憶される。
CPU112は入力部118を介してクライアントPC3000との通信処理が可能となっており、プリンタ内の情報等をクライアントPC3000に通知可能に構成されている。RAM119はCPU112の主メモリであり、ワークエリア等として機能する。RAM119は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
なお、RAM119は、出力情報展開領域、環境データ格納領域、NVRAM等としても使用される。ハードディスク(HD)又はICカード等の外部メモリ114は、メモリコントローラ(MC)120によりアクセスを制御される。外部メモリ114は、オプション機器としてコントローラ(MC)120に接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、入力部118には、操作パネルが設けられており、該操作パネルには操作のためのスイッチ又はLED表示器等が配されている。
また外部メモリ111,114は1個に限らず、少なくとも1個以上備えていればよく、メモリコントローラ(MC)107,120は、内蔵フォントにオプションフォントを加えるためのオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、プリンタ1500が図示しないNVRAMを有し、操作パネルからのプリンタモード設定情報を記憶するようにしてもよい。
また、本実施の形態では、プリンタ1500がサポートするページ記述言語(以下、「PDL」という)として、例えば、LIPSというキヤノン社製の比較的高度なPDLであると想定しているが、これに限るものではない。
本発明を実現するための印刷制御プログラム(以下、「プリンタドライバ」という)は外部メモリ111に記録されており、必要に応じてRAM102にロードされることにより、CPU101によって実行される。さらに、本発明に係るプリンタドライバが用いる定義ファイル及び各種情報テーブルは外部メモリ111に格納されており、これらについての詳細な説明は後述する。
図2は、図1に示したクライアントPC3000からプリンタ1500に印刷ジョブデータを送信する際の流れを概略的に示したシステムブロック図である。
クライアントPC3000におけるアプリケーションプログラム(以下、「アプリケーション」という)201、グラフィックエンジン202、プリンタドライバ203及びプリントサブシステム204は、それぞれ図1に示した外部メモリ111に保存されたファイル(プログラムモジュール)として存在し、各ファイルが実行される際には、OSやそのモジュールを利用するモジュールによってRAM102にロードされ実行される。
なお、アプリケーション201及びプリンタドライバ203は、外部メモリ111のFDや不図示のCD−ROM又は後述するネットワーク301を経由して外部メモリ111のハードディスク(HD)に追加可能になっている。
外部メモリ111に保存されているアプリケーション201は、CPU101によってRAM102にロードされて実行される。このアプリケーション201からプリンタ1500に対して印刷を実行させるときには、同様にCPU101によってRAM102にロードされて実行されるグラフィックエンジン202を利用して出力(描画)を行う。
グラフィックエンジン202は、印刷装置毎に用意されたプリンタドライバ203を起動する。これにより、プリンタドライバ203は、CPU101によって外部メモリ111からRAM102にロードされて実行される。グラフィックエンジン202は、このプリンタドライバ203を用いて、アプリケーション201の出力をPDLによるプリンタ制御コマンドに変換する。プリンタドライバ203により変換されたプリンタ制御コマンドは、プリントサブシステム204及び不図示の通信I/FC108を介してプリンタ1500に出力される。
このプリントサブシステム204は、OSによって起動されて、CPU101によって外部メモリ111からRAM102にロードされて実行されるものであり、印刷ジョブのスケジューリング、プリンタ1500との接続制御やプリンタ1500のステータスの管理を行っている。
プリンタドライバ203は、アプリケーション201から指示された印字や描画命令の出力に対してプリンタ制御コマンドを生成し、プリント出力に反映されるようプリンタ1500に指示するだけでなく、プリンタドライバ203やプリンタ1500本体が持つ機能を制御するための設定を行う機能(以下、「ユーザインタフェース」という)と、その設定を記憶する機能、プリンタドライバ203やプリンタ1500本体が持つ能力をアプリケーションやOSに情報提供する機能、上記ユーザインタフェースで設定された機能がプリンタの有する機能である場合にプリンタ制御命令を生成する機能、および該ユーザインタフェースで設定された機能がプリンタドライバ独自で行う機能の場合にその機能を実現する機能等を有する。
図3は、図1に示した印刷システムの変形例を示す構成図である。
図3において、301はネットワークであり、302はローカルインターフェイスであり、複数のクライアントPC3000、1つのプリンタ1500及び1つのプリントサーバ4000がネットワーク301を介して接続されている。プリントサーバ4000には、他のプリンタ1500がローカルインターフェイス302を介して接続されている。
プリンタ1500は、同図に示すように、セントロニクスやUSB等のローカルインタフェース302を介してプリントサーバ4000と接続され、さらに該プリントサーバ4000を介してネットワーク3000に接続される形態であっても、ネットワーク301に直接接続される形態であってもよい。なお、ネットワーク301に直接接続されているプリンタ1500の入力部118は、ネットワークインタフェースカード(NIC)の機能を有するものとする。
プリントサーバ4000を介してネットワーク301に接続されるプリンタ1500に各クライアントPC3000から印刷ジョブを送信する場合、まず各クライアントPC3000は、図2のプリントサブシステム204を介して、プリントサーバコンピュータ4000へ印刷ジョブを送信する。そして、プリントサーバ4000は、各クライアントPC3000から送信されてきた印刷ジョブを、不図示のプリントサーバ4000上のプリントサブシステムを介して、プリンタ1500へ送信する。これにより、各クライアントPC3000は、プリントサーバコンピュータ4000を介して印刷ジョブをプリンタ1500へ送信することができる。
また、ネットワーク301に直接接続されるプリンタ1500に各クライアントPC3000から印刷ジョブを送信する場合、各クライアントPC3000は、プリントサブシステム204を介して、ネットワーク301に直接接続されるプリンタ1500へ印刷ジョブを送信する。
次に、図4のタイミングチャートを用いて、本発明を適用するのに好適なプリンタドライバの基本的な処理の流れについて説明する。
図4は、印刷を行う場合のアプリケーション201、グラフィックエンジン202及びプリンタドライバ203の基本的な処理の流れを示すステータス図であり、特に、図2に示したアプリケーション201、グラフィックエンジン202、プリンタドライバ203の処理に対応する。なお、図2と同一のものには同一の符号を付してある。
図2に示したように、アプリケーション201は、プリンタドライバ203と直接やり取りを行うのではなく、OSの持つグラフィックスエンジン202を介して行うため、アプリケーション201自体は、実際にはグラフィックスエンジン202とやり取りを行う。グラフィックエンジン202はアプリケーション201から指示を受け、プリンタドライバ203に対して指示を行う。
まず、アプリケーション201は、片面/両面設定、ページ単位出力/部数単位出力設定や部数設定などの印刷のための設定をRAM102に確保されたメモリを介してグラフィックエンジン202に通知し、プリンタドライバ203は、グラフィックエンジン202より、その印刷設定とその印刷設定を元にプリンタドライバ203が印刷処理を行う上で必要な情報を格納する、新たにRAM102上に確保されたメモリ領域の初期化要求を受信する(ステップS401)。これにより、プリンタドライバ203は、そのプリンタドライバ203が印刷処理を行うために必要な情報(プリンタドライバ情報)を保持するメモリ領域を確保し、印刷設定に従ってそのメモリ領域を初期化する。
次いで、プリンタドライバ203は、プリンタドライバ203が上記メモリ領域を参照し、受信した初期化処理要求に応じて必要な処理を完了すると、ステップS401で受信した印刷設定に応じたプリンタドライバ203の印刷能力をグラフィックエンジン202に通知する。アプリケーション201は、グラフィックエンジン202より、最終的にプリンタ1500に送信される印刷ジョブとその印刷ジョブに反映する印刷設定とを関連付けるために必要なハンドル値を取得する(ステップS402)。
次に、アプリケーション201が、印刷の開始要求をグラフィックエンジン202に通知すると、プリンタドライバ203は、グラフィックエンジン202より印刷開始要求を受信する(ステップS403)。これにより、プリンタドライバ203は、PDLの生成処理を開始し、まず、プリンタ1500が印刷開始に必要なプリンタ命令を生成する。ただし、プリンタ1500が印刷開始に必要なプリンタ命令を生成する処理は、最初のページ(1ページ目)の印刷処理が開始された時点(アプリケーションからの最初のページの描画指示を受信した時点)でもあっても良い。
さらに、アプリケーション201は、文字やイメージ等の描画オブジェクトの描画を実現するための描画指示をグラフィックエンジン202に対して通知する。プリンタドライバ203は、その描画指示をグラフィックエンジン202より受信する(ステップS404)。これにより、プリンタドライバ203は、指定された描画オブジェクトや改ページ、更には不図示の印刷設定を途中で変更するための要求などを反映したプリンタ制御命令を適宜生成し、プリンタ1500へ出力する。なお、印刷するページ数はアプリケーション201からの指定に因る。
次に、アプリケーション201が、印刷の終了要求をグラフィックエンジン202に通知すると、プリンタドライバ203は、グラフィックエンジン202より印刷終了要求を受信する(ステップS405)。これにより、プリンタドライバ203は、プリンタ1500が印刷終了に必要なプリンタ命令を生成し、PDLの生成処理を終了する。
最後に、アプリケーション201は、ステップS402で取得したハンドル値の破棄要求をグラフィックエンジン202に通知し、プリンタドライバ203は、グラフィックエンジン202より、プリンタドライバ203が印刷処理を行う上で必要な情報を格納するメモリ領域にある情報(プリンタドライバ情報)の破棄要求を受信する。これにより、プリンタドライバ203は、上記プリンタドライバ情報の破棄処理を行う(ステップS406)。
以上に示した、ステップS403〜S405の処理により、プリンタ1500へ送信するための1つのジョブが生成されることになる。
本実施の形態の印刷システムは、図1及び図2で示すプリンタ1500とホストクライアントPC3000からなる印刷システムに加えて、更にアプリケーション201からの印刷データを一旦中間コードデータでスプールする構成を有する。この印刷システムにおいては、一旦スプールした中間コードデータの内容に対して加工することができる。これによりアプリケーション201からの印刷データに対して、拡大縮小や、複数ページを1ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
図5は、グラフィックエンジン202からプリンタドライバ203へ印刷命令を送る際に、一旦中間コードからなるスプールファイル504を生成すべく、プリンタドライバ203が拡張されたシステム構成を示す図である。
図5のシステムでは、中間コードデータをスプールするように、図2のシステムと比べてシステムの拡張がなされている。
図5の拡張されたシステムでは、グラフィックエンジン202からの印刷命令であるDDI関数をディスパッチャ501が受け取る。ディスパッチャ501がグラフィックエンジン202から受け取った印刷命令(DDI関数)が、アプリケーション201からグラフィックエンジン202へ発行された印刷命令(GDI関数)に基づくものである場合には、ディスパッチャ501は外部メモリ111に格納されている内部スプール処理モジュールであるスプーラ503をRAM102にロードし、通常の印字データ作成処理507ではなくスプーラ503へ印刷命令(DDI関数)を送付する。
スプーラ503は受け取った印刷命令を解析し、ページ単位に中間コードに変換してスプールファイル504に出力する。このページ単位に格納されている中間コードのスプールファイルをページ描画ファイル(PDF:Page Description File)という。また、スプーラ503は、プリンタドライバ203に対して設定されている印刷データに関する加工設定(製本印刷、Nup、両面、ステイプル、カラー/モノクロ指定等)をプリンタドライバ203から取得してジョブ単位のファイルとしてスプールファイル504に保存する。
このとき、ジョブ単位で格納されている設定ファイルをジョブ設定ファイル(簡略してSDF:Spool Description Fileということもある)という。このジョブ設定ファイルについては後述する。なお、スプールファイル504は外部メモリ111上にファイルとして生成するが、RAM102上に生成されても構わない。更にスプーラ503は、外部メモリ111に格納されているスプールファイルマネージャ505をRAM102にロードし、スプールファイルマネージャ505に対してスプールファイル504の生成状況を通知する。その後、スプールファイルマネージャ505は、スプールファイル504に保存された印刷データに関する加工設定の内容に従って印刷が実行できるか否かを判断する。
スプールファイルマネージャ505がグラフィックエンジン202を利用して印刷が実行できると判断した際には、外部メモリ111に格納されているデスプーラ506をRAM102にロードし、デスプーラ506に対して、スプールファイル504に記述された中間コードのページ描画ファイルの印刷処理を行うように指示する。
デスプーラ506はスプールファイル504に含まれる中間コードのページ描画ファイルをスプールファイル504に含まれる加工設定情報を含むジョブ設定ファイルに従って加工し、GDI関数を再生成し、もう一度グラフィックエンジン202経由でGDI関数を出力する。
ディスパッチャ501がグラフィックエンジン202から受け取った印刷命令(DDI関数)が、デスプーラ506からグラフィックエンジン202へ発行された印刷命令(GDI関数)に基づいたものである場合には、ディスパッチャ501はスプーラ1103ではなく、プリンタドライバの通常の印字データ作成処理507に印刷命令を送る。プリンタドライバ203はグラフィックエンジン202から取得したDDI関数に基づいてPDL等からなるプリンタ制御コマンドを生成し、プリントサブシステム204経由でプリンタ1500に出力する。
また、図5で示すシステムでは、スプールファイル504の内容に対して加工することができる。これによりアプリケーション201からの印刷データに対して、拡大縮小や、複数ページを1ページに縮小して印刷する等、アプリケーション201の持たない機能を実現することができる。なお、印刷データの加工を行うためには、プリンタドライバ203が提供するウインドウから設定を行い、プリンタドライバ203がその設定内容をRAM102上又は外部メモリ111上に保管する。
図1〜図5で説明したシステム構成を用いて、以下、クライアントPC3000が実行する具体的な処理について説明する。
図6は、図3の印刷システム全体の処理を示すフローチャートである。
まず、クライアントPC3000を起動後、クライアントPC3000のCPU101はプリントサーバ4000に格納されているプリンタチケットを取得するか否かを判別する(ステップS1001)。プリンタチケットとは、プリンタの使用制限について記載されたファイルであり、その内容は、使用可能なプリンタ、ユーザ、クライアントPC名及び使用を制限する機能が記載されている。プリンタチケットの内容の詳細は後述する。プリンタチケットはプリントサーバ4000で一元管理され、管理者によってプリンタチケットの内容の変更や修正が行われる。
上記ステップS1001の判別は、CPU101が外部メモリ111のレジストリ領域(以下、「レジストリ」という)にあるプリンタチケットを取得するか否かを決定するフラグを参照し、当該フラグがオンの場合はプリンタチケットの取得が行われる。
上記ステップS1001の判別の結果、プリンタチケットの取得を行う場合は、クライアントPC3000からプリントサーバ4000に対してネットワーク301を介してプリンタチケット取得のメッセージを送信して、クライアントPC3000はプリントサーバ4000から最新のプリンタチケットを取得し、外部メモリ111に保存する(ステップS1002)。ここではネットワーク経由でプリンタチケットを取得する方法を示したが、フロッピー(登録商標)ディスクやCDROMなどの記録媒体からの取得も可能である。
次いで、CPU101が外部メモリ111に保存されたプリンタチケットファイルの読み込みを行い、プリンタチケットの情報をRAM102又はROM103に記憶する(ステップS1003)。プリンタチケットファイルの読み込み処理の詳細な内容については後述する(図10)。
次に、CPU101がRAM102又はROM103に記憶されたプリンタチケットの制限情報に基づいて、クライアントPC3000で使用できるプリンタドライバの使用許可設定を行う(ステップS1004)。このクライアントPC3000で使用できるプリンタドライバの使用許可又は使用不許可の設定を行う処理の詳細な内容については後述する(図11)。
最後に、CPU101がクライアントのRAM102又はROM103に記憶されたプリンタチケットの制限情報に基づいて、ログインユーザが使用できるプリンタドライバの機能制限の設定を行う(ステップS1005)。このプリンタドライバの機能制限の設定処理の詳細な内容については後述する(図12)。
以上の印刷システム全体の処理では、図3の印刷システムの環境において、各クライアント3000が起動時にプリンタチケットを取得するので、各クライアント3000に対し、常に最新のプリンタ環境を反映することができる。即ち、各クライアント3000が起動時にプリンタチケットを取得することで、各クライアント3000は多様に変化する印刷環境に柔軟に対応することができる。
図7はプリンタチケットの概要を示す図である。図7の左側に記載されている数字は行番号を示し、プリンタチケットの内容を構成するものではない。図8及び図9についても同様である。
プリンタチケットは、ファイルの最初にタグ<PRINTTICKET>(5行目)、ファイルの最後にタグ</PRINTTICKET>(35行目)を記載した形式をとり、ファイルの情報を示すヘッダ部10001(6行目〜12行目)とプリンタの使用許可の判定を行うための条件を示す条件データ部10002(14行目〜34行目)とで構成される。
プリンタチケットヘッダ部10001は、プリンタチケットのフォーマットバージョン(FormatVersion)、ファイルバージョン(FileVersion)、ファイルサイズ(FileSize)、ファイル名(FileName)及び更新日(Update)から構成されている。
条件データ部10002は、印刷を許可又は許可しないプリンタ(ModelName)、ユーザ(User)、クライアントPC(PC)、プリンタの機能(Feature)及び使用の制約をかける機能(RestricFeature)から構成される。
ここで、プリンタチケットのメンバ構造の形式を表1に示す。
Figure 0004618610
プリンタチケットの形式を定義する表1のメンバは、プリンタドライバ又はプリンタドライバに同梱されるアプリケーションの内部で同じ形式が定義されている。プリンタドライバ又はプリンタドライバに同梱されるアプリケーションは、プリンタチケットを読み込む際、このメンバを基準としてプリンタチケットの情報を取得する。
本実施の形態では、表1に記載されたメンバのみを紹介するが、メンバの追加、そのメンバの読み込み、それにともないプリンタドライバ又はプリンタドライバに同梱されるアプリケーションの処理の追加なども実行される。
ヘッダ部10001のメンバは、タグ<PrintTicket.Header>(6行目)とタグ</PrintTicket.Header>(12行目)の間に記述される。条件データ部10002のメンバは、タグ<PrintTicket.EnablePrinter>(14行目)とタグ</PrintTicket.EnablePrinter>(34行目)の間に記述される。
ヘッダ部10001、条件データ部10002の各メンバは必ずタグ<メンバ名>とタグ</メンバ名>で構成され、この間にデータを記述する。
ヘッダ部10001の7行目から11行目に記載されている各メンバのタグ<メンバ名>とタグ</メンバ名>の間の「*印」又は「YYYYMMDD」と記載されている部分にデータを指定する。条件データ部10002の16行目から31行目に記載されている各メンバのタグ<メンバ名>とタグ</メンバ名>の間の「・・・」にデータを入力する。ヘッダ部10001と条件データ部10002は表1に準じたアイテムを記載する。
次に、図7のプリンタチケットの条件データ部10002の説明を行う。
条件データ部10002は、タグ<PrintTicket.EnablePrinter>(14行目)とタグ</PrintTicket.EnablePrinter>(34行目)の間に、各種使用制限の有無及び制限をかけるプリンタグループの個数を示すConstraintsBaseタグ<MEMBERTAG fTag1="ENABLE又はDISABLE " NumTag2="アイテム個数">(15行目)を1つ含み、このNumTag2で示したアイテムの個数分のタグ<EnabelePrinter>(16行目)及びタグ</EnablePrinter>(32行目)を含む。
プリンタグループに対し制限を行うアイテムがある場合、タグ<EnabelePrinter>(16行目)とタグ</EnablePrinter>(32行目)の間にプリンタチケットの条件データ部の各メンバ "ModelName"、 "User"、 "Feature"、 "RestricFeature"に対する制限内容を記述する。この制限内容も、ConstraintsBaseタグを用いて記述される。
ここで、ConstraintsBaseタグ内の「MEMBERTAG」、「fTag1」、「NumTag2」のネーミング規則は次の通りである。「MEMBERTAG」は任意の大文字の文字列であり、例えば、ENABLEPRINTER、MODELIST、USERLISTのように記載する。fTag1のTag1は任意の文字列で、Tag1に"f"を先頭につける。例えば、fEnablePrinter、fModelList、fUserのように記載する。NumTag2のTag2は任意の文字列で、Tag2に"Num"を先頭につける。例えば、NumPrinter、NumModel、NumUserのように記載する。
fTag1はENABLE又はDISABLEを指定し、NumTag2は条件データの各メンバが保持するアイテムの個数を指定する。
fTag1とNumTag2の値の指定によるメンバの解釈は表2の通りである。
Figure 0004618610
図8は、プリンタチケットの一例を示す図である。
同図において、7行目から11行目にはヘッダ部に必要な情報を記載し、14行目から43行目に制限を行うアイテムを記載する。15行目のConstraintsBaseタグは、制限を行うプリンタグループを規定するConstraintsBaseタグであり、制限を行うプリンタグループが1つ存在することを意味する。
17行目から21行目では、制限を行うプリンタを指定する。18行目のConstraintsBaseタグは、使用の制限を行うプリンタについてのCnstraintsBaseタグであり、使用を許可するプリンタが1つあることを示す。19行目ではプリンタ(Printer1)を指定する。
22行目から28行目では使用制限を行うユーザを指定する。23行目のConstraintsBaseタグは、使用を制限するユーザについてのConstraintsBaseタグで、使用を許可するユーザが3ユーザいることを示す。24行目から26行目では使用を許可するユーザ(Administrator、taro、hanako)を指定する。
29行目から32行目では、使用を制限するクライアントを指定する。30行目のConstraintsBaseタグは、使用を制限するクライアントについてのConstraintsBaseタグで、ここでは全てのクライアントが使用可能であることを意味する。この場合、クライアント名を指定する必要はない。
33行目から36行目では使用許可又は不許可とするプリンタの機能を指定する。34行目のタグは、使用の可否を制限するプリンタの機能についてのConstraintsBaseタグで、プリンタの全ての機能は使用可能であることを意味する。この場合、使用を許可又は不許可にするプリンタの機能を指定する必要はない。
37行目から40行目では使用制限を設けるプリンタの機能を指定する。38行目のタグは、使用制限を行うプリンタの機能についてのConstraintsBaseタグで、ここでは全ての機能は使用可能(使用制限を行うプリンタの機能がない)ことを意味する。この場合、使用制限を行うプリンタの機能を記載する必要がない。
図8では、このプリンタチケットを保存しているクライアントPC3000は、Printer1を3人のユーザだけ使用可能であることを意味する。プリンタの機能についての制限や、クライアントPCによる制限はない。
図9は、プリンタチケットの他の一例を示す図である。
図9では、クライアントPC3000にインストールされているプリンタドライバに対し、制限をかけるグループがGroup1(図中の符号10003)とGroup2(図中の符号10004)の2種類存在する。このプリンタチケットを保持するクライアントは、Group1において、Printer1は3人のユーザがClient-0001〜0004のクライアントPCから使用可能で、Printer1の全ての機能が使用できる。そして、Group2では、Printer2とPrinter3は2人のユーザがClient-0001〜0002のクライアントPCから使用可能で、Printer2とPrinter3の中とじ機能(SaddleStitch)、ステイプル機能(Staple)、Z折り機能(Z-fold)、パンチ穴あけ機能(HolePunch)が使用できない。ページのレイアウト(Layout)は用紙1枚に対し2ページ(2PagePerSheet)、4ページ(4PagePerSheet)、6ページ(6PagePerSheet)の指定しかできない。印刷方法(Duplex)は両面印刷(2SidePrint)のみで固定である。
図10は、図6のステップS1003におけるプリンタチケットの読み込み処理を実行するためのフローチャートである。本処理は主としてCPU101が実行する。
まず、プリンタチケットの読み込みで用いる3つのフラグの初期化を実行する(ステップS2001)。これらのフラグは、プリンタチケットの余計な読み込みを避けるために用いられるフラグである。具体的には、bPrintTicketフラグ、bRegPTDataフラグ、bCompareフラグがあり、bPrintTicketフラグは「1」のときに、プリンタチケットの情報の取得が完了したことを表し、bRegPTDataフラグは「1」のときに、レジストリに前回使用したプリンタチケットの情報があることを表し、bCompareフラグは「1」のときに、レジストリにある前回使用したプリンタチケットの情報と今回読み込んだプリンタチケットの情報が同一であることを表す。
次いで、前回使用したプリンタチケットの情報がクライアント3000のレジストリに存在するか否かを判別する(ステップS2002)。レジストリに前回使用したプリンタチケットの情報がある場合には、その情報をRAM102又はROM103に読み込み(ステップS2003)、bRegPTDataフラグに1を設定する(ステップS2004)。
次に、クライアント3000の外部メモリ111にプリンタチケットのファイルが存在するか否かの判別を行う(ステップS2005)。プリンタチケットのファイルがない場合には、プリンタチケットの読み込みを実行せずに、本処理を終了する。一方、プリンタチケットのファイルが存在する場合は、プリンタチケットのヘッダ情報を読み込む(ステップS2006)。
次いで、レジストリに前回使用したプリンタチケットの情報があるか否か、即ち、bRegPTDataフラグが「1」であるか否かを判別し(ステップS2007)、レジストリに前回使用したプリンタチケットの情報がない場合には、プリンタチケットの条件データ部を読み込み(ステップS2011)、bPrintTicketフラグを「1」に設定し(ステップS2012)、本処理を終了する。
ステップS2007において、レジストリに前回使用したプリンタチケットの情報がある場合には、レジストリにある前回使用したプリンタチケットのヘッダ情報が新たにステップS2006で読み込んだプリンタチケットのヘッダ情報と同一であるか否かを判別する(ステップS2008)。ヘッダ情報の比較は、プリンタチケットのヘッダ部のメンバであるファイルバージョン(FileVersion)、ファイルサイズ(FileSize)、ファイル名(FileName)、更新日(Update)のそれぞれについて相違がないか比較を行う。ステップS2008において、ヘッダ情報同士が同一でない場合には、上記ステップS2011に進む。一方、ヘッダ情報同士が同一である場合には、プリンタチケットの読み込みは行わず、レジストリに格納されているプリンタチケットの条件データ部を読み込み(ステップS2009)、bCompareフラグを「1」に設定し(ステップS2010)、bPrintTicketフラグに「1」を設定して(ステップS2012)、本処理を終了する。
図11は、レジストリから読み込まれたプリンタチケットの情報に基づいて、クライアントPC3000にインストールされているプリンタドライバの使用許可又は使用不許可を設定するためのフローチャートである。本処理は主としてCPU101が実行する。
まず、プリンタチケットの情報の取得が完了したか(bPrintTicketフラグ=1?)、即ち、プリンタチケットの情報の読み込みが図6のステップS1003で行われたか否かを判別する(ステップS3001)。
この判別の結果、プリンタチケットの読み込みが行われていない場合には、クライアントPC3000に対してプリンタドライバの使用制限は行わず、前回使用したプリンタチケットの情報がレジストリに存在するか否かを判別する(bRegPTDataフラグ=1?)(ステップS3010)。前回使用したプリンタチケットの情報がレジストリに存在する場合には、レジストリにあるプリンタチケットの情報を削除し(ステップS3011)、本処理を終了する一方、前回使用したプリンタチケットの情報がレジストリに存在しない場合には、ステップS3011の処理をスキップし、本処理を終了する。
上記ステップS3001の判別の結果、プリンタチケットの読み込みが行われていた場合には、クライアントPC3000にインストールされている全てのプリンタドライバを取得する(ステップS3002)。
ステップS3003〜ステップS3005の処理は、ステップS3002で取得したプリンタドライバに対して、プリンタチケットに挙げられている使用許可があるか否かを判別する処理である。
具体的には、取得したプリンタドライバが、使用が許可されているプリンタに対応するものであるか否か(ステップS3003)、ログインユーザに対して使用許可があるか否か(ステップS3004)、及び使用しているPCに対して使用許可があるか否か(ステップS3005)を判別する。ステップS3003〜ステップS3005のいずれか1つでも条件を満たしていない場合、ログインユーザに対するプリンタドライバの使用不許可の情報を外部メモリ111のレジストリに書き込み、設定する(ステップS3006)。
ステップS3003〜ステップS3005の全ての条件を満たす場合、取得した全プリンタドライバに対してステップS3003〜ステップS3005の処理が終了したか否かを判別し(ステップS3007)、処理が終了していない場合には、ステップS3003に戻る一方、処理が終了した場合には、レジストリにある前回使用したプリンタチケットの情報と今回読み込んだプリンタチケットの情報が異なるか否か(bCompareフラグ=0)を判別し(ステップS3008)、異なる場合に、プリンタチケットの情報をレジストリに保存し(ステップS3009)、本処理を終了する。同一の場合には、プリンタチケットの情報をレジストリに保存せずに、本処理を終了する。
以上の処理が終了すると、プリンタチケットに基づいて設定されるプリンタドライバの設定情報(即ち、使用許可又は使用不許可の情報)がレジストリに書き込まれ、保持される。
尚、上記ステップS3004〜S3006の処理は、プリンタチケットの各メンバで指定されているConstraintsBaseタグのfTag1がENABLEの場合であり、DISABLEの場合は各ステップにおける判定条件が反転する。
図12は、プリンタチケットの条件データ部にある情報に基づいてプリンタドライバの機能制限を行う処理を示すフローチャートである。本処理は主としてCPU101が実行する。
まず、プリンタチケットの情報の取得が完了したか(bPrintTicketフラグ=1?)、即ち、プリンタチケットの情報の読み込みが図6のステップS1003で行われたか否かを判別する(ステップS4001)。プリンタチケットの情報の読み込みが行われていない場合、プリンタドライバの機能制限は行わずに本処理を終了する。プリンタチケットの情報の読み込みが行われている場合、図6のステップS1004で設定された使用が許可されているプリンタドライバ(即ち、使用可能なプリンタドライバ)の一覧と、プリンタドライバの機能についてレジストリに記憶されている設定情報を取得する(ステップS4002)。
ステップS4003〜ステップS4006の処理は、使用可能な全プリンタドライバに対して、機能の使用制限を行うため、プリンタドライバ毎に実行される。
具体的には、まず、プリンタチケットの条件データ部のFeatureを参照し、使用許可又は不許可にする機能があるか否かを判別する(ステップS4003)。使用許可又は不許可にする機能がある場合には、その機能について設定を行う(ステップS4004)。この設定は、ステップS4002で取得したレジストリに記憶されているプリンタドライバの設定情報に対して行う。使用許可又は不許可にする機能がない場合には、後述するステップS4005に進む。
次いで、プリンタチケットの条件データ部のRestricFeatureを参照して、使用制限を行う機能があるか否かを判別する(ステップS4005)。使用制限を行う機能がある場合には、使用制限がかけられている機能について制限を設定する(ステップS4006)。設定は、ステップS4002で取得したレジストリに記憶されているプリンタドライバの設定情報に対して行う。使用制限を行う機能がない場合には、ステップS4007に進む。
最後に、全ての使用可能なプリンタドライバに対し、機能制限に係る設定が終了したか否かを判別し(ステップS4007)、終了していない場合には、ステップS4003に戻る一方、終了した場合には、本処理を終了する。
ここで、外部メモリ111にプリンタチケットが存在せず、各クライアント3000が起動時にプリンタチケットを取得できない場合には、CPU101はプリンタチケットに基づいて設定されるプリンタドライバの設定情報(即ち、プリンタドライバの使用許可設定の情報やプリンタドライバの機能制限の設定情報)を無効にする。これにより、レジストリで使用が許可されていないプリンタや使用が制限されている機能についても、使用が可能になる。例えば、社内のコンピュータを自宅に持ち帰って利用するときに、レジストリに記憶されているプリンタの設定情報が自宅では反映できないので、プリンタドライバの設定情報を無効にできないと、自宅のプリンタが一切利用できないという状況が生じ得るが、プリンタドライバの設定情報を無効にできるため、このような状況を回避することができる。
図13は、アプリケーション201から印刷指示をする場合に、クライアントPC3000が実行する処理を示すフローチャートである。
図6のステップS1004で使用可能なプリンタドライバが1つも設定されない場合、アプリケーション201から印刷をユーザが選択しても、アプリケーション201の動作として、印刷処理を行うためのダイアログの表示がされない。そのため、使用可能なプリンタドライバが1つも設定されていない場合は、図13に示すフローの前段で、アプリケーション201が印刷処理自体を制限するため、印刷を実行することができない。
図13に示す処理は、図6のステップS1004で使用可能なプリンタドライバが1つ以上設定されている場合に実行される。
まず、アプリケーション201から印刷を実行する場合、ユーザが印刷データに対して印刷設定を行うか否かを判別する(ステップS5001)。印刷設定とは、アプリケーション201から印刷を行うためのダイアログが表示されたときに、そのダイアログ上にアプリケーション201が準備する印刷の詳細設定を行うためのコントロールが押されたことを意味する。このコントロールとして表示される名称は「プロパティ」や「プリンタの設定」などアプリケーションによって異なる。
ステップS5001でユーザが印刷設定を行わずに印刷をする場合は、通常使うプリンタを選択し、プリンタドライバの機能は初期値の設定で印刷を行う(ステップS5003)。
ステップS5001でユーザが印刷設定を行う場合は、使用可能なプリンタドライバの全機能を表示する擬似ユーザインタフェースをCRT110に表示し、ユーザに希望する印刷機能を選択させる。選択された機能をもとに最適なプリンタドライバに対応するプリンタを自動選択する(ステップS5002)。
次いで、ステップS5002やS5003で選択されたプリンタに対し、他のプリンタを選択するために印刷設定を再度行うか否かを判別する(ステップS5004)。この処理は、アプリケーション201が準備する印刷の詳細設定をおこなうためのコントロールをユーザが選択するか否かに基づいて実行される。このコントロールが選択された場合、再度ステップS5002の処理を実行される。
ステップS5004において、印刷設定を再度行わないと判別された場合は、アプリケーション201が表示する印刷を行うためのダイアログ上で印刷実行ボタンが押下されたか否かを判別する(ステップS5005)。印刷実行ボタンが所定時間内に押下されない場合は、印刷を行わずに、本処理を終了する。一方、印刷実行ボタンが押下された場合は、印刷を実行し(ステップS5006)、本処理を終了する。
図14は、使用可能なプリンタドライバの全機能を表示する擬似ユーザインタフェースを表示する処理及びユーザが選択した機能から最適なプリンタドライバに対応するプリンタを選択する処理を示すフローチャートである。本処理は主としてCPU101が実行する。
まず、使用が許可されているプリンタドライバの一覧とレジストリに保存されている各プリンタドライバの設定情報を取得する(ステップS6001)。
ステップS6001で取得したプリンタドライバの設定情報をもとに、プリンタドライバのユーザインタフェースに表示される機能の一覧を作成する(ステップS6002)。機能一覧の作成は、各プリンタドライバの情報が保存されているレジストリのDEVMODEを参照し、使用可能な機能の一覧を作成する。レジストリの各プリンタドライバのDEVMODEには、プリンタドライバで使用できる機能と使用できない機能が既に設定されている。ステップS6002では、ステップS1005で設定された使用制限のかけられた機能について加味される。使用が禁止されている機能や使用が制限されている機能の項目については、ユーザインターフェース(UI)上には表示しない。例えば、ステイプルできるプリンタがあるが、プリンタチケット内ですべてのプリンタでステイプルが使用できない制約がかけられていた場合、統合UI上にはステイプルのコントロールは表示しない。またプリンタドライバの機能の項目に制限がかけられているケースでは、制限がかけられている項目は表示されない。例えば、N-up印刷(N page/Sheet:1枚の物理用紙に論理ページを何ページ印刷するかを指定する機能)において、プリンタチケット内で2upと4upしか認められていない場合、他の項目1up、6up、8up及び16upは統合UI上には表示されない。
ステップS6002で作成した使用可能な機能一覧からプリンタドライバの全機能を表示するUIを作成し、表示する(ステップS6003)。ユーザはこのユーザインタフェースから印刷設定を行う。
ステップS6003のプリンタドライバの全機能を表示するUIを介したユーザの入力に応じて、印刷機能の選択、即ち印刷設定を行う(ステップS6004)。
ユーザが一通り設定を終えた後、UIを閉じる指示が入力されると、UIを閉じる(ステップS6005)。
次に、ユーザが選択した機能の全てを印刷に反映できるプリンタドライバがある否かを判別する(ステップS6006)。ユーザが選択した機能の全てを印刷に反映できるプリンタドライバがある場合は、そのプリンタドライバに対応するプリンタを印刷で使用するプリンタとして決定し(ステップS6007)、本処理を終了する。
一方、ステップS6006において、ユーザが選択した機能の全てを印刷に反映できるプリンタドライバがない場合には、使用可能なプリンタドライバの機能とユーザが選択した機能とを比較し、両者の機能の一致度の計算を行う(ステップS6008)。両者の機能の一致度の計算は、ユーザが設定した機能と使用可能なプリンタドライバが有している機能とを比較し、機能の一致した数が多いものから高い優先度をつけていく。
そして、優先度の一番高いプリンタドライバに対応するプリンタを印刷を行うプリンタの候補として選択する(ステップS6009)。
ステップS6009で選択されたプリンタで印刷を行うか否かのメッセージをCRT110に表示し、ユーザからの入力に応じて、ステップS6009で選択されたプリンタで印刷を行うか否かを判別する(ステップS6010)。上記メッセージでは、ステップS6009で選択されたプリンタで印刷を行うことについて、「はい」及び「いいえ」のボタンが表示される。
ステップS6010において、選択されたプリンタで印刷を行う(即ち「はい」ボタンが押下された)場合は、そのプリンタを印刷するためのプリンタとして決定し(ステップS6007)、本処理を終了する。
ステップS6010において、選択されたプリンタで印刷を行わない(即ち「いいえ」ボタンが押下された)場合は、次の候補のプリンタがあるか否かを判別する(ステップS6011)。
次の候補のプリンタがある場合には、次に優先度の高いプリンタを候補として選択し(ステップS6012)、ステップS6010に戻る。一方、ステップS6011において、次の候補のプリンタがない場合には、印刷可能なプリンタがない旨のメッセージをCRT110に表示し(ステップS6013)、通常使うプリンタを選択し、その旨のメッセージをCRT110に表示して(ステップS6014)、本処理を終了する。
図15は、図3の印刷システム全体の処理を示すフローチャートであり、図6の変形例である。
図15では、図6で説明した処理に、ステップS1006の仮想プリンタ生成処理が追加されている。図6との違いであるステップS1006について以下に説明する。
ステップS1006では、仮想プリンタに対する仮想プリンタドライバの生成処理を行う。
ステップS1006の処理の開始時には、それまで存在している仮想プリンタドライバの削除を行い、新規に仮想プリンタドライバを生成する。この処理は、プリンタドライバのインストール処理であって、このときに使用可能なプリンタドライバのDEVMODE(プリンタ機能情報)の情報を全て収集して統合し、新たなDEVMODEを生成する。
また、本処理においては、生成した仮想プリンタドライバをデフォルトプリンタ(通常使うプリンタ)として設定する。図16は、アプリケーション201から印刷を行う場合のダイアログの表示例を示し、仮想プリンタ(Virtual Printer)がデフォルトプリンタとして選択されている。
また、ステップS1006で仮想プリンタドライバの生成が行われた場合には、図14のステップS6001及びステップS6002の処理が不要となり、図14の処理を開始するために、アプリケーション201が提供する印刷画面において、ユーザから印刷の設定を行うための詳細設定表示の指示があった場合に、アプリケーション201の提供する印刷画面で指定されているプリンタに対応するプリンタドライバが仮想プリンタドライバであるか否かを判別し、仮想プリンタドライバが指定されている場合には、外部メモリ111に格納されている仮想プリンタドライバ用のプロパティシートを用いて詳細設定用の設定画面を生成する。仮想プリンタドライバが指定されていない場合には、通常のプロパティシートでの詳細設定画面を生成する。図17(A)は、仮想プリンタドライバ用のプロパティシートを用いて生成された詳細設定用の設定画面の一例を示し、図17(B)は、通常のプロパティシートを用いて生成された詳細設定用の設定画面の一例を示す。図17(A)に示すように、仮想プリンタ(Virtual Printer)では、N-up印刷に関し使用制限がかけられて、2up、4up、6upのみが認められている。
以上詳細に説明したように、本実施の形態によれば、CPU101がネットワーク上の所定の位置(例えば、プリントサーバ4000)に存在するプリンタチケットを取得し、該取得したプリンタチケットに基づいて、プリンタドライバを使用可能又は使用不可能にするための設定をレジストリに保持させるので、クライアント3000の起動時には、レジストリが更新され、常に最新のプリンタ環境を反映することができる。結果として、クライアント3000の起動時には、自動的に使用可能なプリンタが決まり、印刷開始を指示する前に、使用可能なプリンタのみをユーザに認識させることができる。
また、プリンタチケットに基づいて、プリンタドライバの機能を使用可能又は使用不可能にするための設定や、使用可能なプリンタドライバの機能に対する制限の設定をレジストリに保持させるので、印刷開始を指示する前に、使用可能なプリンタの機能のみをユーザに認識させることができる。
特に、ユーザ単位、クライアントコンピュータ単位、プリンタ単位でプリンタ使用の制御処理を行い、自動でプリンタの使用許可設定が可能になるので、プリンタ使用に関する管理が容易にできる。またプリンタの機能単位で制限もおこなえるため、印刷枚数の制限や、用紙1枚に出力するページ数の制限、モノクロ印刷に固定など、コスト削減が図ることができる。
また、レジストリに使用可能と設定されている複数のプリンタドライバの機能を統合して、新たに統合されたプリンタドライバの機能が一覧表示され、一覧表示されたプリンタドライバの機能の選択指示が入力されたときに、該入力された選択指示に係るプリンタドライバの機能の全てを印刷に反映できるプリンタドライバがあるか否かが判別され、該入力された選択指示に係るプリンタドライバの機能の全てを印刷に反映できるプリンタドライバがないと判別されたときに、該入力された選択指示に係るプリンタドライバの機能とレジストリに使用可能と設定されている複数のプリンタドライバの機能との一致度が算出され、一致する機能数が最も多いプリンタドライバに対応するプリンタが印刷を行うプリンタとして選択されるので、ユーザの要望に沿ったプリンタの自動選択を実行することができ、プリンタ選択におけるユーザの煩わしさが軽減できる。
また、複数のプリンタドライバの機能を統合して該機能を表示させるユーザインターフェースでは、使用が許可されているプリンタドライバ、使用できるプリンタドライバに課せられた使用禁止機能、及び使用可能なプリンタドライバに課せられた使用制限された機能の少なくとも1つが加味されたユーザインタフェースであるため、ユーザに禁止項目を意識することなく、プリンタの設定を行うことが可能である。これにより、ユーザの印刷設定を円滑におこなわせることができる。
なお、本発明の実施の形態の機能が実行されるものであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN,WAN等のネットワークを介して接続がなされ処理が行われるシステムであっても本発明を適用できる。即ち、該実施の形態で接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
また、本発明の目的は、実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
又、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
本発明の実施の形態に係る印刷制御装置が適用される印刷システムの構成を示すブロック図である。 図1に示したクライアントPC3000からプリンタ1500に印刷ジョブデータを送信する際の流れを概略的に示したシステムブロック図である。 図1に示した印刷システムの変形例を示す構成図である。 印刷を行う場合のアプリケーション201、グラフィックエンジン202及びプリンタドライバ203の基本的な処理の流れを示すステータス図である。 グラフィックエンジン202からプリンタドライバ203へ印刷命令を送る際に、一旦中間コードからなるスプールファイル504を生成すべく、プリンタドライバ203が拡張されたシステム構成を示す図である。 図3の印刷システム全体の処理を示すフローチャートである。 プリンタチケットの概要を示す図である。 プリンタチケットの一例を示す図である。 プリンタチケットの他の一例を示す図である。 図6のステップS1003におけるプリンタチケットの読み込み処理を実行するためのフローチャートである。 レジストリから読み込まれたプリンタチケットの情報に基づいて、クライアントPC3000にインストールされているプリンタドライバの使用許可又は使用不許可を設定するためのフローチャートである。 プリンタチケットの条件データ部にある情報に基づいてプリンタドライバの機能制限を行う処理を示すフローチャートである。 アプリケーション201から印刷指示をする場合に、クライアントPC3000が実行する処理を示すフローチャートである。 使用可能なプリンタドライバの全機能を表示する擬似ユーザインタフェースを表示する処理及びユーザが選択した機能から最適なプリンタドライバに対応するプリンタを選択する処理を示すフローチャートである。 図3の印刷システム全体の処理を示すフローチャートであり、図6の変形例である。 アプリケーション201から印刷を行う場合のダイアログの表示例を示す図である。 (A)は、仮想プリンタドライバ用のプロパティシートを用いて生成された詳細設定用の設定画面の一例を示す図であり、図17(B)は、通常のプロパティシートを用いて生成された詳細設定用の設定画面の一例を示す図である。
符号の説明
101 CPU
102 RAM
103 ROM
104 システムバス
105 入力コントローラ
106 ビデオコントローラ
107 メモリコントローラ
108 通信I/Fコントローラ
109 キーボード
110 CRT
111 外部メモリ(HD、FD)
1500 プリンタ
1501 操作部
3000 クライアントコンピュータ
4000 プリントサーバ

Claims (6)

  1. プリンタドライバが備える機能の使用を制限する制限情報を記憶したサーバ及び複数のプリンタと通信可能であり、前記複数のプリンタに対する印刷データを生成するための複数のプリンタドライバがインストールされた印刷制御装置であって、
    前記印刷制御装置にインストールされているプリンタドライバが備える機能を示す機能情報を記憶する記憶手段と、
    前記制限情報を前記サーバから取得する制限情報取得手段と、
    前記制限情報取得手段で取得した制限情報と、前記記憶手段に記憶された機能情報とに従って、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定する判定手段と、
    前記印刷制御装置にインストールされている複数のプリンタドライバの機能情報を前記記憶手段から収集する収集手段と、
    前記収集手段により収集される機能情報のうち、前記判定手段で使用が制限されないと判定された複数のプリンタドライバが備える機能を示す機能情報のみを備えた仮想プリンタドライバを生成する生成手段と、
    前記生成手段により生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示する表示制御手段と、
    ユーザが操作部を操作することにより、前記表示制御手段により表示された設定画面を介して、前記仮想プリンタドライバが備える機能の選択指示を受け付ける受付手段と、
    前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中にあるかを判定するドライバ判定手段と、
    前記ドライバ判定手段により、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが前記印刷制御装置にインストールされている複数のプリンタドライバの中にあると判定された場合に、当該プリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択する選択手段と、
    前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された場合に、前記受付手段で受け付けた機能と、前記判定手段で使用が制限されないと判定された使用可能な機能とが一致している数を示す一致度を、前記印刷制御装置にインストールされているプリンタドライバ毎に計算する計算手段と、
    前記計算手段で計算された一致度が高いプリンタドライバの順番に、前記印刷データを生成するために用いるプリンタドライバを前記ユーザが選択するための選択画面を表示する選択画面表示手段と、
    を備え
    前記選択手段は、前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された後に前記選択画面表示手段で表示された選択画面を介してユーザにより選択されたプリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択することを特徴とする印刷制御装置。
  2. 前記制限情報取得手段は、前記印刷制御装置の起動時に前記制限情報を前記サーバから取得し、
    前記制限情報取得手段で、該印刷制御装置の起動時に前記制限情報を前記サーバから取得できたかを判定する制限情報取得判定手段と、
    前記制限情報取得判定手段で、起動時に前記制限情報を前記サーバから取得できないと判定された場合に、起動前に前記制限情報取得手段で取得した前記制限情報によるプリンタドライバが備える機能の使用の制限を無効にする無効手段と、
    を更に備えることを特徴とする請求項に記載の印刷制御装置。
  3. 前記制限情報は、更に、前記印刷制御装置にインストールされているプリンタドライバの使用を制限するユーザを示すユーザ情報を含み、
    前記印刷制御装置にログインしたユーザが、前記制限情報取得手段で取得した制限情報により、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定するユーザ判定手段、
    を更に備え、
    前記生成手段は、前記収集手段により収集される機能情報のうち、前記判定手段で使用が制限されないと判定され、かつ前記ユーザ判定手段で前記ユーザによる使用が制限されないと判定されたプリンタドライバが備える機能を示す機能情報のみを備えた仮想プリンタドライバを生成することを特徴とする請求項1又は2に記載の印刷制御装置。
  4. 前記制限情報は、更に、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用を制限するコンピュータを示すコンピュータ情報を含み、
    前記情報処理装置が、前記制限情報取得手段で取得した制限情報により、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定するコンピュータ判定手段と、
    を更に備え、
    前記生成手段は、前記収集手段により収集された機能情報のうち、前記判定手段で使用が制限されないと判定され、かつ前記ユーザ判定手段で前記ユーザによる使用が制限されないと判定され、かつ前記コンピュータ判定手段で前記情報処理装置による使用が制限されないと判定されたプリンタドライバの機能を示す機能情報のみを備えた仮想プリンタドライバを生成することを特徴とする請求項に記載の印刷制御装置。
  5. プリンタドライバが備える機能の使用を制限する制限情報を記憶したサーバ及び複数のプリンタと通信可能であり、前記複数のプリンタに対する印刷データを生成するための複数のプリンタドライバがインストールされており、当該インストールされているプリンタドライバが備える機能を示す機能情報を記憶する記憶手段を備えた印刷制御装置における印刷制御方法であって、
    前記印刷制御装置の制限情報取得手段が、前記制限情報を前記サーバから取得する制限情報取得工程と、
    前記印刷制御装置の判定手段が、前記制限情報取得工程で取得した制限情報と、前記記憶手段に記憶された機能情報とに従って、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定する判定工程と、
    前記印刷制御装置の収集手段が、前記印刷制御装置にインストールされている複数のプリンタドライバの機能情報を前記記憶手段から収集する収集工程と、
    前記印刷制御装置の生成手段が、前記収集工程にて収集される機能情報のうち、前記判定工程で使用が制限されないと判定された複数のプリンタドライバが備える機能を示す機能情報のみを備えた仮想プリンタドライバを生成する生成工程と、
    前記印刷制御装置の表示制御手段が、前記生成工程にて生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示する表示制御工程と、
    前記印刷制御装置の受付手段が、ユーザが操作部を操作することにより、前記表示制御工程にて表示された設定画面を介して、前記仮想プリンタドライバが備える機能の選択指示を受け付ける受付工程と、
    前記印刷制御装置のドライバ判定手段が、前記受付工程で受け付けた機能の全てを、前記判定工程で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが前記印刷制御装置にインストールされている複数のプリンタドライバの中にあるかを判定するドライバ判定工程と、
    前記ドライバ判定工程により、前記受付工程で受け付けた機能の全てを、前記判定工程で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中にあると判定された場合に、当該プリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択する選択工程と
    前記印刷制御装置の計算手段が、前記ドライバ判定工程で、前記受付工程で受け付けた機能の全てを、前記判定工程で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された場合に、前記受付工程で受け付けた機能と、前記判定工程で使用が制限されないと判定された使用可能な機能とが一致している数を示す一致度を、前記印刷制御装置にインストールされているプリンタドライバ毎に計算する計算工程と、
    前記印刷制御装置の選択画面表示手段が、前記計算工程で計算された一致度が高いプリンタドライバの順番に、前記印刷データを生成するために用いるプリンタドライバを前記ユーザが選択するための選択画面を表示する選択画面表示工程とを備え
    前記選択工程は、前記ドライバ判定工程で、前記受付工程で受け付けた機能の全てを、前記判定工程で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された後に前記選択画面表示工程で表示された選択画面を介してユーザにより選択されたプリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択することを特徴とする印刷制御方法。
  6. プリンタドライバが備える機能の使用を制限する制限情報を記憶したサーバ及び複数のプリンタと通信可能であり、前記複数のプリンタに対する印刷データを生成するための複数のプリンタドライバがインストールされており、当該インストールされているプリンタドライバが備える機能を示す機能情報を記憶する記憶手段を備えた印刷制御装置における印刷制御方法をコンピュータに実行させるための印刷制御プログラムであって、
    前記印刷制御装置を
    記制限情報を前記サーバから取得する制限情報取得手段
    記制限情報取得手段で取得した制限情報と、前記記憶手段に記憶された機能情報とに従って、前記印刷制御装置にインストールされているプリンタドライバが備える機能の使用が制限されるかを判定する判定手段
    記印刷制御装置にインストールされている複数のプリンタドライバの機能情報を前記記憶手段から収集する収集手段
    記収集手段より収集される機能情報のうち、前記判定手段で使用が制限されないと判定された複数のプリンタドライバが備える機能を示す機能情報のみを備えた仮想プリンタドライバを生成する生成手段
    記生成手段より生成された仮想プリンタドライバが備える機能情報に示される機能のみを選択可能な設定画面を表示する表示制御手段
    ーザが操作部を操作することにより、前記表示制御手段より表示された設定画面を介して、前記仮想プリンタドライバが備える機能の選択指示を受け付ける受付手段
    記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが前記印刷制御装置にインストールされている複数のプリンタドライバの中にあるかを判定するドライバ判定手段
    前記ドライバ判定手段により、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中にあると判定された場合に、当該プリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択する選択手段、
    前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された場合に、前記受付手段で受け付けた機能と、前記判定手段で使用が制限されないと判定された使用可能な機能とが一致している数を示す一致度を、前記印刷制御装置にインストールされているプリンタドライバ毎に計算する計算手段、
    前記計算手段で計算された一致度が高いプリンタドライバの順番に、前記印刷データを生成するために用いるプリンタドライバを前記ユーザが選択するための選択画面を表示する選択画面表示手段として機能させ、
    前記選択手段を、前記ドライバ判定手段で、前記受付手段で受け付けた機能の全てを、前記判定手段で使用が制限されないと判定された使用可能な機能として備えているプリンタドライバが、前記印刷制御装置にインストールされている複数のプリンタドライバの中に無いと判定された後に前記選択画面表示手段で表示された選択画面を介してユーザにより選択されたプリンタドライバを、前記印刷データを生成するために用いるプリンタドライバとして選択するように機能させるための印刷制御プログラム。
JP2004377774A 2004-12-27 2004-12-27 印刷制御装置、印刷制御方法、印刷制御プログラム Expired - Fee Related JP4618610B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004377774A JP4618610B2 (ja) 2004-12-27 2004-12-27 印刷制御装置、印刷制御方法、印刷制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004377774A JP4618610B2 (ja) 2004-12-27 2004-12-27 印刷制御装置、印刷制御方法、印刷制御プログラム

Publications (3)

Publication Number Publication Date
JP2006185157A JP2006185157A (ja) 2006-07-13
JP2006185157A5 JP2006185157A5 (ja) 2008-10-16
JP4618610B2 true JP4618610B2 (ja) 2011-01-26

Family

ID=36738231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004377774A Expired - Fee Related JP4618610B2 (ja) 2004-12-27 2004-12-27 印刷制御装置、印刷制御方法、印刷制御プログラム

Country Status (1)

Country Link
JP (1) JP4618610B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5031539B2 (ja) * 2007-12-19 2012-09-19 キヤノン株式会社 印刷システム、印刷装置及び印刷方法
JP4723008B2 (ja) * 2009-04-16 2011-07-13 シャープ株式会社 ネットワーク印刷システム、その印刷システムに用いられるサーバコンピュータ、コンピュータプログラム、そのプログラムを記録した記録媒体及びプリンタドライバ
JP5900833B2 (ja) 2011-09-29 2016-04-06 ブラザー工業株式会社 印刷処理プログラム、印刷処理方法
JP5668002B2 (ja) * 2012-03-08 2015-02-12 株式会社沖データ 印刷システム
JP6983614B2 (ja) * 2017-10-16 2021-12-17 キヤノン株式会社 プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188663A (ja) * 2000-01-04 2001-07-10 Ricoh Co Ltd プリント管理方法,プリンタシステムとそのユーザ用及び管理者用ホストコンピュータ,並びに記録媒体
JP2001202214A (ja) * 2000-01-18 2001-07-27 Riso Kagaku Corp 印刷システム、印刷方法および印刷プログラムを格納したコンピュータ読取り可能な記録媒体
JP2004005697A (ja) * 2003-05-30 2004-01-08 Riso Kagaku Corp 印刷システム、印刷方法および仮想プリンタドライバプログラムを格納したコンピュータ読取り可能な記録媒体
JP2004133653A (ja) * 2002-10-10 2004-04-30 Ricoh Co Ltd 印刷制御方法と印刷システム
JP2004220532A (ja) * 2003-01-17 2004-08-05 Sharp Corp 印刷制御システム及び印刷制御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105349A (ja) * 1996-10-02 1998-04-24 Matsushita Electric Ind Co Ltd プリンタドライバ

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188663A (ja) * 2000-01-04 2001-07-10 Ricoh Co Ltd プリント管理方法,プリンタシステムとそのユーザ用及び管理者用ホストコンピュータ,並びに記録媒体
JP2001202214A (ja) * 2000-01-18 2001-07-27 Riso Kagaku Corp 印刷システム、印刷方法および印刷プログラムを格納したコンピュータ読取り可能な記録媒体
JP2004133653A (ja) * 2002-10-10 2004-04-30 Ricoh Co Ltd 印刷制御方法と印刷システム
JP2004220532A (ja) * 2003-01-17 2004-08-05 Sharp Corp 印刷制御システム及び印刷制御方法
JP2004005697A (ja) * 2003-05-30 2004-01-08 Riso Kagaku Corp 印刷システム、印刷方法および仮想プリンタドライバプログラムを格納したコンピュータ読取り可能な記録媒体

Also Published As

Publication number Publication date
JP2006185157A (ja) 2006-07-13

Similar Documents

Publication Publication Date Title
US7852497B2 (en) Method of controlling printing control apparatus
US7839516B2 (en) Printing control method and apparatus
US9043730B2 (en) Data processing apparatus, data processing method of data processing apparatus, and computer-readable memory medium storing program therein
US8775313B2 (en) Printing control method, apparatus and storage medium therefor, and printing system
US7102783B2 (en) Printing data processing apparatus and method
US7372590B2 (en) Printing method, printing apparatus, printing program executable by information processing apparatus, and computer-readable storage medium storing program
US20040036908A1 (en) Information processing apparatus, print system, printing control method for information processing apparatus, and printing control program
US20050190395A1 (en) Information processing apparatus, method for enhancing print function, computer-readable program for enhancing print function, printer, print method, and print system
CN112352218A (zh) 信息处理装置、控制方法及程序
US20090109473A1 (en) Information processing device, information processing method, and computer-readable storage medium
KR101406749B1 (ko) 정보처리장치 및 그 제어 방법
US20110134466A1 (en) Print server, method for generating print setting screen, and storage medium
JP2006277345A (ja) デバイスドライバおよびそのカスタマイズ用プログラム、情報処理装置および情報処理方法
US8688864B2 (en) Information processing apparatus, information processing method, and information processing program
KR101631605B1 (ko) 인쇄제어 단말장치 및 인쇄제어방법
JP4618610B2 (ja) 印刷制御装置、印刷制御方法、印刷制御プログラム
JP2002014797A (ja) 情報処理装置、印刷制御装置、およびその制御方法、および記憶媒体、およびその制御プログラム
US20090254987A1 (en) Information processing apparatus, computer-readable recording medium, output control method and system
JP3884876B2 (ja) 情報処理装置、情報処理方法及びコンピュータ読み取り可能なプログラムが格納された記憶媒体
JP2006189920A (ja) ユーザインタフェース装置、ユーザインタフェースの表示方法及びプログラム
JP4539975B2 (ja) 印刷設定制御装置、その制御方法及びプログラム
JP2003241934A (ja) 印刷制御プログラム、印刷制御方法及び情報処理装置
JP3833090B2 (ja) 制御方法、制御装置、プログラム及び記憶媒体
JP4323982B2 (ja) 情報処理方法、及び、情報処理装置、及び、プログラム、並びに、記憶媒体
JP2003241915A (ja) 印刷制御プログラム、印刷制御方法、印刷システム及び情報処理装置

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060420

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100820

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: 20101013

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101019

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4618610

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141105

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees