(57)【特許請求の範囲】
【請求項１】
ロール紙に印刷物を印刷する印刷装置であって、
前記ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に前記印刷物を印刷する印刷部と、
前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する制御部と、
前記制御部により削減された前記印刷物の印刷長さを算出する算出部と、
前記算出部によって算出された削減された前記印刷物の印刷長さを示す情報を記憶する記憶部と、
を備え、
前記算出部は、前記制御部により削減された前記印刷物の印刷長さに基づき、１の前記印刷物の削減率を算出することを特徴とする印刷装置。
【請求項２】
前記制御部は、前記搬送方向における余白の削減、前記搬送方向におけるバーコード高さの縮小、及び、行間隔の削減の少なくともいずれか１つを実行することによって、前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減することを特徴とする請求項１に記載の印刷装置。
【請求項３】
ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に画像を印刷する印刷部と、
前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する制御部と、
前記制御部により削減された前記ロール紙の印刷長さを算出する算出部と、
前記算出部によって算出された削減された前記ロール紙の印刷長さを示す情報を記憶する記憶部と、
を備え、
前記記憶部は、前記ロール紙の紙幅に関する情報を記憶し、
前記算出部は、前記制御部により削減された前記ロール紙の印刷長さと、前記記憶部が記憶するロール紙の紙幅に関する情報とに基づいて、前記制御部により削減された前記ロール紙の面積を算出することを特徴とする印刷装置。
【請求項４】
前記記憶部が記憶する削減された前記印刷物の印刷長さを示す情報に基づき、削減された前記印刷物の印刷長さを表示する表示部を備えることを特徴とする請求項１又は２に記載の印刷装置。
【請求項５】
前記印刷装置は、制御装置に接続可能であって、
前記制御部は、前記制御装置から受信した制御コマンドに基づいて、削減された前記印刷物の印刷長さを示す情報を前記制御装置に送信することを特徴とする請求項１又は２に記載の印刷装置。
【請求項６】
前記記憶部は、前記算出部により算出される削減された前記印刷物の印刷長さを示す情報を一時的に記憶する揮発性記憶領域と、前記算出部により算出される削減された前記印刷物の印刷長さを示す情報を累積的に記憶する不揮発性記憶領域とを備え、
前記制御部は、前記制御装置から受信した制御コマンドに基づいて、前記揮発性記憶領域に記憶された削減された前記印刷物の印刷長さを示す情報、又は前記不揮発性記憶領域に記憶された削減された前記印刷物の印刷長さを示す情報を累積した情報を前記制御装置に送信することを特徴とする請求項５に記載の印刷装置。
【請求項７】
印刷装置と、前記印刷装置に接続される制御装置と、を備える印刷システムであって、
前記印刷装置は、
ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に画像を印刷する印刷部と、
前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する制御部と、
前記制御部により削減された前記ロール紙の印刷長さを算出する算出部と、
前記算出部によって算出された削減された前記ロール紙の印刷長さを示す情報を記憶する記憶部と、を備え、
前記制御部は、削減された前記ロール紙の印刷長さを示す情報を前記制御装置に送信し、
前記制御装置は、
前記印刷装置から受信した削減された前記ロール紙の印刷長さを示す情報に基づき、前記ロール紙の削減効果を表す値を算出するアプリケーション実行部と、
前記アプリケーション実行部によって算出された前記削減効果を示す値を記憶する制御装置側記憶部と、
を備えることを特徴とする印刷システム。
【請求項８】
ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に印刷物を印刷する印刷部を備える印刷装置の制御方法であって、
前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する削減印刷ステップと、
前記削減印刷ステップにより削減される前記印刷物の印刷長さを算出する算出ステップと、
前記算出ステップにより算出される削減された前記印刷物の印刷長さを示す情報を、前記印刷装置が備える記憶部に記憶させる記憶ステップと、
前記算出ステップにより算出された削減された前記印刷物の印刷長さに基づき、１の前記印刷物の削減率を算出する削減率算出ステップと、
を有することを特徴とする印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、印刷システム、及び、印刷装置の制御方法に関する。
【背景技術】
【０００２】
従来、用紙の両面に画像を印刷する両面印刷機能や、１枚の用紙に複数の画像を縮小して印刷する集約印刷機能等の用紙の消費量を削減する機能を備えた印刷装置がある。これらの機能を用いて、削減された用紙の消費量を算出する技術が提案されている（例えば、特許文献１参照）。特許文献１は、印刷状況を監視し、両面及び／又は集約印刷が行われることで、用紙を削減する指標を示す用紙削減率を所定時間単位で算出する算出手段を備える画像処理装置を開示する。
また、ロール紙等の連続紙に印刷を行う印刷装置において、連続紙の消費量を削減する技術も提案されている（例えば、特許文献２参照）。特許文献２は、印刷データに含まれるバーコードの高さが規定の高さ以上か否かを判定して、規定の高さ以上と判定された場合に、バーコードの印刷高さを縮小し規定の高さのバーコードを印刷する印刷装置を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１２９１６０号公報
【特許文献２】特開２０１０−１２６６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ロール紙に画像を印刷する印刷装置において、削減されたロール紙の消費量を定量的に知る手段を開示したものは知られておらず、ユーザーに対して環境に優しい印刷を促すのには十分なものとはいえなかった。
本発明は、上述した事情に鑑みてなされたものであり、ロール紙の印刷長さの削減が可能で、削減されたロール紙の印刷長さを容易に把握することができる印刷装置、印刷システム、及び、印刷装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために本発明の印刷装置は、ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に画像を印刷する印刷部と、前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する制御部と、前記制御部により削減された前記ロール紙の印刷長さを算出する算出部と、前記算出部によって算出された削減された前記ロール紙の印刷長さを示す情報を記憶する記憶部と、を備えることを特徴とする。
本発明によれば、制御部により削減されたロール紙の印刷長さが算出され、算出されたロール紙の印刷長さが記憶部に記憶される。従って、削減されたロール紙の印刷長さを容易に把握することができる。
【０００６】
また、本発明は、上記構成の印刷装置において、前記制御部は、前記搬送方向における余白の削減、前記搬送方向におけるバーコード高さの縮小、及び、行間隔の削減の少なくともいずれか１つを実行することによって、前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減することを特徴とする。
本発明によれば、搬送方向における余白の削減、搬送方向におけるバーコードの高さの縮小、及び、行間隔の削減の少なくともいずれか１つが実行され、ロール紙の印刷方向の長さが削減される。従って、ロール紙の印刷において、ロール紙の印刷長さを効果的に削減することができる。
【０００７】
また、本発明は、上記構成の印刷装置において、前記算出部は、前記制御部により削減された前記ロール紙の印刷長さに基づき、単位数量当たりの前記ロール紙の削減率を算出することを特徴とする。
本発明によれば、ロール紙の単位数量当たりの削減率が算出される。このため、印刷処理においてロール紙の印刷長さを削減していない場合と比較して、ロール紙の使用量がどの程度削減されたのかを示すことができる。
【０００８】
また、本発明は、上記構成の印刷装置において、前記記憶部は、前記ロール紙の紙幅に関する情報を記憶し、前記算出部は、前記制御部により削減された前記ロール紙の印刷長さと、前記記憶部が記憶するロール紙の紙幅に関する情報とに基づいて、前記制御部により削減された前記ロール紙の面積を算出することを特徴とする。
本発明によれば、制御部が削減されたロール紙の面積を算出する。従って、ロール紙の使用量がどの程度削減されたのかをロール紙の面積で示すことができる。
【０００９】
また、本発明は、上記構成の印刷装置において、前記記憶部が記憶する削減された前記ロール紙の印刷長さを示す情報に基づき、削減された前記ロール紙の印刷長さを表示する表示部を備えることを特徴とする。
本発明によれば、表示部に、削減されたロール紙の印刷長さが表示される。従って、削減されたロール紙の印刷長さを容易に把握することができる。
【００１０】
また、本発明は、上記構成の印刷装置において、前記印刷装置は、制御装置に接続可能であって、前記制御部は、前記制御装置から受信した制御コマンドに基づいて、削減された前記ロール紙の印刷長さを示す情報を前記制御装置に送信することを特徴とする。
本発明によれば、印刷装置が、制御装置から受信した制御コマンドに基づいて、削減されたロール紙の印刷長さを示す情報を制御装置に送信する。従って、制御装置に、削減されたロール紙の印刷長さを示す情報を取得させることができ、制御装置において、取得した情報を表示させたり、取得した情報を用いた処理を行わせたりすることができる。
【００１１】
また、本発明は、上記構成の印刷装置において、前記記憶部は、前記算出部により算出される削減された前記ロール紙の印刷長さを示す情報を一時的に記憶する揮発性記憶領域と、前記算出部により算出される削減された前記ロール紙の印刷長さを示す情報を累積的に記憶する不揮発性記憶領域とを備え、前記制御部は、前記制御装置から受信した制御コマンドに基づいて、前記揮発性記憶領域に記憶された削減された前記ロール紙の印刷長さを示す情報、又は前記不揮発性記憶領域に記憶された削減された前記ロール紙の印刷長さを示す情報を累積した情報を前記制御装置に送信することを特徴とする。
本発明によれば、揮発性記憶領域に一時的に記憶させた削減されたロール紙の印刷長さを示す情報、又は不揮発性記憶領域に記憶させた削減されたロール紙の印刷長さを示す情報を累積した情報が、制御装置に送信される。
従って、制御装置において、例えば、印刷装置の電源がオンされてからオフされるまでの間に印刷された印刷物の削減された印刷長さを表示させることができる。また、制御装置において、例えば、削減されたロール紙の印刷長さの累積値を算出して表示させることもできる。
【００１２】
本発明の印刷システムは、印刷装置と、前記印刷装置に接続される制御装置と、を備える印刷システムであって、前記印刷装置は、ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に画像を印刷する印刷部と、前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する制御部と、前記制御部により削減された前記ロール紙の印刷長さを算出する算出部と、前記算出部によって算出された削減された前記ロール紙の印刷長さを示す情報を記憶する記憶部と、を備え、前記制御部は、削減された前記ロール紙の印刷長さを示す情報を前記制御装置に送信し、前記制御装置は、前記印刷装置から受信した削減された前記ロール紙の印刷長さを示す情報に基づき、前記ロール紙の削減効果を表す値を算出するアプリケーション実行部と、前記アプリケーション実行部によって算出された前記削減効果を示す値を記憶する制御装置側記憶部と、を備えることを特徴とする。
本発明によれば、制御装置において、印刷装置から受信した削減されたロール紙の印刷長さを示す情報に基づき、ロール紙の削減効果を表す値を算出し、制御装置側記憶部に記憶させることができる。
【００１３】
本発明の印刷装置の制御方法は、ロール紙を搬送方向に搬送し、受信した印刷コマンドに基づいて前記ロール紙に画像を印刷する印刷部を備える印刷装置の制御方法であって、前記印刷コマンドによる前記ロール紙への前記搬送方向の印刷長さを削減するように前記印刷部を制御する削減印刷ステップと、前記削減印刷ステップにより削減されるロール紙の印刷長さを算出する算出ステップと、前記算出ステップにより算出される削減された前記ロール紙の印刷長さを示す情報を、前記印刷装置が備える記憶部に記憶させる記憶ステップと、を有することを特徴とする。
本発明によれば、削減されたロール紙の印刷長さが算出され、算出されたロール紙の印刷長さが記憶部に記憶される。従って、削減されたロール紙の印刷長さを容易に把握することができる。
【図面の簡単な説明】
【００１４】
【図１】印刷システムの構成を示すブロック図。
【図２】レシートを示す図。
【図３】タブレット端末の構成を示すブロック図。
【図４】プリンターの印刷処理の動作を示すフローチャート。
【図５】コマンドを受信した場合のプリンターの動作を示すフローチャート。
【図６】タブレット端末の動作を示すフローチャート。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明の実施形態について説明する。
図１は、印刷システム１の構成を示す機能ブロック図である。
印刷システム１は、ホストコンピューター（以下、ホスト装置という）１００と、プリンター２００と、タブレット端末３００とを備える。プリンター２００は、本発明の「印刷装置」に相当する。タブレット端末３００は、本発明の「制御装置」に相当する。
ホスト装置１００は、プリンター２００に接続され、プリンター２００に、印刷コマンドと印刷データとを送信する。印刷コマンドは、プリンター２００を制御して、プリンター２００に印刷処理を実行させる命令である。印刷データは、印刷処理により印刷媒体に印刷する画像（以下、印刷画像という）を指定するデータである。印刷画像には、例えば、文字や記号、バーコードの画像（以下、バーコード画像という）、図形（グラフィック）等が含まれる。また、印刷処理とは、印刷媒体に印刷画像を印刷する処理である。
プリンター２００は、ホスト装置１００から受信した印刷コマンド及び印刷データに基づき、印刷媒体に印刷画像を印刷する。本実施形態では、プリンター２００は、印刷媒体としてのロール紙にレシートを印刷する場合について説明する。なお、プリンター２００が印刷可能な印刷物は、レシートに限定されるものではなく、例えば、ラベルや、切符、チケット、飲食店の伝票等、サーマル方式のプリンターで印刷可能な印刷物であればよい。また、印刷媒体は、ロール紙に限定されるものではなく、例えば、所定サイズごとに折り畳まれたファンフォールド紙を印刷媒体として用いてもよい。
タブレット端末３００は、プリンター２００に接続され、プリンター２００から送信される情報を受信して、表示パネル３３１に表示させる。
【００１６】
ホスト装置１００とプリンター２００とは通信線５により接続される。通信線５は、通信ケーブル又は無線通信回線で構成される。通信線５は、例えば、ＵＳＢ、ＩＥＥＥ１２８４、ＩＥＥＥ１３９４、ＲＳ−２３２Ｃ等の各種規格に準拠した１対１接続の通信ケーブルである。また、通信線５は、Ｅｔｈｅｒｎｅｔ（登録商標）に準拠した有線ネットワークであってもよい。さらに、通信線５は、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉｒｅｌｅｓｓ ＵＳＢ等の近距離無線通信や、無線ＬＡＮ等の無線通信ネットワークを採用してもよい。
また、図１には、ホスト装置１００と、プリンター２００とを１対１で接続した場合を例示するが、ホスト装置１００に接続されるプリンター２００の台数に制限はない。
【００１７】
ホスト装置１００は、オペレーターが操作するコンピューターであり、例えば、ホスト装置１００として、デスクトップ型コンピューターや、ノート型コンピューター、タブレット端末型コンピューターを用いることができる。また、ホスト装置１００として、スマートフォンや携帯電話機等を用いてもよい。
【００１８】
ホスト装置１００は、プリンター２００に接続されるインターフェース（以下、Ｉ／Ｆと略記する）部１１０を備える。Ｉ／Ｆ部１１０は、通信線５を介してプリンター２００との間でデータ通信を行う。Ｉ／Ｆ部１１０は、例えば、ＵＳＢ、ＩＥＥＥ１２８４、ＩＥＥＥ１３９４、ＲＳ−２３２Ｃ、Ｅｔｈｅｒｎｅｔ等に準拠した有線通信インターフェースである。また、Ｉ／Ｆ部１１０は、Ｂｌｕｅｔｏｏｔｈ、ＷｉｒｅｌｅｓｓＵＳＢ、無線ＬＡＮ等の無線通信インターフェースであってもよい。
【００１９】
ホスト装置１００は、ホスト装置１００の各部を制御するホスト制御部１２０を備える。
ホスト制御部１２０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、周辺回路等（いずれも図示略）をハードウェアとして備える。ホスト制御部１２０のＲＯＭには、ＣＰＵによって実行される基本制御プログラム（オペレーティングシステム）やアプリケーションプログラムが記憶される。基本制御プログラムやアプリケーションプログラムはＲＡＭに展開され、ＣＰＵは、ＲＡＭに展開された基本制御プログラムやアプリケーションプログラムを実行して、ホスト装置１００の各部を制御する。
【００２０】
ホスト制御部１２０は、機能ブロックとしてアプリケーション実行部１２１と、ドライバー実行部１２２とを備える。アプリケーション実行部１２１及びドライバー実行部１２２は、ＣＰＵが基本制御プログラムやアプリケーションプログラムを実行することで実現される機能をブロックとして便宜的に表現したものであり、特定のアプリケーションや、ハードウェア等を意味するものではない。
アプリケーション実行部１２１は、例えば、プリンター２００にレシートを印刷させる場合、レシートに印刷される情報であるレシート情報を生成する。レシート情報には、例えば、レシートに印刷するロゴマークや、レシートの発行日付を示す情報、顧客が購入した商品名、商品の数量、商品の単価、税に関する情報、合計購入金額、顧客から受け取った金銭の額、お釣りを示す情報、バーコードのデータ等が含まれる。バーコードには、例えば、レシートに印刷された店舗コード、レジ番号、日付、レシートの番号（取引通番）等を示す情報が含まれる。アプリケーション実行部１２１が生成するバーコードのデータは、ＪＡＮコード、ＥＡＮ、ＵＰＣコード、ＩＴＦコード、ＣＯＤＥ３９、ＣＯＤＥ１２８、ＮＷ−７等の規格に準じたバーコードとしてもよく、独自のバーコードであってもよい。
【００２１】
ドライバー実行部１２２は、プリンタードライバーを実行して、アプリケーション実行部１２１が生成したレシート情報をプリンター２００に印刷させるための印刷コマンド及び印刷データを生成する。ドライバー実行部１２２は、生成した印刷コマンド及び印刷データをＩ／Ｆ部１１０を介してプリンター２００に送信する。
印刷コマンドは、プリンター２００のコマンド体系に準拠した命令であり、プリンター２００を制御してプリンター２００に印刷処理を実行させるためのコマンドである。印刷コマンドには、例えば、プリンター２００に文字の印刷を指示する文字印刷コマンドや、バーコードの印刷を指示するバーコード印刷コマンド、図面（グラフィック）の印刷を指示する画像印刷コマンド等が含まれる。
印刷データは、レシートに印刷する印刷画像を指定するデータである。印刷データには、例えば、文字を指定する文字コードや、バーコードを指定するパラメーター、ロゴマーク等の図形を示す画像データが含まれる。
【００２２】
プリンター２００は、ホスト装置１００から受信する印刷コマンド及び印刷データに基づき、プリンター２００の筐体（図示略）内に収容されたロール紙に印刷画像を印刷する。
【００２３】
プリンター２００は、Ｉ／Ｆ部２０１、受信バッファー２０２、プリントバッファー２０３、プリント記憶部２１０、プリント制御部２２０、印刷部２４０、入力部２５１、表示部２５２、無線通信部２６０を備える。
【００２４】
Ｉ／Ｆ部２０１は、通信線５を介してホスト装置１００に接続され、プリント制御部２２０の制御に従って、所定の通信規格によりホスト装置１００と通信を行う。
Ｉ／Ｆ部２０１の通信規格は、例えば、ＵＳＢ、ＩＥＥＥ１２８４、ＩＥＥＥ１３９４、ＲＳ−２３２Ｃ、Ｅｔｈｅｒｎｅｔ等に準拠した有線通信インターフェースである。また、Ｉ／Ｆ部２０１は、Ｂｌｕｅｔｏｏｔｈ、Ｗｉｒｅｌｅｓｓ ＵＳＢ、無線ＬＡＮ等の無線通信インターフェースであってもよい。
【００２５】
受信バッファー２０２には、Ｉ／Ｆ部２０１を介して受信した印刷コマンド及び印刷データが格納される。プリントバッファー２０３には、プリント制御部２２０が印刷コマンド及び印刷データ基づき生成する印刷画像（イメージデータ）が展開される。
受信バッファー２０２及びプリントバッファー２０３は、プリント制御部２２０が備えるＲＡＭの記憶領域に構成してもよいし、プリント制御部２２０に外部接続された補助記憶装置に設けることも可能である。
【００２６】
プリント記憶部（不揮発性記憶領域）２１０は、不揮発性の記憶部であって、フォントテーブル２１１や、設定ファイル２１２を記憶する。フォントテーブル２１１や、設定ファイル２１２は、プリント制御部２２０が印刷画像を生成する際に参照するテーブルである。
フォントテーブル２１１は、フォントデータを記憶するテーブルである。フォントデータは、プリンター２００が印刷可能な文字の書体を示す書体データである。
設定ファイル２１２は、フォントサイズ、文字間隔、行間、用紙サイズ、余白情報等の設定情報が登録されたファイルである。フォントサイズは、縦横のドット数で表される文字サイズを示す情報である。文字間隔は、印刷される文字と文字との間に形成する空白部分の幅をドット数で表す情報である。行間は、印刷される文字の行間に形成する空白部分の幅（高さ）をドット数で表す情報である。用紙サイズは、プリンター２００が使用するロール紙の幅方向のサイズを示す情報である。余白情報は、ロール紙の上下両端及び左右両端に設けられる非印刷部分（マージン）の幅を示す情報である。
【００２７】
また、プリント記憶部２１０は、後述する算出部２２３により算出されるロール紙の削減された印刷長さを示す情報を累積記憶する。すなわち、プリント記憶部２１０は、算出部２２３が算出するロール紙の削減された印刷長さを示す情報（以下、用紙削減情報という）を、プリンター２００の電源オフ後も記憶する。
【００２８】
プリント制御部２２０は、ＣＰＵや、ＲＯＭ、ＲＡＭ（揮発性記憶領域）等を備え、プリンター２００の各部を制御する。ＲＯＭは、プリンター２００の制御プログラムであるファームウェアを記憶する。ＣＰＵは、ＲＯＭから読み出され、ＲＡＭに展開されたファームウェアを実行することでプリンター２００の各部を制御する。ＲＡＭは、ＣＰＵが演算に使用するワークメモリーとして使用される。また、ＲＡＭは、後述する算出部２２３によって算出されるロール紙の削減された印刷長さを示す用紙削減情報を一時的に記憶する。
【００２９】
プリント制御部２２０は、機能ブロックとして画像データ生成部２２１と、削減処理部２２２と、算出部２２３とを備える。削減処理部２２２は、本発明の「制御部」に相当する。これらの機能ブロックは、ＣＰＵがＲＡＭに展開されたファームウェアを実行することで実現される機能をブロックとして便宜的に表現したものであり、特定のアプリケーションや、ハードウェア等を意味するものではない。
画像データ生成部２２１は、受信バッファー２０２に格納された印刷コマンドを解析して、プリントバッファー２０３に展開するデータを生成する。
例えば、画像データ生成部２２１は、印刷コマンドに文字印刷コマンドが含まれ、印刷データとして文字を指定する文字コードが含まれる場合、指定された文字コードのフォントデータをフォントテーブル２１１から取得する。画像データ生成部２２１は、取得したフォントデータを削減処理部２２２に出力する。
また、画像データ生成部２２１は、印刷コマンドにバーコード印刷コマンドが含まれ、印刷データとしてバーコードを指定するパラメーターが含まれる場合、指定されたパラメーターに対応するバーコードの画像データを生成する。画像データ生成部２２１は、生成したバーコードの画像データを削減処理部２２２に出力する。
さらに、画像データ生成部２２１は、印刷コマンドに印刷コマンドが含まれ、印刷データとして図形等を表す画像データが含まれる場合、受信バッファー２０２から画像データを読み出し削減処理部２２２に出力する。
以下では、画像データ生成部２２１が削減処理部２２２に出力するフォントデータや、バーコードの画像データ等を総称して画像データという。
【００３０】
削減処理部２２２は、設定ファイル２１２を参照して、画像データ生成部２２１から入力される画像データをプリントバッファー２０３に展開して印刷画像を生成する。すなわち、削減処理部２２２は、設定ファイル２１２に設定されたフォントサイズ、文字間隔、余白等に従って、入力される画像データをプリントバッファー２０３に展開し、印刷画像を生成する。プリントバッファー２０３に展開された印刷画像は、印刷部２４０により印刷される。
【００３１】
また、削減処理部２２２は、設定ファイル２１２に設定された行間に従って、印刷部２４０に、ステッピングモーター（図示略）のステップ数を指示する。ステッピングモーターは、ロール紙を搬送するモーターであり、ステップ数は、ステッピングモーターに印加されるパルスの数を示す。ステップ数に応じてロール紙の搬送量（搬送距離）が設定される。削減処理部２２２は、ロール紙に一行（１ライン）分の印刷がされた際に、次の一行を印刷するためにロール紙を搬送する搬送長をステップ数により設定する。一行とは、後述するサーマルヘッド２４１がロール紙に印刷可能な副走査方向の範囲をいう。また、副走査方向とは、ロール紙の幅方向であり、後述する印刷部２４０の搬送機構により搬送されるロール紙の搬送方向に直交する方向である。
【００３２】
また、削減処理部２２２は、プリンター２００の動作モードが用紙削減モードである場合に、削減処理を行う。削減処理とは、印刷部２４０が実行する印刷処理（後述する）において、ロール紙の搬送方向における印刷長さが削減されるように印刷部２４０を制御する処理である。印刷長さとは、１ページ分の印刷画像をロール紙に印刷した場合のロール紙の搬送方向における長さである。削減処理部２２２は、余白の幅の削減と、行間の削減と、バーコード画像の印刷高さの縮小との少なくとも１つを実行して、削減処理を実行する。
【００３３】
ここで、プリンター２００により印刷されるレシート５００について説明する。図２は、レシート５００の一例を示す図である。
印刷部２４０は、搬送機構によってロール紙を搬送方向（図３に示す矢印Ｈの方向、以下、搬送方向Ｈと表記する）に搬送しながら、発熱抵抗体が一列に配置されたサーマルヘッド２４１により１行ごとに印刷する印刷処理を行う。
レシート５００の上端部及び下端部には、余白（図２に示すＡ１、Ａ２）が形成される。上端部とは、搬送方向Ｈにおいてレシート５００の前方に位置する側の端部であり、下端部とは、搬送方向Ｈにおいてレシート５００の後方に位置する側の端部である。また、レシート５００には、商品を販売したショップのロゴマークや、販売日付が印刷される。さらに、レシート５００には、販売された商品の品名、個数、価格、合計金額、税金、預り金、お釣り等を示す文字列が印刷される。また、レシート５００には、バーコード画像５１０が印刷される。バーコード画像５１０には、レシート５００に印刷された店舗コード・レジ番号・日付・レシートの番号（取引通番）等を示す情報が含まれる。
【００３４】
削減処理部２２２の削減処理について図２のレシート５００を参照しながら説明する。
余白の幅の削減とは、レシート５００の上端部及び下端部に形成される余白の搬送方向Ｈにおける長さ（幅）（図２に示すＡ１及びＡ２）を削減する処理である。削減処理部２２２は、設定ファイル２１２に設定された余白の幅と、予め設定された最低余白幅とを比較する。最低余白幅とは、レシート５００に印刷するために最低限必要な余白の幅である。削減処理部２２２は、設定ファイル２１２に設定された余白の幅と、最低余白幅とを比較し、設定ファイル２１２に設定された余白の幅が最低余白幅よりも広い場合、余白の幅を削減可能であると判定する。
【００３５】
削減可能であると判定した場合、レシート５００の余白の幅を削減する。削減処理部２２２は、レシート５００の上端部の余白を削減する場合、印刷を開始する印刷開始行を変更する。例えば、レシート５００の余白の幅を、最低余白幅に削減する場合、削減処理部２２２は、印刷部２４０を制御して、ロール紙を、最低余白幅に相当する搬送距離だけ搬送させた後に、プリントバッファー２０３に画像データを展開し印刷を開始する。
また、削減処理部２２２は、レシート５００の下端部の余白を削減する場合、ロール紙をカットするカット位置を変更する。例えば、最低余白幅に対応する行数が１５０行であった場合、削減処理部２２２は、ロール紙への印刷画像の印刷が完了した後、ロール紙を、１５０行分に対応する距離だけ搬送させた後、印刷部２４０にロール紙のカットを指示する。
【００３６】
また、行間の削減とは、レシート５００に印刷される隣り合う行と行との間隔（図２に示すＢ）を削減する処理である。削減処理部２２２は、ロール紙に一行分の印刷画像が印刷された後に、次の行を印刷するためにロール紙を搬送する搬送長を示すステップ数を変更して、行間を削減する。
削減処理部２２２は、削減処理を実行する場合、設定ファイル２１２に設定された行間が、予め設定された最小行間よりも小さいか否かを判定する。削減処理部２２２は、設定ファイル２１２に設定された行間が最小行間よりも広い場合、行間を削減可能であると判定する。削減処理部２２２は、行間を削減可能であると判定すると、印刷部２４０を制御して、行間を削減する。
削減処理部２２２は、ステッピングモーターのステップ数を削減して、ロール紙を搬送する搬送長を削減し、行間を削減する。ステップ数は、１行分の印刷画像を印刷した後に、ロール紙を搬送する搬送長に対応する。例えば、削減処理部２２２は、行間が最小行間になるようにステップ数を設定する。また、削減処理部２２２は、行間が、設定ファイル２１２から取得した行間よりも所定値だけ狭くなるように、ステップ数を設定してもよい。
【００３７】
また、バーコード画像５１０の印刷高さの縮小とは、印刷されるバーコード画像５１０の搬送方向Ｈにおける長さ（以下、高さという）を短くする処理である。バーコード画像５１０の高さは、図２に示す高さＣである。削減処理部２２２は、画像データ生成部２２１から入力される画像データを画像処理して、バーコードの画像データの高さを低くする。
削減処理部２２２は、削減処理を実行する場合、バーコードの画像データの高さが、規格で定められた最低の高さよりも高いか否かを判定する。削減処理部２２２は、バーコードの画像データの高さが、規格で定められた最低の高さよりも高い場合、バーコードの画像データを画像処理して、バーコードの画像データの高さを縮小する。例えば、削減処理部２２２は、バーコードの画像データの高さが、規格で定められた最低の高さに一致するようにバーコードの画像データを画像処理する。また、削減処理部２２２は、バーコードの画像データの高さが所定値だけ低くなるように、バーコードの画像データを画像処理してもよい。
【００３８】
算出部２２３は、削減処理を行った場合のレシート５００の長さ（以下、第１印刷長さＬ１と表記する）を算出する。例えば、算出部２２３は、１枚のレシート５００が印刷されるまでに駆動したステッピングモーターのステップ数を削減処理部２２２から取得する。算出部２２３は、取得したステップ数に、ステッピングモーターを１ステップ駆動することによって搬送されるロール紙の搬送距離を積算し、第１印刷長さＬ１を算出する。ステッピングモーターは、１ステップ駆動されることで、ロール紙を決められた距離だけ搬送するので、１枚のレシート５００が印刷されるまでに駆動したステッピングモーターのステップ数に、１ステップ当たりの搬送距離を積算することで、第１印刷長さＬ１が算出される。
また、算出部２２３は、余白の幅の削減、行間の削減及びバーコード画像５１０の高さの縮小の各処理ごとに、削減されたロール紙の搬送方向Ｈにおける印刷長さ（以下、削減長さという）を算出する。算出部２２３は、処理ごとに算出した削減長さの和を求め、１レシートにおいて削減された削減長さ（以下、総削減長さという）を求める。
さらに、算出部２２３は、求めた１レシートにおける総削減長さに、第１印刷長さＬ１を加算して、削減処理を行っていない場合のレシート５００の長さ（以下、第２印刷長さＬ２と表記する）を算出する。
また、算出部２２３は、第２印刷長さＬ２に対する第１印刷長さＬ１の割合を算出して、単位数量当たりの削減率を算出する。本実施形態の算出部２２３は、単位数量を１レシートとし、１レシートごとに削減率を算出するが、削減率は、１ロールごとに算出してもよい。また、算出部２２３は、プリンター２００の寿命が尽きるまでに印刷したレシート５００を対象として、ロール紙の削減率を算出してもよい。
【００３９】
算出部２２３は、印刷データの内容（印刷データに含まれる文字や、バーコード、図形）や、設定ファイル２１２に基づいて第２印刷長さＬ２を直接算出してもよい。
【００４０】
算出部２２３は、算出した第１印刷長さＬ１や、総削減長さ、削減率を用紙削減情報としてＲＡＭに記憶させる。また、算出部２２３は、プリンター２００の電源がオフされる前に、ＲＡＭに記憶させた第１印刷長さＬ１や、総削減長さ、削減率を用紙削減情報としてプリント記憶部２１０に記憶させる。また、算出部２２３は、同一のロール紙から印刷したレシートの情報が対応付けられるように用紙削減情報をプリント記憶部２１０に記憶させる。例えば、算出部２２３は、プリンター２００においてロール紙の交換作業が行われるごとに、プリンター２００にセットされたロール紙にシリアル番号を付す。そして、算出部２２３は、算出した第１印刷長さＬ１や、総削減長さ、削減率を、ロール紙に付したシリアル番号に対応付けて記憶させる。これにより、１ロール分のロール紙を使用した印刷において、削減された印刷長さの総和や、削減率の平均値等を算出することができる。
【００４１】
また、算出部２２３は、入力部２５１により操作を受け付けた場合、ＲＡＭに記憶させた用紙削減情報を表示部２５２に表示させる。これにより、レシート５００の印刷処理において、削減された印刷長さ等の情報をプリンター２００に表示させることができ、ユーザーに、削減されたロール紙の印刷長さを容易に把握させることができる。
また、算出部２２３は、タブレット端末３００から用紙削減情報の取得を要求する制御コマンドを受信した場合、ＲＡＭと、プリント記憶部２１０との少なくとも一方に記憶した用紙削減情報と、設定ファイルに登録された用紙サイズを示す情報とを、制御コマンドを受信したタブレット端末３００に送信する。用紙サイズには、プリンター２００が使用するロール紙の幅方向のサイズを示す情報が含まれる。
【００４２】
印刷部２４０は、ロール紙に印刷画像を印刷するための各種機構を備える。印刷部２４０は、プリンター２００の筐体に収容されたロール紙を、印刷位置に搬送する搬送機構や、サーマルヘッド（印刷ヘッド）２４１によってロール紙にドットを形成して画像を印刷する印刷機構、ロール紙を所定の位置で切断する切断機構等を備える。サーマルヘッド２４１は発熱抵抗体を一列に配置し、印刷する画像に対応して選択的に電位を与えて発熱抵抗体を発熱させることで印刷媒体に印刷を行うデバイスである。
印刷部２４０は、プリント制御部２２０の制御により、プリントバッファー２０３に展開された印刷画像をロール紙に印刷する。
【００４３】
入力部２５１は、操作スイッチ（図示略）を備え、操作スイッチに対する操作を検出し、検出した操作に対応する操作信号をプリント制御部２２０に出力する。
表示部２５２は、ＬＥＤ（図示略）を備え、プリント制御部２２０の制御に従ってＬＥＤを点灯及び消灯させる。
【００４４】
無線通信部２６０は、プリント制御部２２０の制御に従って、外部の装置（本実施形態ではタブレット端末３００）と無線通信を行う。無線通信部２６０が行う無線通信は、アクセスポイントを介して通信する無線ＬＡＮのインフラストラクチャーモードや、アクセスポイントを介さずに通信する無線ＬＡＮのアドホックモードであってもよいし、Ｂｌｕｅｔｏｏｔｈや、ＷｉｒｅｌｅｓｓＵＳＢ等の近距離線通信であってもよい。
【００４５】
図３は、タブレット端末３００の構成を示すブロック図である。
タブレット端末３００は、端末制御部３１０と、端末記憶部３２０と、タッチパネル３３０と、無線通信部３４０とを備える。端末記憶部３２０は、本発明の「制御装置側記憶部」に相当する。
【００４６】
端末制御部３１０は、ＣＰＵや、ＲＯＭ、ＲＡＭ、周辺回路等を備え、タブレット端末３００の各部を制御する。
ＲＯＭには、ＣＰＵによって実行される基本制御プログラム（オペレーティングシステム）が記憶され、端末記憶部３２０には、アプリケーションプログラムが記憶される。基本制御プログラムやアプリケーションプログラムはＲＡＭに展開され、ＣＰＵは、ＲＡＭに展開された基本制御プログラムやアプリケーションプログラムを実行して、タブレット端末３００の各部を制御する。
【００４７】
端末制御部３１０は、プリンター２００が印刷処理において削減したロール紙の印刷長さの表示要求をタッチパネル３３０により受け付けた場合、無線通信部３４０を制御して、用紙削減情報の取得を要求する制御コマンドをプリンター２００に送信する。端末制御部３１０は、プリンター２００から用紙削減情報を受信すると、受信した用紙削減情報に基づき、ロール紙の削減効果を表す値を算出する。
端末制御部３１０は、削減効果を表す値として、例えば、１ロール分のロール紙を使用したレシートの印刷において、削減されたロール紙の印刷長さや、削減率の平均値を算出する。プリンター２００から受信する用紙削減情報は、ロール紙に付されたシリアル番号に対応付けられている。端末制御部３１０は、同一のシリアル番号に対応付けられたレシートの総削減長さを加算し、１ロール分のロール紙を使用したレシートの印刷において削減された印刷長さ（以下、１ロール削減長さという）を算出する。また、端末制御部３１０は、同一のシリアル番号に対応付けられたレシートの削減率の平均値を算出する。端末制御部３１０は、算出した１ロール削減長さや、削減率の平均値をプリント記憶部２１０に記憶させる。
【００４８】
また、端末制御部３１０は、ロール紙の削減効果を表す値として、削減されたロール紙の面積や、削減されたロール紙の面積に相当するロール紙の金額等を算出する。また、端末制御部３１０は、ロール紙の削減効果を表す値として、削減された面積のロール紙を生産するのに必要な木の本数や、削減されたロール紙の面積に対応するＣＯ２の削減量等を算出する。
端末制御部３１０は、ロール紙の面積を、受信した用紙削減情報に含まれる総削減長さに、用紙削減情報と共に受信した用紙サイズが示すロール紙の幅を積算して求める。また、端末記憶部３２０は、ロール紙の単位面積当たりの金額や、単位面積のロール紙の生産に必要な木の本数、単位面積当たりのＣＯ２の削減量等の情報を記憶する。端末制御部３１０は、端末記憶部３２０の記憶する情報を参照して、ロール紙の削減効果を表す値を算出する。端末制御部３１０は、算出したロール紙の削減効果を示す値をプリント記憶部２１０に記憶させる。
なお、本実施形態では、タブレット端末３００の端末制御部３１０が、削減されたロール紙の面積や、削減されたロール紙の面積に相当するロール紙の金額等を算出する場合について説明するが、プリンター２００の算出部２２３においてこれらの情報を算出し、表示部２５２に表示させてもよい。
【００４９】
端末制御部３１０は、算出したこれらの削減効果を表す値や、用紙削減情報として受信した情報をタッチパネル３３０に表示させる。端末制御部３１０は、用紙削減情報として受信した情報には、例えば、削減処理により削減された１レシートごとの印刷長さ（総削減長さ）や、１レシートごと削減率等が含まれる。
【００５０】
端末記憶部３２０は、例えば、ＥＥＰＲＯＭやフラッシュメモリー等の不揮発性メモリーを備える。端末記憶部３２０は、プリンター２００から受信した情報を記憶する。本実施形態の端末記憶部３２０は、用紙削減情報を記憶する。
また、端末記憶部３２０は、端末制御部３１０がロール紙の削減効果を表す値の算出に使用する情報を記憶する。端末記憶部３２０は、削減効果を表す値の算出に使用する情報として、ロール紙の単位面積当たりの金額や、単位面積のロール紙の生産に必要な木の本数、単位面積当たりのＣＯ２の削減量等の情報を記憶する。
【００５１】
タッチパネル３３０は、液晶パネル等の表示パネル３３１と、表示パネル３３１に重ねて設けられたタッチセンサー３３２とを備える。表示パネル３３１は、端末制御部３１０の制御により各種画像を表示する。タッチセンサー３３２は、タッチ操作を検出して端末制御部３１０に出力する。端末制御部３１０は、タッチセンサー３３２の入力に基づいて、タッチ操作に対応する処理を実行する。表示パネル３３１は、本発明の「表示手段」に相当する。
【００５２】
無線通信部３４０は、端末制御部３１０の制御に従って、外部の装置（本実施形態ではプリンター２００）と無線通信を行う。無線通信部３４０が行う無線通信は、アクセスポイントを介して通信する無線ＬＡＮのインフラストラクチャーモードや、アクセスポイントを介さずに通信する無線ＬＡＮのアドホックモードであってもよいし、Ｂｌｕｅｔｏｏｔｈや、ＷｉｒｅｌｅｓｓＵＳＢ等の近距離線通信であってもよい。
【００５３】
図４は、プリンター２００の動作を示すフローチャートである。特に、ホスト装置１００から印刷コマンド及び印刷データを受信した場合のプリンター２００の動作を示すフローチャートである。
プリンター２００は、ホスト装置１００から印刷コマンド及び印刷データを受信していない場合（ステップＳ１／ＮＯ）、ホスト装置１００から印刷コマンド及び印刷データを受信するまで待機する。また、プリンター２００は、ホスト装置１００から印刷コマンド及び印刷データを受信すると（ステップＳ１／ＹＥＳ）、受信した印刷コマンド及び印刷データを受信バッファー２０２に格納する（ステップＳ２）。
【００５４】
受信バッファー２０２に印刷コマンド及び印刷データが格納されると、プリント制御部２２０の画像データ生成部２２１は、受信バッファー２０２から印刷コマンドを取得し、取得した印刷コマンドを解析する。画像データ生成部２２１は、印刷コマンドの解析結果や印刷データに基づき、プリントバッファー２０３に展開する画像データを生成する。画像データ生成部２２１は、生成した画像データを削減処理部２２２に出力する。
【００５５】
削減処理部２２２は、画像データ生成部２２１から画像データが入力され、プリンター２００の動作モードが用紙削減モードである場合に削減処理を行う。
まず、削減処理部２２２は、レシート５００の上端部及び下端部の少なくとも一方の余白の幅の削減が可能であるか否かを判定する（ステップＳ４）。削減処理部２２２は、例えば、設定ファイル２１２に設定された余白の幅が、予め設定された最低余白の幅よりも大きいか否かを判定して、レシート５００の上端部及び下端部の少なくとも一方の余白の幅の削減が可能であるか否かを判定する。削減処理部２２２は、余白の幅の削減が可能ではない場合、すなわち、設定ファイル２１２に設定された余白の幅が最低余白の幅と同一である場合（ステップＳ４／ＮＯ）、ステップＳ６の判定に移行する。また、削減処理部２２２は、余白の幅の削減が可能である場合、すなわち、設定ファイル２１２に設定された余白の幅が最低余白の幅よりも広い場合（ステップＳ４／ＹＥＳ）、削減可能と判定した端部の余白の幅を削減する（ステップＳ５）。
削減処理部２２２は、印刷部２４０に印刷画像を印刷させる開始行を変更して、レシート５００の上端部の余白を削減する。また、削減処理部２２２は、印刷部２４０による印刷画像の印刷が完了した後に形成される、印刷画像が印刷されない行の数を削減して、印刷部２４０にロール紙のカットを指示する。
【００５６】
次に、削減処理部２２２は、画像データ生成部２２１により生成された画像データが、フォントデータである場合、行間を削減可能であるか否かを判定する（ステップＳ６）。
削減処理部２２２は、例えば、設定ファイル２１２により設定された行間が、予め設定された最小行間よりも広いか否かを判定して、行間を削減可能であるか否かを判定する。削減処理部２２２は、設定ファイル２１２により設定された行間が、予め設定された最小行間よりも広く、行間を削減可能であると判定すると（ステップＳ６／ＹＥＳ）、削減可能と判定した行間を削減する。削減処理部２２２は、ステッピングモーターのステップ数を削減して（ステップＳ７）、ロール紙を搬送する搬送長を削減し、行間を削減する。
【００５７】
次に、削減処理部２２２は、画像データ生成部２２１により生成された画像データが、バーコードの画像データである場合に、バーコードの画像データの高さを縮小可能であるか否かを判定する（ステップＳ８）。削減処理部２２２は、バーコードの画像データの高さを、規格で定められた最低の高さと比較して、バーコードの画像データの高さを縮小できるか否かを判定する。削減処理部２２２は、バーコードの画像データの高さが、規格で定められた最低の高さよりも高い場合、バーコードの画像データの高さを縮小可能と判定する（ステップＳ８／ＹＥＳ）。削減処理部２２２は、縮小可能と判定すると、バーコードの画像データを画像処理して、バーコードの画像データの高さを縮小する（ステップＳ９）。
【００５８】
次に、算出部２２３は、ロール紙を搬送した回数に、ステッピングモーターのステップ数から算出される搬送長を乗算して、第１印刷長さＬ１を算出する（ステップＳ１０）。また、算出部２２３は、余白の幅の削減、行間の削減及びバーコードの高さの縮小の各処理ごとに削減長さを算出し、算出した各削減長さを加算して総削減長さを算出する。そして、算出部２２３は、第１印刷長さＬ１に、算出した総削減長さを加算して第２印刷長さＬ２を算出する（ステップＳ１１）。さらに、算出部２２３は、第２印刷長さＬ２に対する第１印刷長さＬ１の割合である削減率を算出する（ステップＳ１２）。
【００５９】
算出部２２３は、第１印刷長さＬ１や、総削減長さ、第２印刷長を算出すると、算出したこれらの情報を用紙削減情報としてＲＡＭに記憶させる（ステップＳ１３）。また、算出部２２３は、入力部２５１の操作スイッチが操作され、プリンター２００の電源をオフする操作を受け付けると、ＲＡＭに記憶させた用紙削減情報をプリント記憶部２１０に記憶させる。
【００６０】
次に、図５に示すフローチャートを参照して、タブレット端末３００からコマンドを受信した場合のプリンター２００の動作を説明する。図５は、プリンター２００の動作を示すフローチャートである。
プリンター２００のプリント制御部２２０は、コマンドを受信していない場合（ステップＳ２１／ＮＯ）、この処理フローを開始せず、コマンドを受信するまで待機する（ステップＳ２１）。
また、プリント制御部２２０は、コマンドを受信すると（ステップＳ２１／ＹＥＳ）、受信したコマンドは、制御コマンドであるか否かを判定する（ステップＳ２２）。制御コマンドとは、例えば、プリンター２００に印刷処理以外の動作を行わせるためのコマンドであり、印刷処理以外の動作には、プリンター２００から、プリンター２００のステータスやバージョン情報を取得するコマンドや、プリンター２００の動作モードを変更するコマンド等が含まれる。プリント制御部２２０は、受信したコマンドが制御コマンドではないと判定すると（ステップＳ２２／ＮＯ）、受信したコマンドに対応した処理、例えば、印刷処理等を実行する（ステップＳ２３）。
【００６１】
また、プリント制御部２２０は、受信したコマンドが制御コマンドであると判定した場合（ステップＳ２２／ＹＥＳ）、さらに受信したコマンドが、タブレット端末３００から受信した送信要求コマンドであるか否かを判定する（ステップＳ２４）。送信要求コマンドは、制御コマンドであって、プリンター２００が生成した用紙削減情報をタブレット端末３００に送信するように要求するコマンドである。また、この送信要求コマンドは、即時実行コマンドであり、印刷処理等の実行中の他の処理があっても、この実行中の他の処理を中断して、送信要求コマンドにより要求される処理を実行する必要があるコマンドである。
プリント制御部２２０は、受信したコマンドが送信要求コマンドではないと判定した場合（ステップＳ２４／ＮＯ）、受信したコマンドに対応した処理を、実行中の他の処理がなければ実行する（ステップＳ２３）。また、プリント制御部２２０は、実行中の他の処理がある場合には、この他の処理の終了を待って、受信したコマンドに対応した処理を実行する（ステップＳ２３）。
【００６２】
また、プリント制御部２２０は、受信したコマンドが送信要求コマンドであると判定した場合（ステップＳ２４／ＹＥＳ）、印刷処理等の実行中の他の処理があるか否かを判定する（ステップＳ２５）。プリント制御部２２０は、実行中の他の処理があると判定した場合（ステップＳ２５／ＹＥＳ）、この実行中の他の処理を中断し、プリント記憶部２１０又はＲＡＭから用紙削減情報を読み出し、読み出した用紙削減情報を、無線通信部２６０を制御してタブレット端末３００に送信する（ステップＳ２７）。用紙削減情報のタブレット端末３００への送信が完了すると、プリント制御部２２０は、中断した処理を再開し（ステップＳ２８）、再開した処理が完了すると、この処理フローを終了する。
【００６３】
また、プリント制御部２２０は、実行中の他の処理がないと判定した場合（ステップＳ２５／ＮＯ）、プリント記憶部２１０又はＲＡＭから用紙削減情報を読み出し、読み出した用紙削減情報を、無線通信部２６０を制御してタブレット端末３００に送信する（ステップＳ２６）。
【００６４】
図６は、タブレット端末３００の動作を示すフローチャートである。この処理フローでは、削減効果を示す値として、削減処理により削減されたロール紙の印刷長さに基づき算出されるロール紙の削減金額をタブレット端末３００に表示させる場合を示すが、他の削減効果を示す値についても同様に処理される。
タブレット端末３００の端末制御部３１０は、タッチセンサー３３２の入力を監視して、ユーザーの操作を受け付けたか否かを判定する。ユーザーの操作を受け付けていない場合（ステップＳ３１／ＮＯ）、端末制御部３１０は、操作を受け付けるまで待機する。
端末制御部３１０は、ユーザーの操作を受け付けると（ステップＳ３１／ＹＥＳ）、受け付けた操作は、削減金額の表示要求であるか否かを判定する（ステップＳ３２）。端末制御部３１０は、受け付けた操作が削減金額の表示要求ではないと判定すると（ステップＳ３２／ＮＯ）、タッチセンサー３３２で受け付けた操作に対応した他の処理を実行する（ステップＳ３３）。
【００６５】
また、端末制御部３１０は、受け付けた操作が削減金額の表示要求であると判定すると（ステップＳ３２／ＹＥＳ）、用紙削減情報の送信を要求する制御コマンドを生成し、生成した制御コマンドを、無線通信部３４０を介してプリンター２００に送信する（ステップＳ３４）。
【００６６】
次に、端末制御部３１０は、プリンター２００からデータを受信したか否かを判定する。端末制御部３１０は、プリンター２００からデータを受信していない場合（ステップＳ３５／ＮＯ）、データを受信するまで待機する。
また、端末制御部３１０は、プリンター２００からデータを受信した場合（ステップＳ３５／ＹＥＳ）、受信したデータから用紙削減情報を取り出す。端末制御部３１０は、取り出した用紙削減情報に基づき、削減金額を算出する。端末制御部３１０は、端末記憶部３２０が記憶する情報を参照して、削減金額を算出する（ステップＳ３６）。端末制御部３１０は、削減金額を端末記憶部３２０に記憶させ、さらに算出した削減金額を表示パネル３３１に表示させる（ステップＳ３７）。
【００６７】
以上説明したように本発明の印刷装置、印刷システム及び印刷装置の制御方法を適用した実施形態は、印刷部２４０と、削減処理部２２２と、算出部２２３と、プリント記憶部２１０とを備える。
印刷部２４０は、ロール紙を搬送方向Ｈに搬送し、受信した印刷コマンドに基づいて、ロール紙に画像を印刷する。削減処理部２２２は、印刷コマンドによるロール紙への搬送方向Ｈの印刷長さを削減するように印刷部２４０を制御する。算出部２２３は、削減処理部２２２により削減されたロール紙の印刷長さを算出する。プリント記憶部２１０は、算出部２２３によって算出されたロール紙の削減された印刷長さを示す情報を記憶する。従って、削減されたロール紙の印刷長さを容易に把握することができる。
【００６８】
また、削減処理部２２２は、搬送方向Ｈにおける余白の削減、搬送方向Ｈにおけるバーコードの高さの縮小、及び行間隔の削減との少なくともいずれか１つを実行することによって、印刷コマンドによるロール紙への搬送方向Ｈの印刷長さを削減する。従って、ロール紙の印刷において、ロール紙の印刷長さを効果的に削減することができる。
【００６９】
また、算出部２２３は、削減処理部２２２により削減されたロール紙の印刷長さに基づき、単位数量当たりのロール紙の削減率を算出することを特徴とする。従って、印刷処理においてロール紙の搬送方向Ｈの印刷長さを削減していない場合と比較して、ロール紙の使用量がどの程度削減されたのかを示すことができる。
【００７０】
また、プリント記憶部２１０は、ロール紙の紙幅に関する情報を記憶し、算出部２２３は、削減制御部２２２により削減されたロール紙の印刷長さと、プリント記憶部２１０が記憶するロール紙の紙幅に関する情報とに基づき、削減制御部２２２により削減されたロール紙の面積を算出する。従って、ロール紙の使用量がどの程度削減されたのかをロール紙の面積で示すことができる。
【００７１】
また、算出部２２３は、削減制御部２２２によりロール紙の搬送方向Ｈにおける印刷長さを削減した場合のロール紙の印刷長さを示す第１印刷長さと、ロール紙の搬送方向Ｈにおける印刷長さを削減しない場合のロール紙の印刷長さを示す第２印刷長さとを求める。そして、算出部２２３は、算出した第２印刷長さに対する第１印刷長さの割合を算出する。従って、搬送方向Ｈにおける印刷長さを削減していない場合と比較して、ロール紙の使用量がどの程度削減されたのかを示すことができる。
【００７２】
また、プリンター２００は、プリント記憶部２１０が記憶する削減されたロール紙の印刷長さを示す情報に基づき、削減されたロール紙の印刷長さを表示する表示部２５２を備える。従って、表示部２５２に、削減されたロール紙の印刷長さが表示され、削減されたロール紙の印刷長さを容易に把握することができる。
【００７３】
また、プリンター２００は、タブレット端末３００に接続可能であり、削減処理部２２２は、タブレット端末３００から受信した制御コマンドに基づいて、削減されたロール紙の印刷長さを示す情報をタブレット端末３００に送信する。
従って、タブレット端末３００に、削減されたロール紙の印刷長さを示す情報を取得させることができ、タブレット端末３００において、取得した情報を表示させたり、取得した情報を用いた処理を行わせたりすることができる。
【００７４】
また、プリンター２００は、算出部２２３により算出される削減されたロール紙の印刷長さを示す情報を一時的に記憶するＲＡＭと、算出部２２３により算出される削減されたロール紙の印刷長さを示す情報を累積的に記憶するプリント記憶部２１０とを備える。
削減処理部２２２は、タブレット端末３００から受信した制御コマンドに基づいて、ＲＡＭに記憶された削減されたロール紙の印刷長さを示す情報、又はプリント記憶部２１０に記憶された削減されたロール紙の印刷長さを示す情報を累積した情報をタブレット端末３００に送信する。
従って、例えば、プリンター２００の電源がオンされてからオフされるまでの間に印刷されたレシート５００の削減された印刷長さをタブレット端末３００において表示させることができる。また、タブレット端末３００において、例えば、ロール紙の削減された印刷長さの累積値を算出して表示させることもできる。
【００７５】
また、制御コマンドは、ロール紙への印刷を指示するコマンドを含む通常コマンドよりも優先して処理を実行するように定義された即時処理コマンドである。
従って、プリンター２００が他の処理を実行中であっても、実行中の他の処理に優先して、プリンター２００に、削減されたロール紙の印刷長さを示す情報を送信させることができる。
【００７６】
上述した実施形態は本発明の好適な実施の形態である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形実施が可能である。
例えば、上述した実施形態では、プリンター２００として、サーマルプリンターを例に挙げて説明したが、インクジェットプリンターであってもよい。
【００７７】
また、上述した実施形態では、削減処理として、余白の削減、行間の削減、バーコードの高さの削減とを示したが、改行による余白を削減してもよい。ホスト装置１００から受信する印刷コマンドには、改行による余白が設定されている。削減処理部２２２は、この改行による余白の幅を、設定ファイルに設定された余白の幅よりも短くして、ロール紙の印刷長さを削減する。
【００７８】
また、上述した実施形態では、ホスト装置１００とタブレット端末３００とを別々に設けた例を示したが、ホスト装置１００の機能をタブレット端末３００が有してもよく、例えば、タブレット端末３００が印刷コマンドをプリンター２００に送信してもよい。この場合、印刷システム１からホスト装置１００は省略され、印刷システム１は、プリンター２００と、タブレット端末３００とを備える。
【００７９】
また、図４〜図６に示すフローチャートの処理単位は、プリンター２００のプリント制御部２２０、及びタブレット端末３００の端末制御部３１０の処理を理解容易にするために、主な処理内容に応じて分割したものである。処理単位の分割の仕方や名称によって、本発明が制限されることはない。プリント制御部２２０及び端末制御部３１０の処理は、処理内容に応じて、さらに多くの処理単位に分割することもできる。また、１つの処理単位がさらに多くの処理を含むように分割することもできる。また、上記のフローチャートの処理順序も、図示した例に限られるものではない。
【００８０】
また、図１及び図３に示した各機能部は機能的構成を示すものであって、具体的な実装形態は特に限定されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上述した実施形態においてソフトウェアで実現される機能の一部をハードウェアとしてもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、ホスト装置１００、プリンター２００及びタブレット端末３００の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
【符号の説明】
【００８１】
１…印刷システム、５…通信線、１００…ホスト装置、１１０…Ｉ／Ｆ部、１２０…ホスト制御部、１２１…アプリケーション実行部、１２２…ドライバー実行部、２００…プリンター（印刷装置）、２０１…Ｉ／Ｆ部、２０２…受信バッファー、２０３…プリントバッファー、２１０…プリント記憶部、２１１…フォントテーブル、２１２…設定ファイル、２２０…プリント制御部、２２１…画像データ生成部、２２２…削減処理部（制御部）、２２３…算出部、２４０…印刷部、２４１…サーマルヘッド、２５１…入力部、２６０…無線通信部、３００…タブレット端末（制御装置）、３１０…端末制御部、３２０…端末記憶部（制御装置側記憶部）、３３０…タッチパネル、３３１…表示パネル（表示手段）、３３２…タッチセンサー、３４０…無線通信部、５００…レシート、５１０…バーコード画像。
【図１】
0006759722.tif 000002
【図２】
0006759722.tif 000003
【図３】
0006759722.tif 000004
【図４】
0006759722.tif 000005
【図５】
0006759722.tif 000006
【図６】
0006759722.tif 000007