(57)【要約】【課題】付加画像が付加された文字を表現するフォントデータを登録することなく、付加画像が付加された文字列を記録装置に記録させることができるようにする。【解決手段】ホストコンピューター１１のプリンタードライバー実行部２１は、所定の範囲に付加画像が付加された一行分の文字列をプリンター１２に記録させる場合、当該文字列を示す文字列情報と、文字列が記録される一行における付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、文字列に係るフォントデータと重ねて、付加画像に係るフォントデータを行バッファー４１に展開させ、記録させる制御コマンドを生成し出力する。【選択図】図１
2013114292.tif 000002
【特許請求の範囲】
【請求項１】
フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置であって、
所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、
当該一行に記録すべき当該文字列を示す文字列情報と、
当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、
前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力する記録制御部を備えることを特徴とする制御装置。
【請求項２】
所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、所定のアプリケーションを実行することによって、当該文字列を示す情報と共に、当該文字列において当該付加画像を付加すべき範囲を示す情報を前記記録制御部に出力するアプリケーション実行部をさらに備え、
前記記録制御部は、
前記アプリケーション実行部から入力された各情報に基づいて、
前記文字列情報を生成すると共に、
当該一行に配置される当該文字列と、当該文字列における当該付加画像を付加すべき文字の位置との関係で、当該一行において当該付加画像を付加すべき位置を特定して、前記付加画像情報を生成することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記記録制御部は、
所定の範囲に付加画像が付加された一行分の文字列であって、所定の装飾が施された文字列を前記記録装置に記録させる場合、
当該一行における記録すべき当該文字列を示す前記文字列情報と、
当該一行における当該付加画像の配置状態を示す前記付加画像情報と、
当該所定の装飾を示す装飾情報と、を含む前記制御コマンドであって、
前記文字列情報及び前記装飾情報に基づいて、当該文字列に係るフォントデータを、当該所定の装飾に応じた画像処理を施させて前記バッファーに展開させると共に、
展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報及び前記装飾情報に基づいて、当該付加画像に係るフォントデータを、当該所定の装飾に応じた画像処理を施させて、前記バッファーにおける前記所定の範囲に対応する領域に展開させる前記制御コマンドを生成し、前記記録装置に出力することを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置の制御方法であって、
所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、
当該一行に記録すべき当該文字列を示す文字列情報と、
当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、
前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力することを特徴とする制御装置の制御方法。
【請求項５】
フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置を制御する制御部により実行されるプログラムであって、
前記制御部を、
所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、
当該一行に記録すべき当該文字列を示す文字列情報と、
当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、
前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力する記録制御部として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フォントデータに基づいて記録可能な記録装置に接続可能な制御装置、当該制御装置の制御方法、及び、当該制御装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来、文字を表現する実データ（例えば、ビットマップフォントデータ）であるフォントデータを格納し、接続された制御装置の制御の下、格納したフォントデータに基づいて１又は複数の文字からなる文字列を記録媒体に記録する記録装置が知られている（例えば、特許文献１参照）。
この種の記録装置では、フォントデータに基づいて文字列を記録する際に、取消線等の付加画像を自動で付加して記録する機能を有しているものがある一方、このような機能を有していないものもある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０８−０３４１４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、取消線等の付加画像を自動で付加して記録する機能を有していない記録装置に記録させる場合であっても、付加画像を付加した上で文字列を記録したいとするニーズは現実にある。これを踏まえ、従来は、付加画像が付加された文字を表現するフォントデータを予め記録装置に記憶しておき、制御装置が、記録装置に、付加画像が付加された文字列を記録させる際は、当該フォントデータに基づいて、文字列を記録させていた。しかしながら、この場合、付加画像が付加された文字を表現するフォントデータを、予め記録装置に記憶させる必要があるため、当該フォントデータを登録する作業が煩雑であり、また、記憶すべきフォントデータのデータ量が増大し、記録装置における記憶領域を圧迫する可能性があった。
本発明は、上述した事情に鑑みてなされたものであり、付加画像を自動で付加する機能を有していない記録装置に、付加画像が付加された文字を表現するフォントデータを登録することなく、付加画像が付加された文字列を記録させることができるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置であって、所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、当該一行に記録すべき当該文字列を示す文字列情報と、当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力する記録制御部を備えることを特徴とする。
ここで、文字とは、言語で使用される意味を持った文字のみならず、フォントデータに基づいて記録可能な図形（スペースを含む。）の全てを指す概念である。
また、付加画像とは、いわゆる文字飾りとして文字列と共に記録される画像であり、例えば、取消線、二重取消線、棒線状のアンダーライン、波線状のアンダーライン、文字を囲む枠、強調点等がある。
そして、上記構成によれば、記録制御部は、付加画像が付加された文字列の記録に際し、記録装置に、バッファーに文字列に係るフォントデータを展開させた上で、さらに、これと重ねて、バッファーにおける適切な領域に付加画像に係るフォントデータを展開させる。これにより、バッファー内は、文字列に対して、適切な位置に付加画像が付加された画像に係るデータが展開された状態となる。そして、記録制御部は、当該バッファーに展開されたデータに基づいて記録装置に記録を行わせるため、付加画像が付加された文字列を記録させることが可能である。その際、付加画像が付加された文字を表現するフォントデータを使用しないため、このようなフォントデータを事前に登録する必要がない。
【０００６】
また、本発明は、所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、所定のアプリケーションを実行することによって、当該文字列を示す情報と共に、当該文字列において当該付加画像を付加すべき範囲を示す情報を前記記録制御部に出力するアプリケーション実行部をさらに備え、前記記録制御部は、前記アプリケーション実行部から入力された各情報に基づいて、前記文字列情報を生成すると共に、当該一行に配置される当該文字列と、当該文字列における当該付加画像を付加すべき文字の位置との関係で、当該一行において当該付加画像を付加すべき位置を特定して、前記付加画像情報を生成することを特徴とする。
ここで、記録すべき画像の情報を生成して出力する機能が実装された、所定の規格に準拠したアプリケーションを実行するアプリケーション実行部は、所定の範囲に付加画像が付加された一行分の文字列に関する情報を記録制御部に出力する場合、文字列を示す情報と、当該文字列において付加画像を付加すべき範囲を示す情報と、を出力する構成となっていることがある。そして、上記構成によれば、アプリケーション実行部から入力された各情報に基づいて、的確に、文字列情報、及び、付加画像情報の双方を生成することが可能である。
【０００７】
また、本発明は、前記記録制御部は、所定の範囲に付加画像が付加された一行分の文字列であって、所定の装飾が施された文字列を前記記録装置に記録させる場合、当該一行における記録すべき当該文字列を示す前記文字列情報と、当該一行における当該付加画像の配置状態を示す前記付加画像情報と、当該所定の装飾を示す装飾情報と、を含む前記制御コマンドであって、前記文字列情報及び前記装飾情報に基づいて、当該文字列に係るフォントデータを、当該所定の装飾に応じた画像処理を施させて前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報及び前記装飾情報に基づいて、当該付加画像に係るフォントデータを、当該所定の装飾に応じた画像処理を施させて、前記バッファーにおける前記所定の範囲に対応する領域に展開させる前記制御コマンドを生成し、前記記録装置に出力することを特徴とする。
この構成によれば、バッファーへのフォントデータの展開に際し、文字列に係るフォントデータ、及び、付加画像に係るフォントデータの双方に所定の装飾に応じた画像処理が施された上で各データが重ねてバッファーに展開されるため、当該所定の装飾を適切に反映させて、付加画像が付加された文字列を記録させることが可能である。
【０００８】
また、上記目的を達成するために、本発明は、フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置の制御方法であって、所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、当該一行に記録すべき当該文字列を示す文字列情報と、当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力することを特徴とする。
この制御方法によれば、制御装置は、付加画像が付加された文字列の記録に際し、記録装置に、バッファーに文字列に係るフォントデータを展開させた上で、さらに、これと重ねて、バッファーにおける適切な領域に付加画像に係るフォントデータを展開させる。これにより、バッファー内は、文字列に対して、適切な位置に付加画像が付加された画像に係るデータが展開された状態となる。そして、制御装置は、当該バッファーに展開されたデータに基づいて記録装置に記録を行わせるため、付加画像が付加された文字列を記録させることが可能である。その際、付加画像が付加された文字を表現するフォントデータを使用しないため、このようなフォントデータを事前に登録する必要がない。
【０００９】
また、上記目的を達成するために、本発明は、フォントデータを記憶し、一行分の文字列に係るフォントデータをバッファーに展開し、前記バッファーに展開したフォントデータに基づいて、当該一行分の文字列を記録可能な記録装置に、接続可能な制御装置を制御する制御部により実行されるプログラムであって、前記制御部を、所定の範囲に付加画像が付加された一行分の文字列を前記記録装置に記録させる場合、当該一行に記録すべき当該文字列を示す文字列情報と、当該一行における当該付加画像の配置状態を示す付加画像情報と、を含む制御コマンドであって、前記文字列情報に基づいて当該文字列に係るフォントデータを前記バッファーに展開させると共に、展開した当該文字列に係るフォントデータに重ねて、前記付加画像情報に基づいて、当該付加画像に係るフォントデータを、前記バッファーにおける前記所定の範囲に対応する領域に展開させ、前記バッファーに展開されたデータに基づいて記録させる制御コマンド、を生成し、前記記録装置に出力する記録制御部として機能させることを特徴とする。
このプログラムを実行すれば、制御装置は、付加画像が付加された文字列の記録に際し、記録装置に、バッファーに文字列に係るフォントデータを展開させた上で、さらに、これと重ねて、バッファーにおける適切な領域に付加画像に係るフォントデータを展開させる。これにより、バッファー内は、文字列に対して、適切な位置に付加画像が付加された画像に係るデータが展開された状態となる。そして、制御装置は、当該バッファーに展開されたデータに基づいて記録装置に記録を行わせるため、付加画像が付加された文字列を記録させることが可能である。その際、付加画像が付加された文字を表現するフォントデータを使用しないため、このようなフォントデータを事前に登録する必要がない。
【発明の効果】
【００１０】
本発明によれば、付加画像を自動で付加する機能を有していない記録装置に、付加画像が付加された文字を表現するフォントデータを登録することなく、付加画像が付加された文字列を記録させることができるようになる、という効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】記録システムの機能的構成を示すブロック図である。
【図２】制御コマンドと、制御コマンドに基づいて記録される文字列を示す図。
【図３】ホストコンピューターの動作を示すフローチャートである。
【図４】制御コマンドと、制御コマンドに基づいて記録される文字列を示す図。
【図５】ワークエリアの様子を模式的に示す図である。
【図６】行バッファーの状態を模式的に示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明を適用した実施形態に係る記録システム１の構成を示すブロック図である。
この図１に示すように、記録システム１は、ホストコンピューター１１（制御装置）と、ホストコンピューター１１に対して通信可能に接続されたプリンター１２（記録装置）と、を備えている。
ホストコンピューター１１は、例えば、小売店等の店頭に設置され、売上登録処理及び精算処理を行う販売時点管理システム（ＰＯＳシステム）を搭載したＰＯＳ端末装置であり、取引毎にプリンター１２によってレシートを発行する。レシートを発行するとは、取引における商品の購入に関する情報や、店舗のロゴ等を含む所定の画像が感熱ロール紙に記録された上で、感熱ロール紙が切断されて１つの紙片であるレシートが形成されることをいう。
【００１３】
図１に示すように、ホストコンピューター１１は、制御部１３と、入力部１４と、表示部１５と、インターフェイス部１６（Ｉ／Ｆ）と、記憶部１７と、を備えている。
制御部１３は、ホストコンピューター１１を中枢的に制御するものであり、各種プログラムを実行するＣＰＵ、ＣＰＵにより実行される基本制御プログラム等を記憶するＲＯＭ、ＣＰＵが実行するプログラムや処理対象のデータ等を一時的に記憶するワークエリアを形成するＲＡＭ、その他周辺回路等を備えている。制御部１３は、ＰＯＳアプリケーション実行部２０と、プリンタードライバー実行部２１と、を備えているが、これらについては、後述する。
入力部１４は、オペレーターに操作される売上登録キー等の各種キーを備えたキーボードや、マウス、バーコードスキャナー、カードリーダー等の入力デバイスが接続され、入力デバイスに対する操作を検出し、操作信号として制御部１３に出力する。
表示部１５は、液晶ディスプレイ等の表示パネルを備え、制御部１３の制御の下、売上登録処理及び精算処理の処理内容等の各種情報を表示パネルに表示する。
インターフェイス部１６（Ｉ／Ｆ）は、制御部１３の制御の下、プリンター１２との間で通信規格に準拠した通信を行う。
記憶部１７は、ハードディスクや、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に、不揮発的に記憶する。
【００１４】
また、プリンター１２（記録装置）は、ホストコンピューター１１の制御に従って、ロール状に巻かれた感熱ロール紙を、搬送機構（不図示）により搬送しつつ、この感熱ロール紙の記録面にラインサーマルヘッド３４によって熱を与えることにより文字や画像を記録し、カッターユニット３５により所定の位置で感熱ロール紙を切断することによってレシートを発行するサーマルラインプリンターである。
図１に示すように、プリンター１２は、プリンター側制御部３０と、インターフェイス部３１と、プリントエンジン３２と、プリンター側記憶部３３と、を備えている。
プリンター側制御部３０は、プリンター１２の各部を中枢的に制御するものであり、上述した制御部１３と同様、ＣＰＵや、ＲＯＭ、ＲＡＭその他の周辺回路を備えている。
インターフェイス部３１は、プリンター側制御部３０の制御の下、ホストコンピューター１１との間で、通信規格に準拠した通信を行う。
プリントエンジン３２は、プリンター側制御部３０の制御の下、用紙端センサーや用紙残量センサー等の各種センサーの検出値を監視しながら、ラインサーマルヘッド３４のほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、上述したカッターユニット３５が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。
プリンター側記憶部３３は、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発的に記憶する。記憶部１７に記憶される各データについては、後述する。
【００１５】
次いで、ＰＯＳアプリケーション実行部２０（アプリケーション実行部）、及び、プリンタードライバー実行部２１（記録制御部）の説明を通して、１つのレシートを発行する際の記録システム１の基本的な動作について説明する。
ＰＯＳアプリケーション実行部２０は、ホストコンピューター１１に予めインストールされたＰＯＳアプリケーションを実行することにより、取引毎に、例えば所定のサーバーにアクセスする等して、取引において購入された商品を示す情報や、商品の単価を示す情報、購入金額を示す情報等のレシートに記載すべき情報を取得し、取得した情報に基づいてレシートに記録すべき画像に係る画像情報を生成し、プリンタードライバー実行部２１に出力する。
プリンタードライバー実行部２１は、ホストコンピューター１１に予めインストールされたプリンタードライバーを実行することにより、ＰＯＳアプリケーション実行部２０から入力された画像情報に基づいて、プリンター１２のコマンド仕様に対応した制御コマンドを生成し、プリンター１２に出力する。この制御コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、ラインサーマルヘッド３４を駆動させて画像を記録させるコマンド、カッターユニット３５に感熱ロール紙を切断させるコマンド等が含まれている。
制御コマンドが入力されたプリンター側制御部３０は、制御コマンドに従って、プリントエンジン３２を制御して、レシートの発行に係る各種動作を実行する。
【００１６】
上記のＰＯＳアプリケーション、及び、プリンタードライバーは、ＵＰＯＳ（UnifiedPOS）の規格に準拠したプログラムとなっており、プリンタードライバーには、ＰＯＳアプリケーションと、プリンタードライバーとの間のソフトウェア的なインターフェイスとして機能するプログラム（いわゆるコントロールオブジェクト）が実装されている。ＰＯＳアプリケーション実行部２０とプリンタードライバー実行部２１との間での情報の受け渡しは、ＵＰＯＳの規格に準拠して、例えば、引数を介したデータの受け渡しや、共通して使用する変数、パラメーターの設定という形で行われる。
【００１７】
次いで、プリンター１２によって感熱ロール紙に一行の文字列を記録する際の、記録システム１を構成するホストコンピューター１１、及び、プリンター１２の動作について説明する。
以下の説明では、図２のＡに示すように、感熱ロール紙の一行に、Ａ〜Ｇのアルファベットからなる文字列（以下、適宜、文字列「Ａ〜Ｇ」と表現する。）を記録する場合を例にして、記録システム１の動作について説明する。
文字列「Ａ〜Ｇ」の記録に際し、まず、ホストコンピューター１１のＰＯＳアプリケーション実行部２０は、少なくとも、記録すべき文字列（本例では、文字列「Ａ〜Ｇ」）を示す情報、及び、文字列に施すべき装飾を示す情報を含む画像情報を、プリンタードライバー実行部２１に出力する。文字列は、所定の文字コード（例えば、アスキーコードや、Ｕｎｉｃｏｄｅ）で表現された文字の組み合わせによって構成されている。また、「装飾」とは、感熱ロール紙に記録する文字列に対して描画に関する何らかの処理を行うことを意味し、例えば、文字列の拡大や、文字列の位置の移動（左寄せ、中央寄せ、右寄せ等）、縮小、回転、強調、太字化等が装飾に該当する。
本例では、文字列に対して、その大きさを基準の大きさの２倍とする装飾を施すものとする。
上述したように、ＰＯＳアプリケーション実行部２０と、プリンタードライバー実行部２１との間では、ＵＰＯＳの規格に準拠して情報の受け渡しを行う構成となっており、上記ＰＯＳアプリケーション実行部２０からプリンタードライバー実行部２１への画像情報の出力は、ＵＰＯＳの規格に準拠して、例えば、各情報が引数として所定の変数に格納される等の手段によって行われる。従って、情報を含むデータ自体も、ＵＰＯＳの規格に準拠したフォーマットとなっている。
【００１８】
次いで、プリンタードライバー実行部２１は、ＰＯＳアプリケーション実行部２０から入力された画像情報に基づいて、プリンター１２のコマンド体系に準拠した、以下のような制御コマンドを生成する。
すなわち、図２のＢに示すように、プリンタードライバー実行部２１は、制御コマンドとして、文字列装飾コマンドＭＳ１、及び、文字列記録指示コマンドＭＫ１を生成する。
文字列装飾コマンドＭＳ１は、記録すべき文字列（本例では、文字列「Ａ〜Ｇ」）に施すべき装飾（本例では、文字列の大きさを基準の大きさの２倍とすること）を指定するコマンドである。
文字列記録指示コマンドＭＫ１は、文字列「Ａ〜Ｇ」を記録することを指示するコマンドである。本実施形態では、文字列記録指示コマンドは、命令コードと、記録すべき文字列と、が組み合わされて構成されている。例えば、文字列記録指示コマンドＭＫ１は、「ＸＸＸ“ＡＢＣＤＥＦＧ”」（ＸＸＸは、文字列を記録することを指示する命令コード。また、ダブルクォーテーション内は、記録すべき文字列。）という構成となっている。
【００１９】
上記の文字列装飾コマンドＭＳ１、及び、文字列記録指示コマンドＭＫ１を生成後、プリンタードライバー実行部２１は、これら制御コマンドをプリンター１２に出力する。
当該制御コマンドが入力されたプリンター１２のプリンター側制御部３０は、プリントエンジン３２を制御して、文字列装飾コマンドＭＳ１により指定された装飾を施した上で、文字列記録指示コマンドＭＫ１により指定された文字列を感熱ロール紙に記録する。これにより、図２のＡに示すように、感熱ロール紙の一行に、文字列「Ａ〜Ｇ」が記録される。
詳述すると、プリンター１２のプリンター側記憶部３３には、フォントテーブル４０が記憶されている。フォントテーブル４０とは、フォントデータを集合して記憶するテーブルであり、また、フォントデータとは、文字を感熱ロール紙に記録可能な態様で表現する実データのことである。本実施形態では、フォントデータの態様は、ビットマップフォントデータである。フォントデータの態様としては、ビットマップデータのほか、スケイラブルフォントデータや、ベクトルフォントデータ、アウトラインフォントデータ等がある。
なお、本実施形態では、感熱ロール紙に記録する「文字」は、言語で使用される意味を持った文字のみならず、プリンター側記憶部３３に記憶されたフォントデータに基づいて感熱ロール紙に記録可能な図形（スペースを含む）の全てを指す概念である。
所定の文字コードで表現された文字のそれぞれは、フォントテーブル４０に記憶されたいずれかのフォントデータと対応関係にあり、この対応関係を示す情報がプリンター側記憶部３３に予め記憶されている。例えば、文字コードがアスキーコードである場合において、各アスキーコードと、各アスキーコードに対応するフォントデータの位置（フォントテーブル４０における記憶領域のアドレス）とが対応づけて記憶されたテーブルがプリンター側記憶部３３に予め記憶されている。
【００２０】
そして、文字列装飾コマンドＭＳ１、及び、文字列記録指示コマンドＭＫ１に基づいて文字列「Ａ〜Ｇ」を記録する際、プリンター側制御部３０は、フォントテーブル４０、及び、文字コードとフォントデータとの対応関係を示す情報を参照して、当該文字列「Ａ〜Ｇ」を構成する各文字（Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ）のフォントデータを取得する。
次いで、プリンター側制御部３０は、取得した各フォントデータに対して、文字列装飾コマンドＭＳ１が指定する装飾（本例では、文字の拡大に係る装飾）に対応する画像処理を施した上で、各フォントデータを、順次、行バッファー４１（バッファー）に展開する。
行バッファー４１とは、プリンター側制御部３０のＲＡＭの所定の記憶領域に形成された、一行分のプリントバッファーのことである。本実施形態では、文字列の記録は、行ごとに行われる構成となっており、感熱ロール紙上のある一行に文字列を記録する場合、当該文字列を構成する全ての文字のフォントデータが、行バッファー４１に展開された上で記録が行われる。
行バッファー４１に文字列「Ａ〜Ｇ」を構成する各文字（Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ）の装飾に係る画像処理後のフォントデータを展開した後、プリンター側制御部３０は、行バッファー４１に展開されているデータ（＝文字列を記録すべき行全体の画像のイメージデータ）に基づいて、ラインサーマルヘッド３４、その他の機構を制御して、文字列「Ａ〜Ｇ」を、感熱ロール紙に記録する。
【００２１】
ところで、文字列を記録する場合に、文字列に付加画像を付加することが求められる場合がある。付加画像とは、いわゆる文字飾りとして文字列と共に記録される画像であり、例えば、取消線、二重取消線、棒線状のアンダーライン、波線状のアンダーライン、文字を囲む枠、強調点等がある。
そして、従来は、付加可能な付加画像の種類毎に、当該付加画像が付加された文字を表現するフォントデータが、文字ごとに登録され、付加画像が付加された文字を記録する場合、当該フォントデータを利用して、記録が行われていた。
例えば、記録システム１について、文字列に対して取消線を付加することができるとされているものとする。この場合、事前に、取消線が付加された文字を表現するフォントデータが、文字ごとに、プリンター１２に登録される。そして、取消線が付加された文字列を記録させる場合、ホストコンピューター１１は、文字列を構成する文字のうち、取消線を付加すべき文字については、文字を表現するフォントデータに代えて、取消線が付加された文字を表現するフォントデータを使用させてプリンター１２に記録を行わせ、これにより、適切な範囲に取消線が付加された文字列を記録させていた。しかしながら、この従来のやり方では、付加画像が付加された文字に係るフォントデータを予めプリンター１２に記憶させる必要があるため、当該フォントデータを登録する作業が煩雑であり、また、記憶すべきフォントデータのデータ量が増大し、プリンター１２のプリンター側制御部３０における記憶領域を圧迫する可能性があった。
以上を踏まえ、本実施形態に係るホストコンピューター１１は、以下のようにして、プリンター１２に付加画像が付加された文字列を記録させ、これにより、付加画像が付加された文字に係るフォントデータの登録を回避している。
【００２２】
図３は、付加画像が付加された文字列をプリンター１２に記録させる際の、ホストコンピューター１１の動作、特に、プリンタードライバー実行部２１（記録制御部）の動作を示すフローチャートである。
以下では、図４のＡに示すように、文字列「Ａ〜Ｇ」のうち、文字「Ｃ」、「Ｄ」、「Ｅ」に対して付加画像としての取消線が付加された文字列（以下、適宜、取消線付文字列「Ａ〜Ｇ」という。）を記録する場合を例にして説明する。
取消線付文字列「Ａ〜Ｇ」をプリンター１２に記録させる際、まず、ＰＯＳアプリケーション実行部２０からプリンタードライバー実行部２１に、画像情報として、少なくとも以下の３つの情報が入力される（ステップＳＡ１）。
画像情報Ｇ１：記録すべき文字列を示す情報、及び、当該文字列において特定の付加画像（本例では、取消線）を付加すべき範囲を示す情報。
画像情報Ｇ２：文字列に施すべき装飾を示す情報。以下の説明では、文字列に対して、その大きさを基準の大きさの２倍とする装飾を施すものとする。
そして、画像情報Ｇ１では、具体的には、「ＡＢ ＃ｓｔＣ ＣＤＥ ＃！ｓｔＣ ＦＧ」という文字列が示されている。上記文字列のうち「＃ｓｔＣ」は、付加すべき付加画像の種類が取消線であること、及び、取消線の付加を開始すべき位置を示す文字列であり、文字列中にこの「＃ｓｔＣ」があった場合、この「＃ｓｔＣ」の直後に記述されている文字（本例では、文字「Ｃ」）から取消線の付加を開始することとされている。また、上記文字列のうち「＃！ｓｔＣ」は、取消線の付加を終了すべき位置を示す文字列であり、文字列中にこの「＃！ｓｔＣ」があった場合、この「＃！ｓｔＣ」の直前に記述されている文字（本例では、文字「Ｅ」）にて取消線の付加を終了することとされている。画像情報Ｇ１の記述方式は、ＵＰＯＳの規格に準拠したものである。
なお、取消線以外の付加画像についても、上述した、「＃ｓｔＣ」、及び、「＃！ｓｔＣ」と同一の機能の文字列が用意されており、ある１の種類の付加画像に係る画像情報Ｇ１は、当該１の種類の付加画像について用意された文字列が利用されて、生成される。
また、画像情報Ｇ２では、文字列に施すべき装飾（本例では、文字列を基準の大きさの２倍とすること）が具体的に示されている。
【００２３】
次いで、プリンタードライバー実行部２１は、画像情報Ｇ１を分析し、一行に記録すべき文字列を示す文字列情報、及び、当該一行における取消線（付加画像）の配置状態を示す付加画像情報、を生成する（ステップＳＡ２）。
詳述すると、プリンタードライバー実行部２１は、画像情報Ｇ１「ＡＢ ＃ｓｔＣ ＣＤＥ ＃！ｓｔＣ ＦＧ」を分析して、取消線を除いた記録すべき文字列（文字列）を判別する。すなわち、プリンタードライバー実行部２１は、画像情報Ｇ１「ＡＢ ＃ｓｔＣ ＣＤＥ ＃！ｓｔＣ ＦＧ」から「＃ｓｔＣ」及び「＃！ｓｔＣ」を取り除くことにより、記録すべき文字列が、「ＡＢＣＤＥＦＧ」であることを判別する。そして、プリンタードライバー実行部２１は、判別結果に基づいて、一行に記録すべき文字列を示す文字列情報として、文字列「Ａ〜Ｇ」を生成する。
次いで、プリンタードライバー実行部２１は、以下のようにして、付加画像情報を生成する。
【００２４】
図５は、付加画像情報を生成する際のプリンタードライバー実行部２１の動作を説明するため、ＲＡＭのワークエリアの内の様子を模式的に示す図である。図５は、説明の便宜を考慮して、概念的にワークエリアの様子を示している。
付加画像情報の生成に際し、プリンタードライバー実行部２１は、文字列を記録すべき一行に配置された当該文字列と、当該文字列における当該付加画像を付加すべき文字の位置との関係で、当該一行において当該付加画像を付加すべき位置を特定する。
すなわち、プリンタードライバー実行部２１は、画像情報Ｇ１に基づいて、文字列「Ａ〜Ｇ」を構成する各文字のうち、付加画像としての取消線を付加すべき文字（本例では、Ｃ、Ｄ、Ｅ）を特定する。次いで、プリンタードライバー実行部２１は、当該一行に文字列「Ａ〜Ｇ」を配置したとした場合に、当該文字列「Ａ〜Ｇ」を構成する文字のうち、文字「Ｃ」、「Ｄ」、「Ｅ」に対応する位置が、当該一行において付加画像を付加すべき位置であることを特定する。
次いで、プリンタードライバー実行部２１は、図５に示すように、文字列「Ａ〜Ｇ」に対応させて、取消線を付加しない文字（本例では、Ａ、Ｂ、Ｆ、Ｇ）に対応する位置にスペースが配置され、取消線を付加する文字（本例では、Ｃ、Ｄ、Ｅ）に対応する位置に取消線が配置された文字列「△△−−−△△」（△は、スペース。以下同様。）を生成する。
このようにして生成された文字列「△△−−−△△」は、文字列を記録すべき一行において、当該文字列に付加すべき取消線（付加画像）の配置状態を示す情報（付加画像情報）である。すなわち、文字列「△△−−−△△」は、当該一行において一、二列目には、取消線が配置されないことをスペースを用いて示し、さらに、当該一行において三、四、及び、五列目には、取消線が配置されていることを示し、さらに、当該一行において六、七列目には、取消線が配置されないことをスペースを用いて示すことにより、当該一行における取消線の配置状態を示している。
以上のように、プリンタードライバー実行部２１は、文字列を記録すべき一行に配置される文字列と、当該文字列における当該付加画像を付加すべき文字の位置との関係で、当該一行において当該付加画像を付加すべき位置を特定し、文字列「△△−−−△△」によって構成される付加画像情報を生成する。
【００２５】
さて、ステップＳＡ２において文字列情報、及び、付加画像情報を生成した後、プリンタードライバー実行部２１は、文字列記録指示コマンドＭＫ２を生成する（ステップＳＡ３）。
この文字列記録指示コマンドＭＫ２の構成は、
「ＸＸＸ“ＡＢＣＤＥＦＧ”＃Ｔｏｐ“△△−−−△△”」
となっている。
以下、文字列記録指示コマンドＭＫ２について詳述する。
【００２６】
上述したように、文字列記録指示コマンドＭＫ２のうち、「ＸＸＸ」は、行バッファー４１に展開したデータに基づいて画像を記録することを指示する命令に係る命令コードである。
文字列記録指示コマンドＭＫ２のうち、「“ＡＢＣＤＥＦＧ”」は、一行に記録すべき文字列を示す文字列情報であり、また、「“△△−−−△△”」は、当該一行における取消線（付加画像）の配置状態を示す付加画像情報である。
そして、文字列記録指示コマンドＭＫ２では、文字列「Ａ〜Ｇ」と、文字列「△△−−−△△」とが、「＃Ｔｏｐ」を介して接続されている。「＃Ｔｏｐ」は、行バッファー４１へのデータの展開に際し、この「＃Ｔｏｐ」の前のダブルクォーテーションで囲まれた文字列（本例では、文字列「Ａ〜Ｇ」）に係るフォントデータを行バッファー４１に展開した後、これと重ねて、この「＃Ｔｏｐ」の後のダブルクォーテーションで囲まれた文字列（本例では、文字列「△△−−−△△」）を構成する文字に係るフォントデータを、行バッファー４１の先頭から、順次、展開させることを示す情報である。
つまり、文字列記録指示コマンドＭＫ２は、文字列「Ａ〜Ｇ」に係るフォントデータを行バッファー４１に展開させると共に、文字列「△△−−−△△」に係るフォントデータを、行バッファー４１の先頭から重ねて展開させた上で、行バッファー４１に展開されたデータに基づいて画像を記録することを指示するコマンドである。
【００２７】
ステップＳＡ３において文字列記録指示コマンドＭＫ２を生成した後、プリンタードライバー実行部２１は、画像情報Ｇ２に基づいて、文字列装飾コマンドＭＳ２を生成する（ステップＳＡ４）。この文字列装飾コマンドＭＳ２は、文字列について、基準の大きさの２倍にする装飾を施すべきことを指示するコマンドである。上述したように、文字列装飾コマンドＭＳ２は、行バッファー４１へのフォントデータの展開に際し、施すべき装飾に対応する画像処理を施した上で展開させることを指示するが、特に、文字列記録指示コマンドＭＫ２において「＃Ｔｏｐ」が使用されている場合は、この「＃Ｔｏｐ」の前後に示された文字列の双方について、装飾に対応する画像処理を施した上で展開させることを指示する。つまり、文字列装飾コマンドＭＳ２は、文字列記録指示コマンドＭＫ１における「＃Ｔｏｐ」の前の文字列「Ａ〜Ｇ」、及び、「＃Ｔｏｐ」の後の文字列「△△−−−△△」の双方について、装飾に対応する画像処理を施した上で展開させることを指示している。
【００２８】
ステップＳＡ４において文字列装飾コマンドＭＳ２を生成した後、プリンタードライバー実行部２１は、この文字列装飾コマンドＭＳ２と、文字列記録指示コマンドＭＫ２とを順次、プリンター１２に出力する（ステップＳＡ５）。
図４のＢでは、ステップＳＡ５で出力されるコマンドの内容を模式的に示している。
【００２９】
さて、ステップＳＡ５においてプリンタードライバー実行部２１から文字列装飾コマンドＭＳ２、及び、文字列記録指示コマンドＭＫ２が入力されたプリンター１２のプリンター側制御部３０は、以下のようにして、行バッファー４１にデータを展開する。
図６は、プリンター側制御部３０が行バッファー４１にデータを展開する際の動作を説明するために、行バッファー４１を模式的に示す図である。
まず、プリンター側制御部３０は、入力された文字列記録指示コマンドＭＫ２に基づいて、文字列「Ａ〜Ｇ」を構成する各文字のフォントデータを特定する。次いで、プリンター側制御部３０は、文字列装飾コマンドＭＳ２に基づいて各フォントデータに施すべき装飾（文字の大きさを基準の２倍とする装飾）に対応する画像処理を施した上で、各フォントデータを、順次、行バッファー４１に展開する。これにより、図６（Ａ）に示すように、行バッファー４１は、文字列「Ａ〜Ｇ」を構成する各文字の画像処理後のフォントデータが展開された状態となる。
次いで、プリンター側制御部３０は、文字列記録指示コマンドＭＫ２に基づいて、当該コマンドにおける「＃Ｔｏｐ」後の文字列「△△−−−△△」について、当該文字列を構成する各文字のフォントデータを特定する。なお、付加可能な付加画像に係るフォントデータは予め登録されている。次いで、プリンター側制御部３０は、文字列装飾コマンドＭＳ２に基づいて各フォントデータに施すべき装飾（文字の大きさを基準の２倍とする装飾）に対応する画像処理を施した上で、各フォントデータを、行バッファー４１の先頭から順次、展開する。
【００３０】
これにより、行バッファー４１において、文字「Ａ」に係るフォントデータが展開された領域に、文字「△」に係るフォントデータが重ねて展開される。フォントデータを重ねて展開するとは、同一領域内に展開される複数のフォントデータについて、各フォントデータが示す文字が重なった画像を示すイメージデータとなるように、各フォントデータを重ね合わせることを言い、例えば、フォントデータが、白黒２値のビットマップデータである場合には、各フォントデータを構成する各画素の論理和をとることを言う。ここで、文字「△」は、スペースであるため、文字「Ａ」に係るフォントデータが展開された領域に、文字「△」に係るフォントデータを展開した場合、文字「Ａ」に係るフォントデータがそのまま展開された状態が維持される。
同様に、行バッファー４１において、文字「Ｂ」に係るフォントデータが展開された領域に、文字「△」に係るフォントデータが重ねて展開される。また、文字「Ｃ」、「Ｄ」、「Ｅ」に係るフォントデータが展開された領域のそれぞれに、文字「−」（付加画像）に係るフォントデータが展開される。ここで、文字「−」には、文字「Ｃ」、「Ｄ」、「Ｅ」と同様の装飾に係る画像処理が施されているため、各文字に対して適切な位置に取消線が付加された状態となる。また、文字「Ｆ」、「Ｇ」に係るフォントデータが展開された領域のそれぞれに、文字「△」に係るフォントデータが展開される。
このようにして文字列「△△−−−△△」に係るフォントデータが展開されることにより、図６（Ｂ）に示すように、行バッファー４１は、文字列「Ａ〜Ｇ」のうち、文字「Ｃ」、「Ｄ」、「Ｅ」について、取消線が付加された画像のイメージデータが展開された状態となる。
プリンター側制御部３０は、行バッファー４１へのデータの展開が終了した後、展開したデータに基づいて、画像の記録を実行する。ここで、記録される画像は、図４のＢに示すように、文字列「Ａ〜Ｇ」のうち、文字「Ｃ」、「Ｄ」、「Ｅ」について、取消線が付加された画像となる。
【００３１】
以上説明したように、本実施形態では、ホストコンピューター１１のプリンタードライバー実行部２１（記録制御部）は、所定の範囲に付加画像たる取消線が付加された取消線付文字列「Ａ〜Ｇ」をプリンター１２に記録させる場合、文字列記録指示コマンドＭＫ２を生成し、プリンター１２に出力する。この文字列記録指示コマンドＭＫ２は、当該一行に記録すべき当該文字列を示す文字列情報（“ＡＢＣＤＥＦＧ”）と、当該一行における取消線の配置状態を示す付加画像情報（“△△−−−△△”）とを含んでおり、文字列「Ａ〜Ｇ」に係るフォントデータを行バッファー４１に展開させると共に、これと重ねて、文字列「△△−−−△△」に係るフォントデータを、行バッファー４１の所定の領域に展開させ、行バッファー４１に展開されたデータに基づいて記録させる制御コマンドである。
これによれば、取消線付文字列「Ａ〜Ｇ」を記録させる際、プリンタードライバー実行部２１は、行バッファー４１に、文字列「Ａ〜Ｇ」の適切な位置に取消線（付加画像）が付加された画像に係るイメージデータを展開させることができるため、取消線付文字列「Ａ〜Ｇ」をプリンター１２に記録させることが可能である。また、行バッファー４１へのデータの展開に際し、付加画像が付加された文字を表現するフォントデータを使用しないため、このようなフォントデータを事前に登録する必要がない。
【００３２】
また、本実施形態では、ＰＯＳアプリケーション実行部２０は、所定の範囲に付加画像が付加された一行分の文字列である、取消線付文字列「Ａ〜Ｇ」をプリンター１２に記録させる場合、ＵＰＯＳの規格に準拠したＰＯＳアプリケーションの仕様に準じて、文字列「Ａ〜Ｇ」を示す情報と共に、文字列「Ａ〜Ｇ」において取消線を付加すべき範囲を示す情報（画像情報Ｇ１）を、プリンタードライバー実行部２１に出力する。
そして、プリンタードライバー実行部２１は、画像情報Ｇ１に基づいて、文字列「Ａ〜Ｇ」を構成する各文字のうち、付加画像としての取消線を付加すべき文字（本例では、Ｃ、Ｄ、Ｅ）を特定し、一行に文字列「Ａ〜Ｇ」を配置したとした場合に、当該文字列「Ａ〜Ｇ」を構成する文字のうち、文字「Ｃ」、「Ｄ」、「Ｅ」に対応する位置が、当該一行において付加画像を付加すべき位置であることを特定する。
次いで、プリンタードライバー実行部２１は、図５に示すように、文字列「Ａ〜Ｇ」に対応させて、取消線を付加しない文字（本例では、Ａ、Ｂ、Ｆ、Ｇ）に対応する位置にスペースが配置され、取消線を付加する文字（本例では、Ｃ、Ｄ、Ｅ）に対応する位置に取消線が配置された文字列「△△−−−△△」を、付加画像情報として、生成する。
これによれば、プリンタードライバー実行部２１は、ＵＰＯＳの規格に準拠してＰＯＳアプリケーション実行部２０から入力される画像情報Ｇ１に基づいて、的確に、一行に記録すべき当該文字列を示す文字列情報と、当該一行における取消線の配置状態を示す付加画像情報（文字列「△△−−−△△」）と、の双方を生成可能である。
【００３３】
また、本実施形態では、プリンタードライバー実行部２１は、文字の大きさを基準の２倍とするという装飾を施した取消線付文字列「Ａ〜Ｇ」をプリンター１２に記録させる場合、文字列記録指示コマンドＭＫ２と併せて、文字列装飾コマンドＭＳ２を生成して、プリンター１２に出力する。
この文字列装飾コマンドＭＳ２は、当該文字列「Ａ〜Ｇ」に係るフォントデータを、当該装飾に応じた画像処理を施させて行バッファー４１に展開させると共に、展開した当該文字列に係るフォントデータに重ねて、文字列「△△−−−△△」に係るフォントデータを、当該装飾に応じた画像処理を施させて、行バッファー４１に展開させることを指示する制御コマンドである。
これによれば、行バッファー４１へのフォントデータの展開に際し、文字列に係るフォントデータ、及び、付加画像に係るフォントデータの双方に所定の装飾に応じた画像処理が施された上で各データが重ねて行バッファー４１に展開されるため、当該所定の装飾を適切に反映させて、付加画像が付加された文字列を記録させることが可能である。
【００３４】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
上述した実施形態では、付加画像の一例として取消線を挙げて発明を説明したが、取消線以外の付加画像についても、本発明を適用して、付加画像が付加された文字に係るフォントデータを登録することなく、文字に付加して記録することが可能であることは、言うまでもない。
また例えば、上述した実施形態では、付加画像情報は、スペースに係る文字と、付加画像に係る文字との組み合わせからなる文字列であったが、付加画像情報の態様はこれに限らず、例えば、付加画像の種類を示す情報と、文字列を構成する文字のうち付加画像を付加すべき文字を指定する情報との組み合わせ等であってもよい。すなわち、付加画像情報は、文字列を記録すべき一行における付加画像の配置状態を示す情報であれば、どのような態様であってもよい。
また例えば、上述した実施形態では、制御装置たるホストコンピューター１１に接続される記録装置は、サーマル式のプリンターであったが、記録装置の記録形式はこれに限らず、インクジェット式、ドットインパクト式等であってもよい。すなわち、フォントデータに基づいて画像を記録可能な記録装置であればよい。
また例えば、図１に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。
また例えば、制御部１３の機能を、ホストコンピューター１１に外部接続される別の装置に持たせるようにしてもよい。
また、外部接続される記憶媒体に記憶させたプログラムを実行することにより、図３で示した各フローチャートの各ステップを実行するようにしてもよい。
【符号の説明】
【００３５】
１…記録システム、１１…ホストコンピューター（制御装置）、１２…プリンター（記録装置）、１３…制御部、２０…ＰＯＳアプリケーション実行部（アプリケーション実行部）、２１…プリンタードライバー実行部（記録制御部）、４１…行バッファー（バッファー）。
【図１】
2013114292.tif 000003
【図２】
2013114292.tif 000004
【図３】
2013114292.tif 000005
【図４】
2013114292.tif 000006
【図５】
2013114292.tif 000007
【図６】
2013114292.tif 000008