JP4542719B2 - Printer and printing method using the printer - Google Patents

Printer and printing method using the printer Download PDF

Info

Publication number
JP4542719B2
JP4542719B2 JP2001085699A JP2001085699A JP4542719B2 JP 4542719 B2 JP4542719 B2 JP 4542719B2 JP 2001085699 A JP2001085699 A JP 2001085699A JP 2001085699 A JP2001085699 A JP 2001085699A JP 4542719 B2 JP4542719 B2 JP 4542719B2
Authority
JP
Japan
Prior art keywords
user
print
printer
print job
password
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
JP2001085699A
Other languages
Japanese (ja)
Other versions
JP2002283668A (en
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2001085699A priority Critical patent/JP4542719B2/en
Publication of JP2002283668A publication Critical patent/JP2002283668A/en
Application granted granted Critical
Publication of JP4542719B2 publication Critical patent/JP4542719B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、プリンタおよびこのプリンタとホスト装置によって構成されるプリントシステム並びに該ホスト装置に実装されるプリンタドライバに関する。
【0002】
【従来技術】
ユーザは、ホスト装置上の電子的なアプリケーションデータをプリンタに印刷させることにより、印刷物を得ることができる。すなわち、ユーザにより印刷の指示が与えられたホスト装置は、ワードプロセッサ等のアプリケーションプログラムにおけるアプリケーションデータをプリンタドライバに引き渡してプリントジョブデータに変換した後、これをプリンタに送信する。プリンタは、ホスト装置から送信されるプリントジョブデータを解釈して、ラスタ形式のイメージデータを生成し、この生成したイメージデータを一旦イメージメモリに保持する。その後、プリンタは、展開したイメージデータをプリントエンジンに供給し、印刷媒体にインクなどの記録材料を定着させて、印刷を実現する。
【0003】
近年では、さまざまな機能を実装した高機能プリンタも登場している。例えば、プリントジョブデータの記述言語(プリンタ言語)として知られる"ESC/Page"や"Postscript"等のそれぞれの言語をサポートするために複数の言語解釈機能を実装したプリンタや、デジタルスチルカメラで得られた写真画像をより高品質に印刷するための自動補正機能を実装したプリンタがある。
【0004】
【発明が解決しようとする課題】
プリンタにどのような機能が実装されるか、つまりプリンタの仕様は、開発段階において決定される。つまり、従前のプリンタは、仕様にしたがって予め実装された機能のみを提供することができのであって、実装されていない機能を提供することはできなかった。したがって、ある機能を実装していないプリンタに当該機能を追加的に実装しようとする場合には、仕様の変更に伴う新たなプリンタとして開発する必要があり、拡張性・柔軟性に乏しかった。また、実際に追加のため仕様の変更をするとなると、そのための膨大な開発コストがかかるという問題があった。一方、このような仕様の変更を避けるため、当初からあらゆる機能をプリンタに実装させようとすると、かえってコスト高につながるため、現実的ではなかった。
【0005】
そこで、本発明は、ユーザの個々の要求に柔軟に対応できる機能拡張性に優れたプリンタおよびこのプリンタを用いた印刷方法を提供することを課題としている。
【0006】
より具体的には、本発明は、ユーザの要求にしたがって、その都度、機能拡張が行われるプリンタおよびこのプリンタを用いた印刷方法を提供することを課題としている。
【0007】
【課題を解決するための手段】
本発明の要旨は、ユーザの要求にしたがって、その都度、プリンタに付加的な機能が外部から組み込まれ、これにより、当該付加的な機能が利用可能になるというものである。したがって、本発明によれば、拡張性・柔軟性に優れたプリンタおよびこのプリンタを用いた印刷方法が提供されることになる。
【0008】
本発明は、付加機能モジュールおよびプリントコマンドデータを含むプリントジョブデータを受け付ける受付手段と、前記受け付けたプリントジョブデータに含まれる付加機能モジュールを解釈し、所定の処理を実行する第1の解釈手段と、前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する第2の解釈手段と、前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する印刷実行手段と、を備えたことを特徴とするプリンタである。なお、前記第2の解釈手段そのものが付加機能モジュールを解釈する前記第1の解釈手段によって実現されてもよい。
【0009】
また、前記付加機能モジュールは親展印刷機能モジュールであってもよい。この場合には、前記第1の解釈手段は、前記親展印刷機能モジュールを解釈することにより、ユーザ認証のための所定の入力をユーザに促す入力手段と、前記ユーザによる入力に基づいてユーザ認証を行う認証手段と、を実現する。
【0010】
さらに、前記第1の解釈手段は、前記親展印刷機能モジュールを解釈することにより、実現した認証手段が、前記ユーザによる入力が妥当であると判断した場合に、前記受け付けたプリントジョブデータのうち、前記ユーザに関するプリントジョブデータを提示する提示手段を実現する。
【0011】
また、本発明は、ホスト装置側に実装されるプリンタドライバとしても把握される。すなわち、本発明は、プリンタに設けられた所定の解釈手段によって解釈され、前記プリンタに所定の機能を実現させる付加機能モジュールからなる付加機能モジュールライブラリと、ホスト装置に、所定の印刷対象データに基づいてプリントコマンドデータを生成させる第1の生成手段と、前記ホスト装置に、前記付加機能モジュールライブラリのうちの特定の付加機能モジュールを記憶と前記プリントコマンドデータとに基づいてプリントジョブデータを生成させる第2の生成手段と、を備えたことを特徴とするプリンタドライバおよびこのプリンタドライバを記録した記録媒体である。前記付加機能モジュールライブラリは、例えば、前記ホスト装置のハードディスクにインストールされ、そこに保持される。
【0012】
前記プリンタドライバは、付加機能モジュールを選択させるためにユーザに入力を促すように前記ホスト装置を機能させる手段をさらに備えてもよい。
【0013】
さらに、本発明は、プリンタに印刷処理を実現させるプリントジョブデータであって、前記プリントジョブデータは、前記プリンタが受け付けたプリントジョブデータに含まれる付加機能モジュールを解釈し、所定の処理を実行する第1の解釈手段と、前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する第2の解釈手段と、前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する印刷実行手段として、前記プリンタを機能させることを特徴とするプリントジョブデータである。
【0014】
さらにまた、本発明は、ホスト装置とプリンタとから構成されるプリントシステムにおいて、前記ホスト装置には、プリンタに設けられた所定の解釈手段によって解釈され、前記プリンタに所定の機能を実現させる付加機能モジュールからなる付加機能モジュールライブラリと、所定の印刷対象データに基づいてプリントコマンドデータを生成させる第1の生成手段と、前記付加機能モジュールライブラリのうちの特定の付加機能モジュールを記憶と前記プリントコマンドデータとに基づいてプリントジョブデータを生成させる第2の生成手段と、を備えたプリンタドライバが実装され、前記プリンタは、前記付加機能モジュールおよび前記プリントコマンドデータを含むプリントジョブデータを受け付ける受付手段と、前記受け付けたプリントジョブデータに含まれる付加機能モジュールを解釈し、所定の処理を実行する第1の解釈手段と、前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する第2の解釈手段と、前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する印刷実行手段と、を備える。
【0015】
また、上記の発明は、方法の発明として把握することができる。すなわち、本発明は、ホスト装置からプリンタを用いて印刷物を出力させる印刷方法において、前記ホスト装置が、所定の付加機能モジュールをユーザに選択させる段階と、前記ホスト装置が、前記選択された付加機能モジュールと印刷対象データとを含むプリントジョブデータを生成し、前記プリンタに対して前記プリントジョブデータを送る段階と、前記プリンタが、前記プリントジョブデータを受け付ける段階と、前記受け付けたプリントジョブデータに含まれる付加機能モジュールを解釈し、所定の処理を実行する段階と、前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する段階と、前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する段階と、からなることを特徴とする印刷方法である。
【0016】
なお、本明細書において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、1つの手段が有する機能が2つ以上の物理的手段により実現されても、2つ以上の手段の機能が1つの物理的手段により実現されても良い。
【0017】
【発明の実施の形態】
次に、本発明の実施の形態について、図面を参照しつつ説明する。
【0018】
[第1の実施形態]
本実施形態は、ユーザがプリンタで印刷物を得ようとする場合に、自身のホスト装置からプリンタに付加的な機能を送り込み、送り込まれたプリンタでは付加的な機能が実現されるようにしたことを特徴としている。付加的な機能は、好ましくは、プリントコマンドデータとともにプリントジョブデータとして送り込まれる。
【0019】
図1は、本実施形態に係るプリンタ1のハードウェア構成の一例を示す図である。同図において、プロセッサ11は、オペレーティングシステムの制御の下、ROM12やRAM13に記憶された各種のプログラムを実行する。つまり、各種プログラムがプロセッサ11に実行されることにより、他のハードウェアと共働して、プリンタに所定の機能を実現させる。本実施形態では、プリントジョブ受付機能や、イメージ生成機能、印刷制御機能、ネットワークプログラム解釈機能が実現され、さらにこのネットワークプログラム解釈機能が解釈するネットワークプログラムにより所定の機能が実現される。ここでいうネットワークプログラムとは、ハードウェアやオペレーティングシステム等のプラットフォームに依存しない、プラットフォームニュートラルな中間コードであることが好ましく、あるデバイスにこのような中間コードを解釈しうる解釈機能が実装されていれば、ネットワークを介して自由に配送され、リアルタイムに実行することが可能になるというものである。
【0020】
ネットワークインターフェース回路14は、図示しないネットワークNに接続され、ホスト装置2との間でネットワーク通信を可能にする。イメージメモリ15は、プリントコマンドデータに基づいて生成されたプリントイメージデータ(以下「イメージデータ」という。)を記憶する。エンジンコントローラ16は、プリントエンジン17の動作を制御しながら、イメージメモリ15に展開されたイメージデータを読み出して、プリントエンジン17に供給する。エンジンコントローラ16は、例えば、イメージメモリ15に所定のバンド幅のイメージデータが展開された時点でプロセッサ11から送られる印刷実行命令をトリガとして起動される。プリントエンジン17は、例えば、紙送り機構やプリントヘッドなどによって構成され、紙などの印刷記録媒体に印刷を行うものである。プリントエンジン17は、レーザプリンタやシリアルプリンタといったプリンタ1の種類に応じたものを用いることができる。
【0021】
ユーザインターフェース回路28は、典型的には、ディスプレイやキーボード、マウス等が相当し、プロセッサ11により実行されるこれらのデバイスドライバにより、ユーザインターフェース機能を実現する。
【0022】
上述したプリンタ1は、ネットワークNを介してホスト装置2と接続され、プリントシステムを構成する。図2は、本実施形態に係るプリントシステムを説明するためのブロックダイアグラムである。なお、同図ではネットワークNに接続された複数のプリンタ1およびホスト装置2のうち、それぞれ代表する1台をそれぞれ示している。
【0023】
アプリケーションプログラム201は、例えば、文書を作成・編集するためのワードプロセッサ、図形を作成・編集するグラフィックエディタ、Webシステムを実現するWebクライアントプログラム(Webブラウザ)などである。今、ユーザからユーザインタフェース202を介して印刷コマンドが与えられると、アプリケーションプログラム201は、図示しないオペレーティングシステムの制御の下、プリンタドライバ203を呼び出す。
【0024】
プリンタドライバ203は、ユーザインターフェース202を介してプリントダイアログボックスを表示し、ユーザに所定の印刷設定項目などの入力を促す。
このとき、ユーザは、出力先のプリンタ1に送り込むべき付加的な機能を選択することができる。付加的な機能とは、出力先のプリンタ1に本来備わっている機能に付加ないし追加される機能である。したがって、全く別個の機能の場合もあれば、ある機能そのものを拡張する場合もある。
【0025】
次に、ユーザからユーザインターフェース202を介して印刷実行指示(例えば「OK」ボタンの選択)が与えられると、プリンタドライバ203は、アプリケーションプログラム201から印刷対象であるそのアプリケーションデータ(印刷対象データ)を受け取って、プリントコマンドデータに変換する。プリントコマンドデータとは、プリンタ2によって解釈されるコマンド列およびデータであり、プリンタ2は、このプリントデータを解釈することによりイメージデータを生成する。プリンタドライバ203はまた、付加機能モジュールライブラリ204を参照し、ネットワークプログラムに必要な付加機能モジュールを追加して、このネットワークプログラムとプリントコマンドデータとによってプリントジョブデータを生成する。プリンタドライバ203は、生成したプリントジョブデータをネットワークインターフェース205に出力する。
【0026】
ネットワークインターフェース205は、プリンタドライバ203から送られたプリントジョブデータを物理的/論理的に変換してネットワークN上に送出する。つまり、ネットワークインタフェース部205は、ネットワーク階層モデルでいうところの下位層プロトコルに位置付けられる通信サービスを実現する。
【0027】
プリンタ2に設けられたネットワークインタフェース部205’は、自身宛に送信されるデータを受け取り、これを物理的/論理的に変換してプリントジョブデータに復元し、プリントジョブ受付部206に引き渡す。
【0028】
プリントジョブデータ受付部206は、プリントジョブデータに含まれるネットワークプログラムを解釈し、付加機能モジュールが組み込まれていれば、これを実行する。これにより、プリンタ2は、他のハードウェアと協働して所定の付加機能を実現することになる。これは、同図中、付加機能実現部207として示されている。付加機能実現部207としては、例えば、アプリケーションデータの印刷に際してパスワードの入力を要求する親展印刷機能であれば、パスワードの入力を受け付ける機能と、入力されたパスワードについて認証チェックを行って、認証された場合に印刷を許可する機能がプリンタ2に実現されることになる。
【0029】
プリントジョブ受付部206はまた、ネットワークプログラムの解釈、実行により、プリントコマンドデータをプリントジョブ解釈部208に引き渡す。プリントジョブ解釈部208は、プリントコマンドデータを解釈してイメージデータを生成し、イメージメモリ15に展開する。プリントジョブ解釈部209は、そのプリントジョブデータを解釈して、所定バンド幅分のイメージデータの生成が完了すると、印刷実行部209に印刷実行指示を送る。
【0030】
印刷実行部209は、上述したエンジンコントローラ16およびプリントエンジン17によって実現され、印刷媒体に対する印刷を行う。印刷実行部209によってイメージデータが読み出されてその分の印刷が完了すると、プリントジョブ解釈部208は、引き続きイメージデータの生成を行って印刷実行部209に印刷実行指示を送る。これは、プリントコマンドデータをすべて解釈し終えるまで、繰り返される。
【0031】
図3は、本実施形態に係るプリントジョブ受付部106におけるプログラムスタック構造を説明するための図である。同図に示すように、上述したプロセッサ11やネットワークインターフェース回路14等から構成されたプリンタハードウェア31上にはオペレーティングシステム32が実装されている。さらに、このオペレーティングシステム32上には、ネットワークプログラムインタプリタ33、Webサーバプログラム34、プリンタデーモンプログラム(LPD)35およびネットワークドライバ36が実装されている。なお、ネットワークプログラムインタプリタ33としては、サンマイクロシステムズ社が提案したJava Virtual Machineを、ネットワークプログラムとしてJavaアプレットを適用することができる。
【0032】
例えば、プリントジョブ受付部106が、ネットワークドライバ36を介して、httpスキームによるプリントジョブデータを受け付けると、このプリントジョブデータはWebサーバプログラム34に引き渡され、さらにここでネットワークプログラムインタプリタ33が呼び出されて、ネットワークプログラムが解釈、実行される。ネットワークプログラムインタプリタ33は、ネットワークプログラムの解釈結果にしたがってプリンタ1に所定の機能を実現させ、最終的に、プリントコマンドデータをオペレーティングシステム32上の図示しない印刷処理プログラム(プリントモジュール)に引き渡す。印刷処理プログラムとは、イメージ生成プログラムや印刷制御プログラム等の実際の印刷処理に携わるプログラムである。つまり、印刷処理プログラムは、オペレーティングシステム32の制御の下、プリントコマンドデータが引き渡されると、これを解釈してイメージデータに変換し、エンジンコントローラ26に印刷実行命令を送る。
【0033】
また、プリンタデーモンプログラム35は、コンベンショナルなネットワークプリンタで知られているlpコマンドによるプリントジョブデータを受け付けるためのものである。このように、プリンタデーモンプログラム35も実装しておくことにより、lpコマンドによるプリントジョブデータも受け付けることができ、互換性を維持することができる。
【0034】
以上のように、本実施形態によれば、プリンタ1には、ネットワークプログラムを解釈可能なネットワークプログラムインタプリタ33が実装され、ネットワークプログラムを含むプリントジョブデータを受け付けた場合には、ネットワークインタプリタ33によりネットワークプログラムが解釈、実行されるように構成されているので、ユーザがプリンタ1に印刷させる際に、自身のホスト装置2からプリンタに付加的な機能を実現するネットワークプログラムを含むプリントジョブデータを送り込むことにより、送り込まれたプリンタ1ではネットワークプログラムによる付加的な機能が実現されるようになる。
【0035】
次に、本実施形態に係るプリンタに送り込まれるべき付加的な機能として、親展印刷機能を例にして説明する。
【0036】
親展印刷機能とは、印刷要求を行ったユーザ自身が印刷物を直接受け取ることができるようにするための機能である。つまり、ユーザがプリンタを用いて印刷物を得ようとする場合に、他のユーザにその印刷物が渡らないように、自身の目の前で印刷されるようにする機能である。これは、例えば、多数のユーザが、ネットワークプリンタのような、ネットワーク上の複数のホスト装置から印刷要求を受け付けるプリンタを利用する環境では、秘密性の高い文書を印刷するときに有効な機能である。親展印刷機能により親展印刷モードが指定されたプリンタは、プリントジョブとしてのプリントジョブデータを受け付けても、直ちに印刷処理を開始するのではなく、一旦、自身のユーザインターフェース上でパスワードの入力を受け付けてユーザ認証を行った後、印刷処理を開始する。
【0037】
ここでは、プリンタ1にはデフォルトでこの親展印刷機能が実装されておらず、外部のホスト装置1からこの親展印刷機能が利用の都度与えられるものとする。
【0038】
図4は、本実施形態に係るホスト装置1における印刷指示画面(プリントダイアログボックス)の一例を示す図である。このような印刷指示画面は、例えば、ユーザがアプリケーションプログラム201上で印刷実行指示を与えると、プリンタドライバ203のプリントユーティリティ機能が呼び出されて提示され、ユーザの入力を待ち受ける。このプリントダイアログボックスには、出力先のプリンタを指定する領域41と、印刷設定条件を指定する領域42とが設けられている。本例では、プリンタ名フィールド43には"CenterPrinter"が指定され、ユーザ名フィールド44には"SHIMA"が入力されている。ユーザ名フィールド44に対する入力は、本例では、ユーザ名とパスワードとの組み合わせによってユーザ認証チェックを行うため、親展印刷機能を利用する場合には必須となる。また、印刷ページは全ページ、部数は1部が指定されている。さらに、親展印刷チェックボックス45がチェックされ、親展印刷モードによる印刷が指定されている。ユーザが親展印刷機能を利用する場合には、パスワードフィールド46への入力が有効になり、所定のパスワードが入力される。ユーザがこれらの必要な項目を入力し終えて、「OK」ボタン47を選択すると、印刷対象となっているアプリケーションデータがプリンタドライバ203に引き渡され、プリントジョブデータが生成され、出力先のプリンタ1に送信される。
【0039】
図5は、本実施形態に係るプリンタドライバ203の処理を説明するためのフローチャートである。プリンタドライバ203は、印刷要求が与えられると(「OK」ボタン47の選択)、オペレーティングシステム32の描画ルーチンを用いて、アプリケーションデータをプリントコマンドデータに変換する(STEP501)。次に、プリンタドライバ203は、印刷要求に付加機能の指定があるか否かを判断する(STEP502)。本実施形態では、付加機能として親展印刷機能のみが用意されているので、これが指定されているか否かを判断するが、複数の付加機能が用意されている場合には、それぞれの付加機能ごとに指定されているか否かを判断する。もし、親展印刷機能が指定されていない場合には、デフォルトのネットワークプログラムに先に生成したプリントコマンドデータを追加して(STEP503)、これをプリントジョブデータとして出力先のプリンタ1に送信する(STEP504)。ここでいうデフォルトのネットワークプログラムとは、プリンタ1を初期化して、プリントコマンドデータを印刷処理プログラムに引き渡す等の必要最小限の処理を行うものである。
【0040】
一方、もし、親展印刷機能が指定されている場合には、プリンタドライバ203は、パスワードフィールド46に入力されたパスワードを暗号化し(STEP505)、付加機能モジュールライブラリ204から親展印刷モジュールを読み出し、デフォルトのネットワークプログラムに暗号化したパスワードとともに追加して、これを新たなネットワークプログラムとする(STEP505)。そして、プリンタドライバ203は、この新たなネットワークプログラムにプリントコマンドデータを追加して(STEP503)、出力先のプリンタ1に送信する(STEP504)。
【0041】
図6は、本実施形態に係るプリントジョブデータの構造の一例を説明するための図である。同図に示すように、プリントジョブデータは、ネットワークプログラム61とプリントコマンドデータ62とによって構成されている。ネットワークプログラム61には、親展印刷機能等の付加機能モジュール63がある場合にはそれが組み込まれる。プリントコマンドデータ62は、上述したように、プリンタ1のプリントジョブ解釈部208により解釈されるコマンドおよびデータである。このプリントコマンドデータ62は、ネットワークプログラム61からみれば、データ部分とみなすことができる。
【0042】
次に、プリンタ1におけるネットワークプログラムインタプリタ33の処理について説明する。図7は、本実施形態に係るネットワークプログラムインタプリタ33の処理を説明するためのフローチャートである。
【0043】
Webサーバプログラム34からネットワークプログラム62が引き渡されたネットワークプログラムインタプリタ33は、初期化のための処理を行う(STEP701)。次に、組み込まれている付加機能モジュール63を順次に実行していく(STEP702)。本例では、親展印刷モジュールが実行され、これにより、プリンタ1には、親展印刷機能が実現されることになる。ネットワークプログラムインタプリタ33は、すべての付加機能モジュール63を実行し終えると、プリントコマンドデータ62を印刷処理プログラムに引き渡して(STEP703)、ネットワークプログラム62の消滅させて、RAM13の占有領域を解放するなどの終了処理を行う(STEP703)。このように1回の印刷要求におけるネットワークプログラムは、その実行終了により消滅させられるので、他のユーザに利用されるといったセキュリティ上の問題もない。また、この実行をユーザごとにカウントするようにすれば、そのユーザに対する課金ということもできるようになる。
【0044】
図8は、本実施形態に係る親展印刷モジュールの処理を説明するためのフローチャートである。上述したように、この親展印刷モジュールは、ネットワークプログラムインタプリタ33によって解釈、実行される。
【0045】
親展印刷モジュールの解釈、実行により、プリンタ1は、ユーザインターフェース202を介して、ユーザ名およびパスワードの入力を受け付ける(STEP801)。図9は、本実施形態に係るプリンタ1のユーザインターフェースの一例を示す図である。同図に示すように、プリンタ1のユーザインターフェースには、液晶パネル等の表示部91と、矢印キーやテンキー等の入力キーからなる入力部92とが構成されている。ユーザは、表示部91に表示されるガイダンスメッセージにしたがって、入力部92を操作して所定の情報を入力していく。すなわち、ユーザは、ユーザ名フィールド93に、ホスト装置1上で指定したユーザ名を入力した後、下矢印キーを選択して、カーソルをパスワードフィールド94に移動させ、同様に、ホスト装置1上で指定したパスワードを入力する。なお、本実施形態では、ユーザインターフェースとして矢印キーおよびテンキーしか示されていないが、数字や文字等の入力に際しては、例えば、携帯電話機で知られているようなキーレイアウトによる入力方式を採用することで、アルファベットや日本語を入力することができる。ユーザが、ユーザ名およびパスワードを入力した段階で、決定ボタン95を選択する。
【0046】
図8に戻り、プリンタ1は、決定ボタン95を受け付けると、入力されたユーザ名およびパスワードと、プリントジョブデータに含まれるユーザ名およびパスワードとに基づいて認証チェックを行う(STEP802)。その結果、認証が認められれば(STEP803のYes)、親展印刷モジュールは、そのユーザのプリントジョブを表示して、印刷実行指示を待ち受ける(STEP804)。
図10は、このときのユーザインターフェース202の一例を示す図である。同図では、ユーザ"SHIMA"により3つのプリントジョブ、つまり"BUNSHO","HYOU"および"HYOUSHI"がすでに送り込まれ、それらが表示されている状態を示している。ユーザは、矢印キーを操作して、これから印刷したいプリントジョブを選択する。これにより、親展印刷モジュールは、選択されたプリントジョブに対応するプリントコマンドデータを印刷処理モジュールに引き渡して(STEP805)、処理を終了する。一方、認証が認められない場合には、例えば、強制的にその印刷要求に対する処理を強制終了する(STEP806)。
【0047】
以上のように、ユーザが親展印刷機能を利用して印刷する場合には、ホスト装置2からその親展印刷機能がプリンタ1に与えられ、プリンタ1で実現されることになる。したがって、プリンタ1に親展印刷機能が実装されていない場合であっても、必要に応じて動的に組み込まれることになり、機能拡張性に富んだプリンタ1が得られることとなる。
【0048】
例えば、上述のような親展印刷機能についていえば、次のような利用方法を提案することができる。すなわち、ユーザがモバイルコンピュータ(ホスト装置2に相当する。)を持ち運び、あるホテルに宿泊したとする。ホテルには、ネットワークが構築されており、ホテル内のビジネスセンターには本実施形態に係るプリンタ1が設けられている。ユーザは、ホテルへのチェックインの際に、ネットワーク利用の申し込みを行ってホテル内ネットワークへのアカウントを取得する。ここでいうアカウントとは、ユーザ名およびパスワードであり、例えばユーザ名をルームナンバーに割り当ててもよい。アカウントを取得したユーザは、自身のモバイルコンピュータにあるドキュメントを印刷する際に、ビジネスセンターに設置してあるプリンタ1に対して親展印刷を依頼する。その後、ユーザは、好きなときにビジネスセンターに行き、そこでアカウントを入力することで、印刷物を得ることができる。なお、ホテル側は、入力されたアカウントにしたがって、このような印刷サービスに対するチャージを徴収するようにしてもよい。
【0049】
[第2の実施形態]
本実施形態は、プリンタ1に送り込むべき付加的な機能を実現するモジュール(付加機能モジュール)をホスト装置2が予めライブラリとして有していない場合に、ネットワーク上のサーバコンピュータからこのような付加機能モジュールを取得した後、これをプリンタ1に送り込むことを特徴としている。これにより、ホスト装置2が付加機能モジュールを予め有していないとしても、新たに付加機能モジュールを自由に入手して、プリンタ1に実行させることができるようになる。
【0050】
図1は、本実施形態に係るプリントシステムの構成を示す図である。同図に示すように、ネットワークN上には、プリンタ1A,1B、ホスト装置2に加え、サーバコンピュータ3が設けられている。ユーザがアプリケーションプログラム上で印刷実行指示を与えたとすると、プリンタドライバ203のユーティリティ機能は、まず、サーバコンピュータ3が提供可能な付加機能モジュールの一覧情報を取得し、プリントダイアログボックス内に表示する(図中(1))。これに対してユーザが付加機能を選択して印刷実行指示を与えた場合には、ホスト装置2は、アプリケーションデータに基づいてプリントコマンドデータを生成するとともに(図中(2))、指定された付加機能モジュールをサーバコンピュータ3から取得して(図中(3))、これをネットワークプログラムの一部とし、最終的にプリントジョブデータを生成する(図中(4))。そして、ホスト装置1は、このプリントジョブデータをプリンタ1に対して送信する(図中(5))。なお、それ以降の処理は、上述した実施形態と同様であるため、説明を省略する。
【0051】
また、サーバコンピュータ3が、当該ネットワーク上で使用可能なプリンタ1の一覧をホスト装置1に提供するようにしてもよい。例えば、プリンタ1Aは、本実施形態に係る付加機能モジュールを実行可能なプリンタであり、プリンタ1Bは従前のプリンタであるとする場合に、サーバコンピュータ3は付加機能モジュールの一覧情報とともに、ネットワーク上で付加機能に対応したプリンタの一覧も提供する。これにより、例えば、モバイルコンピュータのようなホスト装置がネットワーク上に新たにログインしたとしても、ユーザは、出力先のプリンタ1に迷うことなく、すぐに印刷サービスを受けることができるようになる。
【0052】
[その他の実施形態]
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。例えば、上記機能実現手段の動作をシーケンシャルに説明したが、特にこれにこだわるものではない。従って、動作に矛盾が生じない限り、処理の順序を入れ替えまたは並行動作するように構成しても良い。
【0053】
また、上記実施形態では、付加機能として親展印刷機能を説明したが、これのみにこだわるものではない。付加機能として、イメージ生成機能そのものをプリンタに送り込むようにしてもよい。すなわち、"ESC/PAGE"や"Postscript"のプリンタ言語を解釈するジョブ解釈プログラム(モジュール)をプリントコマンドデータとともに送り込み、プリンタ側では、このモジュールを解釈して、イメージ生成機能を実現させて、プリントコマンドデータを解釈し、印刷を実行する。これにより、プリンタがプリント言語のそれぞれを解釈するための解釈プログラムをすべて実装する必要がなくなり、拡張性、柔軟性に富むプリンタが得られることになる。
【0054】
【発明の効果】
本発明によれば、ユーザの要求にしたがって、その都度、機能拡張が行われる、拡張性・柔軟性に優れたプリンタおよびこのプリンタを用いた印刷方法が提供されることになる。
【図面の簡単な説明】
【図1】本実施形態に係るプリンタ1のハードウェア構成の一例を示す図である。
【図2】本実施形態に係るプリントシステムを説明するためのブロックダイアグラムである。
【図3】本実施形態に係るプリントジョブ受付部106におけるプログラムスタック構造を説明するための図である。
【図4】本実施形態に係るホスト装置1における印刷指示画面(プリントダイアログボックス)の一例を示す図である。
【図5】本実施形態に係るプリンタドライバ203の処理を説明するためのフローチャートである。
【図6】本実施形態に係るプリントジョブデータの構造の一例を説明するための図である。
【図7】本実施形態に係るネットワークプログラムインタプリタ33の処理を説明するためのフローチャートである。
【図8】本実施形態に係る親展印刷モジュールの処理を説明するためのフローチャートである。
【図9】本実施形態に係るパスワード入力画面の一例を示す図である。
【図10】本実施形態に係るプリントジョブ選択画面の一例を示す図である。
【図11】本実施形態に係るプリントシステムの構成を示す図である。
【符号の説明】
1…プリンタ
2…ホスト装置
3…サーバ
N…ネットワーク
201…アプリケーションプログラム
202…ユーザインターフェース
203…プリンタドライバ
204…付加機能モジュールライブラリ
205…ネットワークインターフェース
206…プリントジョブ受付部
207…付加機能実現部
208…プリントジョブ解釈部
209…印刷実行部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a printer, a printing system including the printer and a host device, and a printer driver installed in the host device.
[0002]
[Prior art]
The user can obtain a printed matter by causing the printer to print electronic application data on the host device. That is, the host device to which the user gives a print instruction passes application data in an application program such as a word processor to the printer driver, converts it to print job data, and transmits this to the printer. The printer interprets print job data transmitted from the host device, generates raster format image data, and temporarily stores the generated image data in an image memory. Thereafter, the printer supplies the developed image data to the print engine, and fixes a recording material such as ink on the print medium to realize printing.
[0003]
In recent years, high-function printers equipped with various functions have also appeared. For example, it can be obtained with a printer or digital still camera equipped with multiple language interpretation functions to support each language such as "ESC / Page" and "Postscript", which are known as print job data description languages (printer languages). Some printers have an automatic correction function for printing a photographic image with higher quality.
[0004]
[Problems to be solved by the invention]
What functions are implemented in the printer, that is, the printer specifications are determined in the development stage. In other words, conventional printers can only provide functions that are pre-installed according to specifications, and cannot provide functions that are not implemented. Therefore, in order to additionally mount the function on a printer that does not have a certain function, it is necessary to develop it as a new printer that accompanies a change in specifications, and the expandability and flexibility are poor. In addition, when the specification is actually changed due to the addition, there is a problem that enormous development cost is required. On the other hand, in order to avoid such a change in the specifications, it is not practical to install all functions in the printer from the beginning because it leads to higher costs.
[0005]
Therefore, an object of the present invention is to provide a printer with excellent function expandability that can flexibly respond to individual requests of a user and a printing method using this printer.
[0006]
More specifically, an object of the present invention is to provide a printer whose function is expanded each time according to a user's request and a printing method using the printer.
[0007]
[Means for Solving the Problems]
The gist of the present invention is that an additional function is incorporated into the printer from the outside each time according to a user's request, thereby making the additional function available. Therefore, according to the present invention, a printer excellent in expandability and flexibility and a printing method using the printer are provided.
[0008]
The present invention provides a receiving means for receiving print job data including an additional function module and print command data, and a first interpreting means for interpreting the additional function module included in the received print job data and executing a predetermined process. Second interpretation means for interpreting print command data included in the received print job data and generating image data; and print execution means for executing printing on a print medium based on the generated image data; And a printer characterized by comprising: The second interpreting unit itself may be realized by the first interpreting unit that interprets the additional function module.
[0009]
The additional function module may be a confidential printing function module. In this case, the first interpreting means interprets the confidential printing function module, thereby prompting the user for a predetermined input for user authentication, and performs user authentication based on the input by the user. Authentication means to be implemented.
[0010]
Further, the first interpreting unit interprets the confidential printing function module, and when the realized authentication unit determines that the input by the user is valid, among the received print job data, Presenting means for presenting print job data related to the user is realized.
[0011]
The present invention can also be understood as a printer driver mounted on the host device side. That is, according to the present invention, an additional function module library including additional function modules that are interpreted by a predetermined interpretation unit provided in a printer and that allows the printer to realize a predetermined function, and a host device based on predetermined print target data. First generating means for generating print command data, and causing the host device to generate print job data based on the storage of the specific additional function module in the additional function module library and the print command data. A printer driver, and a recording medium on which the printer driver is recorded. The additional function module library is installed, for example, on the hard disk of the host device and is held there.
[0012]
The printer driver may further include means for causing the host device to function to prompt a user to select an additional function module.
[0013]
Furthermore, the present invention relates to print job data for causing a printer to execute print processing, wherein the print job data interprets an additional function module included in the print job data received by the printer and executes predetermined processing. First interpretation means, second interpretation means for interpreting print command data included in the received print job data and generating image data, and printing on a print medium based on the generated image data Print job data characterized by causing the printer to function as print execution means to be executed.
[0014]
Still further, the present invention provides a print system including a host device and a printer, wherein the host device has an additional function that is interpreted by a predetermined interpretation unit provided in the printer and causes the printer to realize a predetermined function. An additional function module library including modules, first generation means for generating print command data based on predetermined print target data, a specific additional function module in the additional function module library, and the print command data A second generation means for generating print job data on the basis of the above, a printer driver provided with the printer, wherein the printer accepts print job data including the additional function module and the print command data; The accepted pre A first interpreter that interprets the additional function module included in the job data and executes predetermined processing; and a second interpreter that interprets the print command data included in the received print job data and generates image data. Interpreting means, and print executing means for executing printing on a print medium based on the generated image data.
[0015]
Moreover, said invention can be grasped | ascertained as a method invention. That is, the present invention relates to a printing method for outputting printed matter from a host device using a printer, wherein the host device causes a user to select a predetermined additional function module, and the host device selects the selected additional function. Generating print job data including a module and print target data, sending the print job data to the printer, receiving the print job data by the printer, and included in the received print job data Interpreting the additional function module and executing predetermined processing; interpreting print command data included in the received print job data and generating image data; and based on the generated image data The stage of printing on the print media, and A printing method characterized by comprising.
[0016]
In this specification, the term “means” does not simply mean a physical means, but also includes a case where the functions of the means are realized by software. Further, the function of one means may be realized by two or more physical means, or the functions of two or more means may be realized by one physical means.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0018]
[First Embodiment]
In this embodiment, when a user tries to obtain a printed matter with a printer, an additional function is sent from the host device of the user to the printer, and the additional function is realized in the sent printer. It is a feature. The additional functions are preferably sent as print job data along with the print command data.
[0019]
FIG. 1 is a diagram illustrating an example of a hardware configuration of a printer 1 according to the present embodiment. In the figure, a processor 11 executes various programs stored in a ROM 12 and a RAM 13 under the control of an operating system. In other words, various programs are executed by the processor 11 so that the printer realizes a predetermined function in cooperation with other hardware. In the present embodiment, a print job reception function, an image generation function, a print control function, and a network program interpretation function are realized, and predetermined functions are realized by a network program interpreted by the network program interpretation function. The network program here is preferably platform-neutral intermediate code that does not depend on the platform such as hardware or operating system, and an interpretation function that can interpret such intermediate code is implemented in a certain device. For example, it can be freely distributed via a network and executed in real time.
[0020]
The network interface circuit 14 is connected to a network N (not shown) and enables network communication with the host device 2. The image memory 15 stores print image data (hereinafter referred to as “image data”) generated based on the print command data. The engine controller 16 reads out the image data developed in the image memory 15 while controlling the operation of the print engine 17 and supplies it to the print engine 17. For example, the engine controller 16 is activated by using a print execution command sent from the processor 11 when image data having a predetermined bandwidth is developed in the image memory 15 as a trigger. The print engine 17 includes, for example, a paper feed mechanism, a print head, and the like, and performs printing on a print recording medium such as paper. As the print engine 17, a printer according to the type of the printer 1 such as a laser printer or a serial printer can be used.
[0021]
The user interface circuit 28 typically corresponds to a display, a keyboard, a mouse, and the like, and realizes a user interface function by these device drivers executed by the processor 11.
[0022]
The above-described printer 1 is connected to the host device 2 via the network N and constitutes a printing system. FIG. 2 is a block diagram for explaining the print system according to the present embodiment. In the figure, a representative one of the plurality of printers 1 and host devices 2 connected to the network N is shown.
[0023]
The application program 201 is, for example, a word processor for creating / editing a document, a graphic editor for creating / editing a figure, a Web client program (Web browser) for realizing a Web system, and the like. Now, when a print command is given from the user via the user interface 202, the application program 201 calls the printer driver 203 under the control of an operating system (not shown).
[0024]
The printer driver 203 displays a print dialog box via the user interface 202 and prompts the user to input predetermined print setting items.
At this time, the user can select an additional function to be sent to the output destination printer 1. The additional function is a function added to or added to the function originally provided in the output destination printer 1. Thus, there may be a completely separate function or a certain function itself may be extended.
[0025]
Next, when a print execution instruction (for example, selection of an “OK” button) is given from the user via the user interface 202, the printer driver 203 receives the application data (print target data) to be printed from the application program 201. Receive and convert to print command data. The print command data is a command sequence and data interpreted by the printer 2, and the printer 2 generates image data by interpreting the print data. The printer driver 203 also refers to the additional function module library 204, adds an additional function module necessary for the network program, and generates print job data using the network program and print command data. The printer driver 203 outputs the generated print job data to the network interface 205.
[0026]
The network interface 205 physically / logically converts the print job data sent from the printer driver 203 and sends it over the network N. That is, the network interface unit 205 realizes a communication service positioned as a lower layer protocol in the network hierarchy model.
[0027]
The network interface unit 205 ′ provided in the printer 2 receives data transmitted to itself, converts it physically / logically, restores it to print job data, and delivers it to the print job reception unit 206.
[0028]
The print job data reception unit 206 interprets the network program included in the print job data, and executes this if an additional function module is incorporated. As a result, the printer 2 realizes a predetermined additional function in cooperation with other hardware. This is shown as an additional function realizing unit 207 in FIG. As the additional function realization unit 207, for example, if it is a confidential printing function that requires the input of a password when printing application data, the function that accepts the input of the password and the authentication check for the input password are performed and the authentication is performed. In this case, a function for permitting printing is realized in the printer 2.
[0029]
The print job reception unit 206 also passes the print command data to the print job interpretation unit 208 by interpreting and executing the network program. The print job interpretation unit 208 interprets the print command data, generates image data, and develops it in the image memory 15. When the print job interpretation unit 209 interprets the print job data and generation of image data for a predetermined bandwidth is completed, the print job interpretation unit 209 sends a print execution instruction to the print execution unit 209.
[0030]
The print execution unit 209 is realized by the engine controller 16 and the print engine 17 described above, and performs printing on a print medium. When image data is read by the print execution unit 209 and printing for that amount is completed, the print job interpretation unit 208 continues to generate image data and sends a print execution instruction to the print execution unit 209. This is repeated until all print command data has been interpreted.
[0031]
FIG. 3 is a diagram for explaining a program stack structure in the print job receiving unit 106 according to the present embodiment. As shown in the figure, an operating system 32 is mounted on the printer hardware 31 including the processor 11 and the network interface circuit 14 described above. Further, a network program interpreter 33, a Web server program 34, a printer daemon program (LPD) 35, and a network driver 36 are installed on the operating system 32. As the network program interpreter 33, a Java Virtual Machine proposed by Sun Microsystems, Inc., and a Java applet as a network program can be applied.
[0032]
For example, when the print job reception unit 106 receives print job data according to the http scheme via the network driver 36, the print job data is transferred to the Web server program 34, and the network program interpreter 33 is called here. The network program is interpreted and executed. The network program interpreter 33 causes the printer 1 to realize a predetermined function according to the interpretation result of the network program, and finally passes the print command data to a print processing program (print module) (not shown) on the operating system 32. The print processing program is a program involved in actual print processing such as an image generation program or a print control program. In other words, when the print command data is delivered under the control of the operating system 32, the print processing program interprets it and converts it into image data, and sends a print execution command to the engine controller 26.
[0033]
The printer daemon program 35 is for receiving print job data based on an lp command known for conventional network printers. As described above, by mounting the printer daemon program 35, print job data by the lp command can be received, and compatibility can be maintained.
[0034]
As described above, according to the present embodiment, the printer 1 is equipped with the network program interpreter 33 capable of interpreting the network program. When the print job data including the network program is received, the network interpreter 33 performs the network processing. Since the program is configured to be interpreted and executed, when the user causes the printer 1 to print, print job data including a network program that realizes an additional function for the printer is sent from the host device 2 of the user. As a result, the additional function by the network program is realized in the sent printer 1.
[0035]
Next, as an additional function to be sent to the printer according to the present embodiment, a confidential printing function will be described as an example.
[0036]
The confidential printing function is a function for allowing the user who has requested printing to directly receive the printed matter. In other words, when a user tries to obtain a printed material using a printer, this is a function that allows the printed material to be printed in front of his / her own eyes so that the printed material does not reach other users. This is an effective function when printing a highly confidential document in an environment where a large number of users use a printer that accepts print requests from a plurality of host devices on the network, such as a network printer. . A printer for which the confidential printing mode is designated by the confidential printing function does not start the printing process immediately even if it accepts print job data as a print job, but once accepts the password input on its own user interface. After performing user authentication, the printing process is started.
[0037]
Here, the confidential printing function is not installed in the printer 1 by default, and this confidential printing function is given from the external host device 1 every time it is used.
[0038]
FIG. 4 is a diagram showing an example of a print instruction screen (print dialog box) in the host device 1 according to the present embodiment. For example, when the user gives a print execution instruction on the application program 201, the print utility function of the printer driver 203 is called and presented, and the print instruction screen waits for user input. This print dialog box includes an area 41 for designating an output destination printer and an area 42 for designating print setting conditions. In this example, “CenterPrinter” is designated in the printer name field 43 and “SHIMA” is entered in the user name field 44. In this example, the input to the user name field 44 is indispensable when using the confidential printing function because the user authentication check is performed by a combination of the user name and the password. In addition, all pages are designated as print pages, and one copy is designated. Further, the confidential printing check box 45 is checked, and printing in the confidential printing mode is designated. When the user uses the confidential printing function, the input to the password field 46 becomes valid and a predetermined password is input. When the user finishes inputting these necessary items and selects the “OK” button 47, the application data to be printed is transferred to the printer driver 203, print job data is generated, and the output destination printer 1. Sent to.
[0039]
FIG. 5 is a flowchart for explaining processing of the printer driver 203 according to the present embodiment. When a print request is given (selection of “OK” button 47), the printer driver 203 converts application data into print command data using a drawing routine of the operating system 32 (STEP 501). Next, the printer driver 203 determines whether or not an additional function is specified in the print request (STEP 502). In this embodiment, since only the confidential printing function is prepared as an additional function, it is determined whether or not this is designated. When a plurality of additional functions are prepared, each additional function is determined. Determine whether it is specified. If the confidential printing function is not designated, the previously generated print command data is added to the default network program (STEP 503), and this is transmitted as print job data to the output destination printer 1 (STEP 504). ). The default network program here is for performing the minimum necessary processing such as initializing the printer 1 and transferring print command data to the print processing program.
[0040]
On the other hand, if the confidential printing function is designated, the printer driver 203 encrypts the password input in the password field 46 (STEP 505), reads the confidential printing module from the additional function module library 204, and sets the default. This is added to the network program together with the encrypted password to make it a new network program (STEP 505). Then, the printer driver 203 adds print command data to the new network program (STEP 503) and transmits it to the output destination printer 1 (STEP 504).
[0041]
FIG. 6 is a diagram for explaining an example of the structure of print job data according to the present embodiment. As shown in the figure, the print job data is composed of a network program 61 and print command data 62. If the network program 61 includes an additional function module 63 such as a confidential printing function, it is incorporated. The print command data 62 is a command and data interpreted by the print job interpretation unit 208 of the printer 1 as described above. The print command data 62 can be regarded as a data portion when viewed from the network program 61.
[0042]
Next, processing of the network program interpreter 33 in the printer 1 will be described. FIG. 7 is a flowchart for explaining the processing of the network program interpreter 33 according to this embodiment.
[0043]
The network program interpreter 33 to which the network program 62 has been delivered from the Web server program 34 performs a process for initialization (STEP 701). Next, the built-in additional function modules 63 are sequentially executed (STEP 702). In this example, the confidential printing module is executed, and thereby, the confidential printing function is realized in the printer 1. When the network program interpreter 33 finishes executing all the additional function modules 63, it passes the print command data 62 to the print processing program (STEP 703), erases the network program 62, and releases the occupied area of the RAM 13 and so on. An end process is performed (STEP 703). As described above, the network program in a single print request is erased when the execution is completed, so there is no security problem that it is used by other users. In addition, if this execution is counted for each user, the user can be charged.
[0044]
FIG. 8 is a flowchart for explaining processing of the confidential printing module according to the present embodiment. As described above, this confidential printing module is interpreted and executed by the network program interpreter 33.
[0045]
By interpreting and executing the confidential printing module, the printer 1 receives an input of a user name and a password via the user interface 202 (STEP 801). FIG. 9 is a diagram illustrating an example of a user interface of the printer 1 according to the present embodiment. As shown in the figure, the user interface of the printer 1 includes a display unit 91 such as a liquid crystal panel and an input unit 92 including input keys such as arrow keys and numeric keys. The user operates the input unit 92 according to the guidance message displayed on the display unit 91 to input predetermined information. That is, the user inputs the user name designated on the host device 1 in the user name field 93, then selects the down arrow key to move the cursor to the password field 94, and similarly on the host device 1. Enter the specified password. In this embodiment, only an arrow key and a numeric keypad are shown as the user interface. However, when inputting numbers, characters, etc., for example, an input method using a key layout as known in a mobile phone is adopted. You can input alphabet and Japanese. When the user inputs the user name and password, the enter button 95 is selected.
[0046]
Returning to FIG. 8, when the determination button 95 is received, the printer 1 performs an authentication check based on the input user name and password and the user name and password included in the print job data (STEP 802). As a result, if the authentication is accepted (Yes in STEP 803), the confidential printing module displays the user's print job and waits for a print execution instruction (STEP 804).
FIG. 10 is a diagram showing an example of the user interface 202 at this time. In the drawing, three print jobs, that is, “BUNSHO”, “HYOU”, and “HYOUSHI” have already been sent by the user “SHIMA” and are displayed. The user operates the arrow keys to select a print job to be printed. As a result, the confidential print module delivers the print command data corresponding to the selected print job to the print processing module (STEP 805), and ends the process. On the other hand, if the authentication is not approved, for example, the process for the print request is forcibly terminated (STEP 806).
[0047]
As described above, when the user prints using the confidential printing function, the confidential printing function is given from the host device 2 to the printer 1 and realized by the printer 1. Therefore, even if the confidential printing function is not implemented in the printer 1, it is dynamically incorporated as necessary, and the printer 1 with high function expandability can be obtained.
[0048]
For example, regarding the confidential printing function as described above, the following usage method can be proposed. That is, it is assumed that the user carries a mobile computer (corresponding to the host device 2) and stays at a certain hotel. A network is constructed in the hotel, and the printer 1 according to the present embodiment is provided in a business center in the hotel. At the time of check-in to the hotel, the user applies for network use and obtains an account for the hotel network. The account here is a user name and a password. For example, the user name may be assigned to a room number. The user who has acquired the account requests confidential printing from the printer 1 installed in the business center when printing a document in his mobile computer. Thereafter, the user can go to the business center at any time and enter an account there to obtain a printed matter. The hotel may collect a charge for such a printing service according to the input account.
[0049]
[Second Embodiment]
In the present embodiment, when the host device 2 does not have a library (additional function module) that realizes an additional function to be sent to the printer 1 as a library in advance, such an additional function module from a server computer on the network. Is obtained, and is then sent to the printer 1. As a result, even if the host device 2 does not have an additional function module in advance, a new additional function module can be freely obtained and executed by the printer 1.
[0050]
FIG. 1 is a diagram illustrating a configuration of a print system according to the present embodiment. As shown in the figure, on the network N, in addition to the printers 1A and 1B and the host device 2, a server computer 3 is provided. If the user gives a print execution instruction on the application program, the utility function of the printer driver 203 first acquires list information of additional function modules that can be provided by the server computer 3 and displays it in the print dialog box (FIG. Medium (1)). On the other hand, when the user selects an additional function and gives a print execution instruction, the host device 2 generates print command data based on the application data ((2) in the figure) and is designated. The additional function module is acquired from the server computer 3 ((3) in the figure), and this is made a part of the network program to finally generate print job data ((4) in the figure). Then, the host device 1 transmits this print job data to the printer 1 ((5) in the figure). Since the subsequent processing is the same as that in the above-described embodiment, description thereof is omitted.
[0051]
Further, the server computer 3 may provide the host device 1 with a list of printers 1 that can be used on the network. For example, when the printer 1A is a printer that can execute the additional function module according to the present embodiment, and the printer 1B is a conventional printer, the server computer 3 includes the list information of the additional function module on the network. It also provides a list of printers that support additional functions. As a result, for example, even when a host device such as a mobile computer newly logs in to the network, the user can immediately receive a print service without being confused by the output destination printer 1.
[0052]
[Other Embodiments]
Each of the above embodiments is an example for explaining the present invention, and is not intended to limit the present invention only to these embodiments. The present invention can be implemented in various forms without departing from the gist thereof. For example, although the operation of the function realizing unit has been described sequentially, it is not particularly limited to this. Therefore, as long as no contradiction occurs in the operation, the processing order may be changed or the operations may be performed in parallel.
[0053]
In the above embodiment, the confidential printing function has been described as an additional function. However, the embodiment is not limited to this. As an additional function, the image generation function itself may be sent to the printer. In other words, a job interpretation program (module) that interprets the printer language of "ESC / PAGE" or "Postscript" is sent along with the print command data, and the printer interprets this module to realize the image generation function and print Interpret the command data and execute printing. This eliminates the need for the printer to install all interpretation programs for interpreting each of the print languages, and provides a printer with high expandability and flexibility.
[0054]
【The invention's effect】
According to the present invention, a printer excellent in expandability and flexibility, and a printing method using the printer, in which functions are expanded each time according to a user's request, are provided.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an example of a hardware configuration of a printer 1 according to an embodiment.
FIG. 2 is a block diagram for explaining a print system according to the embodiment.
FIG. 3 is a diagram for explaining a program stack structure in a print job reception unit 106 according to the present embodiment.
FIG. 4 is a diagram showing an example of a print instruction screen (print dialog box) in the host device 1 according to the present embodiment.
FIG. 5 is a flowchart for explaining processing of the printer driver 203 according to the embodiment.
FIG. 6 is a diagram for explaining an example of the structure of print job data according to the embodiment.
FIG. 7 is a flowchart for explaining processing of the network program interpreter 33 according to the present embodiment.
FIG. 8 is a flowchart for explaining processing of a confidential printing module according to the present embodiment.
FIG. 9 is a diagram showing an example of a password input screen according to the present embodiment.
FIG. 10 is a diagram illustrating an example of a print job selection screen according to the present embodiment.
FIG. 11 is a diagram illustrating a configuration of a print system according to the present embodiment.
[Explanation of symbols]
1 ... Printer
2 ... Host device
3 ... Server
N ... Network
201 ... Application program
202 ... User interface
203 ... Printer driver
204 ... Additional function module library
205: Network interface
206: Print job reception unit
207 ... Additional function realization part
208: Print job interpretation unit
209: Print execution unit

Claims (4)

プリンタに所定の機能を付加するための付加機能モジュールおよびパスワードを含むネットワークプログラムと、プリントコマンドデータと、を含むプリントジョブデータを受け付ける受付手段と、
前記受け付けたプリントジョブデータに含まれるネットワークプログラムに含まれる付加機能モジュールを解釈し、所定の処理を実行する第1の解釈手段と、
前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する第2の解釈手段と、
前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する印刷実行手段と、を備え、
前記付加機能モジュールは親展印刷モジュールであり、
前記第1の解釈手段は、前記親展印刷モジュールを解釈することにより、
ユーザ認証のためのパスワードの入力をユーザに促す入力処理と、
前記ユーザにより入力されたパスワードと前記ネットワークプログラムに含まれるパスワードに基づいてユーザ認証を行う認証処理と、
前記ユーザにより入力されたパスワードが妥当であると判断した場合には、前記受け付けたプリントジョブデータのうち前記ユーザのプリントジョブデータを表示する表示処理と、
前記ユーザが入力部を操作してプリントジョブを選択すると、該選択されたプリントジョブに対応するプリントコマンドデータを第2の解釈手段に引き渡す処理を実行し、前記受け付けたプリントジョブデータに含まれるネットワークプログラムをメモリから消滅させることを特徴とするプリンタ。
An accepting means for receiving print job data including an additional function module for adding a predetermined function to the printer and a network program including a password, and print command data;
First interpreting means for interpreting an additional function module included in a network program included in the received print job data and executing predetermined processing;
Interpreting print command data included in the received print job data and generating image data;
Print execution means for executing printing on a print medium based on the generated image data,
The additional function module is a confidential printing module,
The first interpreting means interprets the confidential printing module,
An input process for prompting the user to input a password for user authentication;
An authentication process for performing user authentication based on a password input by the user and a password included in the network program;
If it is determined that the password entered by the user is valid, display processing for displaying the user's print job data out of the received print job data;
When the user operates the input unit to select a print job, the print command data corresponding to the selected print job is transferred to the second interpreter, and the network included in the received print job data A printer characterized by erasing a program from memory.
プリンタに設けられた所定の解釈手段によって解釈され、前記プリンタに所定の機能を付加する付加機能モジュールからなる付加機能モジュールライブラリを備え、
ホスト装置を、
所定の印刷対象データに基づいてプリントコマンドデータを生成させる第1の生成手段と、
付加機能モジュールを選択させるためにユーザに入力を促す手段と、
ユーザが親展印刷機能を利用する場合には、パスワードフィールドへの入力をユーザに促す手段と、
前記ユーザより親展印刷モジュールが選択され、前記パスワードフィールドへパスワードが入力された場合には、前記付加機能モジュールライブラリのうちの親展印刷モジュールと前記ユーザより入力されたパスワードを含むネットワークプログラムと、前記プリントコマンドデータと、に基づいてプリントジョブデータを生成させる第2の生成手段と、して機能させるプリンタドライバであって、
前記親展印刷モジュールは、
前記プリンタに設けられた所定の解釈手段によって解釈実行されることにより、ユーザ認証のためのパスワードの入力をユーザに促す入力処理と、
前記ユーザにより入力されたパスワードと前記ネットワークプログラムに含まれるパスワードに基づいてユーザ認証を行う認証処理と、
前記認証処理において認証が認められた場合に、前記ユーザのプリントジョブを表示する表示処理と、を実行し、
前記ユーザが入力部を操作してプリントジョブを選択すると、前記ネットワークプログラムを前記プリンタのメモリから消滅させることを特徴とするプリンタドライバ。
An additional function module library comprising additional function modules that are interpreted by predetermined interpretation means provided in the printer and add predetermined functions to the printer;
Host device
First generation means for generating print command data based on predetermined print target data;
Means for prompting the user to select an additional function module;
When the user uses the confidential printing function, means for prompting the user to input the password field;
When a confidential printing module is selected by the user and a password is input to the password field, a confidential printing module in the additional function module library and a network program including the password input by the user, and the print A printer driver that functions as a second generation unit that generates print job data based on the command data;
The confidential printing module is
An input process that prompts the user to input a password for user authentication by being interpreted and executed by a predetermined interpreter provided in the printer;
An authentication process for performing user authentication based on a password input by the user and a password included in the network program;
A display process for displaying the user's print job when authentication is permitted in the authentication process;
Wherein the user selects a print job by operating the input unit, a printer driver, characterized in that make disappear the network program from the memory of the printer.
ホスト装置とプリンタとから構成されるプリントシステムにおいて、
前記ホスト装置には、
プリンタに設けられた所定の解釈手段によって解釈され、前記プリンタに所定の機能を付加する付加機能モジュールからなる付加機能モジュールライブラリと、
所定の印刷対象データに基づいてプリントコマンドデータを生成させる第1の生成手段と、
付加機能モジュールを選択させるためにユーザに入力を促す手段と、
ユーザが親展印刷機能を利用する場合には、パスワードフィールドへの入力をユーザに促す手段と、
前記ユーザより親展印刷モジュールが選択され、前記パスワードフィールドへパスワードが入力された場合に、前記付加機能モジュールライブラリのうちの親展印刷モジュールと前記ユーザより入力されたパスワードを含むネットワークプログラムと、前記プリントコマンドデータと、に基づいてプリントジョブデータを生成させる第2の生成手段と、を備えたプリンタドライバが実装され、
前記プリンタは、
前記親展印刷モジュールおよびパスワードを含むネットワークプログラムと、前記プリントコマンドデータと、を含むプリントジョブデータを受け付ける受付手段と、
前記受け付けたプリントジョブデータに含まれるネットワークプログラムに含まれる付加機能モジュールを解釈し、所定の処理を実行する第1の解釈手段と、
前記受け付けたプリントジョブデータに含まれるプリントコマンドデータを解釈し、イメージデータを生成する第2の解釈手段と、
前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する印刷実行手段と、を備え、
前記第1の解釈手段は、前記親展印刷モジュールを解釈することにより、
ユーザ認証のためのパスワードの入力をユーザに促す入力処理と、
前記ユーザにより入力されたパスワードと前記ネットワークプログラムに含まれるパスワードに基づいてユーザ認証を行う認証処理と、
前記ユーザにより入力されたパスワードが妥当であると判断した場合には、前記受け付けたプリントジョブデータのうち前記ユーザのプリントジョブデータを表示する表示処理と、
前記ユーザが入力部を操作してプリントジョブを選択すると、該選択されたプリントジョブに対応するプリントコマンドデータを第2の解釈手段に引き渡す処理を実行し、前記受け付けたプリントジョブデータに含まれるネットワークプログラムをメモリから消滅させることを特徴とするプリントシステム。
In a printing system composed of a host device and a printer,
The host device includes
An additional function module library consisting of additional function modules that are interpreted by predetermined interpretation means provided in the printer and add predetermined functions to the printer;
First generation means for generating print command data based on predetermined print target data;
Means for prompting the user to select an additional function module;
When the user uses the confidential printing function, means for prompting the user to input the password field;
When a confidential printing module is selected by the user and a password is input to the password field, the network program including the confidential printing module in the additional function module library and the password input by the user, and the print command A printer driver including a second generation unit that generates print job data based on the data,
The printer is
A receiving means for receiving print job data including the confidential print module and a network program including a password; and the print command data;
First interpreting means for interpreting an additional function module included in a network program included in the received print job data and executing predetermined processing;
Interpreting print command data included in the received print job data and generating image data;
Print execution means for executing printing on a print medium based on the generated image data,
The first interpreting means interprets the confidential printing module,
An input process for prompting the user to input a password for user authentication;
An authentication process for performing user authentication based on a password input by the user and a password included in the network program;
If it is determined that the password entered by the user is valid, display processing for displaying the user's print job data out of the received print job data;
When the user operates the input unit to select a print job, the print command data corresponding to the selected print job is transferred to the second interpreter, and the network included in the received print job data A printing system characterized by erasing a program from memory.
ホスト装置からプリンタを用いて印刷物を出力させる印刷方法において、
前記ホスト装置が、
前記プリンタに所定の機能を付加するための付加機能モジュールをユーザに選択させる段階と、
前記ユーザが親展印刷機能を利用する場合には、パスワードフィールドへの入力をユーザに促す段階と、
前記ユーザより親展印刷モジュールが選択され、前記パスワードフィールドへパスワードが入力された場合に、前記選択された親展印刷モジュールと前記入力されたパスワードとを含むネットワークプログラムと、プリントコマンドデータと、を含むプリントジョブデータを生成し、前記プリンタに対して前記プリントジョブデータを送る段階と、
前記プリンタが、
前記プリントジョブデータを受け付ける段階と、
前記受け付けたプリントジョブデータに含まれる親展印刷モジュールを解釈することにより、
ユーザ認証のためのパスワードの入力をユーザに促す段階と、
前記ユーザにより入力されたパスワードと、前記受け付けたプリントジョブデータに含まれるネットワークプログラムに含まれるパスワードと、に基づいてユーザ認証を行う段階と、
前記ユーザにより入力されたパスワードが妥当であると判断した場合には、前記受け付けたプリントジョブデータのうち前記ユーザのプリントジョブデータを表示する段階と、
前記ユーザが入力部を操作してプリントジョブを選択すると、前記受け付けたプリントジョブデータに含まれるネットワークプログラムをメモリから消滅させる段階と、
前記選択されたプリントジョブに対応するプリントコマンドデータを解釈し、イメージデータを生成する段階と、
前記生成されたイメージデータに基づいて、印刷媒体に対する印刷を実行する段階と、
からなることを特徴とする印刷方法。
In a printing method for outputting printed matter from a host device using a printer,
The host device is
Allowing the user to select an additional function module for adding a predetermined function to the printer;
When the user uses the confidential printing function, prompting the user to input a password field;
When a confidential print module is selected by the user and a password is input to the password field, a print including a network program including the selected confidential print module and the input password, and print command data Generating job data and sending the print job data to the printer;
The printer is
Receiving the print job data;
By interpreting the confidential print module included in the received print job data,
Prompting the user to enter a password for user authentication;
Performing user authentication based on a password input by the user and a password included in a network program included in the received print job data;
If it is determined that the password entered by the user is valid, displaying the print job data of the user among the received print job data;
When the user operates the input unit to select a print job, the network program included in the received print job data is erased from the memory;
Interpreting print command data corresponding to the selected print job and generating image data;
Performing printing on a print medium based on the generated image data;
A printing method comprising the steps of:
JP2001085699A 2001-03-23 2001-03-23 Printer and printing method using the printer Expired - Fee Related JP4542719B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001085699A JP4542719B2 (en) 2001-03-23 2001-03-23 Printer and printing method using the printer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001085699A JP4542719B2 (en) 2001-03-23 2001-03-23 Printer and printing method using the printer

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008150483A Division JP2008238827A (en) 2008-06-09 2008-06-09 Printer, and method of printing using the printer

