(57)【特許請求の範囲】
【請求項１】
ホストコンピュータで使用されるプリンタドライバであって、
オリジナルデータを受信する受信手段と、
メッセージデータを記憶する記憶手段と、
該オリジナルデータと該メッセージデータとを結合して結合データを作成する結合手段と、
該オリジナルデータの受信に基づき、該オリジナルデータと該結合データとをそれぞれ出力する出力手段とを備えることを特徴とするプリンタドライバ。
【請求項２】
該結合データを該プリンタ若しくはホストコンピュータが備えるメモリへ選択的に出力する選択手段を更に備え、
該出力手段は、該オリジナルデータを該ホストコンピュータに接続されたプリンタに出力し、該結合データを該選択手段で選択された出力先に出力することを特徴とする請求項１記載のプリンタドライバ。
【請求項３】
オリジナル印刷及びコピー印刷のそれぞれについてページ単位及びドキュメント単位で用紙切断動作を設定する設定手段を備え、
該切断動作にはフルカットとパーシャルカットを含み、
該出力手段は該オリジナルデータ若しくは該結合データを該設定手段によって設定された用紙切断動作コマンドと共にプリンタへ出力することを特徴とする請求項１記載のプリンタドライバ。
【請求項４】
ホストコンピュータで使用されるプリンタドライバのデータ処理方法であって、
オリジナルデータを受信した後、
該オリジナルデータと予め記憶手段に記憶されたメッセージデータとを結合して結合データを作成し、
該オリジナルデータと該結合データとをそれぞれ出力することを特徴とするプリンタドライバのデータ処理方法。
【請求項５】
ホストコンピュータで使用されるプリンタドライバであって、
オリジナルデータを受信する受信手段と、
メッセージデータを記憶する記憶手段と、
該オリジナルデータと該メッセージデータとを結合して結合データを作成する結合手段と、
該オリジナルデータ印刷時のプリンタ機能を設定するオリジナルデータ設定手段と、
該結合データ印刷時のプリンタ機能、若しくは該結合データのホストコンピュータが備えるメモリへの出力条件を設定する結合データ設定手段と、
該オリジナルデータと、該オリジナルデータ設定手段による設定内容を、該ホストコンピュータに接続されたプリンタに出力するオリジナルデータ出力手段と、
該結合データと、該結合データ設定手段による設定内容を、該プリンタ若しくは該ホストコンピュータが備えるメモリへ選択的に出力する結合データ出力手段とを備えることを特徴とするプリンタドライバ。
【請求項６】
前記オリジナルデータ設定手段によって設定される設定内容と、前記結合データ設定手段によって設定される設定内容はそれぞれ用紙切断動作の設定を含み、
該オリジナルデータ設定手段はオリジナル印刷についてページ単位及びドキュメント単位で該用紙切断動作を設定し、
該結合データ設定手段はコピー印刷についてページ単位及びドキュメント単位で該用紙切断動作を設定し、
該用紙切断動作にはフルカットとパーシャルカットを含むことを特徴とする請求項５記載のプリンタドライバ。
【請求項７】
ホストコンピュータで使用されるプリンタドライバのデータ処理方法であって、
オリジナルデータを受信した後、
該オリジナルデータと予め記憶手段に記憶されたメッセージデータとを結合して結合データを作成し、
該オリジナルデータと、該オリジナルデータ印刷時のプリンタ機能の設定内容を、該ホストコンピュータに接続されたプリンタに出力し、
該結合データと、該結合データ印刷時のプリンタ機能の設定内容、若しくは該結合データの該ホストコンピュータが備えるメモリへの出力条件の設定内容を、該プリンタ若しくは該ホストコンピュータが備えるメモリへ選択的に出力することを特徴とするプリンタドライバのデータ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はプリンタドライバに関し、特に複写印刷可能なプリンタドライバに関する。
【０００２】
【従来の技術】
従来より、ドットマトリックスプリンタに複数枚の感圧紙をセットし、プリンタの打撃印字によって、複数枚の感圧紙に同時に印字が行われるコピー印刷が行われている。例えば、小売店における売上管理でコピー印刷が行われる場合、１枚目はオリジナルレシートとして顧客に渡され、２枚目はジャーナルコピーとして小売店が保管する。通常、２枚複写紙の１枚目と２枚目は用紙の色が異なるため、オリジナルとコピーを容易に識別できる。
【０００３】
一方、サーマルプリンタは高速印字が可能であり、音も静かで信頼度も高く、ドットマトリックスプリンタと比較して利点が多い。また、インクリボンが不要であり、用紙セットも容易なため、ユーザにとって利用しやすいプリンタといえる。
【０００４】
【発明が解決しようとする課題】
しなしながら、サーマルプリンタでは打撃による印字方法ではないために感圧紙を用いた２枚複写紙によるコピー印刷ができない。そのために、用紙を横に２枚並べて印刷を行い、１枚目をオリジナルとして、２枚目をコピーとして使用することも考えられる。しかしこの印刷方法では２倍量の印刷が必要となる。また、用紙を横に並べた分、プリンタサイズも大きくならざるを得ず、実用的でない。そのため、サーマルプリンタは、コピーを作成することが必要な取引においては使用されなかった。
【０００５】
そこで本発明は、２枚複写紙を使用しないでコピー印刷を可能にするプリンタドライバを提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明は、ホストコンピュータで使用されるプリンタドライバであって、オリジナルデータを受信する受信手段と、メッセージデータを記憶する記憶手段と、オリジナルデータとメッセージデータとを結合して結合データを作成する結合手段と、オリジナルデータの受信に基づき、オリジナルデータと結合データとをそれぞれ出力する出力手段とを備えるプリンタドライバを提供している。
【０００７】
かかる構成によれば、プリンタドライバの結合手段が、例えば商品の値段に関するオリジナルデータに、コピーであることを意味するメッセージデータを結合するため、ホストコンピュータにインストールされているアプリケーションやプリンタ等に変更を加えなくても、簡単な操作で所定のメッセージをオリジナルデータに付加して出力することができ、オリジナルとコピーとを明確に区別できる。なお結合手段は、オリジナルデータとメッセージデータとの結合を選択的に行うのが好ましい。このように構成すれば、必要な場合にのみ結合でき、不要な場合には結合を省くことができる。即ち、必要に応じてコピーが作成できる。
【０００８】
請求項２記載の発明は、請求項１記載のプリンタドライバであって、結合データをプリンタ若しくはホストコンピュータが備えるメモリへ選択的に出力する選択手段を更に備え、出力手段は、オリジナルデータをホストコンピュータに接続されたプリンタに出力し、結合データを選択手段で選択された出力先に出力するように構成されるのが好ましい
。
【０００９】
かかる構成によれば、オリジナルデータに基づきオリジナル画像が印刷され、結合データをプリンタへ出力すれば結合データに基づくコピー印刷が行われる。結合データはオリジナルデータにメッセージデータを付加して作成されているので、コピー印刷では、オリジナル画像に加えて、メッセージデータに対応するメッセージ画像が印刷される。また、結合データをメモリに記憶させれば、逐一印刷する必要はなく、必要なときにジャーナルデータとしてまとめて印刷することができる。
【００１０】
請求項３記載の発明は、請求項１記載のプリンタドライバであって、オリジナル印刷及びコピー印刷のそれぞれについてページ単位及びドキュメント単位で用紙切断動作を設定する設定手段を備え、切断動作にはフルカットとパーシャルカットを含み、出力手段はオリジナルデータ若しくは結合データを設定手段によって設定された用紙切断動作コマンドと共にプリンタへ出力するプリンタドライバを提供している。
【００１１】
かかる構成によれば、オリジナルコピー及びコピー印刷について、ページ単位及びドキュメント単位で用紙切断動作を設定できる。切断動作としてフルカットを選択すると、ページ間若しくはドキュメント間で用紙が完全に切断される。一方、パーシャルカットを選択すれば用紙は部分的に切断される。オリジナル印刷とコピー印刷とで切断の態様を変えることで、オリジナルとコピーとを明確に区別することが可能となる。また、請求項４記載の発明は、ホストコンピュータで使用されるプリンタドライバのデータ処理方法であって、オリジナルデータを受信した後、オリジナルデータと予め記憶手段に記憶されたメッセージデータとを結合して結合データを作成し、オリジナルデータと結合データとをそれぞれ出力することを特徴とするプリンタドライバのデータ処理方法を提供している。かかる構成によれば、プリンタドライバが、オリジナルデータにコピーであることを意味するメッセージデータを結合するため、ホストコンピュータにインストールされているアプリケーションやプリンタ等に変更を加えなくても、簡単な操作で所定のメッセージをオリジナルデータに付加して出力することができ、オリジナルとコピーとを明確に区別できる。
【００１２】
【発明の実施の形態】
本発明の実施の形態によるプリンタドライバについて図１乃至図１０に基づき説明する。本実施の形態によるプリンタドライバ５０（図３）は、図１のホストコンピュータ１０にインストールされる印刷制御プログラムであり、このホストコンピュータ１０上で実行される。図１において、ホストコンピュータ１０は周知のＣＰＵ１１、マウス１２、キーボード１３、ＣＲＴ１４、インターフェース１５、ＲＡＭ１６、ハードディスク１７を有し、インターフェース１５を介してプリンタ２０に接続されている。
【００１３】
図２に示されるように、プリンタ２０は、サーマルヘッド２１と、プラテン２３と、オートカッタ２６を備え、連続記録用紙２２にラスタ印刷を行う。プラテン２３は図示しない紙送り機構で回転され、連続記録用紙２２を用紙縦方向Ａに搬送する。ラスタ印刷では、連続記録用紙２２を用紙縦方向Ａに搬送させながら、サーマルヘッド２１の１ドットラインをプラテンの回転に同期させて発熱させることにより、所望の画像が印刷される。オートカッタ２６は、連続記録用紙２２を選択的にフルカット又はパーシャルカットする公知のカッタである。図示しない紙送り機構は順方向及び逆方向に用紙搬送可能であり、サーマルヘッド２１による印刷開始位置や、オートカッタ２６による用紙切断位置を調整することができる。
【００１４】
図３に示されるように、ホストコンピュータ１０には、オペレーティングシステム（ＯＳ）３０、アプリケーション３１、グラフィックデバイスインターフェース（ＧＤＩ）３２、及びユニバーサルプリンタドライバ３３が予めインストールされている。オペレーティングシステム３０としては例えばマイクロソフト社のウインドウズが挙げられる。アプリケーション３１は、例えば図４（ａ）に示すオリジナル画像用のオリジナルデータを作成する。オリジナル画像の具体例としては、購入した商品名とその値段を表示した画像である。ＧＤＩ３２はグラフィックス描画に関連する部分を受け持つモジュールであり、アプリケーション３１で作成されたオリジナルデータに基づきグラフィックスを作成する。
【００１５】
ホストコンピュータ１０にインストールされた本実施の形態におけるプリンタドライバ５０は、ハードディスク１７（図１）に記憶され、必要に応じてＲＡＭ１６上に呼び出されて使用される。なお、後述する各種バッファや変数もＲＡＭ１６に作成される。図３に示されるように、プリンタドライバ５０はユニバーサルプリンタドライバ３３との通信を行う通信モジュール５１を有する。プリンタドライバ５０は更に、ＳＣＶ画像データ５２と、バッファアルゴリズム５３と、画像結合エンジン５４を備える。ＳＣＶ画像データ５２とは、例えば図４（ｂ）のメッセージ画像「Second Copy-Void」（ＳＣＶ画像）に関するデータである。バッファアルゴリズム５３は後述するオリジナル画像データの保存場所を記憶するものである。画像結合エンジン５４は、ＳＣＶ画像データ５２とオリジナル画像データとを結合して、結合画像データを作成する。例えば、図４（ａ）のオリジナル画像に図４（ｂ）のメッセージ画像「Second Copy-Void」（ＳＣＶ画像）を追加して、図４（ｃ）の結合画像を作成する。
【００１６】
ＳＣＶ画像データ５２はＳＣＶ画像に対応する画像データであり、図９に示されるように、各ドットラインに対応する複数のＹ―Ｒｅｌコマンドとラスタデータコマンドからなる。Ｙ−Ｒｅｌコマンドは、対応するドットラインに印刷すべきドットが存在しない場合、つまり空白のドットラインに使用されるコマンドで、用紙搬送（スクロール）を指示するものである。空白ドットラインは複数行連続する場合があるが、Ｙ―Ｒｅｌコマンドには連続する空白ドットラインの行数を示すデータ（以下、「Ｙ―Ｒｅｌコマンド数」と呼ぶ）が付加されている。
【００１７】
一方、ラスタデータコマンドは、対応するドットラインに印刷すべきドットが存在する場合、つまり印刷すべきドットラインに使用されるコマンドであり、対応のドット情報を示す。図９において、各ラスタデータコマンドの長さが異なっているが、この長さは対応するドットライン中、最右端の印刷ドットの位置によって決定される。
【００１８】
また、プリンタドライバ５０には、プロパティオプションが用意されており、ユーザはホストコンピュータ１０のＣＲＴ１４上に表示された図５に示されるようなカスタムプロパティ設定画面６０で種々の設定を行うことができる。カスタムプロパティ設定画面６０は、オリジナルレシート印刷時のプリンタ機能を設定するオリジナルオプショングループ６１と、ジャーナルコピー印刷時のプリンタ機能等を設定するコピーオプショングループ６２に分かれている。オリジナルレシートは例えば顧客に手渡され、ジャーナルコピーは販売者側での売上げ記録として用いられる。
【００１９】
これら２つのオプションは完全に独立しているため、あらゆる組合せに設定することができる。また、各グループ６１、６２には、頁単位でのプリンタ機能を設定するページエンドオプション６１Ａ、６２Ａと、文書単位でのプリンタ機能を設定するドキュメントエンドオプション６１Ｂ、６２Ｂがある。ここで設定されたカスタムオプションに関する情報は、後述のようにカスタムオプションデータとしてプリンタドライバ５０へ送られ、プリンタ２０における印刷に反映される。
【００２０】
ここで、オリジナルレシートは顧客単位で印刷されるものであり、これをドキュメントと呼ぶ。各ドキュメントは１又は複数のページを有することができ、ページは固定長であっても良いし、可変長であってもよい。オリジナルレシートに複数のページを設定した場合には、例えば１ページ目には通常の取引情報等を印刷し、２ページ目には割引情報を印刷すれば、ユーザは２ページ目を切り離して次回の買い物時に割引券として使用することができる。一方、ジャーナルコピーにはオリジナル画像に加えてＳＣＶ画像を選択的に印刷することができる。表１に設定項目と、各項目に対応する選択肢及びその説明を示す。
【００２１】
表１
0003961302.tif 000002
【００２２】
カット位置合わせオプションでは、用紙切断時の用紙位置合わせを設定できる。図２に示されるように、オートカッタ２６はサーマルヘッド２１の用紙搬送方向Ａ下流側に離れて配置されているため、印刷終了後すぐに用紙切断を行うと、印刷部分の途中で用紙切断されてしまうことになる。カット位置合わせ「要」に設定すれば、印刷部分を全てオートカッタ２６の用紙搬送方向Ａ下流側に移動させた後に用紙切断を行うので、印刷部分の途中で用紙が切断されるのを防止することができる。
【００２３】
切断動作オプションでは、ページエンド及びドキュメントエンドにおける用紙の切断動作を選択する。ここでは、用紙を完全に切断する「フルカット」、部分的に切断する「パーシャルカット」、又は全く切断を行わない「カット不要」を選択できる。用紙逆送りオプションでは、用紙切断後における用紙逆送りの要否を設定できる。用紙が切断された後に直ちに印刷を開始すると用紙先端部分に余白が生じるが、用紙を巻き戻して次の印刷開始位置を調節すれば、余分な空白が生じるのを防止できる。
【００２４】
また、コピーオプショングループ６２では更に、コピー出力オプションとＳＣＶ画像オプションを設定できる。コピー出力オプションとしては、「印刷」、 「保存」、 「印刷＋保存」のいずれかを選択できる。「印刷」を選択すると、オリジナルレシートの印刷後、すぐにジャーナルコピー印刷が実行される。「保存」を選択すると、オリジナルレシートの印刷後すぐにはジャーナルコピーは印刷されず、ジャーナルコピー用の画像データがジャーナルファイルに記憶される。このジャーナルファイルは所定の時間（例えば１日或いは１週間、又は用紙長さ分）保管されるので、例えば一日の売上げの集計時等、ユーザが所望するときにまとめて印刷することができる。「印刷＋保存」を選択すると、オリジナルレシート印刷後、ジャーナルコピー用の画像データがジャーナルファイルに記憶されると共に、ジャーナルコピー印刷が実行される。
【００２５】
ＳＣＶ画像オプションで「ＳＣＶ有り」を選択すると、図４（ｃ）に示されるようにジャーナルコピーの左端垂直方向に「Second Copy - Void」と印刷される。このようにすれば、オリジナルレシートとジャーナルコピーを容易に識別できる。また、仮に誤ってジャーナルコピーが第三者に渡ってしまっても、これが悪用されるのを防ぐことができる。
【００２６】
次に、オリジナルレシート及びジャーナルコピーの作成について説明する。図６はオリジナルレシート及びジャーナルコピーの作成処理を示すフローチャートである。
【００２７】
まず、アプリケーション３１で、取引情報等を表すオリジナルデータを作成する（Ｓ１０）。これは図４（ａ）のオリジナル画像に対応するデータである。次に、ＧＤＩ３２はオリジナルデータに基づきグラフィックスを作成する（Ｓ２０）。ここではテキストもグラフィックスとして扱われる。グラフィックスはユニバーサルプリンタドライバ３３で特定のプリンタ言語に変換され、オリジナル画像データが作成される（Ｓ３０）。作成されたオリジナル画像データは他のコマンドと共にデータフローとしてプリンタドライバ５０へ順次出力され（Ｓ４０）、プリンタドライバ処理が実行される（Ｓ５０）。なお、ここで作成されたオリジナル画像データは、図９に示されるように、ＳＣＶ画像データ同様、複数のＹ―Ｒｅｌコマンドとラスタデータコマンドからなる画像データである。
【００２８】
Ｓ５０で行われるプリンタドライバ処理について、図７、図８のフローチャートを参照して説明する。プリンタドライバ処理は、プリンタドライバ５０にユニバーサルプリンタドライバ３３からのデータ入力があると実行される。入力されるデータには、印刷部数を示すデータと、図５の画面で設定されたカスタムオプションデータと、オリジナル画像データと、各種コマンドデータが含まれる。各データの先頭には、各データのメッセージタイプを示す識別データが付加されているので、プリンタドライバ５０はこの識別データを参照して、各データのメッセージタイプを識別することができる。ここで印刷部数とはオリジナルレシートとジャーナルコピーの合計印刷部数をいい、ユーザが任意に設定できる。通常はオリジナルレシートとジャーナルコピーを一部ずつ印刷するので、ここでは印刷部数として「２」が設定されているものとする。
【００２９】
まず、ユニバーサルプリンタドライバ３３からデータ入力があると（Ｓ１０１）、プリンタドライバ５０は識別データを参照して入力データのメッセージタイプを識別し（Ｓ１０２）、識別したメッセージタイプに応じてＳ１０３乃至Ｓ１０９のいずれかの処理を行う。表２に識別データとメッセージタイプの対応関係を示す。
表２
0003961302.tif 000003
通常、ユニバーサルプリンタドライバ３３からのデータは所定の順序で入力されるので、本例でもこの順序でデータ入力があったものと仮定して説明する。
【００３０】
まず、印刷部数を示す部数データが入力されると（Ｓ１０１、Ｓ１０２：「０」）、部数データは所定の変数としてＲＡＭ１６に格納され（Ｓ１０３）、Ｓ１０１へ戻る。次に、カスタムオプションデータが入力されると（Ｓ１０１，Ｓ１０２：「１」）、カスタムオプションデータはＲＡＭ１６の所定の場所に格納され（Ｓ１０４）、スタティック・ラスタ・コマンドをオリジナルバッファに格納する（Ｓ１１０）。スタティック・ラスタ・コマンドとは印刷実行に必要不可欠なコマンドであり、例えばプリンタをラスタ印刷モードに切換えるためのコマンド等が含まれる。次に、カスタムオプションデータをプリンタコマンドへ変換し、これを順次オリジナルバッファへ格納していく。つまり、オリジナルレシート用のコマンドとして、表１に基づく用紙逆送りコマンド、ページエンド切断動作コマンド、ドキュメントエンド切断動作コマンドをオリジナルバッファへ格納する（Ｓ１１１、Ｓ１１２、Ｓ１１３）。次に、ジャーナルコピー用のコマンドとして、表１に基づく用紙逆送りコマンド、ページエンド切断動作コマンド、ドキュメントエンド切断動作コマンドを所定の変数としてＲＡＭ１６に格納して（Ｓ１１４、Ｓ１１５、Ｓ１１６）、Ｓ１０１へ戻る。
【００３１】
次に、ページの先頭を示すページ開始コマンドが入力される（Ｓ１０１、Ｓ１０２：「２」）。ページ開始コマンドはオリジナルバッファに格納され（Ｓ１０５）、Ｓ１０１へ戻る。続いてオリジナル画像データに含まれるＹ―Ｒｅｌコマンドとラスタデータコマンドが順次入力される。入力データがＹ―Ｒｅｌコマンドであれば（Ｓ１０１、Ｓ１０２：「３」）、これをオリジナルバッファに格納（Ｓ１０７）、Ｓ１０１へ戻る。入力データがラスタデータコマンドであれば（Ｓ１０１、Ｓ１０２：「３」）、これをオリジナルバッファに格納し（Ｓ１０６）、Ｓ１０１へ戻る。１ページ分のＹ−Ｒｅｌコマンド及びラスタデータコマンドが全てオリジナルバッファに格納されるまでＳ１０６及びＳ１０７が繰り返し実行される。ページ終わりを示すページエンドコマンドが入力されると（Ｓ１０１，Ｓ１０２：「４」）、ページエンドコマンドがオリジナルバッファに格納され（１０８）、Ｓ１０１へ戻る。
【００３２】
ドキュメントが複数ページを有する場合には上記Ｓ１０５乃至Ｓ１０８の処理が繰り返され、ドキュメントの終わりを示すドキュメントエンドコマンドが入力されると（Ｓ１０１、Ｓ１０２：「５」）、Ｓ１０９へ進み（図８）、プリンタ２０との通信を開始する。そしてオリジナルバッファに格納されているデータをプリンタ２０へ出力する（Ｓ１１７）。これによりオリジナルレシートが印刷される。このとき、オリジナルレシート用のページエンド切断動作コマンド及びドキュメントエンド切断動作コマンドもオリジナル画像データと共にプリンタ２０へ出力されるので、プリンタ２０はユーザの設定に応じた切断動作を実行することができる。
【００３３】
次に、所定の変数としてＲＡＭ１６に格納されている印刷部数を表す値から１を引いて印刷部数の値を更新する（Ｓ１１８）。Ｓ１１９では、上記Ｓ１１４乃至Ｓ１１６でＲＡＭ１６に格納されたジャーナルコピー用のコマンドをオリジナルバッファに格納し、オリジナルバッファに格納されているオリジナルレシート用のコマンド、つまり用紙逆送りコマンド、ページエンド切断動作コマンド、ドキュメントエンド切断動作コマンドと置き換える。
【００３４】
続くＳ１２０では、ＳＣＶ画像オプションで「ＳＣＶ有り」が選択されているか否かを検出する。「ＳＣＶ有り」が選択されていれば（Ｓ１２０：ＹＥＳ）、結合画像データ作成処理を行い（Ｓ１２１）、Ｓ１２２へ進む。結合画像データ作成処理ではオリジナル画像データとＳＣＶ画像データに基づき結合画像データが作成され、これが結合画像バッファに格納される。詳細は後述する。一方「ＳＣＶなし」が選択されている場合には（Ｓ１２０：ＮＯ）、そのままＳ１２２へ進む。印刷部数＞０であれば（１２２：ＹＥＳ）、Ｓ１２３へ進む。
【００３５】
Ｓ１２３では、コピー出力オプションで「印刷」が選択されているか否かを検出する。「印刷」が選択されていれば（Ｓ１２３：ＹＥＳ）、オリジナルバッファ又は結合画像バッファ（以下、「バッファ」と呼ぶ）に記憶されている全てのコマンドをプリンタ２０へ出力する（Ｓ１２４）。このとき、画像データコマンドと共にジャーナルコピー用のページエンド切断動作コマンド及びドキュメントエンド切断動作コマンドもプリンタ２０へ出力されるので、プリンタ２０はジャーナルコピーを印刷すると共に、ユーザの設定に応じた切断動作を実行する。その後、Ｓ１３４へ進む。
【００３６】
一方、データ出力オプションとして「保存」が選択されていれば（Ｓ１２３：ＮＯ、Ｓ１２５：ＹＥＳ）、ジャーナルファイルを開き（Ｓ１２６）、バッファに記憶されているデータをジャーナルファイルへ格納する（Ｓ１２７）。その後ジャーナルファイルを閉じて（Ｓ１２８）、Ｓ１３４へ進む。
【００３７】
また、データ出力オプションとして「印刷＋保存」が選択されていれば（Ｓ１２３：ＮＯ、Ｓ１２５：ＮＯ、Ｓ１２９：ＹＥＳ）、ジャーナルファイルを開き（Ｓ１３０）、バッファ内のデータをジャーナルファイルへ格納する（Ｓ１３１）。更に、ジャーナルファイルの内容をプリンタ２０へ出力して（Ｓ１３２）、ジャーナルコピーの印刷を実行する。そしてジャーナルファイルを閉じて（Ｓ１３３）、Ｓ１３４へ進む。Ｓ１３４では印刷部数を示す値から１を引いて更新し、Ｓ１２２へ戻る。印刷部数が≦０であれば（Ｓ１２２：ＮＯ）、処理を終了する。
【００３８】
このように、本発明の形態によるプリンタドライバによれば、オリジナルレシートを印刷した後、すぐに続けてジャーナルコピーを印刷したり、一度ファイルに保存しておき、必要なときに印刷することができるので、２枚複写紙を使用しなくてもコピー印刷が可能である。また、ジャーナルコピーには必要に応じて所定のメッセージを挿入できるので、オリジナルレシートとの識別が容易である。更に、ページエンド及びドキュメントエンドでの切断動作を、オリジナルレシートとジャーナルコピーのそれぞれについて独立して設定できるので、例えばオリジナルレシートのドキュメントエンドではフルカット、ジャーナルコピーのドキュメントエンドではパーシャルカットというように、それぞれの切断動作を変えることも可能である。
【００３９】
次に、Ｓ１２１の結合画像データ作成処理について、図９並びに図１０のフローチャートを参照して説明する。ここでは、オリジナル画像データとＳＣＶ画像データを結合し、これを結合画像バッファに格納する。なお、ＳＣＶ画像データは予めＳＣＶバッファに、オリジナル画像データはＳ１０４でオリジナルバッファに格納されている。
【００４０】
データ結合は、オリジナル画像データの先頭コマンドとＳＣＶ画像データの先頭コマンドとを順次結合させることにより行う。このとき、結合されるコマンドの組合せに応じて、ルール１乃至ルール６に従って処理される。以下、それぞれのルールについて説明する。
【００４１】
図９に示す例では、ＳＣＶ画像データの先頭コマンドはＹ―Ｒｅｌコマンドであり、これと結合されるオリジナル画像データの先頭コマンドはラスタデータコマンドである。このように、ＳＣＶ画像データのＹ―Ｒｅｌコマンドとオリジナル画像データのラスタデータコマンドとの結合は、ルール３に従って処理される。ルール３ではまず、オリジナル画像データのラスタデータコマンドを結合画像バッファに出力すると共に、これをオリジナルバッファから削除する。そして、ＳＣＶ画像データ側のＹ―Ｒｅｌコマンド数から１を引いてこれを更新する。ここで、Ｙ−Ｒｅｌコマンドは、Ｙ―Ｒｅｌコマンド数がゼロになると自動的に削除されるようにプログラムされている。
【００４２】
逆に、ＳＣＶ画像データがラスタデータコマンドであり、オリジナル画像データがＹ―Ｒｅｌコマンドである場合には、ルール４に沿って処理される。ルール４では、ＳＣＶ画像データのラスタデータコマンドを結合画像バッファに出力すると共に、これをＳＣＶバッファから削除する。そして、オリジナル画像データのＹ―Ｒｅｌコマンドに付加されているＹ―Ｒｅｌコマンド数から１を引いて更新する。
【００４３】
ラスタデータコマンド同士の結合の場合には、ルール５を使う。ルール５では、２つのラスタデータコマンド同士をＯＲ結合し、これを結合画像バッファへ出力し、ＳＣＶバッファ及びオリジナルバッファからラスタデータコマンドをそれぞれ削除する。
【００４４】
Ｙ―Ｒｅｌコマンド同士を結合する場合には、Ｙ―Ｒｅｌコマンド数に応じてルール１、ルール２、若しくはルール６が使われる。つまり、ＳＣＶ画像データ側のＹ―Ｒｅｌコマンド数の方が、オリジナル画像データ側のＹ―Ｒｅｌコマンド数よりも少ない場合には、ルール１，逆にオリジナル画像データ側のＹ―Ｒｅｌコマンド数の方が少ない場合にはルール２、双方のＹ―Ｒｅｌコマンド数が同一である場合には、ルール６を使用する。
【００４５】
ルール１では、まず、ＳＣＶ画像データのＹ−Ｒｅｌコマンドを結合画像バッファへ出力し、これをＳＣＶバッファから削除する。次に、オリジナル画像データ側のＹ―Ｒｅｌコマンド数からＳＣＶ画像データ側のＹ―Ｒｅｌコマンド数を引いた値を、オリジナル画像データ側の新しいＹ―Ｒｅｌコマンド数として更新する。
【００４６】
ルール２では、逆に、オリジナル画像データ側のＹ―Ｒｅｌコマンドをジャーナルバッファへ出力し、これをオリジナルバッファから削除する。ＳＣＶ画像データ側のＹ―Ｒｅｌコマンド数からオリジナル画像データ側のＹ―Ｒｅｌコマンド数を引いて得られた値を、新しいＳＣＶ画像データ側のＹ―Ｒｅｌコマンド数として書き換えて更新する。
【００４７】
ルール６では、ＳＣＶバッファのＹ―Ｒｅｌコマンドを結合画像バッファへ出力し、これをＳＣＶバッファから削除すると共に、オリジナルバッファからもＹ−Ｒｅｌコマンドを削除する。
【００４８】
結合画像データ作成処理は、実際には図１０のフローチャートに示される手順で実行される。処理が開始されると、オリジナルバッファにデータが存在するか否かを検出し（Ｓ２０１）、格納されていれば（Ｓ２０１：ＮＯ）、ＳＣＶ画像データ及びオリジナル画像データのコマンドを読み出す（Ｓ２０２）。ＳＣＶ画像データとオリジナル画像データのコマンドの組合せが、Ｙ―ＲｅｌコマンドとラスタデータコマンドであればＳ２０４でルール３の処理を、ラスタデータコマンドとＹ―ＲｅｌコマンドであればＳ２０５でルール４の処理を、ラスタデータコマンド同士であればＳ２０６でルール５の処理を行い、Ｓ２０１へ戻る。一方、Ｙ―Ｒｅｌコマンド同士の組合せであればＳ２０３に進み、Ｙ―Ｒｅｌコマンド数に応じてＳ２０８、Ｓ２０９、Ｓ２１０のいずれかで、ルール１，２，６に従い処理を行う。Ｓ２０１へ戻り、オリジナルバッファから全てのデータが削除されるまで上記処理を繰り返す。オリジナルバッファにデータがなければ（Ｓ２０１：ＹＥＳ）、図８のＳ１２２へ進み、前記処理を行う。
【００４９】
本発明によるプリンタドライバは上述した実施の形態に限定されず、特許請求の範囲に記載した範囲で種々の変形や改良が可能である。例えば、使用されるプリンタはサーマルプリンタに限定されず、ドットマトリックスプリンタ等、他のプリンタを使用してもよい。
【００５０】
また、メッセージ画像は勿論「Second Copy - Void」に限定されず、他のメッセージでもよく、その大きさや位置も任意に決定できる。また、オリジナル画像部分とメッセージ画像部分が一部重なるような場合であっても、ラスタデータコマンドはＯＲ結合されるので、問題なくデータ結合することができる。
【００５１】
上記実施の形態では、取引におけるレシート発行及びジャーナル用コピー印刷を例に説明したが、本発明はこれに限定されない。また、印刷部数は２部に限定されず１部であっても、３部以上であってもよい。
【００５２】
【発明の効果】
請求項１記載のプリンタドライバによれば、プリンタドライバの結合手段がオリジナルデータにメッセージデータを付加するため、ホストコンピュータにインストールされているアプリケーションやプリンタ等に変更を加える必要がない。また、オリジナルデータに所定のメッセージデータが結合されて結合データが作成されるため、オリジナルデータに基づくオリジナル画像と、結合データに基づく結合画像の識別を確実且つ容易に行うことができる。
【００５３】
請求項２記載のプリンタドライバによれば、オリジナルデータに加え結合データをプリンタへ出力すればコピー印刷できるので、例えば２枚複写紙を使用しなくてもコピー印刷可能である。従って、サーマルプリンタ等のように２枚複写紙を利用できないプリンタによっても、コピー印刷が可能となる。また、オリジナルデータに基づくオリジナル画像と、結合データに基づく結合画像の識別を確実且つ容易に行うことができる。また、結合データをメモリに記憶させることができるので、逐一結合データを印刷することなく、必要なときに印刷することができる。
【００５４】
請求項３記載のプリンタドライバによれば、オリジナル印刷及びコピー印刷について、ページ単位及びドキュメント単位で用紙切断動作を設定できるので、ユーザの所望する切断動作を任意に設定することができる。従って、例えばオリジナル印刷後直ちにコピー印刷を行う場合に、オリジナル印刷のドキュメントエンドでフルカット動作を、コピー印刷のドキュメントエンドでパーシャルカット動作を選択すれば、ユーザはオリジナル印刷とコピー印刷の識別をより容易に行うことができる。また、請求項４記載のプリンタドライバのデータ処理方法によれば、プリンタドライバがオリジナルデータにメッセージデータを付加するため、ホストコンピュータにインストールされているアプリケーションやプリンタ等に変更を加える必要がない。また、オリジナルデータに所定のメッセージデータが結合されて結合データが作成されるため、オリジナルデータに基づくオリジナル画像と、結合データに基づく結合画像の識別を確実且つ容易に行うことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態によるプリンタドライバが使用されるホストコンピュータ及びプリンタを示すブロック図。
【図２】図１に示すプリンタを示す概略図。
【図３】図１のホストコンピュータにインストールされたソフトウェアの構成を示すブロック図。
【図４】（ａ）はオリジナル画像、（ｂ）ＳＣＶ画像、（ｃ）はオリジナル画像とＳＣＶ画像を結合して得られたジャーナル画像を示す平面図。
【図５】本発明の実施の形態によるプリンタドライバのカスタムオプション設定画面を示す平面図。
【図６】本発明の実施の形態によるデータ処理を示すフローチャート。
【図７】本発明の実施の形態によるプリンタドライバで行われる処理の一部を示すフローチャート。
【図８】本発明の実施の形態によるプリンタドライバで行われる処理の残部を示すフローチャート。
【図９】本発明の実施の形態によるオリジナル画像データとＳＣＶ画像データの結合方法を示す説明図。
【図１０】本発明の実施の形態によるオリジナル画像データとＳＣＶ画像データの結合処理を示すフローチャート。
【符号の説明】
１０・・ホストコンピュータ
２０・・プリンタ
２６・・オートカッタ
５０・・プリンタドライバ
５２・・ＳＣＶ画像データ
５３・・バッファアルゴリズム
５４・・結合エンジン
６０・・カスタムプロパティ設定画面
【図１】
0003961302.tif 000004
【図２】
0003961302.tif 000005
【図３】
0003961302.tif 000006
【図４】
0003961302.tif 000007
【図５】
0003961302.tif 000008
【図６】
0003961302.tif 000009
【図７】
0003961302.tif 000010
【図８】
0003961302.tif 000011
【図９】
0003961302.tif 000012
【図１０】
0003961302.tif 000013