(57)【特許請求の範囲】
【請求項１】
アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、
前記変換手段により変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、
前記変換手段は、情報処理装置の使用環境に関する環境情報に応じて処理内容を変化させることを特徴とする情報処理装置。
【請求項２】
前記環境情報は、使用言語に関する情報を含んでいることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記環境情報に対応した各種設定情報を記憶した設定情報ファイルを記憶する記憶手段を更に有し、
前記変換手段は、前記変換手段が描画コマンドを変換処理する際に、前記環境情報を取得し、前記設定情報ファイルに基づいて、取得した前記環境情報に対応した処理を行うことを特徴とする請求項１乃至２記載の情報処理装置。
【請求項４】
前記印刷データ生成手段は、プリンタドライパであることを特徴とする請求項１乃至３記載の情報処理装置。
【請求項５】
前記変換手段は、プリンタドライバとは独立したモジュールであり、複数のプリンタドライパで共通に使用されることを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記情報処理装置及び／又は前記外部デバイスが表示手段を有し、前記変換手段の処理過程に所定メッセージの前記表示手段への表示を含み、前記環境情報によって前記メッセージの言語を変化させることを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記外部デバイスが印刷機器であり、前記変換手段が、前記環境情報によって前記印刷処理で用いる文字の設定を変更することを特徴とする請求項１記載の情報処理装置。
【請求項８】
前記変換手段は、ジョブ毎に処理内容を変更させることが可能であることを特徴とする請求項１乃至７記載の情報処理装置。
【請求項９】
アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換ステップと、
前記変換ステップにより変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成ステップとを有し、
前記変換ステップは、情報処理方法の使用環境に関する環境情報に応じて処理内容を変化させることを特徴とする情報処理方法。
【請求項１０】
前記環境情報は、使用言語に関する情報を含んでいることを特徴とする請求項９記載の情報処理方法。
【請求項１１】
前記環境情報に対応した各種設定情報を記憶した設定情報ファイルを記憶する記憶ステップを更に有し、
前記変換ステップは、前記変換ステップが描画コマンドを変換処理する際に、前記環境情報を取得し、前記設定情報ファイルに基づいて、取得した前記環境情報に対応した処理を行うことを特徴とする請求項９乃至１０記載の情報処理方法。
【請求項１２】
前記印刷データ生成ステップは、プリンタドライパであることを特徴とする請求項９乃至１１記載の情報処理方法。
【請求項１３】
前記変換ステップは、プリンタドライバとは独立したモジュールであり、複数のプリンタドライパで共通に使用されることを特徴とする請求項１２記載の情報処理方法。
【請求項１４】
前記情報処理方法及び／又は前記外部デバイスが表示ステップを有し、前記変換ステップの処理過程に所定メッセージの前記表示ステップへの表示を含み、前記環境情報によって前記メッセージの言語を変化させることを特徴とする請求項９記載の情報処理方法。
【請求項１５】
前記外部デバイスが印刷機器であり、前記変換ステップが、前記環境情報によって前記印刷処理で用いる文字の設定を変更することを特徴とする請求項９記載の情報処理方法。
【請求項１６】
前記変換ステップは、ジョブ毎に処理内容を変更させることが可能であることを特徴とする請求項９乃至１５記載の情報処理方法。
【請求項１７】
アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、
前記変換手段により変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、
前記変換手段は、情報処理装置の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させることを特徴とする情報処理装置。
【請求項１８】
前記メッセージは、前記印刷データ生成手段であるプリンタドライバに対して出力するエラー表示であることを特徴とする請求項１７記載の情報処理装置。
【請求項１９】
アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換ステップと、
前記変換ステップにより変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成ステップとを有し、
前記変換ステップは、情報処理方法の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させることを特徴とする情報処理方法。
【請求項２０】
前記メッセージは、前記印刷データ生成ステップであるプリンタドライバに対して出力するエラー表示であることを特徴とする請求項１９記載の情報処理方法。
【請求項２１】
コンピュータ読み取り可能なプログラムが格納された記憶媒体であって、前記プログラムを実行したコンピュータを、
アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、
前記変換手段により変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、
前記変換手段は、情報処理装置の使用環境に関する環境情報に応じて処理内容を変化させる情報処理装置として動作させることを特徴とする記憶媒体。
【請求項２２】
前記環境情報は、使用言語に関する情報を含んでいることを特徴とする請求項２１記載の記憶媒体。
【請求項２３】
前記環境情報に対応した各種設定情報を記憶した設定情報ファイルを記憶する記憶手段を更に有し、
前記変換手段は、前記変換手段が描画コマンドを変換処理する際に、前記環境情報を取得し、前記設定情報ファイルに基づいて、取得した前記環境情報に対応した処理を行う情報処理装置として動作させることを特徴とする請求項２１乃至２２記載の記憶媒体。
【請求項２４】
前記印刷データ生成手段は、プリンタドライパであることを特徴とする請求項２１乃至２３記載の記憶媒体。
【請求項２５】
前記変換手段は、プリンタドライバとは独立したモジュールであり、複数のプリンタドライパで共通に使用されることを特徴とする請求項２４記載の記憶媒体。
【請求項２６】
前記情報処理装置及び／又は前記外部デバイスが表示手段を有し、前記変換手段の処理過程に所定メッセージの前記表示手段への表示を含み、前記環境情報によって前記メッセージの言語を変化させる情報処理装置として動作させることを特徴とする請求項２１記載の記憶媒体。
【請求項２７】
前記外部デバイスが印刷機器であり、前記変換手段が、前記環境情報によって前記印刷処理で用いる文字の設定を変更する情報処理装置として動作させることを特徴とする請求項２１記載の記憶媒体。
【請求項２８】
前記変換手段は、ジョブ毎に処理内容を変更させることが可能であることを特徴とする請求項２１乃至２７記載の記憶媒体。
【請求項２９】
コンピュータ読み取り可能なプログラムが格納された記憶媒体であって、前記プログラムを実行したコンピュータを、
アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、
前記変換手段により変換されたデータに基づいて、前記外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、
前記変換手段は、情報処理装置の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させる情報処理装置として動作させることを特徴とする記憶媒体。
【請求項３０】
前記メッセージは、前記印刷データ生成手段であるプリンタドライバに対して出力するエラー表示であることを特徴とする請求項２９記載の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、情報処理装置に関し、特にパーソナルコンピュータ等の情報処理装置とプリンタ等の周辺機器から成るシステムにおける周辺機器制御に関する。
【０００２】
【従来の技術】
従来、表示装置が接続されたパーソナルコンピュータ等の情報処理装置とプリンタ等の外部周辺機器から成る情報処理システムにおいて、オペレーティングシステムが供給する言語情報により、表示装置に表示するフォント等を切り替える機構が存在した。
【０００３】
また、このようなシステムにおいて、アプリケーションソフトやプリンタドライバが用意するユーザーインターフェースを介して、画面の表示言語をユーザーが動的に切り替える機構が存在した。
【０００４】
また、プリンタと接続されたパーソナルコンピュータ等の情報処理装置からなる情報処理システムあって、さらに、情報処理装置上で、プリンタから出力する印刷データを生成する前に、一旦、最終的にプリンタに送付する印刷データとは異なる形式のデータ形式（いわゆる中間コード）での一時保存を行うスプール手段を備え、この中間コード形式で一時保存されたデータから改めて最終的に前記プリンタに送付する印刷データを生成するデスプール手段とプリンタ制御コマンドを生成する手段を備えるシステムが存在した。
【０００５】
【発明が解決しようとする課題】
このような従来の機構またはシステムにおいては、実際に行う動作はほとんど共通であっても、使用する環境、特に使用される国毎に別個のシステムとして取り扱われていた。例えば、オペレーションシステム、アプリケーション、ドライバソフトは国毎に別個の製品として用意されている。そして、例えばプリンタドライブソフトウェアであればデフォルトフォントの設定やユーザインタフェース画面等で表示されるメッセージなどの表示言語等、国毎で異なる情報はドライバの中に予め設定されており、外部からドライバソフトウェアがどの国用の物であるかなどの情報を得ることはできなかった。
【０００６】
そのため、出力データを一旦中間コード形式で蓄積するタイプのシステムにおける動作制御手段なども環境毎に別個用意する必要があった。
【０００７】
一方、オペレーションシステムが供給する言語情報により、表示するフォント等を切り替える機構を持ったアプリケーション及びドライバにおいては、言語情報はオペレーションシステムの供給に依存するという問題があった。
【０００８】
また、多国籍のユーザが混在するような使用環境においては、設定画面等のメッセージ表示言語を切り替えるなどの目的で、複数国分の同一機器のドライバソフトや上述の中間言語による蓄積動作制御手段などが同一情報処理装置にインストールされることもあり得る。このような場合、実際の機能にはさがないにもかからわず、複数のソフトウェアがインストールされることによって外部メモリなどの記憶容量が非効率に消費されたり、ユーザの使い勝手が悪くなるという問題も発生する。
【０００９】
また、製品の供給側にとっても、環境毎に一部分が異なり、それ以外の部分は同一或いは大部分が共通なソフトウェアをそれぞれの環境毎に準備するのは手間がかかるうえ、製造コストの上昇や製品管理の複雑化などの問題を発生させる要因となっている。
【００１０】
本発明の目的は、上述の問題点を解決した、複数の動作環境に対応可能な情報処理システムを提供することにある。
【００１１】
【課題を解決するための手段】
すなわち、本発明の要旨は、アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、変換手段により変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、変換手段は、情報処理装置の使用環境に関する環境情報に応じて処理内容を変化させることを特徴とする情報処理装置に存する。
【００１２】
また、本発明の別の要旨は、アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換ステップと、変換ステップにより変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成ステップとを有し、変換ステップは、情報処理方法の使用環境に関する環境情報に応じて処理内容を変化させることを特徴とする情報処理方法に存する。
【００１３】
また、本発明の別の要旨は、アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、変換手段により変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、変換手段は、情報処理装置の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させることを特徴とする情報処理装置に存する。
【００１４】
また、本発明の別の要旨は、アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換ステップと、変換ステップにより変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成ステップとを有し、変換ステップは、情報処理方法の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させることを特徴とする情報処理方法に存する。
【００１５】
また、本発明の別の要旨は、コンピュータ読み取り可能なプログラムが格納された記憶媒体であって、プログラムを実行したコンピュータを、アプリケーションが生成したデータに基づく描画コマントをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、変換手段により変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、変換手段は、情報処理装置の使用環境に関する環境情報に応じて処理内容を変化させる情報処理装置として動作させることを特徴とする記憶媒体に存する。
【００１６】
また、本発明の別の要旨は、コンピュータ読み取り可能なプログラムが格納された記憶媒体であって、プログラムを実行したコンピュータを、アプリケーションが生成したデータに基づく描画コマンドをスプールし、外部デバイスでの出力形態に適合させてデータを変換する変換手段と、変換手段により変換されたデータに基づいて、外部デバイスで解釈できる印刷データを生成する印刷データ生成手段とを有し、変換手段は、情報処理装置の使用環境に関する環境情報に対応する言語体系を用いてメッセージを表示させる情報処理装置として動作させることを特徴とする記憶媒体に存する。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
先ず、本発明の情報処理システムの第１実施形態に係る構成を図１のブロック図を参照して説明する。尚、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ(Local Area Network: ローカルエリアネットワーク)、ＷＡＮ（Wide Area Network: 広域ネットワーク）等のネットワークを介して接続がなされ処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
【００１８】
第１の実施形態に係る情報処理システムは、ホストコンピュータ３０００とプリンタ１５００とから構成されている。ホストコンピュータ３０００は、ＣＰＵ１とＲＡＭ２と、ＲＯＭ３とキーボードコントローラ（KBC）５と、CRTコントローラ（CRTC）６とディスクコントローラ（DKC）７と、プリンタコントローラ（PRTC）８と、キーボード（KB）９と、CRTディスプレイ（CRT）１0と、外部メモリ１１とを備えている。また、キーボード９には、通常マウスやタブレット、ジョイスティックなどのポインティングデバイスが接続されている。
【００１９】
先ず、ホストコンピュータ３０００各部の構成を詳述すると、ＣＰＵ１はシステムバスに接続された各デバイスを統括的に制御する中央処理装置であり、ＲＯＭ３のプログラム用ＲＯＭ３ｂ（後述）或いは外部メモリ１１に記憶された文書処理プログラム等に基づいて、図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行する。また、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴディスプレイ１０上でのＷＹＳＩＷＹＧ（What You See Is What You Get：ＣＲＴディスプレイ画面上に見えているそのままの大きさや形で印刷できる機能）を可能としている。
【００２０】
更に、ＣＰＵ１はＣＲＴディスプレイ１０上に表示されたＧＵＩ等においてマウスカーソル（図示略）等で指示されたコマンドに基づいて、予め登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザはプリンタ１５００を使用して印刷する際、印刷の設定に関するウインドウを開き、プリンタ１５００の設定や印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができるようになっている。ＲＡＭ２はＣＰＵ１の主メモリ、ワークエリア等として機能する。ＲＯＭ３はフォント用ＲＯＭ３ａと、プログラム用ＲＯＭ３ｂと、データ用ＲＯＭ３ｃとを備えている。フォント用ＲＯＭ３ａ或いは外部メモリ１１は、上記文書処理の際に使用するフォントデータなどを記憶する。プログラム用ＲＯＭ３ｂ或いは外部メモリ１１は、ＣＰＵ１の制御プログラムであるオペレーティングシステム（以下、ＯＳ）等を記憶する。データ用ＲＯＭ３ｃ或いは外部メモリ１１は、上記文書処理等を行う際に使用する各種データを記憶する。
【００２１】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や上述のポインティングデバイス（図示略）からの入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ディスクコントローラ（ＤＫＣ）７は、外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、双方向性インタフェース２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。キーボード９は、各種キーを備えている。ＣＲＴディスプレイ（ＣＲＴ）１０は、図形、イメージ文字、表等を表示する。
【００２２】
外部メモリ１１はハードディスク（ＨＤ）、フロッピーディスク（ＦＤ）、光磁気ディスク（ＭＯ）等から構成されており、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下、プリンタドライバという）等を記憶する。上述したＣＰＵ１、ＲＡＭ２、ＲＯＭ３、キーボードコントローラ（ＫＢＣ）５、ＣＲＴコントローラ（ＣＲＴＣ）６、ディスクコントローラ（ＤＫＣ）７、プリンタコントローラ（ＰＲＴＣ）８は、コンピュータ制御ユニット２０００上に配設されている。
【００２３】
次に、プリンタ１５００各部の構成を詳述すると、ＣＰＵ１２は、システムバス１５に接続された各デバイスを統括的に制御する中央処理装置であり、ＲＯＭ１３のプログラム用ＲＯＭ１３ｂ（後述）に記憶された制御プログラム等或いは外部メモリ１４に記憶された制御プログラム等に基づいて印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、ＣＰＵ１２は、入力部１８を介してホストコンピュータ３０００との通信処理が可能となっており、プリンタ１５００内の情報等をホストコンピュータ３０００に通知できる構成となっている。ＲＡＭ１９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能し、増設ポートに接続されるオプションＲＡＭ（図示略）によりメモリ容量を拡張することができるように構成されている。
【００２４】
尚、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。ＲＯＭ１３は、フォント用ＲＯＭ１３ａと、プログラム用ＲＯＭ１３ｂと、データ用ＲＯＭ１３ｃとを備えている。フォント用ＲＯＭ１３ａは、上記出力情報を生成する際に使用するフォントデータなどを記憶する。プログラム用ＲＯＭ１３ｂは、ＣＰＵ１２の制御プログラム等を記憶する。データ用ＲＯＭ１３ｃは、プリンタ１５００にハードディスク等の外部メモリ１４が接続されていない場合には、ホストコンピュータ３０００上で利用される情報等を記憶する。
【００２５】
入力部１８は、双方向性インタフェース２１を介してプリンタ１５００とホストコンピュータ３０００との間におけるデータの送受を行う。印刷部インタフェース（Ｉ／Ｆ）１６は、ＣＰＵ１２と印刷部１７との間におけるデータの送受を行う。メモリコントローラ（ＭＣ）２０は、外部メモリ１４のアクセスを制御する。印刷部１７は、ＣＰＵ１２の制御に基づき印刷動作を行う。操作部１５０１は、各種操作のためのスイッチや表示手段（例えば液晶表示パネルやＬＥＤ表示器）等を備えている。外部メモリ１４は、ハードディスク（ＨＤ）、ＩＣカード等から構成されており、プリンタ１５００にオプションとして接続される。
【００２６】
外部メモリ１４は、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶するものであり、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。尚、外部メモリ１４は、１個に限らず、複数個備えることが可能となっている。即ち、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、ＮＶＲＡＭ（図示略）を有し、操作部１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００２７】
上述したＣＰＵ１２、ＲＡＭ１９、ＲＯＭ１３、入力部１８、印刷部インタフェース（Ｉ／Ｆ）１６、メモリコントローラ（ＭＣ）２０は、プリンタ制御ユニット１０００上に配設されている。
【００２８】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の流れをを示す図である。図２において、印刷する文書などを作成するアプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、上記図１の外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤやＣＤ−ＲＯＭ或いはネットワーク（以上図示略）を経由して外部メモリ１１のＨＤに追加することが可能となっている。
【００２９】
外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、アプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。グラフィックエンジン２０２は、ホストコンピュータ３０００から使用可能な印刷装置ごとに予めインストールされたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Graphic Device Interface）関数からＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。
【００３０】
プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェース２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。後述するように、本実施形態に係るプリンタ制御システムにおいては、プリンタドライバ２０３が外部から参照可能な形式でロケールID等の環境情報を有している。
【００３１】
第１の実施形態に係る情報処理システムは、上記図１及び図２で示すプリンタ１５００とホストコンピュータ３０００からなる構成に加えて、更に図３に示す如くアプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。図３は、図２のシステムを拡張したもので、グラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦、中間コードからなるスプールファイル３０３を生成する構成を示したものである。なお、図３における矢印は、印刷に係る主なデータの流れを示すものであり、実際には構成要素間で相互に情報のやりとりがなされている。
【００３２】
本実施形態において図３における構成で付加されたデスパッチャ３０１、スプーラ３０２、スプールファイルマネージャ、デスプーラ３０５はそれぞれ外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。また、スプールファイル３０３は例えば外部メモリ１１の所定の領域に割り当てられている。
【００３３】
上記図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのは、プリンタドライバ２０３がグラフィックエンジン２０２からのすべての印刷命令をプリンタ１５００の制御コマンドへ変換し終った時点である。これに対して、図３のシステムでは、アプリケーション２０１が印刷処理から開放されるのは、スプーラ３０２がすべての印刷命令を中間コードデータに変換し、スプールファイル３０３に出力した時点である。通常、後者の方が短時間で済む。また、図３で示すシステムにおいては、スプールファイル３０３の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大／縮小や、複数ページを１ページに縮小して印刷するＮアップ印刷等、アプリケーションの持たない機能を実現する事ができる。これらの目的のために、上記図２のシステムに対し、図３の如く中間コードデータでスプールするよう、システムの拡張がなされている。
【００３４】
尚、印刷データの加工を行うためには、通常、事前にプリンタドライバ２０３が提供するＧＵＩを構成するウインドウから設定が行われ、プリンタドライバ２０３がその設定内容をＲＡＭ２上あるいは外部メモリ１１上に保管しておく。
【００３５】
以下、図３の詳細を説明する。図示の如く、この拡張された処理方式では、グラフィックエンジン２０２からの印刷命令をディスパッチャ３０１が受け取る。ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２へ印刷命令を送付する。
【００３６】
スプーラ３０２は受け取った印刷命令を中間コードに変換してスプールファイル３０３に出力する。また、スプーラ３０２は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定をプリンタドライバ２０３を介してＲＡＭ２又は外部メモリ１１から取得してスプールファイル３０３に保存する。尚、スプールファイル３０３は外部メモリ１１上にファイルとして生成するが、ＲＡＭ２上に生成されても構わない。更に、スプーラ３０２は、外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２にロードし、スプールファイルマネージャ３０４に対してスプールファイル３０３の生成状況を通知する。
【００３７】
その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷データに関し、加工設定の内容に従って印刷を行えるか判断する。スプールファイルマネージャ３０４がグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対して、スプールファイル３０３に記述された中間コードの印刷処理を行うように指示する。
【００３８】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従って加工し、もう一度グラフィックエンジン２０２経由で出力する。ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令がデスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。プリンタドライバ２０３はプリンタ制御コマンドを生成し、システムスプーラ２０４経由でプリンタ１５００に出力する。
【００３９】
（プリンタの構成）
図５は、第１の実施形態に係るプリンタ１５００の一例としてレーザビームプリンタ（以下、ＬＢＰと略称）の場合の内部構造を示す断面図である。ＬＢＰとしてのプリンタ１５００は、文字パターンデータ等を入力して記録紙に印刷することができる。
【００４０】
プリンタ１５００は、供給されるプリンタ制御コマンド等を基に記録媒体である記録用紙上に像を形成するＬＢＰ本体７４０に、プリンタ制御ユニット１０００と、操作部１５０１とレーザドライバ７０２と、半導体レーザ７０３と、回転多面鏡７０５と、静電ドラム７０６と、現像ユニット７０７と、用紙カセット７０８と、搬送ローラ７１０と、外部メモリ７１１と、フェイスダウン排出部７１５と、排紙トレイ７１６とを備えている。
【００４１】
上記各部の構成を動作とともに詳述すると、プリンタ制御ユニット１０００は、ＬＢＰ本体７４０全体の制御及び文字パターン情報等を解析するものであり、主にプリンタ制御コマンドをビデオ信号に変換してレーザドライバ７０２に出力する。プリンタ制御ユニット１０００には、フォントデータやページ記述言語のエミュレーションプログラム等を供給する外部メモリ７１１を接続することもできる。操作部１５０１には、上述した如く操作のためのスイッチ及び表示手段（例えばＬＥＤ表示器）等が配設されている。レーザドライバ７０２は半導体レーザ７０３を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ７０３から発射されるレーザ光７０４をオン・オフ切替えする。半導体レーザ７０３は、回転多面鏡７０５に向けてレーザ光を発射する。回転多面鏡７０５は、レーザ光７０４を左右方向に振り、静電ドラム７０６上を走査させる。静電ドラム７０６は、レーザ光７０４の走査により文字パターンの静電潜像がドラム表面に形成される。
【００４２】
現像ユニット７０７は、静電ドラム７０６周囲に配設されており、静電潜像を現像する。現像後は、記録紙に転写される。用紙カセット７０８は、記録紙として例えばカットシートを収納する。給紙ローラ７０９及び搬送ローラ７１０は、給紙カセット７０８内のカットシート記録紙をＬＢＰ本体７４０内に送り込み、静電ドラム７０６に供給する。この場合、用紙カセット７０８の蓋部上面に設けられた手差しトレイ（図示略）からカットシート記録紙を供給することもできる。定着部７１２は、カットシート記録紙に転写されたトナー像を加熱してカットシート記録紙上に定着させる。画像が形成された記録紙は、切り替えくさび７１３を上向きにした場合にはフェイスアップ排出部７１４から記録面を上にした状態で排紙トレイ７１６に排出され、くさび７１３を下向きにした場合にはフェイスダウン排出部７１５から記録面を下にした状態で排出される。
【００４３】
（動作）
図４はスプーラ３０２における処理手順を示すフローチャートである。前述の通り、アプリケーション２０１から印刷命令があった場合、デスパッチャ３０１経由でスプーラ３０２がコールされる。この際、まず、ロケールIDの取得処理手段が行われる。このロケールIDは各国毎に定められるIDであり、プリンタドライバ２０３が外部モジュールから参照可能な形式で保有している。保有の仕方は任意であるが、予め呼び出しのための関数を定義する、ドライバ２０３が外部メモリ１１の特定のアドレスに書き込んでおくようにするなど、参照のための手順を取り決めておく。ここでは、ドライバ２０３からロケールIDを取得するものとする。
【００４４】
まず、スプーラ３０２は、ロケールIDをデスパッチャ３０１経由でドライバ３０２から取得する（ステップＳ６０１）。具体的には、スプーラ３０２から取得要求をデスパッチャ３０１へ送信し、デスパッチャ３０１がプリンタドライバ２０３からロケールIDを取得してスプーラ３０２へ受け渡す。本実施形態ではロケールIDとして日本を示すID（たとえば数値「４１１」）が取得されたとする。これは、プリンタドライバ２０３が日本用のプリンタドライバであることを意味する。
【００４５】
次に、取得したロケールIDを元に、ロケールIDに該当するリソースファイル名取得処理が行われる。リソースファイルは、ロケールIDに対応する情報を含んだファイルであり、例えばライブラリの形式で外部メモリ１１に記憶されている。また、リソースファイル名は例えば文字列(プレフィックス)＋ロケールID＋拡張子(.dll)という形で表され、ドライバのロケールに準じて供給される。先に取得したロケールIDよりこのリソースファイル名が取得されるわけである。ここで、リソースファイル名のプレフィックスを"Cpcr"とすると、リソースファイル名はCpcr411.dllとなり、ステップＳ６０２においてこのファイル名がスプーラ３０２によって取得される。
【００４６】
リソースファイル名の取得に引き続き、リソースファイルのロードが行われる（ステップＳ６０３）。これは前処理において取得されたリソースファイル名より表されるファイルを例えば外部メモリ１１であるハードディスクからロードし、ＲＡＭ２の所定領域に展開する処理である。ここではCpcr411.dllがロードされることになる。
【００４７】
次に、スプーラ３０２は、ロードしたリソースファイルより情報を取得する（ステップＳ６０４）。ここでロケールID、すなわち国によって処理を変更しなければならない場合の情報が取得されるわけである。例えば、フォントのフェイス名を入れてこないアプリケーションからの印刷に対して用いるデフォルトフォントを指定、スプールする必要があるが、このようなアプリケーションからの印刷の場合、ロードされたリソースファイルより取得されたロケールIDごとの情報を用いるわけである。ここでは、日本用のリソースファイルCpcr411.dllからデフォルトフォントの情報が“明朝”と得られたとする。
【００４８】
そして、デフォルトフォントの種別を含むロケールIDに対応した情報を用いてアプリケーション２０１から指示された印刷データの中間コード形式ファイルを形成する。例えば、中間コード形式ファイルがデータ部とアトリビュート部からなる場合、印刷データの中間コードへの変換が終了したら、アトリビュート部にロケールIDに対応した情報、すなわちデスプール時に使用すべきデフォルトフォントの種別（本実施形態では“明朝”）及び上述の加工内容の設定などをセットして、中間コード形式の一時ファイルをスプールファイル３０３へ保管する（ステップＳ６０５）。
【００４９】
その後、ロケールIDを保存する（ステップＳ６０６）。保存は任意の形式で行うことができるが、スプールファイルマネージャ３０４やデスプーラ３０５など、スプーラ３０２以降のモジュールが認識できる形式が望ましい。例えば、印刷データと同様の中間コード形式によって外部メモリ１１の特定位置に保存することができる。
【００５０】
このようにして生成された一時ファイルは、上述したようにスプールファイルマネージャ３０４において印刷可能であるかどうかが判定された後、デスプーラ３０５によって必要な加工がなされ、グラフィックエンジン２０２、プリンタドライバ２０３を経てプリンタ１５００で出力される。
【００５１】
このシステムでは、スプール時にフォントデータとして扱うので、デフォルトフォントが必要となっている。しかし、このシステムにおいて、スプールファイルはプリンタドライバの処理の前にあるので、従来のようにプリンタドライバのデフォルトフォントを使用することはできない。よって、スプールファイルモジュールに対してデフォルトフォントが必要となっている。ここで、このスプールファイルモジュールは、複数のプリンタドライバから呼び出されるので、どのプリンタドライバに出力されることになるのかによって、スプールファイルモジュールのデフォルトフォントを変更しなければならない。そのため、プリンタドライバからスプールファイルモジュールが呼び出されるときに、ロケールＩＤを取得しておき、そのロケールＩＤに基づくリソースファイルに従って、デフォルトフォントを選択しているのである。日本なら「明朝」と得られたりするのである。
【００５２】
（第２の実施形態）
第１の実施形態においてはドライバから取得したロケールIDをもとに、対応する情報を中間コード形式の一時ファイルの形成処理以降に使用した。しかしながら第１の実施形態でのロケールID（に対応したリソースファイルに含まれる情報）の使用は内部処理に留まっていた。本実施形態においては、例えばスプーラ３０２、スプールファイルマネージャ３０４及びデスプーラ３０５の少なくとも１つがユーザに対してエラーメッセージや処理状況等のメッセージや、処理内容に関する設定を許すためのユーザインタフェースなどを提供する場合に画面表示で用いる言語種別の切替にロケールIDを用いることを特徴とする。
【００５３】
すなわち、本実施形態も第１の実施形態と同じように、複数のプリンタドライバから共通に使用されるスプールファイルモジュール（プリンタドライバとは独立している）の一部として実装されたスプーラ３０２、スプールファイルマネージャ３０４及びデスプーラ３０５のいずれかにおいて実施される。このようなモジュールにおいては、例えば、表示言語が日本語のＬＩＰＳ（登録商標）ドライバならスプールファイルモジュールからプリンタドライバヘ返送するメッセージは「日本語」にし、表示言語が英語のＰＣＬドライバなら「英語」にする必要がある。
【００５４】
すなわち、第１の実施形態と同様にしてスプーラ３０２がドライバ２０３からロケールIDを取得し、リソースファイルをロードし、リソースファイルからの情報を取得した後で、スプーラ３０２、スプールファイルマネージャ３０４及びデスプーラ３０５のいずれかにおいてユーザへメッセージを表示したり設定を促すなど、言葉による表示が必要な処理が発生した場合には、リソースファイルの情報を用いて表示言語を決定する。スプーラ３０２においてロケールIDを中間言語で保存した後であれば、保存したロケールIDを参照して、リソースファイルのロード、情報の取得を再度行うことにより表示言語の決定が可能である。
【００５５】
図６に、保存されたロケールIDを用いて表示言語を決定する際の処理を示す。ここでも第１の実施形態と同様、ロケールIDとして日本を示す411が保存されているとする。
【００５６】
まず、一時保存ファイルからロケールIDを取得する（ステップＳ８０１）。次に、このロケールIDを元にして取得したロケールIDに該当するリソースファイル名取得処理が行われる（ステップＳ８０２）。ここでも第１の実施形態と同様、リソースファイル名は文字列(プレフィックス)＋ロケールID＋拡張子(.dll)という形で表され、ドライバのロケールに準じて供給される。先に取得したロケールIDよりこのリソースファイル名が取得されるわけである。ここで、リソースファイル名のプレフィックスを"Cpcr"とすると、リソースファイル名はCpcr411.dllとなり、これが取得されるわけである。
【００５７】
そして、リソースファイルのロード処理手段が行われる（ステップＳ８０３）。これは前処理において取得されたリソースファイル名より表されるファイルをロードする処理である。ここではCpcr411.dllがロードされることになる。
【００５８】
次に、前記ロードされたリソースファイルより情報を取得する処理が行われる（ステップＳ８０４）。ここでロケールによって処理を変更しなければならない場合の情報が取得されるわけである。ロケールごとに変更しなければならないユーザーインターフェースやエラーメッセージ等の表示言語の情報はここで取得される。本実施形態の場合、ロケールIDが日本のIDを示し、そのリソースファイルがロードされた場合、表示言語のリソースとして、日本語のメッセージが取得されることになる。
【００５９】
そして、取得された情報より行う動作処理が行われる（ステップＳ８０５）。ここでは前記取得された表示言語のリソースが日本語であるため、日本語によるユーザーインターフェース及びエラーメッセージ等の表示がされることになる。
【００６０】
【他の実施形態】
上述の実施形態においては、周辺機器としてプリンタを用いた場合を示したが、表示言語の決定などにおいては、他の周辺機器であって良い。
【００６１】
また、ロケールIDとして国を示すコードを用いたが、取得側でその解釈が可能であればどのような形式であっても良い。また、リソースファイルを別途用意したが、国毎に変化する情報の量によっては情報自身をドライバに持たせるようにしても良い。
【００６２】
また、ロケールIDを国毎に設けた例を説明したが、任意の体系でロケールIDを割り当てることが可能である。一国内で地域により言語体系が分かれる場合には地域ごとに別のロケールIDを割り当てても良いし、逆に複数の国で共通の環境情報が使用可能ならば共通したロケールIDを割り当てても良い。
【００６３】
また、スプーラ、スプールファイルマネージャ、デスプーラなどのモジュールは、ＣＰＵ１が所定のソフトウェアを実行することによって実現しても、専用のハードウェアなどを用いて行っても良い。
【００６４】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（複写機、プリンタ、ファクシミリ装置など）に適用してもよい。
【００６５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【００６６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００６８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００６９】
【発明の効果】
以上説明したように、本発明においては、周辺機器制御手段において使用環境情報を外部から参照可能に有することにより、使用環境別に作成された同一周辺機器用の制御手段が複数存在する場合であっても、共通のシステムで対応することが可能となるという効果を有する。
【図面の簡単な説明】
【図１】本発明の実施形態に係る情報処理システムの構成例を示すブロック図である。
【図２】プリンタが接続されたホストコンピュータの典型的なプリント手順の流れを示す図である。
【図３】図２の構成に中間コードスプール機能に係る構成を付加した構成例を示す図である。
【図４】スプーラ３０２の動作を説明するフローチャートである。
【図５】レーザビームプリンタの内部構造を示す断面図である。
【図６】スプールファイルマネージャ３０４の動作を説明するフローチャートである。
【符号の説明】
１、１２      ＣＰＵ
２、１９      ＲＡＭ
３、１３      ＲＯＭ
４            システムバス
７            ディスクコントローラ
１５００      プリンタ
３０００      ホストコンピュータ
【図１】
0003747130.tif 000002
【図２】
0003747130.tif 000003
【図３】
0003747130.tif 000004
【図４】
0003747130.tif 000005
【図５】
0003747130.tif 000006
【図６】
0003747130.tif 000007