Publications (2)

Publication Number Publication Date
JP2002283668A JP2002283668A (en) 2002-10-03
JP4542719B2 true JP4542719B2 (en) 2010-09-15

Family

ID=18941167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001085699A Expired - Fee Related JP4542719B2 (en) 2001-03-23 2001-03-23 Printer and printing method using the printer

Country Status (1)

Country Link
JP (1) JP4542719B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7249900B1 (en) * 2006-02-01 2007-07-31 Ricoh Company Limited Approach for implementing locked printing on printing devices
JP4693911B2 (en) * 2009-02-13 2011-06-01 キヤノン株式会社 Information processing system, control method therefor, server device, and control program therefor
JP5499584B2 (en) * 2009-09-09 2014-05-21 株式会社リコー Print control program, information processing apparatus, and recording medium
JP4856225B2 (en) * 2009-09-15 2012-01-18 株式会社沖データ Image data generator
JP6084066B2 (en) * 2013-02-25 2017-02-22 キヤノン株式会社 Image forming apparatus, control method therefor, and program

Also Published As

Publication number Publication date
JP2002283668A (en) 2002-10-03

Similar Documents

Publication Publication Date Title
JP4630751B2 (en) Printing system, printing apparatus, control method therefor, and program
JP4863450B2 (en) Information processing apparatus for customizing device driver program and device driver program customization method
US7057747B1 (en) Management of printer settings
JP4240690B2 (en) Information processing apparatus, information processing method, information processing system, and recording medium
US8537438B2 (en) Information processing apparatus in which a plurality of types of print drivers and plurality of graphics units run, control method therefor, and program
US20010048533A1 (en) Data processing apparatus and method thereof, and memory medium
JP2006297632A (en) Image processor
JP2007317088A (en) Information processor, print control method, program, and computer readable storage medium
JP2005050061A (en) Push-type installation system, information processor, push-type installation method, and program
JPH09198213A (en) Information processing device, method and system
US20110255115A1 (en) Information processing apparatus and control method therefor
JP2000198249A (en) Printer and, image-printing system with the same applied and its method for printing confidential document
US8218175B2 (en) Printing system, print controller, printing method and computer readable medium
JP2008191883A (en) Print system, print program and storage medium
EP2230630B1 (en) Printer, and program for its operation screen.
JP2006350443A (en) Printing system, print control method and program
JP4639917B2 (en) Image forming apparatus and image forming system
JP2005258924A (en) Information processing apparatus, control method therefor, and image forming system
JP4542719B2 (en) Printer and printing method using the printer
KR20100074567A (en) Method for producing digital sinature, print controling terminal unit and image forming apparatus
JP3743184B2 (en) Printing system, printer and print server
JP2008238827A (en) Printer, and method of printing using the printer
JP2008247041A (en) Printer and printing method using the same
JP2008260304A (en) Printer and printing method using the same
JP2007004332A (en) Information processor, print control method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080609

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080828

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081029

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20081106

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100527

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130702

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees