(57)【要約】【課題】  プリンタを他のプリンタに変更する場合において、変更後のプリンタにおいて変更前のプリンタと同様の印刷出力を得ることができるようにすることを好適に実現できるようになる印刷システムを提供すること。【解決手段】  プリンタ保持情報記憶部４８は、第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶する。中間データ生成部４４は、複数のプログラムのうちのいずれかによって生成される、第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなる内部印刷データと、プリンタ保持情報記憶部４８に記憶されるフォント画像データと、に基づいてラスタ画像データを生成する。印刷データ生成部４６は、該ラスタ画像データを第１のプリンタにおいて画像記録媒体に形成させるための印刷データを生成する。印刷データ生成部４６によって生成される印刷データは第１のプリンタに出力される。【選択図】        図１０
2006338411.tif 000002
【特許請求の範囲】
【請求項１】
第１のプリンタと、前記第１のプリンタに通信可能に接続され、複数のプログラムのうちのいずれかによって生成される内部印刷データに基づく印刷データを前記第１のプリンタに出力する印刷データ出力装置と、を含む印刷システムにおいて、
前記内部印刷データは、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含み、
前記印刷データ出力装置は、
前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶するフォント画像データ記憶手段と、
前記内部印刷データと前記フォント画像データとに基づいてラスタ画像データを生成するラスタ画像データ生成手段と、
前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成する印刷データ生成手段と、
を含み、前記印刷データ生成手段によって生成される印刷データを前記第１のプリンタに出力する、
ことを特徴とする印刷システム。
【請求項２】
請求項１に記載の印刷システムにおいて、
前記第２のプリンタに記憶されるフォントはビットマップフォントであることを特徴とする印刷システム。
【請求項３】
請求項１又は２に記載の印刷システムにおいて、
前記第２のプリンタは、画像記録媒体に画像データを所定の解像度で形成するプリンタであり、
前記第２のプリンタに記憶されるフォントは、前記所定の解像度に応じたフォントである、
ことを特徴とする印刷システム。
【請求項４】
請求項１乃至３のいずれかに記載の印刷システムにおいて、
前記印刷データ出力装置は、前記第２のプリンタに保持される情報に基づく第２のプリンタ保持情報を記憶する手段をさらに含み、
前記ラスタ画像データ生成手段は、前記第２のプリンタ保持情報にさらに基づいて前記ラスタ画像データを生成する、
ことを特徴とする印刷システム。
【請求項５】
請求項１乃至４のいずれかに記載の印刷システムにおいて、
前記印刷データ出力装置は、前記第１のプリンタに保持される情報に基づく第１のプリンタ保持情報を記憶する手段をさらに含み、
前記印刷データ生成手段は、前記第１のプリンタ保持情報にさらに基づいて前記印刷データを生成する、
ことを特徴とする印刷システム。
【請求項６】
請求項１乃至５のいずれかに記載の印刷システムにおいて、
前記内部印刷データは、前記第２のプリンタの機構を制御するための機構制御データを含み、
前記印刷データ生成手段は、前記内部印刷データに含まれる機構制御データに基づいて、前記第１のプリンタの機構を制御するための機構制御データを含む前記印刷データを生成する、
ことを特徴とする印刷システム。
【請求項７】
請求項１乃至６のいずれかに記載の印刷システムにおいて、
前記ラスタ画像データ生成手段は、前記複数のプログラムからの入力を受けて前記第１のプリンタに対する出力を行う所定プログラムを介して前記内部印刷データを取得し、
前記印刷データ生成手段によって生成される印刷データは、前記所定プログラムを介して前記第１のプリンタに出力される、
ことを特徴とする印刷システム。
【請求項８】
第１のプリンタに、複数のプログラムのうちのいずれかによって生成される、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなる内部印刷データに基づく印刷データを出力し、該印刷データに基づく印刷出力を前記第１のプリンタに行わせる印刷システムの制御方法において、
前記内部印刷データと、前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶してなるフォント画像データ記憶手段の記憶内容と、に基づいてラスタ画像データを生成するためのラスタ画像データ生成ステップと、
前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成するための印刷データ生成ステップと、
前記印刷データ生成ステップによって生成される印刷データを前記第１のプリンタに出力するためのステップと、
を含むことを特徴とする印刷システムの制御方法。
【請求項９】
第１のプリンタに、複数のプログラムのうちのいずれかによって生成される、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなる内部印刷データに基づく印刷データを出力し、該印刷データに基づく印刷出力を前記第１のプリンタに行わせる印刷システムとしてコンピュータを機能させるためのプログラムであって、
前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶するフォント画像データ記憶手段、
前記内部印刷データと前記フォント画像データとに基づいてラスタ画像データを生成するラスタ画像データ生成手段、
前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成する印刷データ生成手段、及び、
前記印刷データ生成手段によって生成される印刷データを前記第１のプリンタに出力する手段、
として前記コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷システム、印刷システムの制御方法及びプログラムに関する。
【背景技術】
【０００２】
各種アプリケーションプログラムが実行されるコンピュータと、プリンタと、を含み、各種アプリケーションプログラムで作成された文書や画像等をプリンタから印刷出力する印刷システムが一般的に知られている。このような印刷システムにおいてプリンタを他のプリンタに変更する場合、変更前のプリンタの印刷出力と、変更後のプリンタの印刷出力と、の間に差異が生じてしまう場合がある。従来、このような場合には、変更後のプリンタの印刷出力において変更前のプリンタの印刷出力と同様の印刷出力を再現させるために、アプリケーションプログラム側の仕様や設定に変更を加えることが行われていた。
【０００３】
ところで、印刷が行われる際のデータフローがアプリケーションプログラム間で異なる場合がある。例えば、プリンタドライバを介して印刷が行われるようになっているアプリケーションプログラムもあれば、プリンタドライバ以外の他のプログラムを介して印刷が行われるようになっているアプリケーションプログラムもある。このため、上記のようなプリンタの変更を行う場合、アプリケーションプログラムのデータフローに応じた変更をコンピュータに加える必要があった。例えば、プリンタドライバを介して印刷が行われるようになっているアプリケーションプログラムがインストールされているコンピュータに対しては、変更後のプリンタに対応するプリンタドライバを新たにインストールする必要があり、プリンタドライバ以外の他のプログラムを介して印刷が行われるようになっているアプリケーションプログラムがインストールされているコンピュータに対しては、変更後のプリンタに対応する上記他のプログラムを新たにインストールする必要があった。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のようなプリンタの変更を行う場合、アプリケーションプログラムの利用者や提供者にとっては、アプリケーションプログラム側の仕様や設定に変更を加える必要がないことが望ましい。また、コンピュータに加える変更は、アプリケーションプログラムの印刷時のデータフローによらないものであることが望ましい。
【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、アプリケーションプログラムで作成された文書や画像等の印刷に用いられるプリンタを他のプリンタに変更する場合に、変更前のプリンタと同様の印刷出力を変更後のプリンタにおいて得られるようにするとともに、それを、アプリケーションプログラム側の仕様や設定に変更を加える必要がないように図りつつ、かつ、コンピュータに加える変更がアプリケーションプログラムの印刷時のデータフローによらないものとなるように図りつつ実現できるようになる印刷システム、印刷システムの制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る印刷システムは、第１のプリンタと、前記第１のプリンタに通信可能に接続され、複数のプログラムのうちのいずれかによって生成される内部印刷データに基づく印刷データを前記第１のプリンタに出力する印刷データ出力装置と、を含む印刷システムにおいて、前記内部印刷データは、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含み、前記印刷データ出力装置は、前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶するフォント画像データ記憶手段と、前記内部印刷データと前記フォント画像データとに基づいてラスタ画像データを生成するラスタ画像データ生成手段と、前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成する印刷データ生成手段と、を含み、前記印刷データ生成手段によって生成される印刷データを前記第１のプリンタに出力することを特徴とする。
【０００７】
また、本発明に係る印刷システムの制御方法は、第１のプリンタに、複数のプログラムのうちのいずれかによって生成される、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなる内部印刷データに基づく印刷データを出力し、該印刷データに基づく印刷出力を前記第１のプリンタに行わせる印刷システムの制御方法において、前記内部印刷データと、前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶してなるフォント画像データ記憶手段の記憶内容と、に基づいてラスタ画像データを生成するためのラスタ画像データ生成ステップと、前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成するための印刷データ生成ステップと、前記印刷データ生成ステップによって生成される印刷データを前記第１のプリンタに出力するためのステップと、を含むことを特徴とする。
【０００８】
また、本発明に係るプログラムは、第１のプリンタに、複数のプログラムのうちのいずれかによって生成される、前記第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなる内部印刷データに基づく印刷データを出力し、該印刷データに基づく印刷出力を前記第１のプリンタに行わせる印刷システムとしてコンピュータを機能させるためのプログラムであって、前記第２のプリンタに記憶されるフォントに応じたフォント画像データを記憶するフォント画像データ記憶手段、前記内部印刷データと前記フォント画像データとに基づいてラスタ画像データを生成するラスタ画像データ生成手段、前記第１のプリンタにおいて画像記録媒体に前記ラスタ画像データを形成させるための前記印刷データを生成する印刷データ生成手段、及び、前記印刷データ生成手段によって生成される印刷データを前記第１のプリンタに出力する手段、として前記コンピュータを機能させるためのプログラムである。
【０００９】
また、本発明に係る情報記憶媒体は、上記プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。
【００１０】
本発明は、第１のプリンタと、該第１のプリンタに通信可能に接続され、複数のプログラムのうちのいずれかによって生成される内部印刷データに基づく印刷データを第１のプリンタに出力する印刷データ出力装置と、を含む印刷システムに関するものである。本発明では、内部印刷データは、第１のプリンタとは異なるプリンタである第２のプリンタに記憶されるフォントのうちの少なくとも１つを指定するデータを含んでなるデータである。また、印刷データ出力装置では、第２のプリンタに記憶されるフォントに応じたフォント画像データが記憶される。また、印刷データ出力装置では、内部印刷データと前記フォント画像データとに基づいてラスタ画像データを生成され、該ラスタ画像データを第１のプリンタにおいて画像記録媒体に形成させるための印刷データが生成される。そして、生成された印刷データは第１のプリンタに出力される。本発明によれば、アプリケーションで作成された文書や画像等の印刷出力に用いられるプリンタを、「フォント画像データを記憶し、該フォント画像データに基づいて印刷出力を行うプリンタ」（第２のプリンタ）から、他のプリンタ（第１のプリンタ）に変更する場合において、第１のプリンタの印刷出力において、第２のプリンタの印刷出力と同様の印刷出力を再現させることが可能になる。また、かかる再現を、アプリケーション側の仕様や設定に変更を加える必要がないように、かつ、アプリケーションのデータフローに応じた変更を加える必要がないように図りつつ実現できるようになる。
【００１１】
また、本発明の一態様では、前記第２のプリンタに記憶されるフォントはビットマップフォントであってもよい。
【００１２】
また、本発明の一態様では、前記第２のプリンタは、画像記録媒体に画像データを所定の解像度で形成するプリンタであり、前記第２のプリンタに記憶されるフォントは、前記所定の解像度に応じたフォントであってもよい。
【００１３】
また、本発明の一態様では、前記印刷データ出力装置は、前記第２のプリンタに保持される情報に基づく第２のプリンタ保持情報を記憶する手段をさらに含み、前記ラスタ画像データ生成手段は、前記第２のプリンタ保持情報にさらに基づいて前記ラスタ画像データを生成するようにしてもよい。
【００１４】
また、本発明の一態様では、前記印刷データ出力装置は、前記第１のプリンタに保持される情報に基づく第１のプリンタ保持情報を記憶する手段をさらに含み、前記印刷データ生成手段は、前記第１のプリンタ保持情報にさらに基づいて前記印刷データを生成するようにしてもよい。
【００１５】
また、本発明の一態様では、前記内部印刷データは、前記第２のプリンタの機構を制御するための機構制御データを含み、前記印刷データ生成手段は、前記内部印刷データに含まれる機構制御データに基づいて、前記第１のプリンタの機構を制御するための機構制御データを含む前記印刷データを生成するようにしてもよい。
【００１６】
また、本発明の一態様では、前記ラスタ画像データ生成手段は、前記複数のプログラムからの入力を受けて前記第１のプリンタに対する出力を行う所定プログラムを介して前記内部印刷データを取得し、前記印刷データ生成手段によって生成される印刷データは、前記所定プログラムを介して前記第１のプリンタに出力されるようにしてもよい。ここで、「所定プログラム」は例えばプリンタの機種に依存しないプログラムである。また例えば、マイクロソフト社製のウィンドウズ（登録商標）がオペレーティングシステムとして実行されるコンピュータにおける「ランゲージモニタプログラム」である。また例えば、いわゆる「ポートエミュレータプログラム」である。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。
【００１８】
図１は、本発明の実施形態に係る印刷システムの全体構成を示す図である。同図に示すように、本実施の形態に係る印刷システム１はホストコンピュータ１０（印刷データ出力装置）と、プリンタ２０と、を含んで構成される。
【００１９】
図１に示すように、ホストコンピュータ１０は制御部１１と、記憶部１２と、入力部１３と、表示部１４と、インタフェース（Ｉ／Ｆ）１５と、光ディスク読み取り部１６と、を含んで構成されるコンピュータである。
【００２０】
制御部１１は、記憶部１２に記憶されるオペレーティングシステム及びその他のプログラムに従って動作し、各種情報処理を実行する。また、記憶部１２はコンピュータ読み取り可能な情報記憶媒体で構成される。例えば、記憶部１２はＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）やハードディスク装置を含んで構成される。記憶部１２には、制御部１１によって実行されるプログラムが格納される。また、記憶部１２は、制御部１１の処理の過程で必要となる種々のデータを記憶するワークメモリとしても動作する。
【００２１】
光ディスク読み取り部１６は、制御部１１からの指示に従って、例えばＤＶＤ−ＲＯＭ等の光ディスク（情報記憶媒体）に記憶されたプログラムやデータを読み取る。
【００２２】
入力部１３は例えばキーボード又はマウス等であり、ユーザの操作入力に応じたデータを制御部１１に入力する。表示部１４は例えばディスプレイ等であり、制御部１１から入力される指示に従って情報の表示を行う。
【００２３】
インタフェース１５は、各種周辺機器や情報記憶媒体（メモリカード等）をホストコンピュータ１０に接続するためのインタフェースである。インタフェース１５は周辺機器等から入力されるデータを制御部１１に出力する。また、インタフェース１５は制御部１１から入力される指示に従って、種々のデータを周辺機器等に出力する。ホストコンピュータ１０には、例えばＲＳ−２３２Ｃインタフェース規格に則った１又は複数の接続口（ポート）や、ＵＳＢ（Universal Serial Bus）インタフェース規格に則った１又は複数の接続口が設けられる。なお、以下では、ＲＳ−２３２Ｃインタフェース規格に則った接続口を「ＣＯＭポート」と記載し、ＵＳＢインタフェース規格に則った接続口を「ＵＳＢポート」と記載する。
【００２４】
ホストコンピュータ１０にはインタフェース１５を介してプリンタ２０が相互にデータ授受可能に接続される。図１に示すように、プリンタ２０は制御部２１と、記憶部２２と、画像形成部２３と、インタフェース（Ｉ／Ｆ）２４と、を含んで構成される。
【００２５】
制御部２１はプリンタ２０全体の制御を行う。記憶部２２はＲＯＭやＲＡＭを含んで構成され、印刷実行のために必要な各種プログラムやデータを記憶する。インタフェース２４はホストコンピュータ１０から送信されるデータを受信し、制御部２１に出力する。プリンタ２０にはインタフェース２４として、例えばＣＯＭポートやＵＳＢポートが設けられる。画像形成部２３は制御部２１から入力されるデータに基づいて画像データを生成し、その画像データを印刷用紙等の画像記録媒体に印刷出力する。
【００２６】
例えば、プリンタ２０はフォント画像データを記憶部２２に記憶し、文書等の内容を示すコマンドデータ（文字列を示すコマンドデータ）やフォント種類を示すコマンドデータ等をホストコンピュータ１０から受信し、これらのコマンドデータに基づいてラスタ画像データを生成し、該ラスタ画像データを画像記録媒体に形成する。また例えば、プリンタ２０は、所定のデータ形式のラスタ画像データ（より正確には、画像を構成する各画素ごとの着色情報を示すコマンドデータ）をホストコンピュータ１０から受信し、該ラスタ画像データを画像記録媒体に形成する。
【００２７】
また例えば、プリンタ２０はオートカッタ機構を備え、画像記録媒体に画像を形成するための上記コマンドデータとともに、画像記録媒体の切断を指示するコマンドデータをホストコンピュータ１０から受信し、画像記録媒体を所与の位置において所与の態様で切断する。
【００２８】
本実施の形態では、マイクロソフト社製のウィンドウズ（登録商標）がオペレーティングシステムとしてホストコンピュータ１０にインストールされている。また、ＰＯＳ（Point Of Sales）アプリケーションプログラム（以下、ＰＯＳアプリケーションと記載する。）がホストコンピュータ１０にインストールされている。このＰＯＳアプリケーションはレシート作成機能を有している。プリンタ２０は、このＰＯＳアプリケーションで作成されたレシート画像を印刷するために用いられる。
【００２９】
ここで、レシート画像の印刷が行われる際のホストコンピュータ１０の動作について説明する。図２は、かかる動作を説明するための図である。ここでは、プリンタ２０として「フォント画像データを記憶部２２に記憶し、文書等の内容を示すコマンドデータやフォント種類を示すコマンドデータ等のコマンドデータをホストコンピュータ１０から受信し、これらのコマンドデータに基づいてラスタ画像データを生成し、該ラスタ画像データを画像記録媒体に形成するプリンタＡ」がホストコンピュータ１０の「ＣＯＭポート１」に接続されていることとする。また、ホストコンピュータ１０には、プリンタＡに対応するプリンタドライバ（印刷データ出力プログラム）がインストールされている。
【００３０】
図２に示すように、ＰＯＳアプリケーション３０においてレシート画像の印刷指示が行われると、レシート画像の描画命令を表すメタデータがＧＤＩ（Graphic Device Interface）プログラム３１によって生成される。このＧＤＩプログラム３１はオペレーティングシステムの一部として提供されるプログラムであり、このメタデータはデバイス（プリンタ）に依存しないデータである。
【００３１】
ＧＤＩプログラム３１によって生成されたメタデータは、スプーラ３２を介してプリンタドライバ３３に供給される。なお、ホストコンピュータ１０には、プリンタ２０に関し、例えば図３に示すようなプリンタ情報が記憶されている。同図に示すように、このプリンタ情報は「識別名」フィールドと、「プリンタドライバ」フィールドと、「ポート」フィールドと、を含んでいる。「識別名」フィールドには、プリンタドライバとポートとの組み合わせを識別する識別情報が格納される。例えばプリンタ２０の機種名に基づく文字列が格納される。「プリンタドライバ」フィールドには、プリンタドライバを特定する情報が格納される。例えばプリンタドライバ名が格納される。「ポート」フィールドには、プリンタ２０が接続されたポートを特定する情報が格納される。なお、同図の例は、ホストコンピュータ１０にプリンタＡのみが接続される状態を示している。ホストコンピュータ１０に複数のプリンタ２０が接続される場合には、複数のプリンタ２０の各々のプリンタ情報が記憶されることになる。本実施の形態では、ＰＯＳアプリケーション３０には一の「識別名」が対応づけられるようになっており、ＧＤＩプログラム３１によって生成されたメタデータは、ＰＯＳアプリケーション３０に対応づけられた「識別名」に対応するプリンタドライバ３３に供給されるようになっている。
【００３２】
プリンタドライバ３３では、メタデータがプリンタＡに対応した印刷データ（デバイスに依存したデータ）に変換される。例えば、プリンタＡにおいて画像記録媒体にレシート画像を形成させるためのコマンドデータや、プリンタＡの機構を制御するためのコマンドデータ（例えば、画像記録媒体のカットを指示するコマンドデータ）等がメタデータに基づいて生成される。
【００３３】
プリンタドライバ３３によって生成された印刷データは、スプーラ３２によって記憶部１２に一時的に保持される。スプーラ３２はプリンタ２０の状態を監視しながら、印刷データをプリンタ２０に順次送信する。すなわち、印刷データがポートドライバ３４を介して、ＰＯＳアプリケーション３０に対応づけられた「識別名」に対応するポート（図３参照）から出力され、プリンタ２０（プリンタＡ）に供給される。
【００３４】
なお、プリンタＡに対応した印刷データはプリンタドライバ３３以外のプログラムによって生成される場合もある。図４は、その場合におけるホストコンピュータ１０の動作を示している。なお、図２と同様の動作を行うものについては同じ符号を付して説明を省略する。
【００３５】
図４に示すように、ＰＯＳアプリケーション３０ａにおいてレシート画像の印刷指示が行われると、プリンタＡに対応した印刷データが印刷データ生成プログラム３５によって生成される。印刷データ生成プログラム３５は、例えばＰＯＳアプリケーション３０ａの一部として提供されるプログラムである。
【００３６】
印刷データ生成プログラム３５によって生成された印刷データは、プリンタドライバ３３を介することなく、スプーラ３２及びポートドライバ３４を介して、プリンタ２０（プリンタＡ）に供給される。なお、ＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５には一のポートが対応づけられる。例えば、一の「識別名」（図３参照）がＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５に対応づけられることによって、ＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５に一のポートが対応づけられるようになっている。印刷データ生成プログラム３５によって生成された印刷データは、ＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５に対応づけられたポートから出力され、プリンタ２０（プリンタＡ）に供給される。
【００３７】
以上に説明した印刷システム１において、プリンタ２０をプリンタＡ（第２のプリンタ）から「所定のデータ形式のラスタ画像データを受信し、該ラスタ画像データを画像記録媒体に形成するプリンタＢ（第１のプリンタ）」に変更する場合、レシート画像の印刷をプリンタＢに行わせるためのプログラムが必要となる。このとき、ＰＯＳアプリケーション３０からプリンタＢに印刷を行わせる場合には、プリンタＢに対応するプリンタドライバ３３が通常は必要となり、ＰＯＳアプリケーション３０ａからプリンタＢに印刷を行わせる場合には、プリンタＢに対応する印刷データ生成プログラム３５が通常は必要となる。以下、上記のような場合において、ＰＯＳアプリケーション３０，３０ａごとに異なるプログラムを用意する必要なく、プリンタＢの利用を開始できるようにするための技術について説明する。
【００３８】
また、印刷システム１において、プリンタ２０をプリンタＡからプリンタＢに変更する場合、プリンタＡの印刷出力とプリンタＢの印刷出力との間に差異が生じる場合がある。以下、上記のような場合において、プリンタＡと同様の印刷出力をプリンタＢにおいて得ることができるようにするとともに、それを、ＰＯＳアプリケーション側の仕様や設定等に変更を加えることなく実現するための技術についても説明する。
【００３９】
まず、ホストコンピュータ１０に接続されるプリンタ２０をプリンタＡからプリンタＢに変更する場合に実行される手順について説明する。なお、ここでは、プリンタＢがホストコンピュータ１０の「ＵＳＢポート１」に接続されることとして説明する。
【００４０】
ホストコンピュータ１０に接続されるプリンタ２０をプリンタＢに変更する場合、ユーザはホストコンピュータ１０とプリンタＡとの接続を解除し、プリンタＢのプリンタドライバが記憶された光ディスク（インストールディスク）を光ディスク読み取り部１６に装着させる。その後、ユーザはホストコンピュータ１０の「ＵＳＢポート１」にプリンタＢを接続する。
【００４１】
ホストコンピュータ１０の「ＵＳＢポート１」にプリンタＢが接続されたことが検出されると、ホストコンピュータ１０では図５に示すようなインストール処理が実行されるようになっている。なお、同図に示すインストール処理において、Ｓ１０１乃至Ｓ１０４はオペレーティングシステムによって実行される。また、Ｓ１０５乃至Ｓ１０７は、インストールディスクに記憶された所定のプログラムが読み出され、制御部１１に実行されることによって実現される。
【００４２】
図５に示すように、まず、プリンタＢが接続されたポートが特定される（Ｓ１０１）。次に、プリンタＢに対応したプリンタドライバがインストールディスクから読み出されて、ホストコンピュータ１０にインストールされる（Ｓ１０２）。ここでインストールされるプリンタドライバは、ＧＤＩプログラム３１によって生成されたメタデータをプリンタＡに対応する印刷データに変換するプリンタドライバ本体（プリンタドライバ３３と同等のもの）と、ランゲージモニタプログラムと、印刷データ変換プログラムと、を含んで構成されるものである。ランゲージモニタプログラム及び印刷データ変換プログラムは、プリンタＡに対応する印刷データをプリンタＢに対応する印刷データに変換するためのものである。詳しくは後述する（図９及び図１０参照）。
【００４３】
次に、仮識別名が生成される（Ｓ１０３）。仮識別名は例えばプリンタＢの機種名に基づいて生成される。次に、プリンタＢのプリンタ情報が生成され、追加登録される（Ｓ１０４）。このプリンタＢのプリンタ情報の「識別名」フィールドには、Ｓ１０３で生成された仮識別名が格納される。また、「プリンタドライバ」フィールドには、Ｓ１０２でインストールされたプリンタドライバを示す情報が格納される。さらに、「ポート」フィールドには、Ｓ１０１で検出されたポートを示す情報が格納される。その結果、プリンタ情報は図６に示すように更新される。なお、Ｓ１０３の処理とＳ１０４の処理とは一体的に行われるものであってもよいし、個別に行われるものであってもよい。
【００４４】
次に、プリンタＡに対応する「識別名」が取得される（Ｓ１０５）。すなわち、プリンタＡのプリンタ情報の「識別名」フィールドの内容が取得される。次に、プリンタＡのプリンタ情報が削除される（Ｓ１０６）。最後に、プリンタＢのプリンタ情報の「識別名」フィールドの内容が、Ｓ１０６で取得された識別名に更新される（Ｓ１０７）。その結果、プリンタ情報は図７に示すように更新される。すなわち、プリンタＡに対応づけられていた「識別名」に、プリンタＡのプリンタドライバと、プリンタＡが接続されたポートと、に代えて、プリンタＢのプリンタドライバと、プリンタＢが接続されたポートと、が対応づけられることになる。言い換えれば、プリンタＡに対応づけられていた「識別名」に、プリンタＢのプリンタドライバと、プリンタＢが接続されたポートと、が対応づけられてなるプリンタ情報が、プリンタＢのプリンタ情報として記憶されることになる。
【００４５】
なお、プリンタＢがホストコンピュータ１０の「ＵＳＢポート」以外のポート（例えば「ＣＯＭポート１」）に接続される場合には、以下に説明するような手順が実行される。すなわち、ユーザはホストコンピュータ１０とプリンタＡとの接続を解除し、プリンタＢのプリンタドライバと、このプリンタドライバのインストールプログラムと、が記憶された光ディスク（インストールディスク）を光ディスク読み取り部１６に装着させた後、インストールプログラムを実行させる。図８は、このインストールプログラムによって実行されるインストール処理を示すフロー図である。
【００４６】
図８に示すように、まず、プリンタＢが接続されたポートが特定される（Ｓ２０１）。プリンタＢが接続されたポートは自動的に検出されるようにしてもよいし、ユーザに入力させるようにしてもよい。次に、プリンタＢに対応したプリンタドライバがインストールされる（Ｓ２０２）。ここでインストールされるプリンタドライバは、図５のＳ１０２において説明したプリンタドライバと同様である。次に、プリンタＡのプリンタ情報が更新される（Ｓ２０３）。具体的には、プリンタＡのプリンタ情報の「プリンタドライバ」フィールドの内容が、Ｓ２０２でインストールされたプリンタドライバを示すように更新される。また、「ポート」フィールドの内容が、Ｓ２０１で特定されたポートを示すように更新される。すなわち、図７に示すようにプリンタ情報が更新される。すなわち、プリンタＡに対応づけられていた「識別名」に、プリンタＢのプリンタドライバと、プリンタＢが接続されたポートと、が対応づけられてなるプリンタ情報が、プリンタＢのプリンタ情報として生成されることになる。
【００４７】
なお、Ｓ２０２では、ランゲージモニタプログラム及び印刷データ変換プログラムのみがインストールされるようにしてもよい。この場合、Ｓ２０３では、「ポート」フィールドの内容のみが更新されるようにしてもよい。例えば、ＰＯＳアプリケーション３０ａのみが実行されるホストコンピュータ１０ではこのようにすればよい。このとき、ＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５に対応づけられるポートが、Ｓ２０１で特定されたポートに更新されるようにすればよい。
【００４８】
以上に説明したインストール処理（図５又は図８参照）によれば、プリンタＡに元々対応づけられていた「識別名」に、新たにインストールされたプリンタＢのプリンタドライバと、プリンタＢが接続されたポートと、が自動的に対応づけられるようになっている。このため、ユーザがＰＯＳアプリケーション側で印刷出力先等の設定を変更しなくても、レシート画像の印刷出力がプリンタＢで行われるようになる。
【００４９】
次に、インストール処理（図５又は図８参照）が実行された後のホストコンピュータ１０においてレシート画像の印刷が行われる際の動作について説明する。図９は、かかる動作を説明するための図である。なお、図２及び図４と同様の動作を行うものについては同じ符号を付して説明を省略する。また、図９には、ＰＯＳアプリケーション３０とＰＯＳアプリケーション３０ａとの両方が記載されているが、ホストコンピュータ１０にはこれらの少なくとも一方がインストールされる。
【００５０】
図９に示すように、ＰＯＳアプリケーション３０においてレシート画像の印刷指示が行われると、レシート画像の描画命令を表すメタデータがＧＤＩプログラム３１によって生成される。ＧＤＩプログラム３１によって生成されたメタデータは、プリントスプーラ３２を介してプリンタドライバ３３に供給される。なお、ここでのプリンタドライバ３３は、図５のＳ１０２又は図８のＳ２０２においてインストールされたプリンタドライバに含まれる「プリンタドライバ本体」を指している。プリンタドライバ３３では、メタデータがプリンタＡに対応した印刷データに変換される。一方、ＰＯＳアプリケーション３０ａにおいてレシート画像の印刷指示が行われると、プリンタＡに対応した印刷データが印刷データ生成プログラム３５によって生成される。
【００５１】
プリンタドライバ３３又は印刷データ生成プログラム３５によって生成された印刷データ（内部印刷データ）は、スプーラ３２を介してランゲージモニタプログラム３６に供給される。なお、印刷データ生成プログラム３５によって生成された印刷データについては、印刷データ生成プログラム３５からランゲージモニタプログラム３６に直接供給されるようにしてもよい。ランゲージモニタプログラム３６は、印刷データが供給されたか否かを監視し、印刷データが供給されたことが検知された場合には、その印刷データを印刷データ変換プログラム３７に供給する。なお、ランゲージモニタプログラム３６は、プリンタ２０からポートドライバ３４を介して供給されるプリンタ２０のステータス情報を受け取り、それを所定のプログラム（例えばプリンタステータス参照プログラム等）に供給するためにも用いられるものである。また、ランゲージモニタプログラム３６と印刷データ変換プログラム３７とは一体的なものとして設けられるものであってもよいし、別体として設けられるものであってもよい。
【００５２】
印刷データ変換プログラム３７では、プリンタドライバ３３又は印刷データ生成プログラム３５によって生成された印刷データが、プリンタＢに対応した印刷データに変換される。例えば、プリンタドライバ３３又は印刷データ生成プログラム３５によって生成された印刷データに含まれる「プリンタＡにおいて画像記録媒体にレシート画像を形成させるためのコマンドデータ」が「プリンタＢにおいて画像記録媒体にレシート画像を形成させるためのコマンドデータ」に変換される。また例えば、「プリンタＡの機構を制御するためのコマンドデータ」が「プリンタＢの機構を同様に制御するためのコマンドデータ」に変換される。印刷データ変換プログラム３７によって生成された印刷データは、ランゲージモニタプログラム３６及びポートドライバ３４を介して、ＰＯＳアプリケーション３０に対応づけられた「識別名」に対応するポート（図７参照）、又は、ＰＯＳアプリケーション３０ａ又は印刷データ生成プログラム３５に対応づけられたポートから出力され、プリンタ２０（プリンタＢ）に供給される。
【００５３】
ここで、印刷データ変換プログラム３７によって実現される機能について詳しく説明する。
【００５４】
図１０は、インストール処理（図５又は図８参照）が実行された後のホストコンピュータ１０において実現される機能ブロックのうち、本発明に関するものを主として示す機能ブロック図である。同図に示すように、ホストコンピュータ１０は内部印刷データ生成部４０と印刷データ出力部４２とを含んでいる。
【００５５】
［１．内部印刷データ生成部］
内部印刷データ生成部４０は、プリンタＡに対応する印刷データを内部印刷データとして生成する。内部印刷データには、プリンタＡに記憶されるフォントのうちの少なくとも１つを指定するコマンドデータが含まれる。また、内部印刷データには、プリンタＡの機構を制御するためのコマンドデータ（機構制御データ）が含まれる。例えば、プリンタＡに画像記録媒体のカットを行わせるためのコマンドデータが含まれる。内部印刷データ生成部４０は、プリンタドライバ３３又は印刷データ生成プログラム３５が制御部１１によって実行されることによって実現される。
【００５６】
例えば図１１に示すようなレシート画像の印刷が行われる場合、プリンタＡに印刷開始を指示するためのコマンドデータが内部印刷データ生成部４０によって生成され、印刷データ出力部４２に供給される。その後、例えば「ＥＳＣ  ＲＳ  Ｆ  ０」のような、プリンタＡにフォント種類を指示するためのコマンドデータが生成され、印刷データ出力部４２に供給される。また、例えば「ＥＳＣ  ｄ  ３」のような、画像記録媒体のカット位置及びカット態様をプリンタＡに指示するためのコマンドデータが生成され、印刷データ出力部４２に供給される。その後、例えば「’ａ’’ｂ’’ｃ’ＬＦ」や「’ｄ’’ｅ’’ｆ’ＬＦ」等のような、１ラインごとの印字内容及び印字改行をプリンタＡに指示するためのコマンドデータが順次生成され、印刷データ出力部４２に供給される。また、以上の他、例えば印字色を指示するためのコマンドデータ等が適宜生成されて、印刷データ出力部４２に供給される。そして、最後に、プリンタＡに印刷終了を指示するためのコマンドデータが生成され、印刷データ出力部４２に供給される。なお、上記において、「ＥＳＣ  ＲＳ  Ｆ  ０」はＩＤ「０」のフォント種類を指定するコマンドデータを示している。また、「ＬＦ」は印字改行を指示するコマンドデータを示している。また、「ＥＳＣ  ｄ  ３」はカット位置まで用紙を送ってパーシャルカット（一点残しカット）を行うことを指示するコマンドデータを示している。
【００５７】
［２．印刷データ出力部］
印刷データ出力部４２は、内部印刷データ生成部４０によって生成された内部印刷データに基づいて、プリンタＢに対応する印刷データを生成し、出力する。印刷データ出力部４２は、ランゲージモニタプログラム３６及び印刷データ変換プログラム３７が実行されることによって実現される。
【００５８】
図１０に示すように、印刷データ出力部４２は中間データ生成部４４と、印刷データ生成部４６と、プリンタ保持情報記憶部４８と、を含んで構成される。
【００５９】
［２−１．プリンタ保持情報記憶部］
プリンタ保持情報記憶部４８は記憶部１２を主として実現される。例えば、プリンタ保持情報記憶部４８（フォント画像データ記憶手段）は、プリンタＡの記憶部２２に記憶されるフォントに応じたフォント画像データを記憶する。例えば、プリンタＡが所定の解像度で印刷を行い、該解像度に応じたビットマップフォントのフォント画像データを記憶する場合、プリンタ保持情報記憶部４８は、同様のビットマップフォントのフォント画像データを記憶する。
【００６０】
また例えば、プリンタ保持情報記憶部４８は、プリンタＡに保持されていた各種情報であって、フォント画像データ以外の情報に基づくプリンタ保持情報（第２のプリンタ保持情報）も記憶する。例えば、プリンタＡにディップスイッチやメモリスイッチが設けられており、ディップスイッチやメモリスイッチの設定内容（印字濃度等）に基づいて印刷が行われるような場合には、プリンタＡのディップスイッチやメモリスイッチの設定内容を示すデータがプリンタ保持情報記憶部４８に記憶される。また例えば、プリンタＡがロゴ画像データの登録指示コマンドデータを受け付けた場合に、該ロゴ画像データを記憶部２２に格納し、ロゴ画像データの印字指示コマンドデータを受け付けた場合に、記憶部２２に格納されたロゴ画像データを画像記録媒体に形成するようになっている場合には、プリンタＡに保持されたロゴ画像データがプリンタ保持情報記憶部４８に記憶される。
【００６１】
なお、インストール処理（図５又は図８参照）がプリンタＡが接続された状態で実行されるようにし、インストール処理において、プリンタＡに保持される各種情報が自動的に取得され、プリンタ保持情報記憶部４８に書き込まれるようにしてもよい。
【００６２】
また、ユーザがロゴ画像データをプリンタＡに登録させるのと同様にして、ロゴ画像データをプリンタ保持情報記憶部４８に登録できるようにしてもよい。すなわち、内部印刷データ生成部４０は、ロゴ画像データの登録指示コマンドデータを生成するようにしてもよい。そして、印刷データ出力部４２（中間データ生成部４４）は、この登録指示コマンドデータを受け付けた場合、ロゴ画像データをプリンタ保持情報記憶部４８に格納させるようにしてもよい。
【００６３】
また例えば、プリンタ保持情報記憶部４８は、プリンタＢに保持される各種情報に基づくプリンタ保持情報（第１のプリンタ保持情報）を記憶する。例えば、プリンタＢのディップスイッチやメモリスイッチの設定内容を示すデータが記憶される。なお、プリンタ保持情報記憶部４８は、プリンタＢに保持される各種情報をプリンタＢから所定のタイミングで自動的に取得して、プリンタＢに関するプリンタ保持情報を記憶するようにしてもよい。
【００６４】
［２−２．中間データ生成部］
中間データ生成部４４は、内部印刷データ生成部４０によって生成された内部印刷データに基づいて中間データを生成する。より具体的には、中間データ生成部４４は、内部印刷データ生成部４０によって生成された内部印刷データと、プリンタ保持情報記憶部４８に記憶されるフォント画像データと、プリンタ保持情報記憶部４８に記憶されるプリンタＡに関するプリンタ保持情報と、に基づいて、印刷対象のレシート画像のラスタ画像データを生成する。また、中間データ生成部４４は、内部印刷データ生成部４０によって生成された内部印刷データに含まれる少なくとも一部のコマンドデータに関し、該コマンドデータの制御内容を所定の形式で示す中間制御データを生成する。
【００６５】
具体的には、中間データ生成部４４は、内部印刷データ生成部４０から順次供給されるコマンドデータを解釈し、ラスタ画像データ及び中間制御データを生成する。例えば、中間データ生成部４４は、プリンタＡにフォント種類を指示するためのコマンドデータを受け付けた場合、例えば「Ｆｏｎｔ＝・・・」のような中間制御データを生成する。また例えば、中間データ生成部４４は、画像記録媒体のカット命令を示すコマンドデータを受け付けた場合、例えば「Ｆｅｅｄ  ｔｏ  ｃｕｔｔｅｒ＝Ｔｒｕｅ；Ｃｕｔ  ｐｅｒｃｅｎｔａｇｅ＝５０％；・・・」のような中間制御データを生成する。また例えば、中間データ生成部４４は、１ラインごとの印字内容及び印字改行をプリンタＡに指示するためのコマンドデータを受け付けた場合、１ラインごとのラスタ画像データを生成する。このラスタ画像データは、例えばフォント種類に関する中間制御データと、プリンタ保持情報記憶部４８に記憶されるフォント画像データ及びプリンタＡに関するプリンタ保持情報（例えば印字濃度）と、に基づいて生成される。また例えば、中間データ生成部４４は、ロゴ画像データの印字指示コマンドデータを受け付けた場合、ロゴ画像データをプリンタ保持情報記憶部４８から読み出し、該ロゴ画像データに基づいてラスタ画像データを生成する。中間データ生成部４４によって生成された中間データ（ラスタ画像データ及び中間制御データ）は、印刷データ生成部４６に順次供給される。
【００６６】
［２−３．印刷データ生成部］
印刷データ生成部４６は、中間データ生成部４４によって生成された中間データに基づいて、プリンタＢに対応する印刷データを生成する。また、印刷データ生成部４６は、第１プリンタ保持情報記憶部４８に記憶されるプリンタ保持情報にさらに基づいて、印刷データを生成する。より具体的には、印刷データ生成部４６は、中間データ生成部４４によって生成されたラスタ画像データを、プリンタＢにおいて画像記録媒体に形成させるためのコマンドデータを生成する。言い換えれば、画像を構成する各画素ごとの着色情報をプリンタＢに対応するデータ形式で示すコマンドデータを生成する。また、印刷制御データ生成部４６は、中間データ生成部４４によって生成された中間制御データによって示される内容の制御をプリンタＢに行わせるためのコマンドデータを生成する。
【００６７】
具体的には、印刷データ生成部４６は、例えば「ＥＳＣ  ＊  ｒ  Ａ」のような、プリンタＢに印刷開始を指示するためのコマンドデータを生成する。また例えば、中間制御データに示されるカット位置及びカット態様でプリンタＢに画像記録媒体を切断させるためのコマンドデータを生成する。例えば「￥ｘ１ｂｄ３」のような、カット位置まで用紙を送ってパーシャルカットをプリンタＢに行わせるためのコマンドデータが生成される。また例えば、印刷データ生成部４６は、中間データ生成部４４からラスタ画像データを受け付けた場合、該ラスタ画像データに基づき、１ドット列ごとの各画素の着色情報をプリンタＢに指示するためのコマンドデータを順次生成する。例えば「ｂ￥ｘ２５￥ｘ０１・・・」のようなコマンドデータを１ドット列ごとに生成する。最後に、印刷データ生成部４６は、例えば「ＥＳＣ  ＊  ｒ  Ｂ」のような、プリンタＢに印刷終了を指示するためのコマンドデータを生成する。印刷データ生成部４６によって順次生成されたコマンドデータは、ＰＯＳアプリケーションに対応づけられたポート（ＵＳＢポート１）から印刷データとして順次出力され、プリンタ２０（プリンタＢ）に送信される。
【００６８】
プリンタ２０（プリンタＢ）では、印刷データ出力部４２から順次送信されるコマンドデータが受信及び解釈され、それらのコマンドデータに従って、レシート画像の画像記録媒体への形成や画像記録媒体の切断等が実行される。
【００６９】
以上説明したように、本実施の形態に係る印刷システム１では、「フォントデータを記憶部２２に記憶し、文書等の内容を示すデータや、フォントの種類を指示するデータ等を含んでなるコマンドデータを受け取り、これらのデータに基づいてラスタ画像データを生成し、該ラスタ画像データを画像記録媒体に形成するプリンタＡ」に対応する印刷データがまず生成されるようになっている。また、印刷システム１では、プリンタＡに保持される情報（フォント画像データ、ディップスイッチやメモリスイッチの設定内容等）が記憶されており、かかる情報と、プリンタＡに対応する印刷データと、に基づいてラスタ画像データが生成されるようになっている。すなわち、プリンタＡが同様の印刷データを受け付けた場合に生成するラスタ画像データと同様のラスタ画像データが、ホストコンピュータ１０において生成されるようになっている。そして、そのラスタ画像データをプリンタＢにおいて画像記録媒体に形成させるための印刷データが生成され、プリンタＢに出力されるようになっている。このため、印刷システム１によれば、プリンタＡからの印刷出力と同様の印刷出力をプリンタＢからの印刷出力において再現させることが可能になる。例えば、プリンタＢがプリンタＡに比較して安価なプリンタ（例えばＧＤＩプリンタ等）である場合にも、プリンタＢにおいてプリンタＡと同等の印刷出力を得ることが可能になる。すなわち、印刷システム１によれば、比較的安価なプリンタにおいて、より高価なプリンタが有する印刷機能（印字機能）と同等の機能を実現できるようになる。
【００７０】
また、印刷システム１では、追加インストールされるランゲージモニタプログラム３６及び印刷データ変換プログラム３７によって、上記再現が実現されるようになっている。このため、印刷システム１によれば、ＰＯＳアプリケーション３０，３０ａ側に変更を加えることなく、上記再現を実現できるようになる。また、上記再現を実現するにあたり、ＰＯＳアプリケーション３０，３０ａごとに異なるプログラムを用意する必要がないようになっている。
【００７１】
また、印刷システム１では、一のプリンタ（プリンタＡ）に対応する印刷データを他のプリンタ（プリンタＢ）に対応する印刷データに変換する場合に、一のプリンタに対応する印刷データから所定のデータ形式の中間データを一旦生成した後、その中間データから該他のプリンタに対応する印刷データを生成するようになっている。例えば、プリンタの変更（置き換え）が複数のプリンタ間で行われ得る場合において、一のプリンタに対応する印刷データを他のプリンタに対応する印刷データに直接変換する場合、プリンタの組み合わせごとに印刷データの変換モジュールを用意する必要がある。これに対し、本実施の形態では、各プリンタごとに中間データとの間の変換モジュールを用意しておけば足りる。また例えば、新たな仕様のプリンタの提供が開始される場合にも、該新たなプリンタに対応する印刷データと中間データとの間の変換モジュールを用意すれば足りる。すなわち、既存の各プリンタごとに該新たなプリンタとの間の印刷データの変換モジュールを用意する必要がない。
【００７２】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【００７３】
例えば、ホストコンピュータ１０で実行されるオペレーティングシステムはマイクロソフト製のウィンドウズ（登録商標）に限られない。また、ホストコンピュータ１０で実行されるアプリケーションはＰＯＳアプリケーション３０，３０ａ側に限られない。すなわち、プリンタ２０における印刷対象はＰＯＳアプリケーション３０，３０ａ側によって生成されたレシート画像に限られず、他のアプリケーションによって生成された文書や画像等であってもよい。
【００７４】
また例えば、以上では、ホストコンピュータ１０とプリンタ２０とがシリアルケーブル又はＵＳＢケーブルを介して接続されることとして説明したが、ホストコンピュータ１０とプリンタ２０とはＬＡＮ（Local Area Network）等の通信ネットワークを介して通信接続されるようにしてもよい。この場合、インタフェース１５及び２４は通信ネットワークに接続するための通信インタフェースとして構成されるようにすればよい。
【００７５】
また例えば、図５のＳ１０２又は図８のＳ２０２でインストールされるプリンタドライバには、プリンタＡからプリンタＢへの印刷データ変換プログラムだけでなく、プリンタＡからプリンタＢ以外のプリンタへの印刷データ変換プログラムが含まれるようにしてもよい。この場合、どの変換プログラムを用いるかを示す情報を記憶部１２（ハードディスク装置）に記憶させておき、その情報によって示される変換プログラムによって印刷データの変換が実行されるようにしてもよい。
【００７６】
また例えば、インストールディスクには複数種類の印刷データ変換プログラムを記憶させておくようにしてもよい。この場合、インストール処理（図５及び図８参照）では、変更前後のプリンタの種類（機種）をユーザに入力させるようにし、或いは自動的に取得するようにし、該変更前後のプリンタに対応する印刷データ変換プログラムをホストコンピュータ１０にインストールするようにしてもよい。
【００７７】
また例えば、内部印刷データ生成部４０及び印刷データ出力部４２は、「プリンタドライバ」以外の他の名称で呼ばれるプログラムによって実現されるようにしてもよい。また、印刷データ出力部４２は、「ランゲージモニタプログラム」以外の名称で呼ばれるプログラム（例えば、「ポートエミュレータ」等）によって実現されるようにしてもよい。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施形態に係る印刷システムの全体構成を示す図である。
【図２】ホストコンピュータの動作を説明するための図である。
【図３】プリンタ情報の一例を示す図である。
【図４】ホストコンピュータの動作を説明するための図である。
【図５】インストール処理の一例を示すフロー図である。
【図６】プリンタ情報の一例を示す図である。
【図７】プリンタ情報の一例を示す図である。
【図８】インストール処理の他の一例を示すフロー図である。
【図９】ホストコンピュータの動作を説明するための図である。
【図１０】本発明の実施形態に係る印刷システムの機能ブロック図である。
【図１１】レシート画像の一例を示す図である。
【符号の説明】
【００７９】
１  印刷システム、１０  ホストコンピュータ、１１  制御部、１２  記憶部、１３  入力部、１４  表示部、１５  インタフェース、１６  光ディスク読み取り部、２０  プリンタ、２１  制御部、２２  記憶部、２３  画像形成部、２４  インタフェース、３０，３０ａ  ＰＯＳアプリケーション、３１  ＧＤＩプログラム、３２  スプーラ、３３  プリンタドライバ、３４  ポートドライバ、３５  印刷データ生成プログラム、３６  ランゲージモニタプログラム、３７  印刷データ変換プログラム、４０  内部印刷データ生成部、４２  印刷データ出力部、４４  中間データ生成部、４６  印刷データ生成部、４８  プリンタ保持情報記憶部。
【図１】
2006338411.tif 000003
【図２】
2006338411.tif 000004
【図３】
2006338411.tif 000005
【図４】
2006338411.tif 000006
【図５】
2006338411.tif 000007
【図６】
2006338411.tif 000008
【図７】
2006338411.tif 000009
【図８】
2006338411.tif 000010
【図９】
2006338411.tif 000011
【図１０】
2006338411.tif 000012
【図１１】
2006338411.tif 000013