JP5891610B2 - 記録装置、記録装置の制御方法、及び、画像補正プログラム - Google Patents
記録装置、記録装置の制御方法、及び、画像補正プログラム Download PDFInfo
- Publication number
- JP5891610B2 JP5891610B2 JP2011126614A JP2011126614A JP5891610B2 JP 5891610 B2 JP5891610 B2 JP 5891610B2 JP 2011126614 A JP2011126614 A JP 2011126614A JP 2011126614 A JP2011126614 A JP 2011126614A JP 5891610 B2 JP5891610 B2 JP 5891610B2
- Authority
- JP
- Japan
- Prior art keywords
- font
- recording
- character string
- recorded
- font data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
このような場合において、交換前の記録装置で記録したときの記録結果と、交換後の記録装置で記録したときの記録結果が近似するようにすることが求められる場合がある。例えば、レシートは、所定の画像が記録された後に顧客に引き渡されるものであり、記録装置が交換された場合であっても、近似した記録結果が維持されることが求められる。そして、1行に記録可能な文字の桁数(記録可能桁数)が異なると、記録結果が大きく異なったものとなるため、交換の前後で近似した記録結果を得るためには、少なくとも、記録可能桁数を一致させる必要がある。
また、制御装置を制御するプログラムを改変して、交換の前後で制御装置が送信するコマンドの内容を変更したり、また、記録に係る各種設定を調整したりすることにより、交換の前後で記録可能桁数を一致させることも可能であるが、この場合、専門的な知識を要すると共に、作業が煩雑であった。
本発明は、上述した事情に鑑みてなされたものであり、制御装置に接続された記録装置を交換した場合に、容易に、交換の前後で記録可能桁数を一致させ、近似した記録結果を得るようにすることを目的とする。
また、本発明の記録装置は、前記コマンドが、記録解像度が異なるヘッドを備える他の記録装置に記録させる1又は複数の文字を有する文字列の記録を指示するコマンドである場合、前記記録実行部は、前記他の記録装置との記録解像度の相違に基づいて、前記印字領域幅を調整する。
また、本発明の記録装置は、前記コマンドが、前記フォントデータのフォントサイズと異なる第2のフォントデータを記憶する他の記録装置に記録させる1又は複数の文字を有する文字列の記録を指示するコマンドである場合、前記記録実行部は、前記記憶部に記憶された前記フォントデータのフォントサイズと前記他の記録装置が記憶する前記第2のフォントデータのフォントサイズとの相違に基づいて、前記印字領域幅を調整する。
また、本発明の記録装置は、前記記録実行部は、前記行の中央部に、調整した前記印字領域幅に係る印字領域を配置する。
また、本発明の記録装置は、前記記録実行部は、前記フォントデータに応じ、前記行の左マージンと右マージンのいずれかを調整して、前記印字領域幅に係る印字領域を配置する。
また、本発明の記録装置の制御方法は、フォントデータを記憶し、1又は複数の文字を有する文字列の記録を指示するコマンドを受信し、前記文字列が記録される行の印字領域幅を調整し、前記行の前記フォントデータに応じた文字の記録可能桁数を調整して前記文字列に対応する前記フォントデータに基づいて記録することを特徴とする。
また、本発明は、フォントデータを記憶する記憶部と、コマンドを受信する受信部とを備える記録装置を制御する制御部により実行されるプログラムであって、前記制御部を、前記受信部で1又は複数の文字を有する文字列の記録を指示するコマンドを受信した場合、前記文字列が記録される行の印字領域幅を調整し、前記行の前記フォントデータに応じた文字の記録可能桁数を調整して前記文字列に対応する前記フォントデータに基づいて記録する記録実行部として機能させることを特徴とする。
また、上記目的を達成するために、本発明は、制御装置に接続可能な記録装置であって、フォントデータを記憶する記憶部と、前記制御装置からコマンドを受信する受信部と、前記受信部により前記制御装置から1又は複数の文字を有する文字列の記録を指示するコマンドを受信した場合、当該文字列が記録される行における印字領域幅を調整することにより、当該行における前記フォントデータに応じた文字の記録可能桁数を調整した上で、当該文字列に対応する前記フォントデータに基づいて記録する記録実行部と、を備えることを特徴とする。
ここで、文字とは、言語で使用される意味を持った文字のみならず、記憶部に記憶されたフォントデータに基づいて記録可能な図形(スペースを含む)の全てを指す概念である。
そして、上記構成によれば、制御装置から1又は複数の文字を有する文字列の記録を指示するコマンドを受信した場合、当該文字列が記録される行の印字領域幅を調整することにより、当該行におけるフォントデータに基づく文字の記録可能桁数を調整した上で、当該文字列に対応するフォントデータに基づいて記録を行うため、交換の前後で記録可能桁数を一致させることが可能となる。特に、プリンター側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるために制御装置に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
ここで、交換前後の記録装置の記録解像度の相違は、交換前後で記録可能桁数が相違する要因となる。
これを踏まえ、上記構成によれば、記録実行部は、文字列の記録を指示するコマンドを受信した場合、自身と、交換前の記録装置に該当する他の記録装置との記録解像度の相違を反映して、他の記録装置によって当該文字列を記録したときの当該文字列が記録される行の記録可能桁数と、自身によって当該文字列を記録したときの当該文字列が記録される行の記録可能桁数とが一致するように、当該文字列が記録される行の印字領域を調整するため、交換前後の記録装置の記録解像度の相違にかかわらず、記録可能桁数が一致することとなる。特に、プリンター側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるために制御装置に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
ここで、交換前後の記録装置のフォントデータのフォントサイズの相違は、交換前後で記録可能桁数が相違する要因となる。
これを踏まえ、上記構成によれば、記録実行部は、文字列の記録を指示するコマンドを受信した場合、自身と、交換前の記録装置に該当する他の記録装置とのフォントデータのフォントサイズの相違を反映して、他の記録装置によって当該文字列を記録したときの当該文字列が記録される行の記録可能桁数と、自身によって当該文字列を記録したときの当該文字列が記録される行の記録可能桁数とが一致するように、当該文字列が記録される行の印字領域を調整するため、交換前後の記録装置のフォントデータのフォントサイズの相違にかかわらず、記録可能桁数が一致することとなる。特に、プリンター側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるために制御装置に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
この構成によれば、記録媒体に文字列が偏って記録されることを防止でき、記録結果の見た目が悪くなるという事態を抑制可能である。
この構成によれば、左右のマージンを調整することにより、印字領域の位置を適切に調整可能である。
この制御方法によれば、制御装置から1又は複数の文字を有する文字列の記録を指示するコマンドを受信した場合、当該文字列が記録される行の印字領域幅を調整することにより、当該行におけるフォントデータに基づく文字の記録可能桁数を調整した上で、当該文字列に対応するフォントデータに基づいて記録を行うため、交換の前後で記録可能桁数を一致させることが可能となる。特に、プリンター側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるために制御装置に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
このプログラムを実行すれば、制御装置から1又は複数の文字を有する文字列の記録を指示するコマンドを受信した場合、当該文字列が記録される行の印字領域幅を調整することにより、当該行におけるフォントデータに基づく文字の記録可能桁数を調整した上で、当該文字列に対応するフォントデータに基づいて記録を行うため、交換の前後で記録可能桁数を一致させることが可能となる。特に、プリンター側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるために制御装置に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
図1は、本実施形態に係る記録システム1の機能的構成を示すブロック図である。
記録システム1は、ホストコンピューター10(制御装置)と、交換後プリンター11(記録装置)とを備え、ホストコンピューター10の制御の下、交換後プリンター11により記録媒体に記録するシステムである。特に、本実施形態に係る記録システム1では、ホストコンピューター10と、交換後プリンター11とが協働して、レシートを発行可能である。レシートを発行する際のホストコンピューター10、及び、交換後プリンター11の動作については、後述する。
ここで、本願発明は、ホストコンピューター10に接続されているプリンターが、1のプリンターから、本願発明が適用されている他のプリンターに交換されたときにおける他のプリンターの動作に、その特徴がある。これを踏まえ、以下の説明では、交換前のプリンターを「交換前プリンター11a」と表現し、交換後のプリンターを「交換後プリンター11」と表現し、これらプリンターを明確に区別するものとする。
ホスト側制御部15は、ホストコンピューター10の各部を中枢的に制御するものであり、演算実行部としてのCPUや、このCPUに実行される基本制御プログラムや、この基本制御プログラムに係るデータ等を不揮発的に記憶するROM、CPUに実行されるプログラムやこのプログラムに係るデータ等を一時的に記憶するRAM、その他の周辺回路等を備えている。ホスト側制御部15は、アプリケーション実行部20と、プリンタードライバー実行部21と、を備えているが、これらについては後述する。
ホスト側表示部16は、液晶ディスプレーパネルや、有機ELパネル等の表示パネルを備え、ホスト側制御部15の制御の下、表示パネルに各種情報を表示する。
ホスト側入力部17は、各種入力デバイスに接続され、これら入力デバイスに対する操作を検出し、ホスト側制御部15に出力する。
ホスト側インターフェイス部18(I/F)は、ホスト側制御部15の制御の下、交換後プリンター11との間で通信規格に準拠した通信を行う。
ホスト側記憶部19は、各種データを書き換え可能に記憶する部位であり、ハードディスクや、EEPROM等の記憶装置を備えている。ホスト側記憶部19には、少なくとも、交換後プリンター11制御用のプリンタードライバーが記憶されている。
図1に示すように、交換後プリンター11は、制御部30と、表示部31と、入力部32と、プリントエンジン33と、記憶部35と、インターフェイス部36(I/F)と、を備えている。
制御部30は、上述したホスト側制御部15と同様、CPUや、ROM、RAM、その他の周辺回路を備え、交換後プリンター11の各部を中枢的に制御する。制御部30は、記録実行部37を備えているが、これについては後述する。
表示部31は、交換後プリンター11の動作状態等の各種情報を表示する液晶パネルや有機ELパネル等の表示パネルや、LED等を備え、制御部30の制御の下、当該表示パネルに各種情報を表示し、また、LEDを所定の態様で点灯/消灯する。
入力部32は、交換後プリンター11に設けられた各種操作スイッチに接続され、操作スイッチに対する操作を検出し操作信号として制御部30に出力する。
プリントエンジン33は、上述した記録ヘッド23のほか、記録ヘッド23を走査方向に走査するためのキャリッジを駆動するためのキャリッジ駆動モーターや、感熱ロール紙24を搬送する搬送ローラーを駆動する搬送モーター、感熱ロール紙24を切断するカッターを駆動するためのカッター駆動モーター等を備えている。制御部30の記録実行部37は、ホストコンピューター10から受信した制御コマンドに基づいて、各種センサーの検出値を監視しながら、記録ヘッド23や、各種モーターを制御して、感熱ロール紙24に所定の画像を記録し、所定の位置で感熱ロール紙24を切断することにより、所定の画像が記録された紙片であるレシートを発行する。この記録実行部37の機能は、CPUがファームウェアを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
インターフェイス部36(I/F)は、制御部30の制御の下、ホストコンピューター10との間で通信規格に準拠した通信を行う。インターフェイス部36と、制御部30とが協働して、受信部として機能する。
記憶部35は、EEPROMや、ハードディスク等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発的に記憶する。記憶部35には、交換後プリンター11の動作を制御するためのファームウェアが記憶されている。
アプリケーション実行部20は、ホストコンピューター10に予めインストールされたアプリケーションを実行することにより、レシートに記録すべき画像の情報を含む印刷データを生成し、プリンタードライバー実行部21に出力する。
プリンタードライバー実行部21は、ホストコンピューター10に予めインストールされたプリンタードライバーを実行することにより、アプリケーション実行部20から入力された印刷データに基づいて、交換後プリンター11のコマンド仕様に対応した制御コマンドを生成し、交換後プリンター11に出力する。なお、交換後プリンター11と、交換前プリンター11aとは、コマンド仕様は共通している。
制御コマンドとは、交換後プリンター11にレシートの発行に係る各種動作を行わせるためのコマンド群のことであり、画像の記録を指示するコマンドや、所定の搬送量、感熱ロール紙24を搬送することを指示する搬送指示コマンド、感熱ロール紙24の切断を指示する切断指示コマンド等のコマンドが含まれている。
ホストコンピューター10から交換後プリンター11に出力された制御コマンドは、順次、受信バッファー(不図示)に格納される。交換後プリンター11の制御部30の記録実行部37は、受信バッファーに格納された制御コマンドを、順次、読み出して実行することにより、プリントエンジン33を制御して、レシートの発行に係る各種動作を実行する。
図1に示すように、交換前プリンター11aは、制御部30aと、表示部31aと、入力部32aと、プリントエンジン33aと、記憶部35aと、インターフェイス部36a(I/F)と、を備えている。これら構成要素のそれぞれは、交換後プリンター11の対応する構成要素のそれぞれと略同一の機能を有している。
そして、記録結果が近似した状態となるためには、少なくとも、交換前プリンター11aが発行するレシートと、交換後プリンター11が発行するレシートとのそれぞれにおける1行あたりの文字の記録可能桁数を一致させる必要がある。これは、記録可能桁数が異なると、文字列の改行位置や、レシートにおいて文字列が記録される位置のバランスが異なる要因となり、交換の前後で記録結果が著しく相違する要因となり得るからである。
ここで、交換した後、例えば、ホストコンピューター10のプリンタードライバーを修正することにより、ホストコンピューター10が送信する制御コマンドの内容を変更したり、また、左右のマージンや、文字間のスペース等の記録に係る各種設定を厳密に調整したりすることにより、交換の前後で記録可能桁数を一致させることは可能である。しかしながら、この場合、専門的な知識が必要となり、さらに、作業が煩雑である。
以上を踏まえ、本実施形態では、交換後プリンター11は、ホストコンピューター10に何らかの改変を加えたり、記録に係る各種設定を調整したりすることなく、自身の記録桁数を交換前プリンター11aが発行するレシートの記録可能桁数と一致させる構成となっている。
以下の説明では、交換前プリンター11a、及び、交換後プリンター11は共に、80mm幅の感熱ロール紙24を収容していることを前提としているものとする。
図2(A)に示すように、交換前プリンター11aの記録解像度は、180dpiである。
また、感熱ロール紙24の幅が80mmの場合の交換前プリンター11aの最大印字領域幅は512ドットである。最大印字領域幅とは、幅方向に形成可能な画素の最大数のことであり、感熱ロール紙24の幅が80mmの場合、記録解像度が180dpiであることとの関係上、最大印字領域幅は512ドットとなる。
また、交換前プリンター11aは、フォントA、及び、フォントBの2種類のフォントに対応しており、フォントAに係るフォントテーブルであるフォントAテーブル40a、及び、フォントBに係るフォントテーブルであるフォントBテーブル41aがそれぞれ記憶部35aに記憶されている。
フォントテーブルとは、フォントデータを集合して記憶するテーブルであり、また、フォントデータとは、文字を感熱ロール紙24に記録可能な態様で表現する実データのことである。本実施形態では、フォントデータの態様は、ビットマップフォントデータである。フォントデータの態様としては、ビットマップデータのほか、スケイラブルフォントデータや、ベクトルフォントデータ、アウトラインフォントデータ等がある。なお、図3に示すように、フォントAのフォントサイズは、横12ドット×縦24ドットであり、フォントBのフォントサイズは、横9ドット×縦17ドットである。
また、交換前プリンター11aのフォントAに係る文字の記録可能桁数は42桁であり、フォントBに係る文字の記録可能桁数は56桁である。記録可能桁数とは、1のフォントに係る文字を1行に連続して記録可能な桁数のことである。図2(A)に示すように、80mm幅の感熱ロール紙24では最大印字領域幅が512ドットであるため、フォントAに係る文字の記録可能桁数は、42桁(512/12=42.6・・・)となり、フォントBに係る文字の記録可能桁数は、56桁(512/56.8・・・)となる。
図4(A)において、コマンド群H1は、フォントAによって文字列「AAA・・・A」(文字「A」が42個(=記録可能桁数)連続した文字列。以下、同じ。)の記録を指示する制御コマンドの一例を示している。
コマンド群H1は、フォント指定コマンドFC1と、文字列記録指示コマンドMC1とを含んでいる。
フォント指定コマンドFCとは、文字列を記録するときのフォントを指定するコマンドであり、コマンド群H1のフォント指定コマンドFC1は、文字列を記録するときのフォントとしてフォントAを指定している。
また文字列記録指示コマンドMCとは、文字列を記録することを指示するコマンドである。文字列記録指示コマンドMCは、命令コードと、所定の文字コード(例えば、アスキーコード。)で表現された文字の組み合わせからなる文字列と、が組み合わされて構成されている。コマンド群H1の文字列記録指示コマンドMC1は、「XXX“AAA・・・A”」(ただし、XXXは、文字列を記録することを指示する命令コード。また、ダブルクォーテーション内の文字列は、アスキーコードで表現された文字の組み合わせによって構成された文字列。)という構成となっている。
また、図4(A)において、コマンド群H2は、フォントBによって文字列「BBB・・・B」(文字「B」が57個(=記録可能桁数+1)連続した文字列。以下、同じ。)の記録を指示する制御コマンドの一例を示している。
コマンド群H2は、フォント指定コマンドFC2と、文字列記録指示コマンドMC2とを含んでいる。フォント指定コマンドFC2は、文字列を記録するときのフォントとしてフォントBを指定している。文字列記録指示コマンドMC2は、文字列「BBB・・・B」を記録することを指示している。
まず、交換前プリンター11aの制御部30aは、受信バッファーに格納されたフォント指定コマンドFC1、及び、文字列記録指示コマンドMC1を読み出す。
次いで、制御部30aは、文字列記録指示コマンドMC1が指定する文字列(文字列「AAA・・・A」)を構成する文字を順番に取得し、フォント指定コマンドFC1が指定するフォント(フォントA)のフォントテーブル(フォントAテーブル40a)を参照して、取得した文字をフォントデータに変換する。ここで、アスキーコードで表現された文字のそれぞれは、フォントテーブルに記憶されたいずれかのフォントデータと対応関係にあり、この対応関係を示す情報が記憶部35aに予め記憶されている。
次いで、制御部30aは、変換したフォントデータを、順次、行バッファー45aに展開する。
行バッファー45aとは、制御部30aのRAMの所定の記憶領域に形成された、1行分のプリントバッファーのことである。文字列の記録は、行ごとに行われる構成となっており、感熱ロール紙24上のある1行に文字列を記録する場合、制御部30aは、当該文字列を構成する全ての文字のフォントデータを、行バッファー45aに展開した後、行バッファー45aに展開されているデータに基づいて、画像を記録する。
交換前プリンター11aでは、行バッファー45aの横方向(感熱ロール紙24の幅方向に対応する方向)のサイズは、512ドットである。これは、交換前プリンター11aの最大印字領域幅が512ドットだからである。
行バッファー45aにフォントAに係るフォントデータが展開される動作をより具体的に説明すると、制御部30aは、まず、RAMに横512ドット、縦24ドットの行バッファー45aを形成する。行バッファー45aの縦のサイズは、展開するフォントデータのフォントサイズによって規定される。
次いで、制御部30aは、図5(A)に示すように、文字列「AAA・・・A」を構成する42個の文字のうち、処理対象となっている1つの文字を取得し、取得した文字をフォントデータに変換し、変換したフォントデータを行バッファー45aに展開する、という動作を順番に行うことにより、文字列「AAA・・・A」を構成する42個の文字のフォントデータを、矢印Y1方向に向かって、順次、行バッファー45aに展開する。フォントAのフォントサイズは、横12×縦24であるため、横512ドットの行バッファー45aに、42個全てのフォントデータを展開可能である。そして、文字列「AAA・・・A」を構成する42個全ての文字のフォントデータを行バッファー45aに展開した後、制御部30aは、行バッファー45aに展開されているデータに基づいて、プリントエンジン33を制御して画像を記録する。
なお、記録可能桁数とは、すなわち、行バッファー45aに展開可能なフォントデータの数の最大数のことである。つまり、行バッファー45aの横方向のサイズが512ドットであり、フォントAの横のサイズが12ドットであるため、フォントAのフォントデータは行バッファー45aに最大42個、展開可能(=1行に最大42桁、フォントAに係る文字を記録可能)であり、従って、フォントAに係る文字の記録可能桁数は、42桁ということとなる。同様に、フォントBのフォントデータは行バッファー45aに最大56個、展開可能(=1行に最大42桁、フォントBに係る文字を記録可能)であり、従って、フォントBに係る文字の記録可能桁数は、56桁ということとなる。
図5(B1)に示すように、文字列「BBB・・・B」のそれぞれの文字のフォントデータ(フォントB)を順次展開していった場合、行バッファー45aの横のサイズが512ドットであり、フォントBの横のサイズが9ドットであるため、56個目の文字「B」のフォントデータを展開した後は、57個目の文字「B」のフォントデータを行バッファー45aに展開できない状態となる。この状態が現出した場合、制御部30aは、行バッファー45aがフルになったと判別し、行バッファー45aに展開されたデータに基づいて、56個分の文字「B」の記録を行う。その後、制御部30aは、行バッファー45aをバッファークリアし、残りの文字のフォントデータを行バッファー45aの先頭から順次展開する。具体的には、57個目の文字「B」のフォントデータを行バッファー45aに展開する(図5(B2))。次いで、制御部30aは、行バッファー45aに展開されたデータに基づいて、57個目の文字「B」を記録する。
図2(B)に示すように、交換後プリンター11の記録解像度は、203dpiである。
また、感熱ロール紙24の幅が80mmの場合の交換前プリンター11aの最大印字領域幅は、記録解像度が203dpiであることとの関係上、576ドットである。
また、交換後プリンター11は、フォントA’、及び、フォントB’の2種類のフォントに対応しており、フォントA’に係るフォントテーブルであるフォントA’テーブル40、及び、フォントBに係るフォントテーブルであるフォントB’テーブル41がそれぞれ記憶部35に記憶されている。なお、図3に示すように、フォントA’のフォントサイズは、横13ドット×縦26ドットであり、フォントB’のフォントサイズは、横10ドット×縦19ドットである。
実際印字領域幅、左マージン、及び、実際記録可能桁数については後述する。
フォントサイズの相違について詳述すると、交換前プリンター11aは、横12×縦24のフォントAのフォントデータを記憶している。一方、交換後プリンター11は、フォントAのフォントサイズと同一のフォントサイズのフォントに係るフォントデータを記憶しておらず、比較的フォントサイズが近いフォントA’(横13×縦26)のフォントデータを記憶している。
同様に、交換前プリンター11aは、横9×縦17のフォントBのフォントデータを記憶している。一方、交換後プリンター11は、フォントBのフォントサイズと同一のフォントサイズのフォントに係るフォントデータを記憶しておらず、比較的フォントサイズが近いフォントB’(横10×縦19)のフォントデータを記憶している。
そして、交換前プリンター11aから交換後プリンター11にホストコンピューター10に接続されるプリンターが交換された場合であっても、ホストコンピューター10が送信するコマンドの内容の変更を伴うことなく、交換後プリンター11は、以下の動作を実行することにより、フォントA’に係る文字の記録可能桁数を42桁に調整すると共に、フォントB’に係る文字の記録可能桁数を56桁に調整し、これにより、交換の前後で記録結果が近似するようにしている。
図6のフローチャートでは、特に、フォント指定コマンドFC、及び、文字列記録指示コマンドMCを含むコマンド群Hを読み出して実行する際の交換後プリンター11の動作を示している。
図6のフローチャートの前提として、交換後プリンター11は、ホストコンピューター10からフォント指定コマンドFC、及び、文字列記録指示コマンドMCを含むコマンド群Hを受信しており、このコマンド群Hが受信バッファーに格納されている状態であるものとする。
まず、交換後プリンター11の制御部30の記録実行部37は、受信バッファーに格納されたコマンド群Hを読み出す(ステップSA1)。
ここで、プリンターの交換前後において、ホストコンピューター10が送信する制御コマンドの内容に変化はなく、ホストコンピューター10は、あくまで、交換前プリンター11aが接続されていることを前提として、交換前プリンター11aに準じた制御コマンドを生成し、送信する。従って、ホストコンピューター10が送信するフォント指定コマンドFCは、交換前プリンター11aが対応しているフォントA、又は、フォントBのいずれかを指定している。上述したように、交換後プリンター11において、フォントAに対応しているフォントは、フォントA’であり、また、フォントBに対応しているフォントは、フォントB’である。
実際印字領域幅が設定されていない場合(ステップSA3:YES)、記録実行部37は、ステップSA1で読み出したフォント指定コマンドFCが指定するフォントがフォントAであるか、フォントBであるかを判別する(ステップSA4)。
フォント指定コマンドFCが指定するフォントがフォントAである場合(ステップSA4:「フォントA」)、記録実行部37は、RAM上に、フォントAに対応するフォントA’に準じた行バッファー45を形成する(ステップSA5)。具体的には、記録実行部37は、横576ドット、縦26ドットの行バッファー45を形成する。行バッファー45の横方向のサイズは、最大印字領域幅に応じて規定され、縦方向のサイズは、フォントA’の縦方向のサイズに応じて規定される。
次いで、記録実行部37は、実際印字領域幅を「546ドット」に設定すると共に、左マージンを「15ドット」に設定する(ステップSA6)。
上述したように、行バッファー45の横方向のサイズは、最大印字領域幅が576ドットであるため、これに対応して576ドットとなっている。この行バッファー45の横方向のサイズは固定値である。
ここで、仮に、ステップSA5で形成した行バッファー45に、そのまま、フォントA’のフォントデータを展開したとする。この場合、行バッファー45にフォントA’のフォントデータを44個(576/13=44.3・・・)展開できることとなり、これに伴って、記録可能桁数が44桁となる。この場合、交換前プリンター11aによってフォントAの文字を記録したときの記録可能桁数(42桁)と、交換後プリンター11によってフォントA’の文字を記録したときの記録可能桁数(44桁)との間に乖離が生じる結果となる。上述したように、記録可能桁数の乖離は、文字列の改行位置の相違を生じたり、また、行における文字列の位置のバランスの相違を生じたりするため、記録結果の近似性を阻害する要因となる。
これを踏まえ、本実施形態では、フォントA’のフォントデータを行バッファー45に展開する場合、記録実行部37は、行バッファー45において、フォントA’のフォントデータが42個展開可能なサイズの領域を、実際にフォントデータが展開可能な領域(以下、「展開可能領域」という。)として設定する。そして、この展開可能領域のサイズ(横方向のドット数)が、実際印字領域幅である。ここで、フォントA’の横方向のサイズは13ドットであるため、フォントA’に係る実際印字領域幅は、546ドット(13×42)である。これを踏まえ、ステップSA6において、記録実行部37は、実際印字領域幅を546ドットに設定する。実際印字領域幅を546ドットと設定することにより、図7(A)に示すように、展開可能領域に展開可能なフォントA’のフォントデータの数が42個となり、これに伴って、実際のフォントA’に係る文字の記録可能桁数(以下、「実際記録可能桁数」という。)は、42桁となる。
左マージンは、行バッファー45の中央部に展開可能領域が配置されるような値とされる。行バッファー45の中央部に展開可能領域が配置されるようにすることにより、行バッファー45に展開されたデータに基づいて文字列の記録を行った場合に、感熱ロール紙24における偏った位置に文字列が記録されることを防止できるからである。
以上を踏まえ、ステップSA6において、記録実行部37は、左マージンを15ドットに設定する。これにより、図7(A)に示すように、行バッファー45の中央部に展開可能領域が配置されることとなる。
次いで、記録実行部37は、実際印字領域幅を「560ドット」に設定すると共に、左マージンを「8ドット」に設定する(ステップSA8)。
ステップSA8において、実際印字領域幅が「560ドット」に設定されるのは、以下の理由による。
すなわち、交換前プリンター11aにおけるフォントBの記録可能桁数が56桁であることを踏まえ、記録実行部37は、交換後プリンター11におけるフォントB’(横10×縦19)の実際記録可能桁数を56桁とすべく、実際印字領域幅を560ドット(10×56)とする。また、記録実行部37は、行バッファー45の中央部に展開可能領域配置すべく左マージンが「8ドット」に設定する。
このように、実際印字領域幅、及び、左マージンが設定されることにより、図7(B)に示すように、行バッファー45に形成された展開可能領域に展開可能なフォントB’のフォントデータの数が56個となり、これに伴って、実際のフォントB’に係る文字の実際記録可能桁数は、56桁となる。また、行バッファー45の中央部に展開可能領域が配置されることとなる。
ステップSA9において、記録実行部37は、フォント指定コマンドFCが指定するフォントに対応するフォントテーブルを参照する。具体的には、フォント指定コマンドFCが指定するフォントがフォントAである場合は、このフォントAに対応するフォントA’に係るフォントA’テーブル40を参照し、また、フォント指定コマンドFCが指定するフォントがフォントBである場合は、このフォントBに対応するフォントB’に係るフォントB’テーブル41を参照する。
次いで、記録実行部37は、処理対象文字をフォントデータに変換する(ステップSA10)。上述したように、フォントテーブルに記憶された各フォントデータと、各文字のアスキーコードとの対応関係を示す情報が記憶部35に記憶されているため、記録実行部37は、当該情報に基づいて、処理対象文字をフォントデータに変換する。
次いで、記録実行部37は、変換したフォントデータを行バッファー45に展開する(ステップSA11)。
次いで、記録実行部37は、文字列記録指示コマンドMCが指定する文字列を構成する文字の全てが処理対象文字となったか否かを判別する(ステップSA12)。
文字列を構成する文字に1つでも処理対象文字となっていない文字が存在する場合(ステップSA12:NO)、記録実行部37は、処理手順をステップSA2へ戻す。
一方、文字列を構成する全ての文字が処理対象文字となった場合(ステップSA12:YES)、記録実行部37は、行バッファー45に展開されているデータに基づいて、プリントエンジン33を制御して、感熱ロール紙24への画像の記録を実行し(ステップSA13)、処理を終了する。
ここで、行バッファー45がフルとは、行バッファー45に形成された展開可能領域にこれ以上フォントデータを展開できない状態のことを言う。上述したように、フォント指定コマンドFCが指定するフォントがフォントAの場合は、展開可能領域のサイズ(実際印字領域幅)は546ドットに設定されるため、フォントA’のフォントデータが42個展開された段階でフルとなり、また、フォント指定コマンドFCが指定するフォントがフォントBの場合は、展開可能領域のサイズ(実際印字領域幅)は560ドットに設定されるため、フォントB’のフォントデータが56個展開された段階でフルとなる。
行バッファー45がフルではない場合(ステップSA14:NO)、記録実行部37は、処理手順をステップSA9へ移行し、行バッファー45への処理対象文字に係るフォントデータの展開に係る処理を実行する。
一方、行バッファー45がフルの場合(ステップSA14:YES)、記録実行部37は、行バッファー45に展開されているデータに基づいて、プリントエンジン33を制御して、感熱ロール紙24への画像の記録を実行する(ステップSA15)。
ステップSA15では、フォント指定コマンドFCが指定するフォントがフォントAの場合は、42桁分のフォントA’に係る文字が記録されることとなり、また、フォント指定コマンドFCが指定するフォントがフォントBの場合は、56桁分のフォントB’に係る文字が記録されることとなる。
次いで、記録実行部37は、行バッファー45消去する(ステップSA16)。
次いで、記録実行部37は、実際印字領域幅の設定を解除すると共に、左マージンの設定を解除し(ステップSA17)、処理手順をステップSA3へ移行する。以後、再び、行バッファー45の形成、及び、行バッファー45へのフォントデータの展開が、順次、実行されることとなる。
これによれば、ホストコンピューター10から文字列記録指示コマンドMCを受信した場合、実際印字領域幅を調整することにより、記録可能桁数を調整した上で、当該文字列に対応するフォントデータに基づいて記録を行うため、交換の前後で記録可能桁数を一致させることが可能となる。特に、ホストコンピューター10が送信する制御コマンドの内容を変更することなく、交換後プリンター11側で、自動で、記録可能桁数の調整行う構成のため、記録可能桁数を一致させるためにホストコンピューター10に何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
これによれば、プリンターの交換の前後でホストコンピューター10からプリンターに送信する制御コマンドの内容を変更することなく、交換の前後で、記録可能桁数を一致させることができる。特に、記録可能桁数を一致させるためにホストコンピューター10に対して何らかの改変を加えたり、記録に係る各種設定を調整したりする必要がない。
これにより、行バッファー45に展開されたデータに基づいて文字列の記録を行った場合に、感熱ロール紙24における偏った位置に文字列が記録されることを防止できる。
例えば、上述した実施形態では、交換前プリンター11a、及び、交換後プリンター11について、記録解像度、及び、フォンデータのフォントサイズの双方が異なる場合を例にして発明を説明した。しかしながら、記録解像度、及び、フォンデータのフォントサイズのいずれか一方が異なる場合であっても、本願発明を適用可能である。すなわち、記録解像度の相違、又は、フォントデータのフォントサイズの相違を反映して、実際印字領域幅を調整し、実際記録可能桁数を調整することにより、交換の前後で、記録可能桁数を一致させることができ、記録結果を近似させることが可能となる。
また、上述した実施形態では、交換後プリンター11自体が制御部30を備えていたが、例えば、制御部30の機能を、交換後プリンター11に外部接続される別の装置に持たせるようにしても良い。
また、本願発明は、サーマル式のプリンターに限らず、インクジェット式プリンター、ドットインパクト式プリンター、レーザープリンター、熱昇華型プリンター等の任意の形式のプリンターに適用可能である。また、ATMにおけるプリンター等、他の装置に組み込まれるプリンターであってもよい。また、CDのレーベル面や、DVDのレーベル面等の紙以外の媒体に記録するものでもよい。
また、本願発明を適用可能なプログラムは、ホストコンピューター10に搭載されるプリンタードライバーに含むものであってもよい。
また、上記のフローチャートの各ステップを実行するプログラムを、交換後プリンター11の外部の記憶媒体に記憶させたものを読み出して、制御部30により実行させることもできる。
Claims (4)
- 記録紙の幅方向に第1のフォントサイズの第1のフォントデータを記憶する記憶部と、
前記記録紙の幅方向に前記第1のフォントサイズと異なる第2のフォントサイズの第2のフォントデータを指定するコマンド及び1又は複数の文字を有する文字列の記録を指示するコマンドを含む制御コマンドを受信する受信部と、
前記受信部で前記制御コマンドを受信した場合、設定された印字領域幅に前記第1のフォントデータに基づいて記録する記録実行部と、を備え、
前記記録実行部は、前記受信部で前記制御コマンドを受信した場合、前記第1のフォントデータで文字を記録したときの1行における最大記録可能桁数と、前記第2のフォントデータで文字を記録したときの1行における最大記録可能桁数とが同一となるように、前記文字列が記録される行の前記印字領域幅を設定し、設定された前記印字領域幅に前記第1のフォントデータに基づいて記録することを特徴とする記録装置。 - 前記記録実行部は、設定されたマージンにより、前記行の中央部に、設定された前記印字領域幅に係る印字領域を配置する請求項1に記載の記録装置。
- 記録紙の幅方向に第1のフォントサイズの第1のフォントデータを記憶し、
前記記録紙の幅方向に前記第1のフォントサイズと異なる第2のフォントサイズの第2のフォントデータを指定するコマンド及び1又は複数の文字を有する文字列の記録を指示するコマンドを含む制御コマンドを受信し、
前記第1のフォントデータで文字を記録したときの1行における最大記録可能桁数と、前記第2のフォントデータで文字を記録したときの1行における最大記録可能桁数とが同一となるように、前記文字列が記録される行の印字領域幅を設定し、
設定された前記印字領域幅に前記第1のフォントデータに基づいて記録することを特徴とする記録装置の制御方法。 - コンピューターを記録紙の幅方向に第1のフォントサイズの第1のフォントデータを記憶させる記憶手段、前記記録紙の幅方向に前記第1のフォントサイズと異なる第2のフォントサイズの第2のフォントデータを指定するコマンド及び1又は複数の文字を有する文字列の記録を指示するコマンドを含む制御コマンドを受信させる受信手段、及び前記受信手段で前記制御コマンドを受信した場合に設定された印字領域幅に前記第1のフォントデータに基づいて記録させる記録実行手段として機能させるための画像補正プログラムであって、
前記制御コマンドが受信された場合、前記第1のフォントデータで文字を記録したときの1行における最大記録可能桁数と、前記第2のフォントデータで文字を記録したときの1行における最大記録可能桁数とが同一となるように、前記文字列が記録される行の前記印字領域幅を設定させ、設定された前記印字領域幅に前記第1のフォントデータに基づいて記録させることを特徴とする画像補正プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011126614A JP5891610B2 (ja) | 2011-06-06 | 2011-06-06 | 記録装置、記録装置の制御方法、及び、画像補正プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011126614A JP5891610B2 (ja) | 2011-06-06 | 2011-06-06 | 記録装置、記録装置の制御方法、及び、画像補正プログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2012250507A JP2012250507A (ja) | 2012-12-20 |
JP2012250507A5 JP2012250507A5 (ja) | 2014-07-03 |
JP5891610B2 true JP5891610B2 (ja) | 2016-03-23 |
Family
ID=47523771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011126614A Active JP5891610B2 (ja) | 2011-06-06 | 2011-06-06 | 記録装置、記録装置の制御方法、及び、画像補正プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5891610B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6281400B2 (ja) * | 2014-04-23 | 2018-02-21 | セイコーエプソン株式会社 | 印刷装置および印刷装置の印刷方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0511947U (ja) * | 1991-07-31 | 1993-02-19 | 邦希 早坂 | 水平ノズル付薬液容器 |
JP2001250077A (ja) * | 2000-03-03 | 2001-09-14 | Casio Comput Co Ltd | 帳票処理装置、及び、記憶媒体 |
JP5391956B2 (ja) * | 2009-09-15 | 2014-01-15 | セイコーエプソン株式会社 | 記録装置、記録装置の制御方法、及び、プログラム |
JP5532848B2 (ja) * | 2009-11-20 | 2014-06-25 | セイコーエプソン株式会社 | 記録制御装置、制御方法、及び、プログラム |
-
2011
- 2011-06-06 JP JP2011126614A patent/JP5891610B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012250507A (ja) | 2012-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101220629B1 (ko) | 기록 제어 장치 및 기록 제어 방법 | |
JP5909871B2 (ja) | 記録装置 | |
US9098779B2 (en) | Recording control device, control method, and program | |
JP5891610B2 (ja) | 記録装置、記録装置の制御方法、及び、画像補正プログラム | |
JP2012113608A (ja) | 制御装置、記録システム、制御装置の制御方法、及び、プログラム | |
JP5987389B2 (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP5754307B2 (ja) | 制御装置、制御装置の制御方法、及び、プログラム | |
US20190210377A1 (en) | Printer and printer system | |
JP4890984B2 (ja) | 印刷装置および印刷装置の制御方法 | |
JP6682865B2 (ja) | 印刷装置、及び印刷装置の制御方法 | |
JP5760705B2 (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP6387594B2 (ja) | 印刷装置、印刷装置の制御方法、及び、プログラム | |
JP5810616B2 (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP5760375B2 (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP2011251456A (ja) | 印刷システム、入力装置 | |
JP6032334B2 (ja) | 制御装置、及び、記録システム | |
JP2014054846A (ja) | 制御装置、制御装置の制御方法、及び、プログラム | |
JP5906829B2 (ja) | 制御装置、制御装置の制御方法、及び、プログラム | |
JP5222034B2 (ja) | 印刷装置及び印刷装置の制御方法 | |
JP2012096420A (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JPH11167476A (ja) | 印刷処理方法及び装置及び記憶媒体 | |
JP2000355143A (ja) | インクジェット記録装置及び画像形成装置 | |
JP2014050998A (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP2013146865A (ja) | 記録装置、記録装置の制御方法、及び、プログラム | |
JP2011173297A (ja) | 制御装置、制御装置の制御方法、及び、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140519 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140519 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150331 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151020 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151120 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5891610 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |