"アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させる記録制御装置であって、前記データに含まれる文字列のフォントを、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントに対応するコードへ置換する際に、前記位置情報を補正する補正手段と、前記補正手段により補正された位置情報と、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させる記録制御手段と、を備えることを特徴とする記録制御装置。前記補正手段は、行方向または桁方向における前記文字列の位置情報を補正することを特徴とする請求項1記載の記録制御装置。前記補正手段は、前記データに含まれる複数の前記文字列のうち同じ種類の前記内蔵フォントのコードに置換される複数の前記文字列を、一つの位置情報を有する一つの文字列に統合することを特徴とする請求項1または2記載の記録制御装置。前記補正手段は、前記アプリケーションプログラムが出力した前記データに複数の前記文字列と各々の前記文字列の位置情報とが含まれていて、いずれかの前記文字列を前記内蔵フォントのコードと位置情報に基づき置換した後の記録領域の位置に、他の前記文字列に対し前記データで指定された記録領域の位置が重なる場合に、これら重なる前記文字列を、一つの位置情報を有する一つの文字列に統合することを特徴とする請求項1または2記載の記録制御装置。前記補正手段は、前記記録装置が内蔵する複数の前記内蔵フォントのサイズを記憶しており、桁方向に隣接する前記文字列が互いに異なる前記内蔵フォントのコードに置換される場合に、少なくとも一方の前記文字列の位置情報を前記内蔵フォントのサイズに基づいて補正することを特徴とする請求項1または2記載の記録制御装置。前記補正手段は、前記アプリケーションプログラムが出力した前記データに複数の文字列と各々の前記文字列の位置情報とが含まれていて、いずれかの前記文字列を前記内蔵フォントのコードに置換した後の記録領域の位置に、次行の前記文字列に対し前記データで指定された記録領域の位置が重なる場合に、少なくとも次行の前記文字列の位置情報を前記内蔵フォントのサイズに基づいて補正することを特徴とする請求項1または2記載の記録制御装置。アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させる記録装置の制御方法であって、前記データに含まれる文字列のフォントと当該文字列を記録する際の位置情報を、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントに対応するコードに置換する際に、前記位置情報を補正し、補正されたデータに従って、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させること、を特徴とする記録装置の制御方法。アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させるための記録制御装置の制御部が実行するプログラムであって、前記制御部を、前記データに含まれる文字列のフォントと当該文字列を記録する際の位置情報を、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントのコードに置換する際に、前記位置情報を補正する補正手段と、前記補正手段により補正されたデータに従って、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させる記録制御手段と、して機能させること特徴とするプログラム。ところで、ホスト装置においてアプリケーションがディスプレイ等に使用するフォントと、記録装置が搭載しているフォントとで文字のサイズが異なることがある。このような場合、フォントを置き換えることによって、アプリケーションが作成しディスプレイ等に表示したレイアウトと記録結果とが相違してしまい、例えば分かれて記録されるべき複数の文字列が重なって記録されてしまう等の問題が生じる可能性があった。本発明は、上述した事情に鑑みてなされたものであり、記録装置が持つフォントを使用して、レイアウトが乱れないように記録を行い、良好な記録結果を得られるようにすることを目的とする。上記目的を達成するために、本発明は、アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させる記録制御装置であって、前記データに含まれる文字列のフォントを、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントに対応するコードへ置換する際に、前記位置情報を補正する補正手段と、前記補正手段により補正された位置情報と、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させる記録制御手段と、を備えることを特徴とする。本発明によれば、内蔵フォントのコードへ置換する際に位置情報を補正するので、文字列間のずれを補正することができ、内蔵フォントにより文字のサイズや字間が異なっていても、内蔵フォントの置き換えによる文字列の記録位置の乱れを防ぐことができ、良好な記録結果を得ることができる。また、本発明は、上記記録制御装置において、前記補正手段は、行方向または桁方向における前記文字列の位置情報を補正することを特徴とする。本発明によれば、文字列の間隔のずれを補正することで文字列のレイアウトの乱れを回避でき、良好な記録結果を得ることができる。また、本発明は、上記記録制御装置において、前記補正手段は、前記データに含まれる複数の前記文字列のうち同じ種類の前記内蔵フォントのコードに置換される複数の前記文字列を、一つの位置情報を有する一つの文字列に統合することを特徴とする。本発明によれば、同じ種類の内蔵フォントの複数の文字列を一つの文字列に統合して記録装置により記録させるので、文字列間の間隔が不自然に空いたり、間隔が無く文字列が重なったりする等の不具合を確実に防止できる。また、同じ内蔵フォントに置換される文字列を統合するので、意図しない記録結果になることがない。また、本発明は、上記記録制御装置において、前記補正手段は、前記アプリケーションプログラムが出力した前記データに複数の前記文字列と各々の前記文字列の位置情報とが含まれていて、いずれかの前記文字列のコードと位置情報に基づき前記内蔵フォントに置換した後の記録領域の位置に、他の前記文字列に対し前記データで指定された記録領域の位置が重なる場合に、これら重なる前記文字列を、一つの位置情報を有する一つの文字列に統合することを特徴とする。本発明によれば、内蔵フォントに置換することで記録領域における位置が重なる複数の文字列を一つの文字列に統合することで、簡単な処理により、文字列の重複記録を確実に回避でき、良好な記録結果を得ることができる。また、本発明は、上記記録制御装置において、前記補正手段は、前記記録装置が内蔵する複数の前記内蔵フォントのサイズを記憶しており、桁方向に隣接する前記文字列が互いに異なる前記内蔵フォントのコードに置換される場合に、少なくとも一方の前記文字列の位置情報を前記内蔵フォントのサイズに基づいて補正することを特徴とする。本発明によれば、桁方向に並ぶ複数の文字列の間隔を適正に補正できるので、文字列の重複や文字列間が離れすぎるなど、内蔵フォントの桁方向のサイズに起因する不具合を回避し、置き換えられる内蔵フォントの種類によらず良好な記録結果を得ることができる。また、本発明は、上記記録制御装置において、前記補正手段は、前記アプリケーションプログラムが出力した前記データに複数の文字列と各々の前記文字列の位置情報とが含まれていて、いずれかの前記文字列を前記内蔵フォントのコードに置換した後の記録領域の位置に、次行の前記文字列に対し前記データで指定された記録領域の位置が重なる場合に、少なくとも次行の前記文字列の位置情報を前記内蔵フォントのサイズに基づいて補正することを特徴とする。本発明によれば、複数行の文字列の記録位置が重なってしまう場合に、行方向における文字列の間隔を適正に補正できるので、内蔵フォントの行方向のサイズに起因する不具合を回避し、置き換えられる内蔵フォントの種類によらず良好な記録結果を得ることができる。また、上記目的を達成するために、本発明は、アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させる記録装置の制御方法であって、前記データに含まれる文字列のフォントと当該文字列を記録する際の位置情報を、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントに対応するコードに置換する際に、前記位置情報を補正し、補正されたデータに従って、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させること、を特徴とする。本発明の記録装置の制御方法によれば、内蔵フォントを記録装置の内蔵フォントに置換する際に位置情報を補正するので、文字列間のずれを補正でき、内蔵フォントにより文字のサイズや字間が異なっていても、内蔵フォントの置き換えによる文字列の記録位置の乱れを防ぐことができ、良好な記録結果を得ることができる。また、上記目的を達成するために、本発明は、アプリケーションプログラムが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、記録装置が内蔵する内蔵フォントに対応するコードへ置換した後、前記記録装置へ送信して記録させるための記録制御装置の制御部が実行するプログラムであって、前記制御部を、前記データに含まれる文字列のフォントと当該文字列を記録する際の位置情報を、前記アプリケーションプログラムが使用するフォントから前記記録装置が内蔵する内蔵フォントに置換する際に、前記位置情報を補正する補正手段と、前記補正手段により補正されたデータに従って、前記内蔵フォントのコードを前記記録装置へ送信することにより前記記録装置に記録を実行させる記録制御手段と、して機能させること特徴とする。本発明のプログラムを制御部が実行することにより、内蔵フォントを記録装置の内蔵フォントに置換する際に位置情報を補正するので、文字列間のずれを補正でき、内蔵フォントにより文字のサイズや字間が異なっていても、内蔵フォントの置き換えによる文字列の記録位置の乱れを防ぐことができ、良好な記録結果を得ることができる。本発明によれば、フォントの置き換えによる文字列の記録位置の乱れを防ぐことができ、良好な記録結果を得ることができる。以下、図面を参照して本発明の実施形態について説明する。図1は、本発明を適用した実施形態に係る記録システム1の構成を示すブロック図である。この図1に示すように、記録システム1は、ホストコンピューター11記録制御装置と、ホストコンピューター11に対して通信可能に接続されたプリンター12記録装置とを、を備えている。ホストコンピューター11は、例えば、小売店等の店頭に設置され、売上登録処理及び精算処理を行う販売時点管理システムPOSシステムを搭載したPOS端末装置であり、取引毎にプリンター12によってレシート図示略を発行する。プリンター12は、記録媒体としての感熱ロール紙に文字や画像を印刷記録してカットする機能を備えている。ホストコンピューター11は、プリンター12を制御して、取引における商品の購入に関する情報や、店舗のロゴ等を含む所定の画像を感熱ロール紙に記録させ、感熱ロール紙を切断させて1つの紙片であるレシートを発行する。図1に示すように、ホストコンピューター11は、制御部13と、入力部14と、表示部15と、インターフェイス部16と、記憶部17と、を備えている。制御部13は、ホストコンピューター11を中枢的に制御するものであり、各種プログラムを実行するCPU、CPUにより実行される基本制御プログラム等を記憶するROM、CPUが実行するプログラムや処理対象のデータ等を一時的に記憶するワークエリアを形成するRAM、その他周辺回路等を備えている。制御部13は、POSアプリケーション実行部20と、プリンタードライバー実行部21と、を備えているが、これらについては、後述する。入力部14は、オペレーターに操作される売上登録キー等の各種キーを備えたキーボードや、マウス、バーコードスキャナー、カードリーダー等の入力デバイスが接続され、入力デバイスに対する操作を検出し、操作信号として制御部13に出力する。表示部15は、液晶ディスプレイ等の表示パネル15aを備え、制御部13の制御の下、売上登録処理及び精算処理の処理内容等の各種情報を表示パネル15aに表示する。インターフェイス部16は、制御部13の制御の下、プリンター12との間で通信規格に準拠した通信を行う。記憶部17は、ハードディスクや、フラッシュメモリー等の不揮発性メモリーを備えて構成され、各種データを書き換え可能に記憶する。記憶部17に記憶される各データについては、後述する。また、プリンター12記録装置は、ホストコンピューター11の制御に従って、ロール状に巻かれた感熱ロール紙記録媒体を、搬送機構不図示により搬送しつつ、この感熱ロール紙の記録面にラインサーマルヘッド不図示によって熱を与えることにより文字や画像を記録し、切断機構不図示により所定の位置で感熱ロール紙を切断することによってレシートを発行するサーマルラインプリンターである。図1に示すように、プリンター12は、プリンター側制御部30と、インターフェイス部31と、プリントエンジン32と、プリンター側記憶部33と、を備えている。プリンター側制御部30は、プリンター12の各部を中枢的に制御するものであり、上述した制御部13と同様、CPUや、ROM、RAMその他の周辺回路を備えている。インターフェイス部31は、プリンター側制御部30の制御の下、ホストコンピューター11との間で、通信規格に準拠した通信を行う。プリントエンジン32は、プリンター側制御部30の制御の下、用紙端センサーや用紙残量センサー等の各種センサーの検出値を監視しながら、上述したラインサーマルヘッドのほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、上述した切断機構が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。プリンター側記憶部33は、ハードディスクや、フラッシュメモリー等の不揮発性メモリーを備え、各種データを書き換え可能に記憶する。記憶部17に記憶される各データについては、後述する。次いで、POSアプリケーション実行部20、及び、プリンタードライバー実行部21の説明を通して、1つのレシートを発行する際の記録システム1の基本的な動作について説明する。POSアプリケーション実行部20は、ホストコンピューター11に予めインストールされたPOSアプリケーションを実行することにより、取引毎に、例えば所定のサーバーにアクセスする等して、取引において購入された商品を示す情報や、商品の単価を示す情報、購入金額を示す情報等のレシートに記載すべき情報を取得し、取得した情報に基づいてレシートに記録すべき画像に係る印刷データを生成し、プリンタードライバー実行部21に出力する。本実施形態では、POSアプリケーション実行部20が生成する印刷データは、印刷する文字を指定するキャラクターデータ、印刷に用いるフォントの種別、印刷位置等を示すデータを含んでいる。キャラクターデータは、制御部13がアプリケーションを実行するプラットホームとしてのOSオペレーティングシステムで使用される文字コード例えば、Unicodeや、その他の文字コードで表現される。また、POSアプリケーション実行部20が生成する印刷データは、1枚のレシートを構成する1または複数行の文字を含んでおり、これらの文字は、任意の数の文字で構成される文字列を構成している。換言すれば、印刷データは複数の文字列からなる1ページ分のデータである。プリンタードライバー実行部21記録制御手段は、ホストコンピューター11に予めインストールされたプリンタードライバーを実行することにより、POSアプリケーション実行部20から入力された印刷データに基づいて、プリンター12のコマンド仕様に対応した制御コマンドを生成し、プリンター12に出力する。この制御コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、内蔵フォントの種類を指定するコマンド、ラインサーマルヘッドを駆動させて画像を記録させるコマンド、切断機構に感熱ロール紙を切断させるコマンド等が含まれている。また、プリンタードライバー実行部21は、OSで使用される文字コードを、アスキーコードなどプリンター12の内蔵フォントの文字コードに変換する。制御コマンドが入力されたプリンター側制御部30は、制御コマンドに従って、プリントエンジン32を制御して、レシートの発行に係る各種動作を実行する。プリンター12は、いわゆる内蔵フォントとしてフォントA、B、Cの3種類のフォントを搭載しており、これらフォントA、B、Cのうち指定されたフォントを利用して感熱ロール紙に印刷する。そして、プリンター12のプリンター側記憶部33には、フォントAに係るフォントデータ以下、フォントAデータというを集合して記憶するテーブルであるフォントAテーブル40と、フォントBに係るフォントデータ以下、フォントBデータというを集合して記憶するテーブルであるフォントBテーブル41と、フォントCに係るフォントデータ以下、フォントCデータというを集合して記憶するテーブルであるフォントCテーブル42と、が記憶されている。フォントデータとは、文字を記録媒体に記録可能な態様で表現する実データのことであり、本実施形態では、ビットマップフォントデータであるものとする。フォントデータとしては、ビットマップフォントデータのほか、スケイラブルフォントデータや、ベクトルフォントデータ、アウトラインフォントデータ等がある。また、本実施形態では、文字とは、言語で使用される、意味を持った文字や、何らかの意味を有する記号だけを指すのではなく、プリンター側記憶部33に記憶されたフォントデータを利用して記録媒体に記録される形状の全てを指す広い概念である。フォントAデータは、サイズが横12ドット×縦24ドット、字体がゴシック体のフォントデータである。フォントAデータを構成する各画素は、フォントAデータに基づいて感熱ロール紙に実際に記録される文字に係る画像を構成する各画素と対応しており、1のフォントAデータに基づいて感熱ロール紙に記録される文字は、感熱ロール紙において横12ドット×縦24ドットの画素から構成される画像となる。このことは、フォントBデータ、フォントCデータについても同様である。フォントBデータは、サイズが横9ドット×縦17ドット、字体が明朝体のフォントデータであり、フォントCデータはサイズが横12ドット×縦24ドット、字体がイタリック体のフォントデータである。フォントAテーブル40、フォントBテーブル41及びフォントCテーブル42は、フォントデータを格納したテーブルであり、それぞれ文字数に対応した格納領域を有し、各々の格納領域にフォントデータを1つ格納している。このため、フォントAテーブル40、フォントBテーブル41及びフォントCテーブル42のいずれかを指定する情報と、フォントテーブルにおいてフォントデータが格納された番地を示す情報とによって、1つのフォントデータを一意に指定可能である。プリンター側制御部30は、フォントA、B、Cのうちホストコンピューター11から入力される制御コマンドにより指定されたフォントのフォントテーブルを参照し、指定された文字のフォントデータを読み出して配置し、感熱ロール紙に印刷する。また、ホストコンピューター11は、プリンター12の内蔵フォントであるフォントA、B、Cに対応して、フォントA置換情報45、フォントB置換情報46及びフォントC置換情報47を記憶部17に記憶している。記憶部17には、それぞれのフォントフォントA、B、Cのサイズ情報も記憶している。上述のように、POSアプリケーション実行部20は、アプリケーションを実行するプラットホームOSで使用されるシステムフォントを用いて印刷データを生成するが、実際にプリンター12が印刷に使用するのはプリンター12の内蔵フォントである。このため、プリンタードライバー実行部21の機能により、POSアプリケーション実行部20が出力した印刷データに含まれるフォントをプリンター12の内蔵フォントの文字コードに置き換える処理が行われる。POSアプリケーション実行部20が文字をレイアウトしてレシートの印刷データを作成する際に、POSアプリケーション実行部20が認識している文字の大きさや字間は、POSアプリケーション実行部20のプラットホームで使用される既定のシステムフォント、或いは、プラットホームで使用可能な複数のフォントから選択されたフォントである。ところで、POSアプリケーション実行部20が使用するシステムフォントとプリンター12の内蔵フォントとは完全に一致することが保証されるものではなく、外観やサイズが顕著に異なるフォントへの置き換えが行われることもある。この場合、POSアプリケーション実行部20が作成したレイアウトの通りに印刷されないことがあり得る。例えば、POSアプリケーション実行部20が出力する印刷データが特殊なサイズ或いは形状のフォントを使用している場合、プリンター12の内蔵フォントの中に似たサイズのフォントが無ければ、プリンター12が印刷を実行することを優先して、プリンター12の内蔵フォントのいずれかに置き換えて印刷される。レシート等の重要度の高い帳票を印刷する場合、印刷データが入力されたのに印刷を行わないことは考えにくく、一般的には印刷を実行することが優先される。POSアプリケーション実行部20が認識しているフォントのサイズと、プリンター12が使用する内蔵フォントのサイズとが異なっている場合、例えば、並べて印刷されるべき文字が互いに重なり合ってしまう、極端に字間が大きくなってしまう、行間が狭くなってしまう、上下に並ぶ文字が重なってしまう等の不具合が懸念される。そこで、ホストコンピューター11は、プリンタードライバー実行部21が備える補正処理部21aによって、フォントを置き換える際にレイアウトの乱れを招かないように、データを補正する機能を有する。記憶部17には、フォントA置換情報45、フォントB置換情報46、及びフォントC置換情報47が格納されている。フォントA置換情報45は、プリンター12の内蔵フォントであるフォントAについて、縦横の文字サイズ等の情報を含んでいる。同様に、フォントB置換情報46は、プリンター12の内蔵フォントBのサイズに関する情報を含み、フォントC置換情報47はプリンター12の内蔵フォントCのサイズに関する情報を含んでいる。ここで、内蔵フォントA、B、Cのいずれかがプロポーショナルフォントである場合、文字毎に横方向のサイズが異なるので、フォントA置換情報45、フォントB置換情報46、及びフォントC置換情報47のうち対応する置換情報には、文字毎のサイズに関する情報が含まれる。内蔵フォントの文字サイズが当該フォント種別の全ての文字で一定の場合、フォントA置換情報45、フォントB置換情報46及びフォントC置換情報47に含まれるサイズに関する情報は一つで良い。プリンタードライバー実行部21は、POSアプリケーション実行部20が作成した印刷データに、文字列の印刷位置を指定する情報位置情報と、この文字列のフォントを指定する情報と、文字列を構成する文字のデータとが含まれている場合に、指定されたフォントをプリンター12の内蔵フォントに置き換える処理を行う。指定されたフォントと置き換え先のフォントの関係は、予め設定され、設定ファイル49として記憶部17に記憶されている。プリンター12の内蔵フォントの数は限られているため、POSアプリケーション実行部20が指定する複数のフォントを一つの内蔵フォントに対応させることもできる。また、POSアプリケーション実行部20が出力した印刷データにおいてフォントを指定する情報が含まれていない場合には、予めデフォルトで設定されたフォントが指定されたものとして、プリンタードライバー実行部21はフォントの置き換えを行う。プリンタードライバー実行部21は、置き換え後のフォントに基づいて、感熱ロール紙を搬送させるコマンドや、文字を印刷させるコマンドを含む制御コマンドを生成する。フォントの置き換えの際、補正処理部21a補正手段は、置き換え後のフォントのサイズ、文字列を構成する文字数、及び、印刷データで指定された文字列の印刷位置に基づいて、当該文字列の印刷終了位置を求める。そして、補正処理部21aは、印刷データに含まれる文字列どうしが重なって印刷される等の不具合が発生しないように、制御コマンドを補正する。図2~図5は、プリンタードライバー実行部21の補正処理部21aが実行する補正処理の一例を示す説明図である。各図のAはPOSアプリケーション実行部20が出力する印刷データに含まれるデータの例を示し、Bはプリンタードライバー実行部21が生成する制御コマンドに含まれるデータの例を示し、CはPOSアプリケーション実行部20により作成された印刷レイアウトのイメージを示し、Dは実際にプリンター12が印刷する印刷結果のイメージを示し、Eは補正処理部21aによる補正後の制御コマンドに含まれるデータの例を示し、Fは補正後の制御コマンドに従ってプリンター12が印刷する印刷結果のイメージを示す。Case.1まず、POSアプリケーション実行部20が使用したフォントにおける幅方向の文字サイズが、置換後の内蔵フォントの幅方向の文字サイズより大きい場合について、Case.1として図2を参照して説明する。すなわち、置換前の文字幅>置換後の文字幅の場合である。図2Aに示す例では、POSアプリケーション実行部20が生成した印刷データに、2つの文字列に関するデータ101、102が含まれている。データ101は、印刷開始位置X1,Y1から、フォント種別明朝で文字列123を印刷するよう指示するデータであり、データ102は、印刷開始位置X2,Y1から、フォント種別明朝で文字列abを印刷するよう指示するデータである。プリンタードライバー実行部21は、データ101、102のフォント種別明朝を内蔵フォントBに置き換え、印刷開始位置をプリンター12における座標に変換して、データ103、104を生成する。座標で示されるものが位置情報であり、座標で規定可能な範囲が記録領域である。データ103、104は、プリンター12に送信される制御コマンドに含まれるデータであり、具体的なデータ形式等は任意である。データ103は、データ101に基づき生成されたデータであり、印刷開始位置を左端からx1、紙送り方向y1とし、フォントを内蔵フォントBとし、印刷するデータを123と指定する。123の指定は、アスキーコードなど、内蔵フォントを指定する文字コードに変換して送る。データ104はデータ102に基づき生成され、印刷開始位置を左端からx2、紙送り方向y1とし、フォントを内蔵フォントBとし、印刷するデータをabと指定する。abの指定は、アスキーコードなど、内蔵フォントを指定する文字コードに変換して送る。プリンター12はラインサーマルプリンターであり、文字の印刷位置は、桁方向においては左端を原点基準位置としており、行方向においては感熱ロール紙の搬送方向紙送り方向における初期位置を基準位置とする。従って、データ103では、印刷開始位置を左端と紙送り方向とを基準に規定している。データ104も同様である。POSアプリケーション実行部20がデータ101、102を作成した際のレイアウトは、図2Cに示すように、感熱ロール紙10に、2つの文字列201、202が桁方向に並んで配置されている。文字列201はデータ101に対応する文字列であり、文字列202はデータ102に対応する。文字列201と文字列202との間は文字間程度の間隔となっている。ここで、座標X1、X2、Y1はPOSアプリケーション実行部20が実行するPOSアプリケーション上で定義された座標である。一方、プリンタードライバー実行部21が生成したデータ103、104に基づく実際の印刷イメージは、図2Dに示すようになる。ここで、座標x1、x2、y1はプリンター12が印刷位置を決定する際ために定義された座標である。プリンター12が使用する内蔵フォントBはPOSアプリケーションで使用されたフォントより文字幅が小さいため、図2Dに示すように、実際に印刷される文字列201と文字列202との間に不要な間隔が空いてしまっている。そこで、補正処理部21aは、2つの文字列に関するデータ101、102がいずれも同じフォントを指定していることを条件に、これら2つの文字列を1つの文字列に統合する処理を行い、制御コマンドを補正する。図2Eに示す補正後の制御コマンドに含まれるデータ105には、2つの文字列の文字123とabとの両方が、各文字列の印刷順に含まれている。補正後のデータ105に基づいてプリンター12が印刷を行うと、図2Fに示すように、文字123と文字abを含む文字列203が、開始位置x1,y1から印刷される。図2Fのイメージは、POSアプリケーションで作成された図2Cのイメージと同様、文字列の間に不要な間隔が空いておらず、ユーザーが意図した配置となっている。Case.2次に、POSアプリケーション実行部20が使用したフォントにおける幅方向の文字サイズよりも、置換後の内蔵フォントの幅方向の文字サイズが大きい場合について、Case.2として説明する。すなわち、置換前の文字幅<置換後の文字幅の場合である。なお、以下のCase.2及びCase.3において、Case.1と同様の処理については説明を省略する。Case.2は、さらに2通りに分けられる。一つは隣接する2つの文字列のフォントが一致する場合であり、この場合をCase.2-1として、図3を参照して説明する。もう一つは隣接する2つの文字列のフォントが一致しない場合であり、この場合をCase.2-2として図4を参照して説明する。Case.2-1この例では、POSアプリケーション実行部20が生成した印刷データに含まれるデータ111、112図3Aを例示する。データ111は、印刷開始位置X1,Y1、フォント種別ゴシック、文字列123を指定し、データ112は、印刷開始位置X2,Y1、フォント種別ゴシック、文字列abを指定する。プリンタードライバー実行部21は、データ111、112のフォント種別ゴシックを内蔵フォントAに置き換え、印刷開始位置の座標を変換して、データ113、114図3Bを生成する。データ113はデータ111に基づき生成され、データ114はデータ112に基づき生成される。POSアプリケーション実行部20がデータ111、112を作成した際のレイアウトは、図3Cに示すように、データ111に対応する文字列211と、データ112に対応する文字列212とが桁方向に並んで配置されている。一方、プリンタードライバー実行部21が生成したデータ113、114に基づく実際の印刷イメージでは、図3Dに示すように、実際に印刷される文字列211と文字列212とが重なる。POSアプリケーションで使用されたフォントの文字幅よりも内蔵フォントAの文字幅が大きいので、文字列211の終端の位置が、文字列212の印刷開始位置より後ろに達したためである。この場合、補正処理部21aは、2つの文字列を1つの文字列に統合する処理を行い、制御コマンドを補正する。図3Eに示す補正後の制御コマンドに含まれるデータ115には、2つの文字列の文字123とabとの両方が、各文字列の印刷順に含まれている。補正後のデータ105に基づいてプリンター12が印刷を行うと、図3Fに示すように、文字123と文字abを含む文字列213が、開始位置x1,y1から印刷される。図3Fのイメージでは文字列が重なっておらず、POSアプリケーションで作成された図3Cのイメージを反映して、ユーザーが意図した配置となっている。Case.2-2これに対し、2つの文字列のフォントが異なっている場合、一つの文字列として扱うことができない。これは、プリンタードライバー実行部21及びプリンター12が、文字列毎にフォントを指定する仕様となっているためである。換言すれば、フォントが異なる文字は、制御コマンドによって個別に印刷開始位置及びフォントを指定することが求められる。Case.2-2では、POSアプリケーション実行部20が生成した印刷データに含まれるデータ121、122図4Aを例示する。データ121は印刷開始位置X1,Y1、フォント種別ゴシック、文字列123を指定し、データ122は印刷開始位置X2,Y1、フォント種別イタリック、文字列abを指定する。プリンタードライバー実行部21は、データ121、122についてフォントを内蔵フォントに置き換え、印刷開始位置の座標を変換して、データ123、124図4Bを生成する。POSアプリケーション実行部20がデータ121、122を作成した際のレイアウトは、図4Cに示すように、データ121に対応する文字列221と、データ122に対応する文字列222とが桁方向に並んで配置されている。一方、プリンタードライバー実行部21が生成したデータ123、124に基づく実際の印刷イメージでは、図4Dに示すように、実際に印刷される文字列221と文字列222とが重なっている。これは、図3Dを参照して説明したのと同じ理由による。ここで、フォントが異なるため、データ123、124を一つの文字列のデータに統合することはできない。補正処理部21aは、隣接する文字列のデータ123、124のうち先に印刷される文字列のデータをそのままとし、後に印刷される側の文字列のデータ124の印刷開始位置を補正する。ここで、補正処理部21aは、データ123に基づいて先に印刷される文字列221の印刷終了位置を求め、この印刷終了位置を、後に印刷される文字列222の印刷開始位置とする。そして、補正処理部21aは、求めた印刷開始位置に基づいて、補正後の制御コマンドに含まれるデータ125図4Eを生成する。データ123、及び、補正後のデータ125を用いてプリンター12が印刷を行うと、図4Fに示すように、2つの文字列221、222が重ならずに並べて配置される。なお、Case.1で説明した置換前の文字幅>置換後の文字幅の場合において、2つの文字列のフォントが異なっている場合に、補正処理部21aがCase.2-2と同様に補正を行うことも可能である。この場合、後に印刷される側の文字列の印刷開始位置を補正することで、文字列間に不要な間隔が空かないように文字列を配置し、図2Fに示したイメージと同様の印刷結果を得ることができる。また、置換前の文字幅=置換後の文字幅の場合、Case.2と同様の処理を行ってもよいが、置換の前後で幅方向の文字サイズが変わらなければ幅方向に関する補正は不要であるため、補正処理部21aは補正を行わないものとしてもよい。Case.3次に、POSアプリケーション実行部20が使用したフォントにおける縦方向の文字サイズよりも、置換後の内蔵フォントの縦方向の文字サイズが大きい場合について、Case.3として説明する。すなわち、置換前の文字高さ<置換後の文字高さの場合である。この場合、補正処理部21aは、連続する2行に印刷される複数の文字列を処理対象とし、先に印刷される文字列について置換後のフォントの文字サイズが大きい場合に、後に印刷される1または複数の文字列のデータを補正する。Case.3では、POSアプリケーション実行部20が生成した印刷データに含まれるデータ131、132図5Aを例示する。データ131は印刷開始位置X1,Y1、フォント種別ゴシック、文字列123を指定し、データ132は印刷開始位置X2,Y2、フォント種別ゴシック、文字列abを指定する。この例では、2つの文字列のフォントが同一であるが、異なるフォントが指定された場合にも適用できる。プリンタードライバー実行部21は、データ131、132についてフォントを内蔵フォントに置き換え、印刷開始位置の座標を変換して、データ133、134図5Bを生成する。POSアプリケーション実行部20がデータ131、132を作成した際のレイアウトは、図5Cに示すように、データ131に対応する文字列231の次の行に、データ132に対応する文字列232が配置されている。一方、プリンタードライバー実行部21が生成したデータ133、134に基づく実際の印刷イメージでは、図5Dに示すように、文字列232と文字列232とが重なっている。POSアプリケーションで使用されたフォントの文字高さよりも内蔵フォントBの文字高さが大きいので、文字列231の下端が、文字列232の印刷開始位置よりも下に達したためである。補正処理部21aは、連続する2行に印刷される文字列のデータ133、134のうち先に印刷される文字列のデータをそのままとし、後に印刷される側の文字列のデータ134の印刷開始位置を補正する。ここで、補正処理部21aは、データ133に基づいて先に印刷される文字列231の印刷終了位置を求め、この印刷終了位置の高さ方向すなわち紙送り方向の座標を、後に印刷される文字列232の印刷開始位置の紙送り方向の座標とする。そして、補正処理部21aは、求めた印刷開始位置に基づいて、補正後の制御コマンドに含まれるデータ135図5Eを生成する。データ133、及び、補正後のデータ135を用いてプリンター12が印刷を行うと、図5Fに示すように、2つの文字列231、232が重ならずに、2行に配置される。図6及び図7は、ホストコンピューター11の動作を示すフローチャートであり、プリンタードライバー実行部21の動作を特に示す。プリンタードライバー実行部21は、POSアプリケーション実行部20が生成した1ページ分の印刷データが入力されるとステップS11、プリンター12を制御する処理を開始する。本実施形態ではプリンター12が感熱ロール紙に印刷を行うので、1ページ分の印刷データとは、プリンター12が印刷する1枚の帳票全体の印刷データを指し、具体的には印刷を開始してからカッターで切断するまでの間に印刷される部分の印刷データである。なお、プリンター12に代えてカット紙に印刷するプリンターを用いる場合には、1枚のカット紙が1ページに相当し、プリンター12を含む連続紙に印刷するプリンターで1ページの長さが規定されている場合には、この1ページを基準として用いる。プリンタードライバー実行部21は、POSアプリケーション実行部20が生成した印刷データから、プリンター12の内蔵フォントに置換する文字を含むデータを抽出するステップS12。ここで、例えば図2~図5で図中Aに示したデータが抽出される。プリンタードライバー実行部21は、抽出したデータのうち最初の文字列のデータを読み込みステップS13、この文字列のキャラクター列、印刷開始位置の座標、印刷終了位置の座標の計算値、置換後のフォント種別に関するデータを、制御部13が備えるRAM図示略のワークエリアに格納するステップS14。RAMにデータを格納した文字列を、文字列Aとする。キャラクター列は、当該文字列を構成する個々の文字を指定する文字コード等の情報である。印刷終了位置は、プリンタードライバー実行部21が、x座標桁方向の座標とy座標紙送り方向の座標の各々について、置き換え後のフォントのサイズに基づき、例えば下記式1、2のように算出してRAMに記憶する。印刷終了位置のx座標=印刷開始位置のx座標文字数×置換後のフォントの幅サイズ...1印刷終了位置のy座標=印刷開始位置のy座標置換後のフォントの縦サイズ...2プリンタードライバー実行部21は、ステップS12で抽出したデータのうち、残っているデータの最初の文字列のデータ以下、文字列Bとするを読み込むステップS15。プリンタードライバー実行部21は、RAMに格納したデータと文字列Bの印刷開始位置のy座標が一致するか否かを判別しステップS16、一致しない場合はステップS16;No、y補正フラグをONに設定するステップS17。y補正フラグはy座標の補正を行うことを示すフラグであって、フラグの値はRAMに記憶される。y補正フラグをONに設定した後、プリンタードライバー実行部21は、RAMに格納したキャラクター列、印刷開始位置の座標、印刷終了位置の座標の計算値、及び置換後のフォント種別に関するデータを、プリンター12に出力する出力用のデータとして取り出すステップS18。また、RAMに格納したデータと文字列Bの印刷開始位置のy座標が一致する場合ステップS16;Yes、プリンタードライバー実行部21は、RAMに格納したデータと文字列Bのフォント種別が一致するか否かを判別するステップS19。フォント種別が一致しない場合ステップS19;No、プリンタードライバー実行部21はx補正フラグをONに設定しステップS20、ステップS18に移行する。一方、RAMに格納したデータと文字列Bのフォント種別が一致する場合ステップS19;Yes、プリンタードライバー実行部21は、RAMに格納したデータと文字列Bを連結し、一つの文字列に統合すべきか否かを判別するステップS21。ステップS21で一つの文字列に統合すべきか否かを判別する条件は、下記の条件1にも2にも該当せず、かつ、条件3に該当する場合である。換言すれば、条件1、2のいずれかの場合、条件1、2に該当しない場合で条件3に該当する場合である。条件1、2、3のいずれにも該当しない場合は、連結しない。条件1.RAMに格納したデータの最後の文字キャラクターが連結コードである。条件2.文字列Bの最初の文字キャラクターが連結コードである。条件3.RAMに格納したデータの印刷終了位置のx座標が、文字列Bの印刷開始位置のx座標より大きい。連結コードとは、スペース、タブ、改行等を示すコードである。これらの連結コードは、文字コードと同様に印刷データに含まれる。上記の条件1~3に基づいて、RAMに格納したデータと文字列Bを連結すべきと判別した場合ステップS21;Yes、プリンタードライバー実行部21は、RAMに格納したデータに文字列Bを統合し、キャラクター列と印刷終了位置の座標を更新してステップS22、ステップS15に戻る。このステップS15では残りのデータのうち最初の文字列のデータが文字列Bとして読み込まれ、ステップS16~S21で処理される。これに対し、RAMに格納したデータと文字列Bを連結すべきでないと判別した場合ステップS21;No、プリンタードライバー実行部21は、ステップS18に移行してRAMのデータを取り出し、図7のステップS23に移行する。ステップS23で、プリンタードライバー実行部21は、x補正フラグの値を参照し、x補正フラグがONになっている場合はステップS23;Yes、文字列Bのx座標を補正してステップS24、ステップS25に移行する。また、x補正フラグがONでない場合ステップS23;No、そのままステップS25に移行する。ステップS25で、プリンタードライバー実行部21はy補正フラグの値を参照し、y補正フラグがONになっている場合はステップS25;Yes、文字列Bのy座標を補正してステップS26、ステップS27に移行する。また、x補正フラグがONでない場合ステップS25;No、そのままステップS27に移行する。ステップS24で、プリンタードライバー実行部21は、文字列Bの印刷開始位置のx座標を補正する。例えば、ステップS18で取り出した出力用データの印刷終了位置のx座標>文字列Bの印刷開始位置のx座標である場合には、文字列Bの印刷開始位置のx座標を、出力用データの印刷終了位置のx座標と同じ値に変更する。出力用データの印刷終了位置のx座標≦文字列Bの印刷開始位置のx座標である場合には補正は必要ない。また、ステップS26では、プリンタードライバー実行部21は、文字列Bの印刷開始位置のy座標を補正する。例えば、ステップS18で取り出した出力用データの印刷終了位置のy座標>文字列Bの印刷開始位置のy座標である場合には、文字列Bの印刷開始位置のy座標を、出力用データの印刷終了位置のy座標と同じ値に変更する。出力用データの印刷終了位置のy座標≦文字列Bの印刷開始位置のy座標である場合には補正は必要ない。ステップS27では、文字列Bのキャラクター列、印刷開始位置の座標、印刷終了位置の座標の計算値、及び置換後のフォント種別に関するデータに基づいて、RAMのデータを更新する。ここで、プリンタードライバー実行部21は、印刷終了位置のy座標を除くデータについては、文字列BのデータをRAMに格納するが、印刷終了位置のy座標のみ、以前のRAM内のデータを引き継ぐことがある。すなわち、ステップS27の処理前にRAMに格納されていた印刷終了位置のy座標≧文字列Bの印刷終了位置のy座標である場合、プリンタードライバー実行部21は、RAM内の印刷終了位置のy座標を更新しない。これにより、例えば1行に複数の文字列がx方向に並んでいる場合に、どの文字列も次の行の文字列に重ならないように処理を行うことができる。ステップS27の処理後、プリンタードライバー実行部21は、ステップS18で取り出した出力用データのキャラクター列、印刷開始位置の座標、フォント種別に基づいて、プリンター12を制御するコマンドを生成しステップS28、生成したコマンドをプリンター12に出力するステップS29。その後、プリンタードライバー実行部21は、ステップS11で入力された1ページ分のデータ全体について処理が終了したか否かを判別しステップS30、まだ処理されていないデータがある場合はステップS15に戻る。本実施形態の別の適用例として、例えば、プリンター12が180ドット×180ドットの解像度で印刷可能に構成され、プリンタードライバー実行部21が、POSアプリケーションに対しておいて9ドット×10ドットのフォントを提供し、POSアプリケーションが9ドット×10ドットのフォントを使用する場合を想定する。この構成において、プリンター12によって90ドット×90ドットの解像度による印刷をサポートする場合には、解像度が半分になるため4.5ドット×5ドットのフォントをPOSアプリケーションが使用することになるが、POSアプリケーションの仕様の制限により整数ドット数のフォントしかサポートされなければ、POSアプリケーションは、フォントのサイズを4ドット×5ドットまたは5ドット×5ドットと認識して印刷データを作成する。このような場合、POSアプリケーションが認識しているフォントサイズと、プリンター12が印刷するフォントのサイズに誤差が生じるが、本実施形態で説明したように、補正処理部21aが補正を行うことで正確に印刷を行える。なお、この場合には、解像度が半分になることでプリンター12の内蔵フォントのサイズが通常時とは変わることを加味して、上記式1に代えて下記式3により印刷終了位置のx座標を求めることとなる。印刷終了位置のx座標=印刷開始位置のx座標文字数×POSアプリケーションが認識しているフォントの幅サイズ文字数/2...3以上説明したように、本発明を適用した実施形態では、POSアプリケーションが出力した文字列と当該文字列の位置情報を含むデータの少なくとも一部を、プリンター12が内蔵する内蔵フォントに対応するコードへ置換した後、プリンター12へ送信して記録させるホストコンピューター11は、POSアプリケーションが出力した文字列を含むデータに含まれる文字列のフォントを、POSアプリケーションが使用するフォントからプリンター12が内蔵する内蔵フォントに対応するコードへ置換する際に、補正処理部21aによって位置情報を補正し、補正された位置情報と内蔵フォントのコードをプリンター12へ送信し、プリンター12に印刷を実行させるので、内蔵フォントのコードへ置換する際に位置情報を補正することで文字列間のずれを補正することができ、フォントにより文字のサイズや字間が異なっていても、プリンター12の内蔵フォントの置き換えによる文字列の記録位置の乱れを防ぐことができ、良好な記録結果を得ることができる。また、補正処理部21aは、行方向または桁方向における文字列の位置情報を補正することで、文字列の間隔のずれ等を補正し、文字列のレイアウトの乱れを回避でき、良好な記録結果を得ることができる。また、補正処理部21aは、データに含まれる複数の文字列のうち同じ種類の内蔵フォントのコードに置換される複数の文字列を、一つの位置情報を有する一つの文字列に統合してプリンター12により記録させる。例えば、POSアプリケーションが出力したデータに含まれる文字列の印刷位置が重なる場合に、補正処理部21aは、これら重なる文字列を一つの文字列に統合する。このため、同じ種類の内蔵フォントの複数の文字列を一つの文字列に統合して記録装置により記録させるので、文字列間の間隔が不自然に空いたり、間隔が無く文字列が重なったりする等の不具合を防止できる。また、同じ種類の内蔵フォントのコードに置換される文字列を統合するので、意図しない記録結果になることがない。また、補正処理部21aは、互いに異なる内蔵フォントに置換される複数の文字列について、少なくとも一方の文字列の印刷開始位置を内蔵フォントのサイズに基づいて補正するので、文字列の重複や文字列間が離れすぎるなど、フォントの桁方向のサイズに起因する不具合を回避し、置き換えられる内蔵フォントの種類によらず良好な記録結果を得ることができる。例えば、補正処理部21aは、POSアプリケーションが出力したデータに複数の文字列と各々の文字列の位置情報とが含まれていて、いずれかの文字列のコードと位置情報に基づき内蔵フォントに置換した後の記録領域の位置に、他の文字列に対しデータで指定された記録領域の位置が重なる場合に、これら重なる文字列を、一つの位置情報を有する一つの文字列に統合する。これにより、内蔵フォントに置換することで記録領域における位置が重なる複数の文字列を一つの文字列に統合することで、簡単な処理により、文字列の重複記録を確実に回避でき、良好な記録結果を得ることができる。さらにまた、補正処理部21aは、プリンター12が内蔵する複数の内蔵フォントのサイズを記憶しており、桁方向に隣接する文字列が互いに異なる内蔵フォントのコードに置換される場合に、少なくとも一方の文字列の位置情報を内蔵フォントのサイズに基づいて補正する。これにより、桁方向に並ぶ複数の文字列の間隔を適正に補正できるので、文字列の重複や文字列間が離れすぎるなど、内蔵フォントの桁方向のサイズに起因する不具合を回避し、置き換えられる内蔵フォントの種類によらず良好な記録結果を得ることができる。さらに、補正処理部21aは、POSアプリケーションが出力したデータに含まれるいずれかの文字列と、次行の文字列が重なる場合に、少なくとも次行の文字列の印刷開始位置を内蔵フォントのサイズに基づいて補正するので、フォントの縦サイズすなわち行方向のサイズの違いに起因する不具合を回避し、置き換えられる内蔵フォントの種類によらず良好な記録結果を得ることができる。なお、上記各実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。例えば、本実施形態では記録システム1のホストコンピューター11がPOSアプリケーションを実行してプリンター12を制御し、レシートを発行するものとして説明したが、本発明は、フォントデータを内蔵し、内蔵したフォントデータに基づいて文字を記録する記録装置を制御する記録制御装置に広く適用可能であって、印刷出力する帳票の種類や目的、使用する記録媒体の種類、印刷データを生成するアプリケーションプログラムの種類、使用する記録媒体の種類等は特に限定されないし、記録装置としては、サーマルプリンターで構成されるプリンター12に限らず、インクジェットプリンターや、ドットインパクトプリンターを用いることもでき、カッターを備えるか否か等の具体的な細部構成についても任意である。また、図1に示した各機能部は機能的構成を示すものであって、各機能部を独立したハードウェアにより構成する必要はなく、ソフトウェアとハードウェアとの協働により、複数の機能部の機能を1つのハードウェアに集約して実現することも、一つの機能部を複数のハードウェアにより実現することも勿論可能である。また、上述の動作を行うホストコンピューター11が実行するプログラムは、ホストコンピューター11を構成するROM等の不揮発性記憶装置が記憶する構成に限らず、可搬型の記録媒体に記憶されている構成であってもよいし、或いは、通信回線を介して接続された他の装置にダウンロード可能に記憶され、これらの装置からホストコンピューター11が上記プログラムをダウンロードして実行してもよく、その他の構成についても任意に変更可能である。"