(57)【要約】【課題】一度印刷を行ったドキュメントについて、異なる仕様のプリンタ印刷条件を変えながら何度も再印刷を行えるようにするプリンタドライバを、提供する。【解決手段】ホストコンピュータ２０のＨＤＤにインストールされたプリンタドライバ２１は、印刷実行時に、プリンタ１０へ供給されたＲＡＷデータではなく、プリンタ１０の仕様に依存しない中間データと印刷条件情報とからなる印刷データをＨＤＤに蓄積させる。プリンタドライバ２１は、印刷設定用ユーザインターフェースを通じて指示されると、蓄積された印刷データを一覧表示し、何れかの印刷データを選択した印刷条件の変更と、何れかの印刷データを選択して再印刷の実行とを、受け付ける。【選択図】図２
2006209708.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステムにより生成される中間データと印刷実行時に指定される印刷条件とに基づいてプリンタへ供給されるべきＲＡＷデータを生成してプリントスプーラへ引き渡すためのプリンタドライバであって、
コンピュータを、
前記ＲＡＷデータを前記プリントスプーラへ引き渡すときに、前記中間データと前記印刷条件を示す印刷条件情報とからなる印刷データを記憶部に記憶する記憶手段，
前記印刷データを識別するための識別情報の一覧表示する指示を入力装置において受け付ける一覧表示指示受付手段，
前記一覧表示指示受付手段が指示を受け付けると、前記識別情報を列挙した一覧画面を表示装置に表示する表示手段，
前記表示手段に表示された一覧画面において選択された識別情報の示す印刷データの再印刷を実行する指示を前記入力装置において受け付ける再印刷指示受付手段，及び、
前記再印刷指示受付手段が指示を受け付けると、その指示時に選択されていた識別情報の示す印刷データを前記記憶部から読み出してその印刷データに基づいてＲＡＷデータを生成して前記プリントスプーラへ引き渡すデータ変換手段
として機能させる
ことを特徴とするプリンタドライバ。
【請求項２】
前記コンピュータを、更に、
前記記憶部が記憶する印刷データの個数が所定の上限数を上回ったときに、その上回った分の余剰の印刷データを前記記憶部から削除する記録個数制限手段
として機能させる
ことを特徴とする請求項１記載のプリンタドライバ。
【請求項３】
前記記録個数制限手段は、前記記憶部に記録された順番が古い印刷データから順に、前記記憶部から削除する
ことを特徴とする請求項２記載のプリンタドライバ。
【請求項４】
前記コンピュータを、更に、
前記記憶部が記憶する印刷データのうち、記録された時点から所定期間経過した印刷データを、前記記憶部から削除する保存期間制限手段
として機能させる
ことを特徴とする請求項１記載のプリンタドライバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタに供給すべきデータを生成する機能をホストコンピュータに付加するためのプリンタドライバに、関する。
【背景技術】
【０００２】
周知のように、プリンタとホストコンピュータとが接続されたシステムにおける印刷処理では、ホストコンピュータの利用者が起動中のアプリケーションにおいてドキュメントの印刷の実行を指示すると、そのアプリケーションが、オペレーティングシステムを構成する印刷用コンポーネントを呼び出し、呼び出されたコンポーネントが、そのオペレーティングシステムの描画コマンド等からなる中間データを生成して、一時ファイルに保管する。なお、この中間データは、プリンタの仕様（製造元や機種の別）に依存しないデータとなっており、具体例としては、マイクロソフト社製のＷｉｎｄｏｗｓ（商標）というオペレーティングシステムにおけるＥＭＦデータがある。
【０００３】
また、この一時ファイルに保管された中間データは、アプリケーションのバックグラウンド処理として、プリンタドライバによって、プリンタに固有の制御コード等を含む印刷データに変換された後、オペレーティングシステムを構成するプリントスプーラというコンポーネントによって、プリントキュー（ディレクトリ）に一旦保管され、ホストコンピュータの都合の良いときにそのプリンタへ送信される。プリンタは、送信されてきた印刷データに基づいてビットマップ形式の画像データを生成し、その画像データの示すドキュメントの画像を印刷用紙に印刷する。
【０００４】
なお、プリンタドライバによって中間データから変換された印刷データは、プリンタの仕様に依存するデータとなっている。また、この印刷データは、プリントキューからプリンタへの出力時に特別な処理が行われずにそのまま引き渡されるデータであるため、ＲＡＷデータ（生データ）と称されている。
【０００５】
前述したような印刷処理では、通常、印刷が終了すると、一時ファイル内の中間データは、破棄される。このため、一度印刷を行ったドキュメントについて再度印刷を行う場合には、従来では、アプリケーションを起動し、そのアプリケーションにおいて同じドキュメントについて印刷を指示しなければならなかった。
【０００６】
但し、オペレーティングシステムによっては、プリントキューに一旦保管した印刷データを印刷後も残しておくという機能を持つものがあるため、このような機能を持つオペレーティングシステムでは、プリントキュー内に残された印刷データを使って、一度印刷を行ったドキュメントについて再度印刷が行えるようになる。
【特許文献１】特開平１０−１２４２７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、プリントキューに保管される印刷データは、レンダリングされたデータ、すなわち、印刷条件が反映されたデータであり、印刷条件を変更することができないものとなっている。このため、例えば、一度目の印刷において５部ずつカラー印刷されるように印刷条件が設定されている場合において、前述したようなオペレーティングシステムの機能を利用して再度印刷を行うときに、１部ずつ白黒モノクロ印刷しようとしても、一度目の印刷条件と同じように５部ずつカラー印刷されてしまうという問題があった。
【０００８】
なお、最近市販されているプリンタドライバの中には、印刷後に印刷データを保存する機能と、保存した印刷データにおける印刷条件の変更を受け付けて印刷を実行する機能とを実現するツールを、ユーティリティとして付属しているものが、見受けられる。しかしながら、このツールを利用して変更できる印刷条件は、両面印刷と片面印刷の切替や印刷部数といった一部のものに留まり、カラー印刷と白黒モノクロ印刷の切替，及び、明度や画素密度といった印刷品質の変更は、行えないものとなっている。然も、このツールによって保存される印刷データは、そのプリンタの仕様に依存するデータとなっており、他のプリンタでは利用できないデータとなっている。さらには、このツールを使って印刷条件を変更して印刷を行うと、その印刷データは、再度保存されないようになっている。
【０００９】
本発明は、このような従来の事情に鑑みてなされたものであり、その課題は、一度印刷を行ったドキュメントについて、異なる仕様のプリンタで印刷条件を変えながら何度も再印刷を行えるようにすることにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために発明されたプリンタドライバは、オペレーティングシステムにより生成される中間データと印刷実行時に指定される印刷条件とに基づいてプリンタへ供給されるべきＲＡＷデータを生成してプリントスプーラへ引き渡すためのものであって、コンピュータを、前記ＲＡＷデータを前記プリントスプーラへ引き渡すときに、前記中間データと前記印刷条件を示す印刷条件情報とからなる印刷データを記憶部に記憶する記憶手段，前記印刷データを識別するための識別情報の一覧表示する指示を入力装置において受け付ける一覧表示指示受付手段，前記一覧表示指示受付手段が指示を受け付けると、前記識別情報を列挙した一覧画面を表示装置に表示する表示手段，前記表示手段に表示された一覧画面において選択された識別情報の示す印刷データの再印刷を実行する指示を前記入力装置において受け付ける再印刷指示受付手段，及び、前記再印刷指示受付手段が指示を受け付けると、その指示時に選択されていた識別情報の示す印刷データを前記記憶部から読み出してその印刷データに基づいてＲＡＷデータを生成して前記プリントスプーラへ引き渡すデータ変換手段として機能させることを、特徴としている。
【００１１】
このように構成されると、印刷実行時に、コンピュータには、プリンタへ供給されたＲＡＷデータではなく、プリンタの仕様に依存しない中間データと印刷条件情報とからなる印刷データが蓄積されることとなる。このため、コンピュータに残された印刷データは、仕様の異なるプリンタのプリンタドライバによってそのプリンタの仕様に応じたＲＡＷデータへと変換できるので、仕様の異なるプリンタにおいて再印刷を行うことができるようになる。
【００１２】
然も、コンピュータには、中間データと印刷条件情報とが各々単体で保存されるため、印刷条件情報を上書き更新することができる。このため、印刷データの印刷条件を変えて再印刷を行うことができるようになる。
【発明の効果】
【００１３】
従って、本発明によれば、一度印刷を行ったドキュメントについて、異なる仕様のプリンタで印刷条件を変えながら何度も再印刷を行えるようになる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面に基づいて、本発明を実施するための一つの形態である印刷システムについて説明する。
【００１５】
まず、本実施形態の印刷システムの構成を説明する。
【００１６】
図１は、本実施形態の印刷システムの構成図である。印刷システムは、プリンタ１０とホストコンピュータ２０とからなる。
【００１７】
プリンタ１０は、ホストコンピュータ２０からの印刷要求を受けると印刷を実行する装置である。具体的なハードウエア構成の説明及び図示は省略するが、このプリンタ１０は、用紙上に実際に印刷を行う印刷機構，ホストコンピュータ２０とのデータ通信を制御するための受信部である各種の通信インターフェース回路（パラレルインターフェース回路，ネットワークインターフェース回路，ＵＳＢインターフェース回路など），及び、それら印刷機構や通信インターフェース回路を制御するコンピュータ（ＣＰＵ，ＲＯＭ，ＲＡＭ，ＥＥＰＲＯＭ、各種インタフェース回路等を組み合わせた装置）からなっている。
【００１８】
ホストコンピュータ２０は、一般的に市販されているパーソナルコンピュータであり、液晶ディスプレイ等の表示装置，キーボードやマウス等の入力装置，及び、これら表示装置や入力装置に接続される本体からなっている。具体的なハードウエア構成及びソフトウエア構成の説明及び図示は省略するが、その本体には、ＣＰＵ，ＲＡＭ，ＣＤＤ，ＤＶＤＤ，通信インターフェース回路（パラレルインターフェース回路，ネットワークインターフェース回路，ＵＳＢインターフェース回路など），ＨＤＤが内蔵され、ＨＤＤには、オペレーティングシステムを実現するためのプログラム群及びデータ群，利用者に様々なツールを提供する各種のアプリケーションを実現するためのプログラム群及びデータ群，プリンタ１０を含む各種の周辺機器の制御を行うためのドライバプログラム群が、記録されている。
【００１９】
次に、プリンタ１０の制御を行うためのものとしてホストコンピュータ２０の図示せぬＨＤＤ内にインストールされているプリンタドライバ２１が行う処理について、説明する。
【００２０】
ホストコンピュータ２０では、起動中のアプリケーションにおいてドキュメントの印刷の実行の指示が、キーボードやマウス等の入力装置を通じて利用者から入力されると、アプリケーションが、オペレーティングシステムを構成する印刷用コンポーネントを呼び出す。
【００２１】
すると、呼び出された印刷用コンポーネントは、そのオペレーティングシステムの描画コマンド等からなる中間データを生成して、一時ファイルに保管する。なお、この中間データは、プリンタ１０の仕様（製造元や機種の別）に依存しないデータとなっている。
【００２２】
印刷コンポーネントが中間データを生成すると、それをトリガとして、プリンタドライバ２１が起動される。図２は、このときプリンタドライバ２１に従ってＣＰＵが実行する処理の内容を示す流れ図である。
【００２３】
処理開始後、プリンタドライバ２１（のプログラム群を実行するＣＰＵ）は、まず、アプリケーション上において印刷の実行が指示された時点で設定されている印刷条件（用紙サイズ，枚数，色種別，印刷品質など）を示す印刷条件情報を取得する処理を行う（Ｓ１０１）。
【００２４】
続いて、プリンタドライバ２１は、図示せぬＨＤＤに別途用意される印刷データ管理ファイル内のレコード数が所定の上限数以下であるか否かを判別する処理を行う（Ｓ１０２）。なお、印刷データ管理ファイルは、中間データと印刷条件情報とからなる印刷データを管理するためのファイルであり、具体的には、この印刷データ管理ファイルには、印刷データに関する情報（印刷データを格納したファイルのファイル名と、印刷データの生成日時を示す生成日時情報と、印刷データの保存期限を示す保存期限情報と）がテーブルレコードとして蓄積されている。
【００２５】
そして、プリンタドライバ２１は、印刷データ管理ファイル内に蓄積されているレコード数が所定の上限数を上回っていると判断した場合（Ｓ１０２；ＮＯ）、この印刷データ管理ファイルのレコード数が所定の上限数となるまで、生成日時情報が古いものから順にレコードを削除する処理を行い（Ｓ１０３）、その後、印刷用コンポーネントが生成した中間データとステップＳ１０１において取得した印刷条件情報とからなる印刷データを格納したファイルを、所定のディレクトリに保存する処理を行う（Ｓ１０４）。
【００２６】
一方、プリンタドライバ２１は、印刷データ管理ファイル内に蓄積されているレコード数が所定の上限数以下であると判断した場合（Ｓ１０２；ＹＥＳ）、印刷データ管理ファイル内のレコードを削除する処理を行うことなく、印刷用コンポーネントが生成した中間データとステップＳ１０１において取得した印刷条件情報とからなる印刷データを格納したファイルを、所定のディレクトリに保存する処理を行う（Ｓ１０４）。
【００２７】
印刷データを格納したファイルを所定のディレクトリに保存する処理を行った後、プリンタドライバ２１は、ステップＳ１０４において所定ディレクトリに保存した印刷データに関する情報を印刷データ管理ファイルに登録する処理を行う（Ｓ１０５）。このとき、プリンタドライバ２１は、所定の保存期限を示す保存期限情報も、印刷データ管理ファイルに登録するが、この保存期限情報は、初期値として用意されているものとなっている。
【００２８】
続いて、プリンタドライバ２１は、印刷データ管理ファイルに登録した印刷データに基づいてＲＡＷデータを生成する処理を行い（Ｓ１０６）、その後、そのＲＡＷデータを、オペレーティングシステムを構成するプリントスプーラへ引き渡す処理を行い（Ｓ１０７）、図２に係る処理を終了する。なお、プリントスプーラは、ＲＡＷデータが引き渡されると、ホストコンピュータの都合の良いときに、通信インターフェース回路に接続された通信線を通じてそのＲＡＷデータをホストコンピュータへ送信する処理を行う。
【００２９】
また、ホストコンピュータ２０では、利用者から、起動中のアプリケーションを通じて、若しくは、直接に、プリンタドライバ２１が起動されると、印刷条件設定用のユーザインターフェース画面が表示装置に表示される。この印刷条件設定用のユーザインターフェース画面には、印刷データ管理ファイルにおいて管理されている印刷データに基づく印刷を行う際にクリックされる「Saved Printing Data」ボタンが、設けられている。そして、利用者が、この「Saved Printing Data」ボタンをクリックすると、プリンタドライバ２１は、それをトリガとして、図２に係る処理とは別の処理を開始させる。図３は、この処理内容を示す流れ図である。
【００３０】
この処理の開始後、プリンタドライバ２１（のプログラム群を実行するＣＰＵ）は、印刷データ管理ファイル内に蓄積されているレコードのうち、保存期限情報の示す保存期限が経過しているレコードが存在するか否かを判別する処理を行う（Ｓ２０１）。
【００３１】
そして、プリンタドライバ２１は、印刷データ管理ファイル内に蓄積されているレコードのうち、保存期限情報の示す保存期限が経過しているレコードが存在していると判断した場合（Ｓ２０１；ＹＥＳ）、印刷データ管理ファイルから、保存期限が経過しているレコードを削除する処理を行い（Ｓ２０２）、後述の一覧表示ダイアログ画面を表示装置に表示する処理を行う（Ｓ２０３）。
【００３２】
一方、プリンタドライバ２１は、印刷データ管理ファイル内に蓄積されているレコードのうち、保存期限情報の示す保存期限が経過しているレコードが存在していないと判断した場合（Ｓ２０１；ＮＯ）、印刷データ管理ファイルからレコードを削除する処理を行うことなく、後述の一覧表示ダイアログ画面を表示装置に表示する処理を行う（Ｓ２０３）。
【００３３】
図４は、一覧表示ダイアログ画面の一例を示す図である。一覧表示ダイアログ画面には、レコードが各行に列挙されている。各レコードは、印刷データを識別するための識別情報としてのジョブ名，ドキュメント作成に利用されたアプリケーションの名称，ドキュメントを作成した利用者の名前，印刷データの生成日時を、含んでいる。なお、図示していないが、この一覧表示ダイアログ画面では、何れかの行にカーソルを配置することによって、その行のレコードを選択することができるようになっている。
【００３４】
プリンタドライバ２１は、図４に示されるような一覧表示ダイアログ画面を表示装置に表示した後、その一覧表示ダイアログ画面において何らかの操作が行われるまで待機する（Ｓ２０４；無し）。そして、プリンタドライバ２１は、その一覧表示ダイアログ画面を閉じる操作が行われたと判断した場合（Ｓ２０４；終了操作）、この一覧表示ダイアログ画面を閉じて図３に係る処理を終了し、ユーザインターフェース画面に戻る。
【００３５】
一方、プリンタドライバ２１は、一覧表示ダイアログ画面において印刷条件を変更する操作が行われたと判断した場合（Ｓ２０４；印刷条件変更操作）、変更後の印刷条件を印刷データに反映させる処理を行う（Ｓ２０５）。例えば、図４に示す一覧表示ダイアログ画面において、「編集」ボタンをクリックして表示されるメニューバーの中から「印刷設定」ボタンがクリックされると、カーソルが示されることによって選択されている印刷データのファイルから印刷条件情報が読み出されて、その印刷条件情報が示された図示せぬ印刷条件設定画面が表示装置に表示される。利用者は、その図示せぬ印刷条件設定画面の各欄に示されたパラメータを変更した後、その画面内の設定ボタンをクリックする。すると、プリンタドライバ２１は、選択された印刷データについての印刷条件を変更する操作が行われたと判断し（Ｓ２０４；印刷条件変更操作）、その設定ボタンがクリックされた時点で図示せぬ印刷条件設定画面の各欄に示されたパラメータにて、この印刷データのファイル内の印刷条件情報を上書き更新する（Ｓ２０５）。この上書き更新をした後、プリンタドライバ２１は、再度、図４に示されるような一覧表示ダイアログ画面を表示装置に表示した後、その一覧表示ダイアログ画面において何らかの操作が行われるまで待機する（Ｓ２０４；無し）。
【００３６】
また、プリンタドライバ２１は、一覧表示ダイアログ画面において再印刷の実行を指示する操作が行われたと判断した場合（Ｓ２０４；再印刷実行操作）、カーソルにて示されている印刷データに基づいてＲＡＷデータを生成する処理を行い（Ｓ２０６）、その後、そのＲＡＷデータを、オペレーティングシステムを構成するプリントスプーラへ引き渡す処理を行い（Ｓ２０７）、その後、再度、図４に示されるような一覧表示ダイアログ画面を表示装置に表示した後、その一覧表示ダイアログ画面において何らかの操作が行われるまで待機する（Ｓ２０４；無し）。なお、プリントスプーラは、ＲＡＷデータが引き渡されると、ホストコンピュータの都合の良いときに、通信インターフェース回路に接続された通信線を通じてそのＲＡＷデータをホストコンピュータへ送信する処理を行う。
【００３７】
次に、本実施形態の印刷システムの作用及び効果を説明する。
【００３８】
本実施形態の印刷システムでは、利用者が、起動中のアプリケーションにおいてドキュメントの印刷の実行を指示すると、そのドキュメントの印刷をプリンタ１０が実行されるとともに（Ｓ１０６，Ｓ１０７）、印刷データがホストコンピュータに残され（Ｓ１０４）、その印刷データが印刷データ管理ファイルに登録される（Ｓ１０５）。
【００３９】
また、利用者が、プリンタドライバ２１を起動した後、印刷設定用ユーザインターフェースを通じて、ホストコンピュータ２０に残されている印刷データの一覧表示する指示を入力すると、一覧表示ダイアログ画面が表示される（Ｓ２０３）。この一覧表示ダイアログ画面では、利用者は、何れかの印刷データを選択して印刷条件を変更することができ（Ｓ２０５）、また、何れかの印刷データを選択して再印刷の実行を指示することができる（Ｓ２０６，Ｓ２０７）。
【００４０】
なお、プリンタドライバ２１によってホストコンピュータ２０に残される印刷データは、印刷に使用したＲＡＷデータではなく、中間データと印刷条件情報とからなる印刷データである。中間データは、前述したように、プリンタ１０の仕様（製造元や機種の別）に依存しないデータであり、印刷条件情報も、プリンタ１０の仕様に依存しない情報である。このため、ホストコンピュータ２０に残された印刷データは、仕様の異なるプリンタ１０のプリンタドライバ２１によってそのプリンタ１０の仕様に応じたＲＡＷデータへと変換できるので、仕様の異なるプリンタ１０において再印刷を行うことができるようになる。
【００４１】
また、印刷データを格納したファイル内では、中間データと印刷条件情報とが単体で格納されているため、印刷条件情報を上書き更新することができる。中間データと印刷条件情報とからなる印刷データをこのような保存形態で保存することにより、任意の印刷データについてその印刷条件を変えて再印刷を行うことができるようになる。
【００４２】
以上に説明したことから、本実施形態の印刷システムによれば、一度印刷を行ったドキュメントについて、異なる仕様のプリンタ１０で印刷条件を変えながら何度も再印刷を行えるようになる。
【００４３】
ところで、本実施形態では、印刷データ管理ファイルに登録できる印刷データの上限数が事前に設定されているとして説明した（Ｓ１０２，Ｓ１０３）。これは、あまりにも多くの印刷データがホストコンピュータ２０に残されていると、利用者が、再印刷を行おうとするときにどの印刷データについて再印刷を行うべきか判断が付かなくなることをおそれたためである。本実施形態を実際に運用するにあたっては、印刷データ管理ファイルに登録できる印刷データに上限数を設けていても良いし、設けていなくても、どちらでも良い。上限数を設ける場合には、印刷条件設定用のユーザインターフェース画面や図４に示されるような一覧表示ダイアログ画面などで、その上限数を変更できるようにしておくことが望ましい。
【００４４】
また、本実施形態では、印刷データが印刷データ管理ファイルに登録される際に初期値として用意された保存期限情報が一緒に登録されるとして説明した（Ｓ２０１，Ｓ２０２）。このように印刷データに保存期限を設けたのは、再印刷があまり古い印刷データに対して行われることが少ないことに因るためである。本実施形態を実際に運用するにあたっては、印刷データに保存期限を設けるよう構成されていても良いし、設けないように構成されていても良い。保存期限を設ける場合には、印刷条件設定用のユーザインターフェース画面や図４に示されるような一覧表示ダイアログ画面などで、任意の印刷データの保存期限を適宜変更できるようにしておくことが望ましい。
【図面の簡単な説明】
【００４５】
【図１】本実施形態の印刷システムの構成図
【図２】印刷時にプリンタドライバに従ってＣＰＵが実行する処理を示す流れ図
【図３】再印刷時にプリンタドライバに従ってＣＰＵが実行する処理を示す流れ図
【図４】一覧表示ダイアログ画面の一例を示す図
【符号の説明】
【００４６】
１０  プリンタ
２０  ホストコンピュータ
２１  プリンタドライバ
【図１】
2006209708.tif 000003
【図２】
2006209708.tif 000004
【図３】
2006209708.tif 000005
【図４】
2006209708.tif 000006