(57)【特許請求の範囲】
【請求項１】
記録媒体に文字を印刷する記録装置に接続可能な制御装置であって、
前記記録装置は、記録媒体に文字を印刷する際に使用するフォントデータが複数格納されたフォント群を複数記憶しており、
汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新するテーブル処理部と、
前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する変換処理部と、を備え、
前記変換処理部は、
前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換すると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別し、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換すること、
を特徴とする制御装置。
【請求項２】
前記文字コード変換テーブルを記憶する記憶部を備え、
前記所定の汎用文字コードと、当該汎用文字コードに対応する前記記録装置側のフォント群とを対応づけたフォント群情報を記憶するフォント群情報記憶部をさらに備え、
前記テーブル処理部は、前記フォント群情報記憶部により記憶された前記フォント群情報に基づいて、前記汎用文字コードと、前記記録装置側の当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報とを対応づけて前記記憶部に格納した文字コード変換テーブルを作成又は更新すること、
を特徴とする請求項１に記載の制御装置。
【請求項３】
前記汎用文字コードと、前記フォント群に格納されたフォントデータの編集が可能に構成されたことを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記記録装置から前記記録装置が記憶している複数の前記フォント群を示す情報を取得し、前記フォント群情報を複数の前記フォント群に対応させて更新するフォント群情報更新処理部を備えたこと、
を特徴とする請求項１乃至３のいずれかに記載の制御装置。
【請求項５】
記録媒体に文字を印刷するもので、フォントデータが複数格納されたフォント群を複数記憶した記録装置に接続可能な制御装置の制御方法であって、
汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新する一方、
前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換し、
前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換すると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別し、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換すること、
を特徴とする制御装置の制御方法。
【請求項６】
記録媒体に文字を印刷するもので、フォントデータが複数格納されたフォント群を複数記憶した記録装置に接続可能な制御装置の各部を制御する制御部により実行されるプログラムであって、
前記制御部を、
汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新するテーブル処理部と、
前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する変換処理部と、
として機能させ、
前記変換処理部に、
前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換させると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別させ、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換させること、
を特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体に文字を記録する記録装置を制御する制御装置、制御装置の制御方法、及び、プログラムに関する。
【背景技術】
【０００２】
従来、文字の記録に使用するためのフォントデータ（フォントパターンデータ）をＲＯＭ等の記憶媒体に記憶し、記憶したフォントデータに基づいて文字の記録を行う記録装置としてのプリンターが知られている（例えば、特許文献１参照）。
また、従来、記録装置の記録媒体には、所定の数のフォントが含まれるフォント群が、複数記憶されている。ホストコンピューター（記録制御装置）から、文字を特定する場合、当該文字が含まれるフォント群を特定し、さらにそのフォント群の中の当該文字の番地（アドレス）を特定する。
このようなプリンターを用いて、Ｕｎｉｃｏｄｅ等の汎用文字コードによって規定される汎用文字コード文字を記録媒体に記録する場合、汎用文字コード文字と対応するフォントデータが特定された上で、特定したフォントデータに基づいてプリンター装置による文字の記録が行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−１８３０７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
汎用文字コードには、Ｕｎｉｃｏｄｅのように多言語に亘る複数の文字を単一の文字コード体系で取り扱う汎用文字コードが存在するが、このような汎用文字コードによって規定される汎用文字コード文字が多岐に渡る。このため、汎用文字コードによって規定される汎用文字コード文字と、プリンターが実際にフォント群によって記憶するフォントデータとを適切に対応させたいとするニーズがある。
本発明は、上述した事情に鑑みてなされたものであり、記録装置に汎用文字コード文字に係る文字を記録させる際、汎用文字コード文字と、プリンターに実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能な制御装置、制御装置の制御方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、記録媒体に文字を印刷する記録装置に接続可能な制御装置であって、前記記録装置は、記録媒体に文字を印刷する際に使用するフォントデータが複数格納されたフォント群を複数記憶しており、汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新するテーブル処理部と、前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する変換処理部と、を備え、前記変換処理部は、前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換すると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別し、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換すること、を特徴とする。
ここで、フォントデータとは、文字を、記録媒体に印字可能な態様で表現する実データのことであり、ドットマトリックスフォントデータや、ベクトルフォントデータ、アウトラインフォントデータ、ビットマップフォントデータや、スケイラブルフォントデータ等が存在する。また、フォントデータには、図や記号、画像なども含まれる。
そして、上記構成によれば、テーブル処理部は、記録装置が記録するフォント群の各々に基づき、所定の汎用文字コードによって規定される汎用文字コード文字の各々について、汎用文字コード文字と、当該汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報とを対応づけて格納した文字コード変換テーブルを作成又は更新する。このため、記録装置に汎用文字コード文字に係る文字を記録させる際、テーブル処理部により作成又は更新された文字コード変換テーブルを利用することにより、汎用文字コード文字と、プリンターに実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能となる。
この構成によれば、変換処理部が文字コード変換テーブルに基づいて汎用文字コード文字をフォントデータ位置情報に変換することにより、記録装置に実際に記憶されたフォントデータを反映して、汎用文字コード文字とフォントデータとを対応させることができる。
この構成によれば、複数の汎用文字コード文字をフォントデータ位置情報に変換する場合において、連続した汎用文字コード文字について、対応するフォントデータが同一のフォント群に存在する場合に、処理効率の向上を図ることができる。
【０００６】
ここで、上記発明の記録制御装置において、前記記録装置が記憶する複数のフォント群の各々について、フォント群に格納されている複数のフォントデータと、これら複数のフォントデータの各々に対応する汎用文字コード文字とを対応づけて格納したフォント群情報を記憶するフォント群情報記憶部をさらに備え、前記テーブル処理部は、前記フォント群情報記憶部により記憶された前記フォント群情報に基づいて、汎用文字コード文字の各々について、汎用文字コード文字と、当該汎用文字コード文字に対応するフォントデータが含まれているフォント群を示すフォント群情報と、当該フォント群における当該フォントデータの格納位置を示すフォントデータ位置情報とを対応づけて格納した文字コード変換テーブルを作成又は更新するようにしてもよい。
この構成によれば、テーブル処理部は、実際に記録装置に記憶されたフォントデータに対応した文字コード変換テーブルの生成又は更新を行うことができる。
【０００９】
また、上記発明の記録制御装置において、フォント群に格納されたフォントデータの編集が可能に構成されたようにしてもよい。
この構成によれば、汎用文字コード文字とフォントデータとの関係を任意に変更することができ、ユーザーが使用したいフォントを作成して割り当てて、使用可能にできる等利便性の向上を図ることができる。
【００１０】
また、上記発明の記録制御装置において、前記記録装置が記憶している複数の前記フォント群を示す情報を取得し、前記フォント群情報を複数の前記フォント群に対応させて更新するフォント群情報更新処理部を備えたようにしてもよい。
この構成によれば、フォント群情報を、記録装置に実際に記憶されているフォント群が反映された情報とすることができる。
【００１１】
また、上記目的を達成するために、本発明は、記録媒体に文字を印刷するもので、フォントデータが複数格納されたフォント群を複数記憶した記録装置に接続可能な制御装置の制御方法であって、汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新する一方、前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換し、前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換すると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別し、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換すること、を特徴とする。
この制御方法によれば、テーブル処理部は、記録装置が記録するフォント群の各々に基づき、所定の汎用文字コードによって規定される汎用文字コード文字の各々について、汎用文字コード文字と、当該汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報とを対応づけて格納した文字コード変換テーブルを作成又は更新する。このため、記録装置に汎用文字コード文字に係る文字を記録させる際、テーブル処理部により作成又は更新された文字コード変換テーブルを利用することにより、汎用文字コード文字と、プリンターに実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能となる。
【００１２】
また、上記目的を達成するために、本発明は、記録媒体に文字を印刷するもので、フォントデータが複数格納されたフォント群を複数記憶した記録装置に接続可能な制御装置の各部を制御する制御部により実行されるプログラムであって、前記制御部を、汎用文字コード文字について、前記記録装置で汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報と、を対応づけた文字コード変換テーブルを作成又は更新するテーブル処理部と、前記記録装置に対する文字の記録を指示する記録ジョブが発生した場合に、前記テーブル処理部により作成又は更新された前記文字コード変換テーブルに基づいて、当該記録ジョブに含まれる前記汎用文字コードを、当該汎用文字コードに対応するフォントデータが含まれているフォント群を示す情報及び当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する変換処理部と、として機能させ、前記変換処理部に、前記記録ジョブに前記汎用文字コードが複数含まれている場合、所定の順序で前記汎用文字コードを前記フォントデータ位置情報に変換させると共に、１の汎用文字コードの変換に際し、直近で前記汎用文字コードから変換された前記フォントデータが格納されている前記フォント群に、当該１の汎用文字コードに対応するフォントデータが格納されているか否かを判別させ、格納されている場合は、当該１の汎用文字コードを、当該フォント群を示す情報を使用して、当該フォント群における当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換させること、を特徴とする。
このプログラムを実行すれば、テーブル処理部は、記録装置が記録するフォント群の各々に基づき、所定の汎用文字コードによって規定される汎用文字コード文字の各々について、汎用文字コード文字と、当該汎用文字コード文字に対応するフォントデータが含まれているフォント群を示す情報と、当該フォント群における当該フォントデータの格納位置を示す情報とを対応づけて格納した文字コード変換テーブルを作成又は更新する。このため、記録装置に汎用文字コード文字に係る文字を記録させる際、テーブル処理部により作成又は更新された文字コード変換テーブルを利用することにより、汎用文字コード文字と、プリンターに実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能となる。
【発明の効果】
【００１３】
本発明によれば、記録装置に汎用文字コードに係る文字を記録させる際、汎用文字コード文字と、プリンターに実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る印刷システムの構成を示す図である。
【図２】コードページの構成を示す図である。
【図３】フォント群情報を示す図である。
【図４】設定用ウィンドウを示す図である。
【図５】格納用ウィンドウを示す図である。
【図６】文字コード変換テーブルを示す図である。
【図７】ホストコンピューターの動作を示すフローチャートである。
【図８】ホストコンピューターの動作を示すフローチャートである。
【図９】印刷コマンドを示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係る印刷システム１の構成を概略的に示す図である。
図１に示すように、ホストコンピューター１０（記録制御装置）と、このホストコンピューター１０と通信可能に接続され、ホストコンピューター１０によって制御されるプリンター２０（記録装置）とを備えている。
ホストコンピューター１０は、ホスト側制御部１１と、ホスト側表示部１２と、ホスト側入力部１３と、入出力インターフェイス１４と、ホスト側記憶部１５とを備えている。
ホスト側制御部１１は、ホストコンピューター１０の各部を中枢的に制御するものであり、演算実行部としてのＣＰＵや、このＣＰＵに実行される基本制御プログラムや、この基本制御プログラムに係るデータ等を不揮発的に記憶するＲＯＭや、ＣＰＵに実行されるプログラムやこのプログラムに係るデータ等を一時的に記憶するＲＡＭ、その他の周辺回路等を備えている。ホストコンピューター１０には、プリンター２０を制御するためのプログラムであるプリンタードライバーが予めインストールされており、ホスト側制御部１１は、当該プリンタードライバーを実行することにより、プリンター２０を制御する。
図１に示すように、ホスト側制御部１１は、テーブル処理部１６と、フォント群情報更新処理部１７とを備えているが、これについては、後述する。
【００１６】
ホスト側表示部１２は、液晶ディスプレイパネルや、有機ＥＬパネル等の表示パネルを備え、ホスト側制御部１１の制御の下、表示パネルに各種情報を表示する。
ホスト側入力部１３は、キーボードや、マウス等の入力デバイスに接続され、これら入力デバイスの出力信号をホスト側制御部１１に出力する。
入出力インターフェイス１４は、ＵＳＢポートやパラレルプリンターポート等のポートを介してプリンター２０に接続され、ホスト側制御部１１の制御の下、プリンター２０との間で通信規格に準拠した通信を行う。
ホスト側記憶部１５は、各種データを書き換え可能に記憶する部位であり、ハードディスクや、ＥＥＰＲＯＭ等の記憶装置を備えている。ホスト側記憶部１５には、フォント群情報ＦＪ（フォント群情報ＦＪ０〜フォント群情報ＦＪ２５５）と、Ｕｎｉｃｏｄｅ（汎用文字コード）に関する情報を含む文字コード変換テーブル１８とが記憶される。ホスト側記憶部１５は、フォント群情報ＦＪを記憶するフォント群情報記憶部として機能する。
【００１７】
プリンター２０は、プリンター側制御部２１と、プリントエンジン２２と、プリンター側表示部２３と、プリンター側入力部２４と、インターフェイス部２５と、プリンター側記憶部２６と、を備えている。
プリンター側制御部２１は、プリンター２０の各部を中枢的に制御するものであり、ホスト側制御部１１と同様、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備えている。
プリントエンジン２２は、プリンター側制御部２１の制御の下、記録媒体に対し画像を記録する印刷ヘッドや、この印刷ヘッドを駆動する印刷ヘッド駆動機構、記録媒体を搬送する搬送機構等の、記録媒体に対して画像を記録するための装置や機構等を制御して、記録媒体へ画像を記録する。
【００１８】
プリンター側表示部２３は、液晶表示パネル等の表示パネルや、ＬＥＤ等を備え、これらを介してプリンター２０の状態等の各種情報を報知する。
プリンター側入力部２４は、電源スイッチや選択スイッチ等の各種スイッチを備え、これらスイッチに対する操作を検出し、プリンター側制御部２１に入力する。
インターフェイス部２５は、プリンター側制御部２１の制御の下、ホストコンピューター１０との間で通信規格に準拠した通信を行う。
プリンター側記憶部２６は、各種データを書き換え可能に記憶する部位であり、ハードディスクや、ＥＥＰＲＯＭ等の記憶装置を備えている。プリンター側記憶部２６には、コードページＣＰ（フォント群、コードページＣＰ０〜コードページＣＰ２５５）が記憶されている。
【００１９】
図２は、コードページＣＰを模式的に示す図である。
本実施形態では、コードページＣＰは、コードページＣＰ０〜コードページＣＰ２５５の２５６個のコードページＣＰがプリンター側記憶部２６に記憶されている。コードページＣＰは、フォントデータが格納されるものであり、本実施形態では、コードページＣＰは、１２８個の記憶領域に分割されることにより１２８個の格納位置（アドレス）が形成され、各格納位置には、１つのフォントデータが格納可能である。すなわち、１つのコードページＣＰには、１２８個のフォントデータが格納可能である。格納位置のそれぞれは、０番地（８０Ｈ）〜１２７番地（ＦＦＨ）の１２８個の番地が割り振られており、コードページＣＰを示す情報と、コードページＣＰにおける格納位置を示す情報（５０番地（９０Ｈ））とによって、１つのフォントデータが一意に指定可能である。
フォントデータとは、文字を記録媒体に印字可能な態様で表現する実データのことであり、ドットマトリックスフォントデータや、ベクトルフォントデータ、アウトラインフォントデータ、ビットマップフォントデータや、スケイラブルフォントデータ等が存在する。
【００２０】
このように本実施形態では、プリンター側記憶部２６に、全てのフォントデータが格納されたコードページＣＰが１つ記憶されるのではなく、限られた個数（１２８個）のフォントデータを格納可能なコードページＣＰが複数（２５６個）記憶される構成となっている。これにより、日本語に対応するフォントデータを格納するコードページＣＰと、英語に対応するフォントデータを格納するコードページＣＰとを個別に記憶することができ、日本語に専用的に対応するプリンター２０に対しては、日本語に対応するフォントデータを格納するコードページＣＰのみを記憶させたり、英語に専用的に対応するプリンター２０に対しては、英語に対応するフォントデータを格納するコードページＣＰのみを記憶させたりすることができる。これにより、必要なコードページＣＰのみをプリンター２０のプリンター側記憶部２６に記憶させることが可能となり、記憶領域の効率的利用が実現できると共に、プリンター２０を製造する上での製造容易性の向上を図ることができる。
なお、本実施形態では、異なるコードページＣＰに同一のフォントデータが格納されることがある。例えば、コードページＣＰ０が日本語に対応するフォントデータが格納されたコードページＣＰであり、コードページＣＰ１が英語に対応するフォントデータが格納されたコードページＣＰであるとすると、日本語においても英語においても共通して使用される「Ａ」や、「＠」は、コードページＣＰ０及びコードページＣＰ１のそれぞれに格納される。
【００２１】
図３は、フォント群情報ＦＪを模式的に示す図である。
フォント群情報ＦＪは、コードページＣＰに対応して、コードページＣＰ毎に存在するデータであり、本実施形態では、コードページＣＰ０〜ＣＰ２５５に対応してフォント群情報ＦＪ０〜ＦＪ２５５が存在している。
図３に示すように、１つのフォント群情報ＦＪは、対応するコードページＣＰに形成された格納位置と、対応するコードページの番号と、各フォントデータに対応するＵｎｉｃｏｄｅ文字（汎用文字コード文字）とを対応づけて格納するデータであり、１件のレコードには、格納位置フィールド３０と、コードページデータフィールド３１と、Ｕｎｉｃｏｄｅ文字フィールド３２とが含まれている。格納位置フィールド３０には、格納位置を示す格納位置データが格納され、コードページデータフィールド３１には、対応するコードページの番号が格納され、Ｕｎｉｃｏｄｅ文字フィールド３２には、Ｕｎｉｃｏｄｅ文字を示すＵｎｉｃｏｄｅ文字データが格納される。
Ｕｎｉｃｏｄｅ（汎用文字コード）とは、コンピューター上で、日本語や英語等の異なる言語の文字を１のコードで取り扱う文字コード体系のことである。Ｕｎｉｃｏｄｅ文字とは、Ｕｎｉｃｏｄｅによって規定される１つの文字のことであり、１文字毎に一意のコードが割り振られている。本実施形態では、説明の便宜のため、１つのＵｎｉｃｏｄｅ文字は、一律に、１６ビットのコードからなるものとし、各Ｕｎｉｃｏｄｅ文字を４桁の１６進数で表現するものとする。
なお上述したように、本実施形態では、異なる複数のコードページＣＰに同一のフォントデータが格納される場合があるが、これに起因して、異なるフォント群情報ＦＪのＵｎｉｃｏｄｅ文字フィールド６０に、同一のＵｎｉｃｏｄｅ文字データが格納されている場合がある。
【００２２】
ここで、Ｕｎｉｃｏｄｅ文字と、フォントデータとの関係について説明する。
Ｕｎｉｃｏｄｅ文字を記録媒体に記録する場合、本実施形態に係る印刷システム１では、基本的に以下の流れでＵｎｉｃｏｄｅ文字に対応する文字の記録が行われる。
まず、ホストコンピューター１０において、印刷データを生成可能な所定のアプリケーションが稼働し、Ｕｎｉｃｏｄｅ文字を含む画像に係る印刷データが生成される。次いで、印刷データに基づいて、プリンタードライバーを実行するホスト側制御部１１が、プリンター２０にＵｎｉｃｏｄｅ文字に係る文字の記録をさせる動作を実行させるための印刷コマンドを生成する。その際、ホスト側制御部１１は、後述する手段により、Ｕｎｉｃｏｄｅ文字に対応するフォントデータが、いずれのコードページＣＰにおけるいずれの格納位置に格納されているかを特定する情報を生成し、この情報に基づいて、特定のコードページＣＰの特定の格納位置に格納されたフォントデータに基づいて、記録媒体の所定の位置にフォントデータに対応する画像を記録する旨の命令を含んだ印刷コマンドを生成する。
次いで、ホスト側制御部１１は、生成した印刷コマンドをプリンター２０のプリンター側制御部２１に出力する。プリンター側制御部２１は、入力された印刷コマンドに基づいて、記録媒体への画像の記録を実行する。
このように、１つのＵｎｉｃｏｄｅ文字に係る文字の記録に際しては、当該１つのＵｎｉｃｏｄｅ文字と対応するフォントデータが格納されたコードページＣＰ及び当該コードページＣＰにおける格納位置が特定され、プリンター２０は、特定された格納位置に格納されたフォントデータに基づいて、文字に係る画像の記録を実行する。
そして、フォント群情報ＦＪは、コードページＣＰ毎に、各コードページＣＰに形成された格納位置に格納されているフォントデータと、Ｕｎｉｃｏｄｅ文字とを対応づけている。
【００２３】
本実施形態では、ユーザーは、ホストコンピューター１０を操作することにより、コードページＣＰに格納されたフォントデータの編集が可能である。ユーザーが使用したいフォントを新たに定義し登録することもできる。ここで、本実施形態において、「コードページＣＰに格納されたフォントデータの編集」とは、Ｕｎｉｃｏｄｅ文字とフォントデータとの対応関係を設定すること、又は、コードページＣＰのうち、ユーザー編集用のコードページＣＰとして用意されたコードページ２５４、２５５にフォントデータを新たに格納すること、をいう。
なお、ホストコンピューター１０には、コードページＣＰに格納されたフォントデータの編集を行うためのユーザーインターフェースを提供するためのユーティリティなどのソフトウェアが予めインストールされている。
【００２４】
図４は、Ｕｎｉｃｏｄｅ文字とフォントデータとの対応関係を設定する際に利用されるユーティリティなどのウィンドウである設定用ウィンドウ４０を示す図である。
Ｕｎｉｃｏｄｅ文字とフォントデータとの対応関係を設定する場合、ユーザーは、ホスト側表示部１２に設定用ウィンドウ４０を表示する。設定用ウィンドウ４０は、上述したソフトウェアの機能によって表示される。そして、ユーザーは、ホスト側入力部１３を操作して、文字コード欄４１に、対応付けの対象となるＵｎｉｃｏｄｅ文字を入力する。さらに、コードページ欄４２に、当該Ｕｎｉｃｏｄｅ文字と対応づけたいフォントデータが格納されているコードページＣＰを示す値を入力し、格納位置欄４３に当該コードページＣＰにおいて対応づけたいフォントデータが格納されている格納位置を示す値を入力する。文字コード欄４１、コードページ欄４２、及び、格納位置欄４３のそれぞれに適切な値を入力した後、ユーザーは、登録ボタン４４を選択する。これにより、Ｕｎｉｃｏｄｅ文字とフォントデータとの対応関係が設定される。
【００２５】
図５は、コードページ２５４、２５５の任意の格納位置にフォントデータを格納する際に利用される格納用ウィンドウ５０を示す図である。
コードページ２５４、２５５の任意の格納位置にフォントデータを格納する場合、ユーザーは、ホスト側表示部１２に格納用ウィンドウ５０を表示する。そして、ユーザーは、ホスト側入力部１３を操作して、コードページ欄５１に、フォントデータを格納するコードページＣＰとしてコードページ２５４又はコードページ２５５のいずれかを示す値を入力し、格納位置欄５２に、フォントデータを格納する格納位置を示す値を入力する。次いで、ユーザーは、フォントデータタイプチェックボックス５３を利用してフォントデータの種類（本実施形態では、スケイラブルフォント、もしくは、ビットマップフォント、ドットマトリックスフォント、ベクトルフォント）を選択し、ファイル名欄５４に、実際のフォントデータが格納されているファイルのファイル名を示す値を入力する。フォントデータが１種類しかない場合は、省略してもよい。実際のフォントデータは、別のフォント作成ユーティリティなどのソフトウェアによって作成することもできる。それぞれの欄へ値を入力した後、ユーザーは、登録ボタン５５を選択する。これにより、コードページ欄５１及び格納位置欄５２に入力した値が示す、プリンター側記憶部２６のコードページＣＰの格納位置に、ファイル名欄５４に入力された値が示すファイル名のファイルに格納されたフォントデータが格納される。
【００２６】
次いで、ホスト側制御部１１が備えるフォント群情報更新処理部１７の動作について説明する。なお、フォント群情報更新処理部１７の動作は、ＣＰＵがＲＯＭに記憶されたプログラムを実行する等、ハードウェアとソフトウェアとの協働によって実現される。
上述したように、本実施形態では、ユーザーは、Ｕｎｉｃｏｄｅ文字とフォントデータとの対応関係を設定できるが、ユーザーによって対応関係が設定される度に、フォント群情報更新処理部１７は、設定された内容を反映して、対応するフォント群情報ＦＪにおける格納位置と、Ｕｎｉｃｏｄｅ文字との対応関係を設定する。
また、上述したように、本実施形態では、ユーザーは、コードページ２５４、２５５の任意の格納位置にフォントデータを格納することができるが、ユーザーによってコードページ２５４、２５５の任意の格納位置にフォントデータが格納される度に、フォント群情報更新処理部１７は、これを反映して、対応するフォント群情報ＦＪ（フォント群情報ＦＪ２５４、又は、フォント群情報ＦＪ２５５）における格納位置と、Ｕｎｉｃｏｄｅ文字との対応関係を設定する。
すなわち、フォント群情報更新処理部１７の機能により、各コードページＣＰ０〜ＣＰ２５５と、各フォント群情報ＦＪ０〜ＦＪ２５５との間で完全に整合性がとれた状態が維持される。
【００２７】
次いで、ホスト側制御部１１が備えるテーブル処理部１６の動作について説明する。
なお、テーブル処理部１６の動作は、ＣＰＵがＲＯＭに記憶されたプログラムを実行する等、ハードウェアとソフトウェアとの協働によって実現される。
テーブル処理部１６は、フォント群情報ＦＪに基づいて、文字コード変換テーブル１８を生成する。
【００２８】
図６は、文字コード変換テーブル１８を模式的に示す図である。
文字コード変換テーブル１８は、Ｕｎｉｃｏｄｅ文字と、当該Ｕｎｉｃｏｄｅ文字に対応するフォントデータが格納されたコードページＣＰ及び当該コードページＣＰにおける格納位置と、を対応づけて記憶するテーブルであり、例として、１件のレコードには、Ｕｎｉｃｏｄｅ文字フィールド６０と、第１フォント位置情報フィールド６１と、第２フォント位置情報フィールド６２と、第３フォント位置情報フィールド６３とが含まれているものとする。
Ｕｎｉｃｏｄｅ文字フィールド６０には、Ｕｎｉｃｏｄｅ文字を示すＵｎｉｃｏｄｅ文字データが格納される。第１〜第３フォント位置情報フィールド６１〜６３には、それぞれ、コードページＣＰ０〜ＣＰ２５５のうちいずれかのコードページＣＰを示すデータと、当該コードページＣＰにおける格納位置（アドレス、番地）を示すデータとが組となったフォントデータ位置情報データが格納される。
テーブル処理部１６は、フォント群情報ＦＪに基づいて、以下のようにして文字コード変換テーブル１８を生成する。
すなわち、テーブル処理部１６は、全てのフォント群情報ＦＪのＵｎｉｃｏｄｅ文字フィールド３２を参照し、すべてのフォント群情報ＦＪに格納されているＵｎｉｃｏｄｅ文字データを取得する。
次いで、テーブル処理部１６は、取得したＵｎｉｃｏｄｅ文字データについて、１種類のＵｎｉｃｏｄｅ文字データ毎に文字コード変換テーブル１８の１件のレコードを生成する。なお、上述したように、異なるフォント群情報ＦＪのＵｎｉｃｏｄｅ文字フィールド６０に、同一のＵｎｉｃｏｄｅ文字データが格納されている場合があり得るが、その場合であっても、同一のＵｎｉｃｏｄｅ文字データについて、２件のレコードを生成せずに、１件のレコードを生成する。
【００２９】
次いで、テーブル処理部１６は、全てのフォント群情報ＦＪの格納位置フィールド３０を参照し、各Ｕｎｉｃｏｄｅ文字について、対応するフォントデータが格納されているフォントデータが格納されているコードページＣＰと、当該コードページＣＰにおける格納位置とを取得する。なお、上述したように、本実施形態では、ある１つのＵｎｉｃｏｄｅ文字に対応する１つのフォントデータが、異なる複数のコードページＣＰに格納されていることがある。また、説明の便宜のため、本実施形態では、１つのフォントデータは、４つ以上の異なるコードページＣＰに格納されることはないものとする。
次いで、テーブル処理部１６は、Ｕｎｉｃｏｄｅ文字毎に、当該Ｕｎｉｃｏｄｅ文字に対応するフォントデータが格納されたコードページＣＰ、及び、当該コードページＣＰにおける格納位置を示す情報（フォントデータ位置情報）を示すフォントデータ位置情報データを生成し、第１〜第３フォント位置情報フィールド６１〜６３に格納する。なお、フォントデータ位置情報データが複数存在する場合は、テーブル処理部１６は、第１フォント位置情報フィールド６１、第２フォント位置情報フィールド６２、第３フォント位置情報フィールド６３の順に、フォントデータ位置情報データを格納する。
このようにして、テーブル処理部１６は、文字コード変換テーブル１８を生成する。
【００３０】
テーブル処理部１６は、文字コード変換テーブル１８を、以下のタイミングで生成する。
例えば、テーブル処理部１６は、ユーザーによって、コードページＣＰに格納されたフォントデータの編集が実行され、フォント群情報ＦＪが更新される度に、文字コード変換テーブル１８を生成する。これによれば、文字コード変換テーブル１８の内容を、ユーザーによる編集が反映された状態とすることができる。
また、例えば、テーブル処理部１６は、プリンター２０による画像の記録が指示された場合に、文字コード変換テーブル１８を生成する。これによれば、詳細は後述するが、最新の文字コード変換テーブル１８を用いて、画像の記録を実行することが可能となる。
【００３１】
次いで、印刷システム１の動作について図７のフローチャートを用いて説明する。
なお、動作の前提として、ホストコンピューター１０に予めインストールされた印刷データを生成可能なソフトウェアの機能によって印刷データが生成され、当該印刷データに係る記録が指示されたものとする（記録ジョブの発生）。そして、印刷データには、Ｕｎｉｃｏｄｅ文字が含まれており、印刷データは、このＵｎｉｃｏｄｅ文字に係る文字のみを記録媒体に記録するためのデータであるものとする。但し、従来のように、ホストコンピューター１０のソフトウェアからの印刷データの文字を、当該文字が含まれるコードページを特定し、さらにそのコードページの中の当該文字の番地（アドレス）を特定して、記録する機能も備えている。
また、以下の動作において、ホストコンピューター１０は、文字コード変換テーブル１８に基づいて、Ｕｎｉｃｏｄｅ文字をフォントデータ位置情報に変換する変換処理部として機能する。
【００３２】
まず、ホストコンピューター１０のホスト側制御部１１は、印刷データを解析し、印刷データに含まれるＵｎｉｃｏｄｅ文字を抽出する（ステップＳＡ１）。
次いで、ホスト側制御部１１は、抽出したＵｎｉｃｏｄｅ文字の全てについて、ステップＳＡ３〜ＳＡ５の処理を実行したか否かを判別する（ステップＳＡ２）。すなわち、ステップＳＡ３〜ＳＡ５の処理は、Ｕｎｉｃｏｄｅ文字ごとに全てのＵｎｉｃｏｄｅ文字について実行される。
抽出したＵｎｉｃｏｄｅ文字の全てについて、処理が実行されていない場合（ステップＳＡ２：ＮＯ）、ホスト側制御部１１は、未だ処理対象となっていないＵｎｉｃｏｄｅ文字を選択する（ステップＳＡ３）。ここで、ホスト側制御部１１は、複数のＵｎｉｃｏｄｅ文字によって文字列が形成されている場合は、文字列の先頭のＵｎｉｃｏｄｅ文字から順に処理対象のＵｎｉｃｏｄｅ文字とする。すなわち、Ｕｎｉｃｏｄｅ文字が複数含まれる場合、Ｕｎｉｃｏｄｅ文字が所定の順序で処理対象となる。
次いで、ホスト側制御部１１は、文字コード変換テーブル１８を参照し（ステップＳＡ４）、ステップＳＡ３で処理対象としたＵｎｉｃｏｄｅ文字に対応するフォントデータが格納されたコードページＣＰと、当該コードページＣＰにおける格納位置を特定し、Ｕｎｉｃｏｄｅ文字をフォントデータ位置情報（特定のコードページＣＰと特定の格納位置を示す情報）に変換し（ステップＳＡ５）、処理手順をステップＳＡ２に戻す。
ここで、ステップＳＡ５の処理である変換処理について図８のフローチャートを用いて詳述する。
【００３３】
図８は、変換処理時におけるホスト側制御部１１の動作を示すフローチャートである。
まず、ホスト側制御部１１は、ステップＳＡ２で処理対象として選択されたＵｎｉｃｏｄｅ文字（以下、「対象Ｕｎｉｃｏｄｅ文字」という）に対応する文字コード変換テーブル１８のレコードを特定する（ステップＳＢ１）。次いで、ホスト側制御部１１は、特定したレコードの第１〜第３フォント位置情報フィールド６１〜６３を参照し（ステップＳＢ２）、Ｕｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されているか否かを判別する（ステップＳＢ３）。なお、ステップＳＢ３では、第２フォント位置情報フィールド６２にフォントデータ位置情報データが格納されている場合は、Ｕｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されていると判別し、そうでない場合は、Ｕｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されていないと判別する。
ステップＳＢ３において、対象Ｕｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されていない場合（ステップＳＢ３：ＮＯ）、ホスト側制御部１１は、ステップＳＢ１で特定したレコードの第１フォント位置情報フィールド６１に格納されているフォントデータ位置情報データを取得し、対象Ｕｎｉｃｏｄｅ文字を、当該フォントデータ位置情報データが示すフォントデータ位置情報に変換する（ステップＳＢ４）。
【００３４】
一方、対象Ｕｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されている場合（ステップＳＢ３：ＹＥＳ）、ホスト側制御部１１は、現在の対象Ｕｎｉｃｏｄｅ文字の直近（直前）に対象Ｕｎｉｃｏｄｅ文字であったＵｎｉｃｏｄｅ文字（以下「直近Ｕｎｉｃｏｄｅ文字」という）から変換したフォントデータ位置情報を取得し、フォントデータ位置情報に含まれるコードページＣＰを示す情報を取得する（ステップＳＢ５）。ここで取得した情報が示すコードページＣＰを「直近コードページＴＣＰ」というものとする。なお、ホスト側制御部１１は、直近Ｕｎｉｃｏｄｅ文字から変換したフォントデータ位置情報をホスト側記憶部１５に記憶しているものとする。
次いで、ホスト側制御部１１は、ステップＳＢ１で特定したレコードの第１〜第３フォント位置情報フィールド６１〜６３を参照し、直近コードページＴＣＰと同一のコードページＣＰに、対象Ｕｎｉｃｏｄｅ文字に対応するフォントデータが格納されているか否かを判別する（ステップＳＢ６）。このステップＳＢ６の判別は、ステップＳＢ１で特定したレコードの第１〜第３フォント位置情報フィールド６１〜６３のいずれかに、直近コードページＴＣＰと同一のコードページＣＰを示す情報を含むフォントデータ位置情報データが格納されているか否かを判別することによって行われる。
格納されていない場合（ステップＳＢ６：ＮＯ）、ホスト側制御部１１は、ステップＳＢ１で特定したレコードの第１フォント位置情報フィールド６１に格納されているフォントデータ位置情報データを取得し、取得したフォント位置情報データに基づいて、対象Ｕｎｉｃｏｄｅ文字を、当該フォントデータ位置情報データが示すフォントデータ位置情報に変換する（ステップＳＢ７）。
一方、格納されている場合（ステップＳＢ６：ＹＥＳ）、ホスト側制御部１１は、第１〜第３フォント位置情報フィールド６１〜６３に格納されているフォントデータ位置情報データのうち、直近コードページＴＣＰと同一のコードページＣＰを示す情報を含むフォントデータ位置情報データを取得し、取得したフォント位置情報データに基づいて、対象Ｕｎｉｃｏｄｅ文字を、当該フォントデータ位置情報データが示すフォント位置情報に変換する（ステップＳＢ８）。
【００３５】
次いで、図８が示す変換処理について、図６を用いて具体的に説明する。
ここで、文字コード変換テーブル１８が図６のような状態にあるものとする。すなわち、Ｕｎｉｃｏｄｅ文字＝「Ｕ+０００１」（以下、「文字Ａ」と表現する）に対応するフォントデータは、コードページＣＰ２の１番地に格納されており、Ｕｎｉｃｏｄｅ文字＝「Ｕ+０００２」（以下、「文字Ｂ」と表現する）に対応するフォントデータは、コードページＣＰ１の３番地、コードページＣＰ２の４番地、及び、コードページＣＰ３の１番地に格納されており、Ｕｎｉｃｏｄｅ文字＝「Ｕ+０００３」（以下、「文字Ｃ」と表現する）に対応するフォントデータは、コードページＣＰ１の１番地、及び、コードページＣＰ３の５番地に格納されている。そして、このような状態において、文字Ａ、文字Ｂ、文字Ｃの順に変換処理が行われるものとする。
【００３６】
この場合において、まず、文字Ａについて変換処理を行う場合、文字Ａに対応するフォントデータは、異なる複数のコードページＣＰに格納されていないため（ステップＳＢ３：ＮＯ）、ホスト側制御部１１は、第１フォント位置情報フィールド６１に格納されたフォントデータ位置情報データに基づいて、文字Ａをフォントデータ位置情報（コードページＣＰ、及び、当該コードページＣＰにおける格納場所を指定する情報）に変換する（ステップＳＢ４）。
次いで、文字Ｂについて変換処理を行う場合、文字Ｂに対応するフォントデータは、異なる複数のコードページＣＰに格納されているため（ステップＳＢ３：ＹＥＳ）、ホスト側制御部１１は、直近Ｕｎｉｃｏｄｅ文字である文字Ａから変換されたフォントデータ位置情報に含まれる情報が示すコードページＣＰ（直近コードページＴＣＰ）であるコードページＣＰ２を取得する（ステップＳＢ５）。そして、ホスト側制御部１１は、文字Ｂに対応するレコードの第１〜第３フォント位置情報フィールド６１〜６３を参照し、コードページＣＰ２（直近コードページＴＣＰ）に文字Ｂに対応するフォントデータが格納されているか否かを判別する（ステップＳＢ６）。文字Ｂに対応するレコードの第２フォント位置情報フィールド６２に格納されたフォントデータ位置情報データが示すように、文字Ｂに対応するフォントデータはコードページＣＰ２に格納されているため（ステップＳＢ６：ＹＥＳ）、ホスト側制御部１１は、第２フォント位置情報フィールド６２に格納されたフォントデータ位置情報データ（コードページＣＰ２を示す情報を含むフォントデータ位置情報データ）に基づいて、文字Ｂを、フォントデータ位置情報に変換する（ステップＳＢ８）。
【００３７】
次いで、文字Ｃについて変換処理を行う場合、文字Ｃに対応するフォントデータは、異なる複数のコードページＣＰに格納されているため（ステップＳＢ３：ＹＥＳ）、ホスト側制御部１１は、直近Ｕｎｉｃｏｄｅ文字である文字Ｂから変換されたフォントデータ位置情報に含まれる情報が示すコードページＣＰ（直近コードページＴＣＰ）であるコードページＣＰ２を取得する（ステップＳＢ５）。そして、ホスト側制御部１１は、文字Ｃに対応するレコードの第１〜第３フォント位置情報フィールド６１〜６３を参照し、コードページＣＰ２（直近コードページＴＣＰ）に文字Ｃに対応するフォントデータが格納されているか否かを判別する（ステップＳＢ６）。文字Ｃに対応するフォントデータは、コードページＣＰ２に格納されていないため（ステップＳＢ６：ＮＯ）、ホスト側制御部１１は、第１フォント位置情報フィールド６１に格納されたフォントデータ位置情報データに基づいて、文字Ｃを、フォントデータ位置情報に変換する（ステップＳＢ７）。
【００３８】
さて、前掲図７に戻り、ステップＳＡ２において、全てのＵｎｉｃｏｄｅ文字に対する処理が終了した場合（ステップＳＡ２：ＹＥＳ）、ホスト側制御部１１は、印刷コマンドを生成し（ステップＳＡ６）、生成した印刷コマンドをプリンター２０に出力する（ステップＳＡ７）。
【００３９】
図９は、ホスト側制御部１１によって生成された印刷コマンドを模式的に示す図である。
図９に示すように、印刷コマンドでは、記録媒体に記録すべき文字に対応するフォントデータが「コードページ切替コマンド」と「格納位置指定コマンド」との組み合わせによって特定される。
ここで、上述した変換処理により、Ｕｎｉｃｏｄｅ文字の各々は、フォントデータ位置情報に変換されるが、このフォントデータ位置情報には、当該Ｕｎｉｃｏｄｅ文字が格納されたコードページＣＰを示す情報と、当該コードページＣＰにおける格納位置を示す情報とが含まれている。これを踏まえ、ホスト側制御部１１は、印刷コマンドの生成にあたり、変換処理の処理結果に基づいてＵｎｉｃｏｄｅ文字毎に、プリンター側制御部２１が参照するコードページＣＰをＵｎｉｃｏｄｅ文字に対応するフォントデータが格納されたコードページＣＰに切り替えるコマンド（コードページ切替コマンド）及び当該コードページＣＰにおいて格納位置を指定するコマンド（格納位置指定コマンド）を生成する。印刷コマンドが入力されたホスト側制御部１１では、コードページ切替コマンド、及び、格納位置指定コマンドに基づいて、記録すべき文字に対応する１つのフォントデータを特定し、特定したフォントデータを利用して文字に係る画像の記録を実行する。
なお、コードページ切替コマンドは、フォントデータの格納位置の特定に際し、プリンター側制御部２１が参照すべきコードページＣＰを切り替えるためのコマンドである。従って、例えば、連続する２つのＵｎｉｃｏｄｅ文字に対応するフォントデータが同一のコードページＣＰに存在する場合、１つめのＵｎｉｃｏｄｅ文字を特定するために参照すべきコードページＣＰと、２つめのＵｎｉｃｏｄｅ文字を特定するために参照すべきコードページＣＰとを切り替える必要がない。従って、この場合、印刷コマンドにおいて、２つめのＵｎｉｃｏｄｅ文字を特定するためのコマンドについて、コードページ切替コマンドが必要ない。
【００４０】
ところで、本実施形態では、複数のＵｎｉｃｏｄｅ文字を連続して変換処理する場合において、１のＵｎｉｃｏｄｅ文字を変換処理する際、当該１のＵｎｉｃｏｄｅ文字に対応するフォントデータが複数の異なるコードページＣＰに格納されている場合は、当該１のＵｎｉｃｏｄｅ文字に対応するフォントデータが直近コードページＴＣＰに格納されているか否かを判別し、格納されている場合は、当該直近コードページＴＣＰと同一のコードページＣＰを示す情報、及び、当該コードページＣＰにおける格納位置を示す情報が含まれるフォントデータ位置情報にＵｎｉｃｏｄｅ文字を変更する。このため、連続するＵｎｉｃｏｄｅ文字に対応するフォントデータが同一のコードページＣＰに格納されている場合、これらＵｎｉｃｏｄｅ文字から変換されたフォントデータ位置情報に含まれるコードページＣＰを示す情報が同一となる。この場合、印刷コマンドの生成にあたり、コードページ切替コマンドの個数を減らすことができ、コマンドの減少に伴う処理効率の向上、及び、ホストコンピューター１０とプリンター２０との間で送受信されるデータ量の減少に伴う通信効率の向上を図ることができる。
【００４１】
以上説明したように、本実施形態では、ホスト側制御部１１のテーブル処理部１６は、プリンター２０が記憶するコードページＣＰ（フォント群）の各々に基づいたフォント群情報ＦＪに基づいて、Ｕｎｉｃｏｄｅ文字と、当該Ｕｎｉｃｏｄｅ文字に対応するフォントデータが含まれているコードページＣＰを示す情報と、当該コードページＣＰおける格納位置を示す情報とを対応づけて格納した文字コード変換テーブル１８を作成又は更新する。
これによれば、プリンター２０にＵｎｉｃｏｄｅ文字に係る文字を記録させる際、テーブル処理部１６により作成又は更新された文字コード変換テーブル１８を利用することにより、Ｕｎｉｃｏｄｅ文字と、プリンター２０に実際に記憶されたフォントデータとを適切に対応させた上で文字を記録させることが可能となる。
【００４２】
また、本実施形態に係るホストコンピューター１０は、プリンター２０が記憶する複数のコードページＣＰの各々について、コードページＣＰに格納されている複数のフォントデータと、これら複数のフォントデータの各々に対応するＵｎｉｃｏｄｅ文字とを対応づけて格納したフォント群情報ＦＪをホスト側記憶部１５に記憶する。そして、テーブル処理部１６は、ホスト側記憶部１５に記憶されたフォント群情報ＦＪに基づいて、文字コード変換テーブル１８を作成又は更新する。
これによれば、テーブル処理部１６は、フォント群情報ＦＪに基づいて、実際にプリンター２０に記憶されたフォントデータに対応した文字コード変換テーブル１８の生成又は更新を行うことができる。
【００４３】
また、本実施形態に係るホスト側制御部１１は、プリンター２０による文字の記録を指示する記録ジョブが発生した場合に、文字コード変換テーブル１８に基づいて、印刷データに含まれるＵｎｉｃｏｄｅ文字を、Ｕｎｉｃｏｄｅ文字に対応するフォントデータが含まれているコードページＣＰを示す情報及びコードページＣＰにおける当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する。
これによれば、ホスト側制御部１１が文字コード変換テーブル１８に基づいてＵｎｉｃｏｄｅ文字をフォントデータ位置情報に変換することにより、プリンター２０に実際に記憶されたフォントデータを反映して、Ｕｎｉｃｏｄｅ文字とフォントデータとを対応させることができる。
【００４４】
また、本実施形態では、同一のフォントデータが異なるコードページＣＰに格納される場合がある。そして、ホスト側制御部１１は、印刷データにＵｎｉｃｏｄｅ文字が複数含まれている場合、所定の順序でＵｎｉｃｏｄｅ文字をフォントデータ位置情報に変換すると共に、１のＵｎｉｃｏｄｅ文字の変換に際し、直近に変換したＵｎｉｃｏｄｅ文字に対応するフォントデータが格納されたコードページＣＰを優先して、当該１のＵｎｉｃｏｄｅ文字に対応するフォントデータが格納されているか否かを判別し、格納されている場合は、当該１のＵｎｉｃｏｄｅ文字を、当該コードページＣＰを示す情報及び当該コードページＣＰにおける当該フォントデータの格納位置を示す情報を含むフォントデータ位置情報に変換する。
これによれば、複数のＵｎｉｃｏｄｅ文字をフォントデータ位置情報に変換する場合において、連続した汎用文字コード文字について、対応するフォントデータが同一のフォント群に存在する場合に、処理効率の向上を図ることができる。
【００４５】
また、本実施形態では、ユーザーは、コードページＣＰに格納されたフォントデータの編集が可能である。
これによれば、Ｕｎｉｃｏｄｅ文字とフォントデータとの関係を任意に変更することができ、ユーザーが使用したいフォントを作成して割り当てて、使用可能にできる利便性の向上を図ることができる。
【００４６】
また、本実施形態では、ホストコンピューター１０は、フォント群情報ＦＪを、プリンターが記憶している複数のコードページＣＰに対応させて更新するフォント群情報更新処理部１７を備えたようにしてもよい。
これによれば、フォント群情報ＦＪを、プリンター２０に実際に記憶されているコードページＣＰが反映された情報とすることができる。
【００４７】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、プリンター２０は、１２８個のフォントデータを格納可能なコードページＣＰを２５６個記憶していたが、プリンター２０が記憶するコードページＣＰの態様はこれに限らず、プリンター２０に仕様等に応じて、適宜変更可能である。
【符号の説明】
【００４８】
１０…ホストコンピューター（記録制御装置）、１１…ホスト側制御部（変換処理部）、１５…ホスト側記憶部（フォント群情報記憶部）、１６…テーブル処理部、１７…フォント群情報更新処理部、１８…文字コード変換テーブル、２０…プリンター（記録装置）、ＣＰ…コードページ、ＦＪ…フォント群情報。
【図１】
0005493764.tif 000002
【図２】
0005493764.tif 000003
【図３】
0005493764.tif 000004
【図４】
0005493764.tif 000005
【図５】
0005493764.tif 000006
【図６】
0005493764.tif 000007
【図７】
0005493764.tif 000008
【図８】
0005493764.tif 000009
【図９】
0005493764.tif 000010