(57)【要約】【課題】  ユーザの視認性をより高めることが可能な印刷システムを提供する。【解決手段】  印刷過程の中間点に位置しており各ソフトウェアの状態変化が把握可能なプリンタドライバが中心となって、各ソフトウェアが今何の処理をしているのかを並列に表示する。【選択図】  図４
2009122932.tif 000002
【特許請求の範囲】
【請求項１】
印刷開始時に表示プログラムを起動する手段と、アプリケーションからの命令によってアプリケーションの状態の変化を通知する手段と、プリンタドライバ内の処理によってプリンタドライバの状態の変化を通知する手段とを備えているプリンタドライバと、
プリンタドライバからのイベントを監視してアプリケーションの状態の変化を取得する手段と、プリンタドライバからのイベントを監視してプリンタドライバの状態の変化を取得する手段と、システムスプーラを監視してシステムスプーラの状態の変化を取得する手段と、プリンタからのイベントを監視してプリンタの状態の変化を取得する手段と、アプリケーション、プリンタドライバ、システムスプーラ、プリンタの各状態を表示する手段とを備えていることを特徴とする情報処理装置。
【請求項２】
印刷開始時に表示プログラムを起動する際に、各ソフトウェアの状態表を合わせて通知し、前記情報処理装置は起動時にプリンタドライバから通知された状態表から表示フォーマットを作成する手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
アプリケーション、プリンタドライバ、システムスプーラ、プリンタの各状態の表示を行うかをユーザが選択できる手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の通信媒体を介して通信可能なデバイスを制御する情報処理装置に関するものであり、特に印刷フローにおける各ソフトウェアの状態を表示する手段を持つ情報処理装置およびデバイスドライバが格納された記憶媒体に関するものである。
【背景技術】
【０００２】
アプリケーションからプリンタに対して印刷を行う際には、グラフィックエンジン、プリンタドライバ、システムスプーラといったソフトウェアを経てプリンタへ用紙が出力される仕組みとなっている。その間接続されるソフトウェアが解釈可能な命令（コマンド）に順次変換され、さらにインターフェースを経由してプリンタのファームウェアに渡り、印刷機構が制御される。
【０００３】
しかしアプリケーションで印刷ボタンを押下した後は、プリンタから用紙が出力されるまでその過程はユーザに見えず、またいつ印刷が完了するかも判らない。そこでユーザへ情報を提供して補助する目的として、さまざまな方法で印刷時間を予測して表示する方法がある。印刷データ量のみで完了時間を予測するものや、印刷データを解析しコマンド毎の所要時間を積算して予測するものや、実際の1ページ分の印刷時間を計測してページ数を掛け、全体の所要時間を算出するものなどである。
【０００４】
また印刷時にデータベースに記録を行い、アプリケーションやドライバから通知する印刷情報と過去のデータベースの学習データから印刷終了までの印刷時間を予測して表示させる発明がある。（特許文献１参照）
【特許文献１】特開２００４−１８５０４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら従来の技術では、印刷過程の中で並列に処理される各ソフトウェアのうち、どのソフトウェアが何の処理を行っているのかユーザからは判別できず、また状態を表していない。そのため、近年増加傾向にある印刷時間が大きくかかる印刷データ（高解像度、大きな用紙サイズ）では一見止まったように見えるため、ハングアップしていると勘違いしてしまうケースがあった。またアプリケーションの状態変化を把握するには特殊な処理を行うアプリケーションが必要であり、一般アプリケーションには適用できなかった。
【０００６】
本発明はこのような問題に鑑みてなされたもので、印刷過程の中間点に位置しており各ソフトウェアの状態変化が把握可能なプリンタドライバが中心となって、各ソフトウェアが今何の処理をしているのかを並列に表示することで、ユーザの視認性をより高めることが可能な印刷システムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を解決するために、本発明は次のような構成からなる。印刷開始時に表示プログラムを起動する手段と、アプリケーションからの命令によってアプリケーションの状態の変化を通知する手段と、プリンタドライバ内の処理によってプリンタドライバの状態の変化を通知する手段とを備えているプリンタドライバと、
プリンタドライバからのイベントを監視してアプリケーションの状態の変化を取得する手段と、プリンタドライバからのイベントを監視してプリンタドライバの状態の変化を取得する手段と、システムスプーラを監視してシステムスプーラの状態の変化を取得する手段と、プリンタからのイベントを監視してプリンタの状態の変化を取得する手段と、アプリケーション、プリンタドライバ、システムスプーラ、プリンタの各状態を表示する手段とを備えている情報処理装置。
【０００８】
また前記プリンタドライバは、印刷開始時に表示プログラムを起動する際に、各ソフトウェアの状態表を合わせて通知し、前記情報処理装置は起動時にプリンタドライバから通知された状態表から表示フォーマットを作成する手段を更に備えている。
【０００９】
また前記プリンタドライバは、アプリケーション、プリンタドライバ、システムスプーラ、プリンタの各状態の表示を行うかをユーザが選択できる手段を更に備えている。
【００１０】
本出願にかかるその他の発明は、上記の発明を実現する方法とプログラム記憶媒体に記憶されているプログラムで実現することである。
【発明の効果】
【００１１】
本発明によれば、印刷過程の中間点に位置しており各ソフトウェアの状態変化が把握可能なプリンタドライバが中心となって、各ソフトウェアが今何の処理をしているのかを並列に表示することで、ユーザの視認性をより高めることが可能な印刷システムを提供できる。
【発明を実施するための最良の形態】
【００１２】
次に、本発明の詳細を実施例の記述に従って説明する。
【００１３】
以下、本発明を適用するのに好適である情報処理装置を含む印刷システムについて説明する。
【００１４】
図１は、本発明におけるシステムの概略を示した図である。図示のように、印刷装置がインターフェース回路を介してPCなどのホストコンピュータと接続されている。
【００１５】
ホストコンピュータは、ROMあるいは外部メモリに記憶された文書処理プログラム等に基づいて、図形、イメージ、文字、表等が混在した文書を実行し、システムバスに接続される各デバイスを総括的に制御するCPUと、CPUの制御プログラムであるオペレーティングシステム（以下OS）等を記憶し、上記文書処理等を行う際に使用する各種データを記憶するROMあるいは外部メモリと、CPUの主メモリあるいはワークエリアとして機能するRAMと、キーボードや不図示のポインティングデバイスからの入力を制御するキーボードコントローラ（KBC）と、ディスプレイの表示を制御するディスプレイコントローラ（DISPC）と、ブートプログラム、各種のアプリケーション、ユーザファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（HDD）、フレキシブルディスク（FDD）等の外部メモリとのアクセスを制御するディスクコントローラ（DKC）と、所定の双方向インターフェースを介してプリンタに接続され、プリンタとのデータ及びコマンドの通信処理を制御するプリンタコントローラ（PRTC）と、を備えている。
【００１６】
プリンタは、印刷機構とこれらを制御する印刷制御器から構成されている。
【００１７】
印刷制御器は、各種プログラムを実行するCPUと、ホストコンピュータからのデータ及びコマンドを受信し、印字機構を制御して最適な印刷を実現させるプログラムや各種データが記憶されているROMと、各種データや各種プログラムが一時的に記憶されるRAMと、所定の双方向インターフェースを介してホストコンピュータに接続され、ホストコンピュータとのデータ及びコマンドのホストとの通信処理を制御するインターフェース（I/F C）と、ホストコンピュータからの印刷データ及び印刷データに関する情報及び印刷時に使用したプリンタ独自の情報など大容量のデータを記憶するハードディスク（HDD）や印刷時に使用するプリンタ独自の情報などを記憶しているEEPROMなどとのアクセスを制御するディスクコントローラ（DKC）と、操作パネルの表示や入力を制御するインターフェース（I/F P）と、プリントヘッド、キャリッジ、インク供給などの印字機構を直接制御して最適な印刷を実現させる印刷機構を制御するインターフェース（I/F E）と、を備えている。
【００１８】
印刷機構は、印刷ヘッド（PHD）と、この印刷ヘッドを移動させるキャリッジ（CRG）と、印刷ヘッドと対向する位置に配置されているプラテンと、ロール紙を引き出し可能に保持しているロール紙ホルダ（HRL）と、このロール紙ホルダに保持されているロール紙を引き出してプラテン上へ送る給紙ローラ（IRL）と、印刷された用紙を排紙する排紙ローラ（ORL）と、排紙されたロール紙を受ける排紙トレイ（TRY）と、を備えている。
【００１９】
印刷ヘッドには、各色、具体的にはC（シアン）、M（マゼンタ）、Y（イエロー）、K（ブラック）、c（ライトシアン）、m（ライトマゼンタ）の各色のインクを吐出する6列のノズルが、走査方向に並んで設けられている。
【００２０】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。
【００２１】
アプリケーション、グラフィックエンジン、プリンタドライバ、およびシステムスプーラは、外部メモリに保存されたファイルとして存在し、実行される場合にOSや利用するモジュールによってRAMにロードされ実行されるプログラムである。
【００２２】
またアプリケーションおよびプリンタドライバは、外部メモリのFDや不図示のCD、あるいは不図示のネットワークを経由して外部ディスクのHDに追加することが可能となっている。外部メモリに保存されているアプリケーションはRAMにロードされて実行されるが、このアプリケーションからプリンタに対して印刷を行う際には、同様にRAMにロードされ実行可能となっているグラフィックエンジンを利用して出力（描画）を行う。アプリケーションがグラフィックエンジンにはき出すデータは、OSの種類によって異なるが、例えばWindows（登録商標）を用いた場合は、描画命令としてGDI関数がグラフィックエンジンであるGDIに出力される。
【００２３】
グラフィックエンジンは、印刷装置ごとに用意されたプリンタドライバを同様に外部メモリからRAMにロードし、アプリケーションの出力であるGDI（Graphic Device Interface）関数をDDI（Device Driver Interface）関数に変換して、プリンタドライバに出力する。
【００２４】
プリンタドライバは、GDIから受け取ったDDI関数に基づいて、プリンタで解釈可能なPDL（Page Description Language）や低レベル画像データからなるプリンタの制御コマンドに変換する。変換されたプリンタ制御コマンドはOSによってRAMにロードされたシステムスプーラを経てインターフェース経由でプリンタへ出力される仕組みとなっている。
【実施例１】
【００２５】
まず、本実施形態におけるシステムの流れについて述べる。ホストコンピュータ内の外部メモリが有しているプリンタドライバは、ディスプレイなどの表示装置を用いたGUIにより図３のようなユーザインターフェースを表示する。ユーザはシートにおけるボタンやコンボボックスなどの各種コントロールを用いて、用紙サイズや印字モードなどの設定を変更できる。そして変更された印刷設定と、アプリケーションからの描画命令に基づいてラスタライズを行い、その後ユーザにより選択された用紙の種類や色設定によって色変換を行い、印刷データや印刷コマンドをプリンタへ送信する。プリンタは受け取った印刷コマンドにしたがって印刷データの印刷を実行する。
【００２６】
図４は本発明の実施形態を示す印刷過程表示装置のブロック図である。
【００２７】
図において、４０５は印刷過程表示装置で、状態変化イベント受信手段４０９、システムスプーラ監視手段４１１、ソフトウェア判別手段４１０、表示制御手段４１２から構成される。
【００２８】
４０２はプリンタドライバで、印刷過程表示装置起動手段４０６、アプリケーション状態送信手段４０７、プリンタドライバ状態送信手段４０８を備えている。
【００２９】
４０４はプリンタで、プリンタ状態送信手段４１３を備えている。
【００３０】
図５は印刷過程装置で表示される画面の一例を示す図である。
【００３１】
図のように、アプリケーション５０１、プリンタドライバ５０２、システムスプーラ５０３、プリンタ５０４の状態がそれぞれ表示される。また現在行われている処理を反転表示や異なる色などを用いて判別できるようにしている。
【００３２】
図６は、本発明のプリンタドライバにおける制御処理手順の一例を示すシーケンス図であり、図４に示した印刷過程表示装置起動手段４０６、アプリケーション状態送信手段４０７、プリンタドライバ状態送信手段４０８の動作に対応する。なお本シーケンス図の処理は、図１に示した外部メモリ１０９などの記憶媒体に格納されるプログラムに基づいてCPU１０１により実行されるものとする。
【００３３】
まず（１）に示すように、アプリケーション６０１から印刷開始の命令がされたら、プリンタドライバ６０２は印刷過程表示装置６０３を起動する。またそのとき（２）、（３）のようにアプリケーションの状態とプリンタドライバの状態を送信する。
【００３４】
次に（６）、（８）に示すように、プリンタドライバ６０２はアプリケーションの状態監視とプリンタドライバの状態監視を行う。ここで（５）のように、アプリケーションから状態変化の命令がされたら、プリンタドライバ６０２は印刷過程表示装置６０３にアプリケーションの状態を送信する（７）。またプリンタドライバの状態変化が発生したら、プリンタドライバ６０２は印刷過程表示装置６０３にプリンタドライバの状態を送信する（９）。
【００３５】
そして（１０）に示すように、アプリケーション６０１から印刷終了の命令がされたら、（６）、（８）のアプリケーションの状態監視、プリンタドライバの状態監視をやめ、（１１）、（１２）のようにアプリケーションの状態とプリンタドライバの状態を送信する。
【００３６】
図７は、本発明の印刷過程表示装置における制御手順の一例を示すフローチャートであり、図４に示した状態変化イベント受信手段４０９、ソフトウェア判別手段４１０、表示制御手段４１２の動作に対応する。なおフローチャートの処理は、図１に示した外部メモリ１０９などの記憶媒体に格納されるプログラムに基づいてCPU１０１により実行されるものとする。
【００３７】
まずステップ１、２において、ソフトウェアからの状態変化イベントを監視する。ここで印刷過程表示装置４０５に対して何らかの通知があると、ステップ３においてどのソフトウェアの状態が変化したのかを判定する。
【００３８】
ここでアプリケーション４０１の状態変化通知であれば、ステップ４でアプリケーション４０１の状態表示を変更する。プリンタドライバ４０２の状態変化通知であれば、ステップ５でプリンタドライバ４０２の状態表示を変更する。プリンタ４０４の状態変化通知であれば、ステップ６でプリンタ４０４の状態表示を変更する。
【００３９】
そしてすべてのソフトウェアの状態変化が終了していなければ、再びステップ１、２に戻りソフトウェアからの状態変化イベントを監視する。
【００４０】
図８は、本発明の印刷過程表示装置における制御手順の一例を示すフローチャートであり、図４に示したシステムスプーラ監視手段４０９、表示制御手段４１２の動作に対応する。なおフローチャートの処理は、図１に示した外部メモリ１０９などの記憶媒体に格納されるプログラムに基づいてCPU１０１により実行されるものとする。
【００４１】
まずステップ１、２において、システムスプーラの状態変化を監視する。ここでシステムスプーラ４０４に何らかの状態変化があると、ステップ３において、システムスプーラ４０４の状態表示を変更する。
【００４２】
そしてシステムスプーラの状態変化が終了していなければ、再びステップ１、２に戻りシステムスプーラの状態変化を監視する。
【００４３】
なお図６の（１）において、印刷過程表示装置６０３を起動する際に表示フォーマットを渡して表示形式を動的に変更させてもよい。
【００４４】
また本発明の一連の表示制御を行うか否かをユーザに選択させる手段を設けてもよい。
【００４５】
なお本発明は、複数の機器（例えばホストコンピュータ、インターフェース機器、プリンタなど）から構成されるシステムのデバイスドライバ部分に適用してもよい。
【００４６】
また本発明の目的は、前述した実施形態の機能を実現するプリンタドライバ等のソフトウェアのプログラムコードを記憶した記録媒体を、システムあるいは装置のコンピュータ（またはCPUやMPU）が記録媒体に格納されたプログラムコードを読み出し、実行することによっても達成される。
【００４７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００４８】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD、DVD、磁気テープ、MO、不揮発性のメモリカード、ROMなどを用いることができる。
【００４９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００５０】
【図１】本発明におけるシステムの概略を示した図である。
【図２】ホストコンピュータにおける典型的な印刷データ生成方法を説明するブロック図である。
【図３】本発明に係るプリンタドライバが有しているユーザインターフェースの一例である。
【図４】本発明の実施形態を示す印刷過程表示装置のブロック図である。
【図５】印刷過程装置で表示される画面の一例を示す図である。
【図６】本発明のプリンタドライバにおける制御処理手順の一例を示すシーケンス図である。
【図７】本発明の印刷過程表示装置における制御手順の一例を示すフローチャートである。
【図８】本発明の印刷過程表示装置における制御手順の一例を示すフローチャートである。
【符号の説明】
【００５１】
１０１  CPU
１０２  RAM
１０３  ROM
１０４  キーボードコントローラ
１０５  キーボード
１０６  ディスプレイコントローラ
１０７  ディスプレイ
１０８  ディスクコントローラ
１０９  外部メモリ
１１０  プリンタコントローラ
１１１  ホストインターフェース
１１２  CPU
１１３  ROM
１１４  RAM
１１５  ディスクコントローラ
１１６  ハードディスク
１１７  EEPROM
１１８  パネルインターフェース
１１９  操作パネル
１２０  エンジンインターフェース
１２１  印刷ヘッド
１２２  キャリッジ
１２３  プラテン
１２４  ロール紙ホルダ
１２５  給紙ローラ
１２６  排紙ローラ
１２７  排紙トレイ
【図１】
2009122932.tif 000003
【図２】
2009122932.tif 000004
【図３】
2009122932.tif 000005
【図４】
2009122932.tif 000006
【図５】
2009122932.tif 000007
【図６】
2009122932.tif 000008
【図７】
2009122932.tif 000009
【図８】
2009122932.tif 000010