(57)【特許請求の範囲】
【請求項１】
連続用紙を含む印刷体を所定の経路に沿って移動する移動部と、
前記所定の経路に沿って配置される印刷部であって、前記印刷体に文字又は図形を印刷する印刷部と、
前記印刷体の切りしろ範囲を設定する設定部と、
前記所定の経路に沿って配置される切断部と、
前記設定部により設定された切りしろ範囲と当該切断部の位置とが重なる場合、前記切断部によって前記印刷体を切断させるとともに、前記印刷部及び前記移動部を制御する制御部と、を備え、
前記設定部は、
現在の前記切断部の切断位置と前記切りしろ範囲の前端との間の距離を示す第１の値、及び、現在の前記切断部の切断位置と前記切りしろ範囲の後端との間の距離を示す第２の値を、それぞれ設定し、
前記制御部は、
前記印刷部により前記印刷体に文字または図形を印刷させた後、前記設定部により前記切りしろ範囲が設定されると、設定された前記切りしろ範囲の分だけ前記移動部により前記印刷体を移動させてから、前記印刷部により前記印刷体に１行分の文字または図形を印刷させて前記移動部によって前記印刷体を１行の幅だけ移動させ、この前記印刷体を１行の幅だけ移動させる毎に前記第１の値及び前記第２の値を１行分ずつ減算し、
減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別し、
前記切断部の切断位置が前記切りしろ範囲に重なる場合は、前記切断部により前記印刷体を切断させ、
前記切断部により前記印刷体を切断させた後に、前記第１の値を正の値に変更し、前記第２の値を負の値に変更することによって切りしろ設定が解除されたことを示す設定を行い、
減算した前記第１の値及び前記第２の値に基づいて前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別した結果、前記印刷体が移動されたことで前記印刷体の前記切りしろ範囲が前記切断部の位置を通過していた場合には、前記第１の値を正の値に変更し、前記第２の値を負の値に変更する制御を行い、
減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別する際に、前記第１の値が正の値で前記第２の値が負の値である場合には、前記切りしろ範囲が解除されたと判別すること、
を特徴とする印刷装置。
【請求項２】
ホスト装置から送信される指令データを受信する受信部をさらに備え、
前記制御部は、前記受信部により受信された指令データが文字または図形を指定する印刷指令であった場合、当該指定された文字または図形を前記印刷部に印刷させ、
前記設定部は、前記受信部により受信された指令データが前記印刷体の切りしろ範囲を指定する切りしろ設定指令であった場合、当該指定された切りしろ範囲に基づいて前記第１の値及び前記第２の値を設定すること、
を特徴とする請求項１に記載の印刷装置。
【請求項３】
前記制御部は、前記受信部により受信された指令データが切りしろ範囲を解除する切りしろ解除指令であった場合、前記第１の値を正の値に変更し、前記第２の値を負の値に変更することによって切りしろ設定が解除されたことを示す設定を行うことを特徴とする請求項２に記載の印刷装置。
【請求項４】
連続用紙を含む印刷体を所定の経路に沿って移動する移動部と、前記所定の経路に沿って配置される印刷部であって、前記印刷体に文字又は図形を印刷する印刷部と、前記印刷体の切りしろ範囲を設定する設定部と、前記所定の経路に沿って配置される切断部と、前記設定部により設定された切りしろ範囲と当該切断部の位置とが重なる場合、前記切断部によって前記印刷体を切断させるとともに、前記印刷部及び前記移動部を制御する制御部と、を備えた印刷装置により、
前記印刷体の切りしろ範囲として、現在の前記切断部の切断位置と前記切りしろ範囲の前端との間の距離を示す第１の値、及び、現在の前記切断部の切断位置と前記切りしろ範囲の後端との間の距離を示す第２の値を設定する設定工程と、
前記印刷部により前記印刷体に文字または図形を印刷させた後、前記設定部により前記切りしろ範囲が設定されると、設定された前記切りしろ範囲の分だけ前記移動部により前記印刷体を移動させてから、前記印刷部により前記印刷体に１行分の文字または図形を印刷させて前記移動部によって前記印刷体を１行の幅だけ移動させる印刷工程と、
前記印刷工程で前記印刷体を１行の幅だけ移動させる毎に前記第１の値及び前記第２の値を１行分ずつ減算する減算工程と、
前記減算工程で減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別し、前記切断部の切断位置が前記切りしろ範囲に重なる場合は、前記切断部により前記印刷体を切断する切断工程と、
前記切断工程で前記印刷体を切断した後に、前記第１の値を正の値に変更し、前記第２の値を負の所定の値に変更することによって切りしろ設定が解除されたことを示す設定を行う解除工程と、を含み、
前記切断工程で、減算した前記第１の値及び前記第２の値に基づいて前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別した結果、前記印刷体が移動されたことで前記印刷体の前記切りしろ範囲が前記切断部の位置を通過していた場合には、前記解除工程を行って前記第１の値を正の値に変更し、前記第２の値を負の値に変更する制御を行い、
前記切断工程で、減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別する際に、前記第１の値が正の値で前記第２の値が負の値である場合には、前記切りしろ範囲が解除されたと判別すること、
を特徴とする印刷装置の制御方法。
【請求項５】
前記切断工程において、前記印刷体の切りしろ範囲と前記切断部の位置とが重なるか否かの判別は、前記減算工程にて前記第１の値及び前記第２の値を１行分ずつ減算するごとに行われることを特徴とする請求項４に記載の印刷装置の制御方法。
【請求項６】
ホスト装置から送信される指令データを受信する受信工程、をさらに含み、
前記受信工程にて受信された指令データが文字または図形を指定する印刷指令であった場合、前記印刷工程にて当該指定された文字または図形を印刷し、
前記受信工程にて受信された指令データが前記印刷体の切りしろ範囲を指定する切りしろ設定指令であった場合、前記設定工程にて、当該指定された切りしろ範囲に基づいて前記第１の値及び前記第２の値を設定することを特徴とする請求項４に記載の印刷装置の制御方法。
【請求項７】
前記受信工程にて受信された指令データが切りしろ範囲を解除する切りしろ解除指令であった場合、前記解除工程にて、前記第１の値を正の値に変更し、前記第２の値を負の値に変更することによって切りしろ設定が解除されたことを示す設定を行うことを特徴とする請求項６に記載の印刷装置の制御方法。
【請求項８】
連続用紙を含む印刷体を所定の経路に沿って移動する移動部と、前記所定の経路に沿って移動される印刷体に文字又は図形を印刷する印刷部と、前記印刷体の切りしろ範囲を設定する設定手段と、前記所定の経路に沿って配置される切断部と、を備えた印刷装置を制御するコンピュータを、
前記印刷体の切りしろ範囲として、現在の前記切断部の切断位置と前記切りしろ範囲の前端との間の距離を示す第１の値、及び、現在の前記切断部の切断位置と前記切りしろ範囲の後端との間の距離を示す第２の値を、それぞれ設定する設定手段と、
前記設定手段により設定された切りしろ範囲と当該切断部の位置とが重なる場合、前記切断部によって前記印刷体を切断させるとともに、前記印刷部により前記印刷体に文字または図形を印刷させた後、前記設定部により前記切りしろ範囲が設定されると、設定された前記切りしろ範囲の分だけ前記移動部により前記印刷体を移動させてから、前記印刷部により前記印刷体に１行分の文字または図形を印刷させて前記移動部によって前記印刷体を１行の幅だけ移動させ、この前記印刷体を１行の幅だけ移動させる毎に前記第１の値及び前記第２の値を１行分ずつ減算し、減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別し、前記切断部により前記印刷体を切断させた後に、前記第１の値を正の値に変更し、前記第２の値を負の値に変更することによって切りしろ設定が解除されたことを示す設定を行い、減算した前記第１の値及び前記第２の値に基づいて前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別した結果、前記印刷体が移動されたことで前記印刷体の前記切りしろ範囲が前記切断部の位置を通過していた場合には、前記第１の値を正の値に変更し、前記第２の値を負の値に変更する制御を行い、減算した前記第１の値及び前記第２の値に基づいて、前記切断部の切断位置が前記切りしろ範囲に重なるか否かを判別する際に、前記第１の値が正の値で前記第２の値が負の値である場合には、前記切りしろ範囲が解除されたと判別する制御手段と、
して機能させることを特徴とするプログラム。
【請求項９】
請求項８に記載のプログラムをコンピュータ読み取り可能に記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷装置、その制御方法、この制御方法を実現するプログラム、及び、このプログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
連続用紙などの印刷体（以下適宜「用紙」という。）に文字や図形を印刷する印刷装置（プリンタ）は、たとえば、ＰＯＳ（Point Of Sale）用レジスタ端末でレシートや領収書を印刷したり、食堂にて客の注文を調理スタッフに連絡する食券の印刷など、さまざまな分野で利用されている。
【０００３】
このような印刷装置では、印刷ヘッドを駆動して文字や図形を印刷するとともに、用紙カッタを備えており、所定の単位、たとえば、１件分のレシートや１卓分の注文ごとに、印刷済みの用紙を切断する。以下、この切断単位の１枚を「伝票」と呼ぶ。
【０００４】
また、切断の手法は、用紙を完全に切断するもの（以下フルカットと称する）、用紙の右もしくは左の端部を短く残して切断するものまたはミシン目状に切断するもの（以下パーシャルカットと称する）など様々である。
【０００５】
また、これらの印刷や切断は、印刷装置に接続されたホスト装置上で動作するアプリケーションソフトウェアにより送信される指令データ（以下コマンドともいう）によって制御されている。文字や図形を印刷するには印刷指令を、用紙を切断するには切断指令を、それぞれホスト装置から印刷装置へ送信する。
【０００６】
用紙カッタを備える印刷装置は、用紙を搬送する経路に沿って、その上流側に印刷ヘッドが、下流側に用紙カッタが配置されている。以下の説明では、印刷ヘッドと用紙カッタとの間の距離を「カッタマージン」と呼ぶ。
【０００７】
従来は、特に用紙を双方向に搬送することのできない印刷装置において、伝票の最終行を印刷してからカッタマージン分だけ紙送りを行い、その後用紙カッタを駆動して用紙を切断し、１枚の伝票として発行していた。
【０００８】
【発明が解決しようとする課題】
しかしながら、このような従来の手法では、紙送りされるカッタマージン分の用紙が無駄になるという問題が発生していた。このため、このようなカッタマージンの無駄を節約したいという要望は強い。
【０００９】
一方、アプリケーションソフトウェアにてカッタマージンの無駄を節約するために、伝票の先頭に店のロゴなどを印刷する手法がある。すなわち、次に印刷する伝票の先頭部分に、ちょうどカッタマージンに入るだけの文字や図形を印刷する印刷指令を送信した後、切断指令を送信して１枚目の伝票を用紙から切断する手法である。
【００１０】
しかしながら、上記の手法を実現するにはアプリケーションソフトウェアにて複雑な処理を行う必要がある。また、カッタマージンの幅は印刷装置の機種によってさまざまであり、そのそれぞれにアプリケーションソフトウェアで対応する必要がある。このため、アプリケーションソフトウェアの構成をより単純にできるようにしたいという要望も大きい。
【００１１】
本発明は、上記のような課題を解決するためになされたもので、連続用紙などの印刷体に文字や図形を印刷してこれを無駄なく伝票に切断するのに好適な印刷装置、その制御方法、および、これらを実現するプログラムを記録した情報記録媒体を提供することを目的とする。
【００１２】
【課題を解決するための手段】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【００１３】
本発明の印刷装置は、移動部と、印刷部と、設定部と、切断部と、解除部と、を備えるように構成する。
【００１４】
ここで、移動部は、連続用紙を含む印刷体を所定の経路に沿って移動する。
【００１５】
一方、印刷部は、所定の経路に沿って配置され、印刷体に文字又は図形を印刷する。
【００１６】
また、設定部は、印刷体の切りしろ範囲を設定する。
【００１７】
さらに、切断部は、所定の経路に沿って配置され、設定部により設定された切りしろ範囲と当該切断部の位置とが重なる場合、印刷体を切断する。
【００１８】
一方、解除部は、切断部により印刷体が切断された場合、設定部により設定された切りしろ範囲を解除する。
【００１９】
また、本発明の印刷装置の切断部は、印刷部が印刷体に文字または図形を１行印刷するごとに、印刷体の切りしろ範囲と当該切断部の位置が重なるか否かを判断するように構成することができる。
【００２０】
また、本発明の印刷装置は、通過解除制御部をさらに備えるように構成することができる。
【００２１】
ここで、通過解除制御部は、印刷体が移動され、印刷体の切りしろ範囲が切断部を通過した場合、設定部により設定された切りしろ範囲を解除部に解除させる。
【００２２】
また、本発明の印刷装置は、受信部と、印刷制御部と、設定制御部と、をさらに備えるように構成することができる。
【００２３】
ここで、受信部は、ホスト装置から送信される指令データを受信する。
【００２４】
一方、印刷制御部は、受信部により受信された指令データが文字または図形を指定する印刷指令であった場合、当該指定された文字または図形を印刷部に印刷させる。
【００２５】
また、設定制御部は、受信部により受信された指令データが印刷体の切りしろ範囲を指定する切りしろ設定指令であった場合、当該指定された切りしろ範囲を設定部に設定させる。
【００２６】
また、本発明の印刷装置は、指令解除制御部をさらに備えるように構成することができる。
【００２７】
ここで、指令解除制御部は、受信部により受信された指令データが切りしろ範囲を解除する切りしろ解除指令であった場合、設定部により設定された切りしろ範囲を解除部に解除させる。
【００２８】
また、本発明の印刷装置は、再設定制御部をさらに備えるように構成することができる。
【００２９】
ここで、再設定制御部は、解除部により切りしろ範囲が解除された場合、印刷体の新たな切りしろ範囲を設定部に設定させる。
【００３０】
本発明の印刷装置の制御方法は、移動工程と、印刷工程と、設定工程と、切断工程と、解除工程と、を備えるように構成する。
【００３１】
ここで、移動工程では、連続用紙を含む印刷体を所定の経路に沿って移動する。
【００３２】
一方、印刷工程では、所定の経路に沿って移動される印刷体に文字又は図形を印刷する。
【００３３】
また、設定工程では、印刷体の切りしろ範囲を設定する
さらに、切断工程では、所定の経路に沿って移動される印刷体の設定工程にて設定された切りしろ範囲と所定の位置とが重なる場合、印刷体を切断する。
【００３４】
一方、解除工程では、切断工程にて印刷体が切断された場合、設定工程にて設定された切りしろ範囲を解除する。
【００３５】
また、本発明の印刷装置の制御方法の切断工程にて印刷体の切りしろ範囲の位置と所定の位置とが重なるか否かを判断するのは、印刷工程にて印刷体に文字または図形を１行印刷するごとに行われるように構成することができる。
【００３６】
また、本発明の印刷装置の制御方法は、通過解除工程をさらに備えるように構成することができる。
【００３７】
ここで、通過解除工程では、印刷体が移動され、印刷体の切りしろ範囲が所定の位置を通過した場合、設定工程にて設定された切りしろ範囲を解除する。
【００３８】
また、本発明の印刷装置の制御方法は、受信工程をさらに備えるように構成することができる。
【００３９】
ここで、受信工程では、ホスト装置から送信される指令データを受信する。
【００４０】
一方、受信工程にて受信された指令データが文字または図形を指定する印刷指令であった場合、印刷工程にて当該指定された文字または図形を印刷する。
【００４１】
さらに、受信工程にて受信された指令データが印刷体の切りしろ範囲を指定する切りしろ設定指令であった場合、設定工程にて、当該指定された切りしろ範囲を設定する。
【００４２】
また、本発明の印刷装置の制御方法の受信工程にて受信された指令データが切りしろ範囲を解除する切りしろ解除指令であった場合、解除工程にて、設定工程にて設定された切りしろ範囲を解除するように構成することができる。
【００４３】
また、本発明の印刷装置の制御方法は、再設定工程をさらに備えるように構成することができる。
【００４４】
ここで、再設定工程では、解除工程にて切りしろ範囲が解除された場合、印刷体の新たな切りしろ範囲を設定する。
【００４５】
また本発明の印刷装置は、ホスト装置に接続され、連続用紙に印刷を行う印刷装置において、連続用紙を所定の搬送路に沿って搬送する搬送機構と、連続用紙に文字または図形を印刷する印刷部と、印刷部の搬送路下流側に位置し、連続用紙を切断する切断装置と、ホスト装置からの第1のコマンドに基づいて、連続用紙を切断するための切断範囲を設定する設定部と、搬送機構により搬送された連続用紙の切断範囲が切断装置の位置にあるか否かを検出する検出部と、検出部の検出結果に応じて、切断装置を駆動し、連続用紙を切断する制御部とを有することを特徴とする。
【００４６】
この場合において、設定部により設定される切断範囲は、印刷部と切断装置との搬送路に沿った距離を越えないことを特徴とする。
【００４７】
また、検出部は、印刷部が連続用紙に文字または図形を１行印刷するごとに、切断範囲が切断装置の位置にあるか否かを判断することを特徴とする。この場合、搬送機構により搬送された連続用紙の切断範囲が切断装置の位置を通過した場合に、設定部により設定された切断範囲を解除する第１の解除部を有し、制御部は、連続用紙の切断範囲が解除された場合、連続用紙を切断しないことを特徴とする。
【００４８】
また、ホスト装置からの第２のコマンドに基づいて、設定部により設定された切断範囲を解除する第２の解除部を有することを特徴とする。
【００４９】
また、本発明の印刷装置を制御する方法は、ホスト装置に接続され、連続用紙を所定の搬送路に沿って搬送する搬送機構と、連続用紙に印刷を行う印刷部と、印刷部の搬送路下流側に位置し連続用紙を切断する切断装置とを有する印刷装置を制御する方法において、連続用紙を所定の搬送路に沿って搬送する搬送ステップと、連続用紙に文字または図形を印刷する印刷ステップと、ホスト装置からの第1のコマンドに基づいて、連続用紙を切断するための切断範囲を設定する設定ステップと、連続用紙の切断範囲が切断装置の位置にあるか否かを検出する検出ステップと、検出ステップの検出結果に応じて、切断装置を駆動し、連続用紙を切断する制御ステップとを有することを特徴とする。
【００５０】
この場合において、設定ステップにより設定される切断範囲は、印刷部と切断装置との搬送路に沿った距離を越えないことを特徴とする。
【００５１】
また、検出ステップは、印刷部が連続用紙に文字または図形を１行印刷するごとに、切断範囲が切断装置の位置にあるか否かを検出することを特徴とする。この場合、連続用紙の切断範囲が切断装置の位置を通過した場合に、設定ステップにより設定された切断範囲を解除する第１の解除ステップを有し、制御ステップは、連続用紙の切断範囲が解除された場合、連続用紙を切断しないことを特徴とする。
【００５２】
また、ホスト装置からの第２のコマンドに基づいて、設定ステップにより設定された切断範囲を解除する第２の解除ステップを有することを特徴とする。
【００５３】
本発明の印刷装置、および、印刷装置の制御方法にて実行される処理を実現するプログラムを、コンパクトディスク、フロッピーディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリなどの情報記録媒体に記録することができる。
【００５４】
本発明の情報記録媒体に記録されたプログラムを、印刷装置が備えるＣＰＵ（Central Processing Unit；中央処理ユニット）などの制御装置で実行することにより、上記の印刷装置、および、印刷装置の制御方法を実現することができる。
【００５５】
また、本発明の印刷装置とは独立して、本発明のプログラムを記録した情報記録媒体を配布、販売したり、ホスト装置から更新したりすることができる。
【００５６】
【発明の実施の形態】
以下に本発明の一実施形態を説明する。なお、以下に説明する実施形態は説明のためのものであり、本発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００５７】
（第１の実施形態）
図１は、本発明の印刷装置を含む出力システムの実施形態の概要構成を示す模式図である。以下、本図を参照して説明する。
【００５８】
本実施例の出力システム１０１は、ホスト装置１０２と、印刷装置１０３とを備え、両者は通信線１０５を介して接続されている。
【００５９】
ホスト装置１０２が、通信線１０５を介して印刷装置１０３へ指令データを送信すると、印刷装置１０３は、当該指令データを受信して、これを解釈し、指令データに対応付けられた処理を実行する。
【００６０】
指令データに処理を対応付ける場合には、公知の印刷装置制御指令体系を採用することができる。本実施形態では、以下のような指令体系を用いる。この指令体系では、各指令はバイト単位に１バイト以上の長さのバイト列として構成されている。以下では、バイト列を十六進数表記する場合には、「0x」を接頭辞として用いる。
【００６１】
・印刷指令「0x20〜0x7e」。当該バイトをＡＳＣＩＩコードとして解釈し、これに対応付けられた文字を印刷する。
・改行指令「0x0a」。1行分の紙送りを実行する。
・切りしろ設定指令「0x1d 0x56 m n」（ただしm=97〜100）。現在の印字位置から「基準幅＋n×ピッチ」までを切りしろ範囲に設定し、当該切りしろ範囲の幅だけ紙送りする。
【００６２】
ここで、mは、用紙カットの手法を指定するパラメータであり、フルカット、パーシャルカットを設定する。また、ｎは、切りしろ範囲を設定するパラメータである。ピッチは、印刷装置１０３の紙送り最小単位のことであり、印刷装置１０３が有する紙送り機構の最小ピッチまたは当該最小ピッチの整数倍として予め定められたものである。
【００６３】
ｎの最小値は０であり、この場合は基準幅を用紙切断範囲に設定する。すなわち、切りしろ範囲の最小値は基準幅であって、当該基準幅は紙送り機構の動作誤差に所定の余裕を考慮して定められた印刷装置１０３に固有の値である。基準幅は、例えば数ｍｍ程の値に設定される。
【００６４】
一方、ｎの最大値は「基準幅＋n×ピッチ」により定まる切りしろ範囲がカッタマージンと等しくなる場合の値であって、切りしろ範囲がカッタマージンを越えるようなｎが指定された場合は、カッタマージンを切りしろ範囲として設定処理する。
【００６５】
たとえば、アプリケーションソフトウェアが以下に示す(a)、(b)、(c)からなる１６バイトのバイト列をホスト装置１０２から印刷装置１０３へ送信した場合を考える。
【００６６】
(a) 0x41 0x0a 0x42 0x0a 0x43 0x0a
(b) 0x1d 0x56 97 2
(c) 0x44 0x0a 0x45 0x0a 0x46 0x0a
これは、上記の印刷指令、改行指令、切りしろ設定指令で構成される。この印刷装置１０３がこの指令データを解釈すると、図２に示すように、(a) 文字「Ａ」、「Ｂ」、「Ｃ」を各行に印刷し、(b) 所定の幅の切りしろ範囲を設定し、その切りしろ１１２の範囲だけ紙送りをしてから、(c) 文字「Ｄ」、「Ｅ」、「Ｆ」を各行に印刷する。すなわち、先の伝票には文字「Ａ」、「Ｂ」、「Ｃ」が印刷され、次の伝票には文字「Ｄ」、「Ｅ」、「Ｆ」が印刷されることになる。
【００６７】
（印刷装置の概要構成）
図３は、図１に示す出力システム１０１の印刷装置１０３の概要構成を示す模式図である。なお、本図において、上述の図と同様の機能を果たす要素には同じ符号を付してある。以下、本図を参照して説明する。
【００６８】
印刷装置１０３の各部は、ＣＰＵ  ２０１が制御する。ＣＰＵ  ２０１が各部を制御するためのプログラムは、ＲＯＭ  ２０２に記憶されており、印刷装置の電源投入時にＣＰＵ  ２０１がこのプログラムを順次実行する。この際に、ディップスイッチ２１０の設定を読み出して、ＣＰＵ  ２０１は、各種の印刷装置の初期設定を行う。
【００６９】
印刷装置１０３は、通信線１０５とインターフェース２０３を介して、ホスト装置との間で通信を行う。ホスト装置から送信された指令データを受信した場合、ＣＰＵ  ２０１に対して割り込みが発生し、割り込み処理が起動される。割り込み処理では、受信された指令データをＲＡＭ  ２０４内の受信バッファ領域２２１に順次記憶して、通常処理にリターンする。
【００７０】
ＣＰＵ  ２０１は、通常処理では、受信バッファ領域２２１に記憶された指令データを順次読み出して、その指令データがいかなるコマンドやデータであるかを判断し、その種類に応じて対応する処理を実行する。
【００７１】
指令データに応じて実行する処理には、上記のような各種のものがある。
【００７２】
指令データが文字や図形を印刷する印刷指令である場合は、ＲＯＭ  ２０２から読み出したり、当該文字のフォント情報や図形を表すビット情報を、ＲＡＭ  ２０４内に用意されたラインバッファ領域２２２に展開する。
【００７３】
ＣＰＵ  ２０１は、ラインバッファ領域２２２に１行分のデータが蓄積された場合や、改行指令を処理した場合は、ラインバッファ領域２２２の情報にしたがって印刷ヘッド２０８を駆動して、印刷体に、文字や図形を印刷する。１行分の印刷が終わったら搬送ローラ２０９を駆動して、紙送りを行う。
【００７４】
また、ＣＰＵ  ２０１は、切りしろ設定指令を処理した場合は、ラインバッファ領域２２２に記憶された内容にしたがって文字や図形を印字し、搬送ローラ２０９を駆動して指定された切りしろ幅だけ印刷体を移動させ、以下の２種類の情報をＲＡＭ内に用意された切りしろ情報領域２２３に記憶する。
【００７５】
・切りしろ範囲の前端と用紙カッタの位置との距離Ｘ
・切りしろ範囲の後端と用紙カッタの位置との距離Ｙ
これらの情報は、切りしろ設定指令に指定されたパラメータと、各印刷装置１０３ごとの固有の値（搬送ローラ２０９の動作精度やカッタマージン）から決めることができる。
【００７６】
これらの情報は、１行分の印刷がされるごとに、当該１行の紙送り方向の幅分だけデクリメントされる。ＣＰＵは、Ｘ≦０かつＹ≧０の場合に用紙カッタ２０７を駆動して、印刷体から伝票を切断する。
【００７７】
ここで、搬送ローラ２０９は、移動部または搬送機構として、印刷ヘッド２０８は、印刷部として、ＣＰＵ  ２０１は、ＲＡＭ  ２２３と共働して設定部として、用紙カッタ２０７は、ＣＰＵ  ２０１と共働して切断部または切断装置として、ＣＰＵ  ２０１は、解除部として、それぞれ機能する。また、ＣＰＵ  ２０１は、通過解除制御部または第１の解除部として機能する。さらに、インターフェース２０３は、受信部として、ＣＰＵ  ２０１は、印刷制御部、設定制御部として、それぞれ機能する。
【００７８】
図４および図５は、前述の指令データ列を処理した場合の用紙カッタ２０７、印刷ヘッド２０８、および、距離Ｘ、距離Ｙの関係を示す説明図である。図に示すとおり、用紙カッタ２０７と印刷ヘッド２０８とは、カッタマージン幅だけ離れて配置されている。
【００７９】
図４は、「Ａ」「Ｂ」「Ｃ」を印字した後、切りしろ範囲を設定、切りしろ１１２の幅だけ用紙１１１を紙送りした状態を示している。この場合、用紙の切りしろ範囲が用紙カッタ２０７の位置まで達していないので、用紙切断は行われない。
【００８０】
図５は、図４に示す状態からさらに「Ｄ」「Ｅ」の印刷が行われ、当該印刷に伴って用紙が移動し、切りしろ１１２の範囲が用紙カッタ２０７の位置と重なった状態を示している。この場合、ＣＰＵ  ２０１は用紙カッタ２０７を駆動して用紙を切断し、文字「Ａ」「Ｂ」「Ｃ」を含む伝票として発行する。用紙切断後、通常の印刷処理に戻り文字「Ｆ」を印刷する。
【００８１】
（通常処理）
図６は、本実施形態の印刷装置が実行する通常処理の流れを示すフローチャートである。以下、本図を参照して説明する。
【００８２】
まず、ＣＰＵ  ２０１は、受信バッファ領域２２１に指令データが記憶されているか否かを調べる（ステップＳ６０１）。記憶されていない場合（ステップＳ６０１；Ｎｏ）、インターフェース２０３が指令データを受信し、ＣＰＵ  ２０１に対して受信割り込みを発生させ、受信割り込み処理によって受信バッファに指令データが記憶されるまで待機する（ステップＳ６０２）。なお、待機の間は別の処理を行うことができる。
【００８３】
指令データが記憶されている場合（ステップＳ６０１；Ｙｅｓ）、当該指令データを読み出す（ステップＳ６０３）。なお、受信バッファ領域２２１は、リングバッファもしくはキューのように機能する。したがって、指令データを読み出すと、その分だけ受信バッファ領域２２１の空きが増える。また、受信バッファ領域２２１からは、ＦＩＦＯ（First In First Out）的に記憶された順に指令データが読み出される。
【００８４】
次に、ＣＰＵ  ２０１は、読み出した指令データの種類を調べる（ステップＳ６０４）。指令データの種類が、切りしろ設定指令である場合（ステップＳ６０４；切りしろ設定）、指定されたパラメータｎに基づいて「基準幅＋n×ピッチ」から切りしろ幅を計算し（ステップＳ６０５）、搬送ローラ２０９を駆動して当該切りしろ幅だけ用紙を紙送りする（ステップＳ６０６）。また、ステップＳ６０５で計算した切りしろ幅と、当該印刷装置１０３のカッタマージン、動作精度などから、前述の距離ＸおよびＹを計算して（ステップＳ６０７）、これを切りしろ情報領域２２３に記憶し（ステップＳ６０８）、ステップＳ６０１に戻る。
【００８５】
一方、指令データの種類が、文字データである場合（ステップＳ６０４；0x20〜0x7e）、当該印刷指令のＡＳＣＩＩコードに対応するフォントデータをＲＯＭ２０２から読み出し（ステップＳ６０９）、当該フォントデータをラインバッファ２２２に展開する（ステップＳ６１０）。
【００８６】
さらに、ラインバッファ２２２に１行分の印刷イメージが蓄積されたか否かを調べ（ステップＳ６１１）、蓄積されていなければ（ステップＳ６１１；Ｎｏ）、ステップＳ６０１に戻る。一方、蓄積されていれば（ステップＳ６１１；Ｙｅｓ）、当該印刷イメージにしたがって印刷ヘッドを駆動して文字を印刷し（ステップＳ６１２）、ラインバッファ２２２をクリアする（ステップＳ６１３）。さらに、搬送ローラ２０９を駆動して、この行の幅だけ用紙を移動する（ステップＳ６１４）。さらに、後述する切りしろ切断処理を実行し（ステップＳ６１5）、ステップＳ６０１に戻る。
【００８７】
一方、指令データの種類が、改行指令である場合（ステップＳ６０４；0x0a）、ステップＳ６１２に進み、前記と同様に印刷（ステップＳ６１２）、ラインバッファクリア（ステップＳ６１３）、紙送り（ステップＳ６１４）、切断処理（ステップＳ６１５）を実行し、ステップＳ６０１に戻る。
【００８８】
一方、指令データの種類が、これ以外の指令である場合（ステップＳ６０４；その他）、当該指令データに対応する処理を実行して（ステップＳ６１６）、ステップＳ６０１に戻る。
【００８９】
（切りしろ切断処理）
図７は、本実施形態の印刷装置１０３が実行する切りしろ切断処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【００９０】
まず、ＣＰＵ  ２０１は、切りしろ情報領域２２３に記憶された値Ｘ、Ｙを調べる（ステップＳ７０１）。本実施形態では、Ｘが正の値（たとえば１）Ｙが負の値（たとえば−１）の場合「切りしろ範囲の設定が解除された」ことを意味する。図４に示すように、切りしろの範囲が設定されているときは、ＸはＹ以下の値になるはずである。したがって、この場合（ステップＳ７０１；Ｘ＞０、Ｙ＜０）、直ちにステップＳ６０１にリターンする。
【００９１】
そうでない場合（ステップＳ７０１；それ以外）切りしろ情報領域に記憶された距離Ｘ、Ｙの値を、ステップＳ６１４における紙送り量分だけ減算する（ステップＳ７０２）。
【００９２】
次に、このＸ、Ｙの値を調べる（ステップＳ７０３）。Ｘ、Ｙがいずれも正の場合（ステップＳ７０３；Ｘ＞０、Ｙ＞０）、本処理を終了してステップＳ６０１にリターンする。これは、まだ、切りしろ範囲が用紙カッタ２０７の位置に達していない場合である。
【００９３】
Ｘが０以下、Ｙが０以上の場合（ステップＳ７０３；Ｘ≦０、Ｙ≧０）、切りしろ範囲が用紙カッタ２０７の位置と重なっていることになるため、用紙カッタ２０７を駆動して伝票を切断する（ステップＳ７０４）。
【００９４】
さらに、切りしろ情報領域２２３のＸに正の値（たとえば１）を、Ｙに負の値（たとえば−１）を記憶する（ステップＳ７０５）。したがって、ステップＳ７０１で説明したように、「切りしろ範囲が設定されていない」、あるいは、「切りしろ範囲の設定が解除された」ことを示すことができる。これにより、一の切りしろ範囲内で行われる切断処理を１回のみにすることができる。なお、印刷装置１０３に電源が投入された直後や印刷装置１０３がリセットされた後の初期化処理においても、同様にして「切りしろ範囲は設定されていない」状態に設定する。
【００９５】
この後は、本処理を終了して、ステップＳ６０１にリターンする。
【００９６】
これ以外の場合（ステップＳ７０３；その他）、切りしろが用紙カッタ２０７の位置を通過してしまったことになるため、ステップＳ７０５に進んで、切りしろ設定を解除する。この場合、伝票は切断されない。このような現象は、用紙切断範囲の設定指令で設定した用紙切断量より改行量の方が多いような場合、例えば、縦サイズの大きい文字やバーコード等を印刷した場合に起こりうる。
【００９７】
本発明では、切りしろ範囲を設定することにより、カッタマージン部分の用紙を無駄にすることなく伝票を発行することができる。さらに、伝票毎に切りしろ範囲の指定ができるため異なるサイズの伝票を連続的に発行することもできる。また、切りしろ範囲の設定と改行量が適切な設定状態にないような場合には切断しないので、伝票の途中で切断されてしまうような誤動作を防止することができる。また、用紙切断範囲の最大値をカッタマージンとすることにより、用紙切断範囲の設定指令が無効となることがないため、アプリケーションソフトウェアが印刷装置のカッタマージンを知らなくても容易かつ確実に伝票の発行ができる。
【００９８】
本実施形態では、上記Ｘ、Ｙとを切りしろ情報領域２２３に記憶することにより、切りしろ範囲に用紙カッタ２０７が到達したか否かを判断する。このほか、本発明から当業者であれば、「切りしろ範囲の前端と用紙カッタ２０７との距離、および、切りしろ範囲の幅」あるいは、「切りしろ範囲の後端と用紙カッタ２０７との距離、および、切りしろ範囲の幅」を切りしろ情報領域２２３に記憶し、これらを本実施形態と同等に処理するような実施形態を容易に導出することができ、これらの実施形態も本発明の範囲に含まれる。
【００９９】
（第２の実施形態）
本実施形態は、切りしろ解除指令に対応する点で上記第１の実施形態と異なる。以下、第１の実施形態と異なる点についてのみ説明する。
【０１００】
切りしろ解除指令は、以下のようなバイト列であり、すでに設定されている切りしろ範囲を解除する。
【０１０１】
「0x1d 0x56 101」。
【０１０２】
本実施形態では、ＣＰＵ  ２０１は、ステップＳ６１６内の処理で、以下のような処理を実行する。すなわち、ステップＳ６０３において読み出した指令データが、上記切りしろ解除指令である場合は、ステップＳ７０５と同様に、切りしろ情報領域２２３のＸに正の値を、Ｙに負の値を記憶して、ステップＳ６０１に戻る。
【０１０３】
このように、本実施形態では、ＣＰＵ  ２０１は、指令解除制御部または第2の解除部としても機能する。
【０１０４】
本実施形態では、次に印刷する伝票の種類などに応じて、一旦設定した切りしろ範囲をホスト装置１０２から解除することができる。これにより、一旦は２枚の伝票に分けて発行しようとしたデータを１枚の伝票として発行するように変更することができる。また、用紙交換をした場合など、切りしろ範囲を解除する必要が生じた場合に有効である。
【０１０５】
【発明の効果】
以上説明したように、本発明によれば、連続用紙などの印刷体に文字や図形を印刷してこれを無駄なく伝票に切断するのに好適な、印刷装置、その制御方法、および、これらを実現するプログラムを記録した情報記録媒体を提供することができる。
【図面の簡単な説明】
【図１】本発明の印刷装置を含む印刷システムの実施形態の概要構成を示す模式図。
【図２】用紙、切りしろ範囲、印刷される文字の位置関係を示す説明図。
【図３】本発明の印刷装置の概要構成を示す模式図。
【図４】用紙、切りしろ範囲、用紙カッタ、印刷ヘッドの位置関係を示す説明図。
【図５】用紙、切りしろ範囲、用紙カッタ、印刷ヘッドの位置関係を示す説明図。
【図６】本発明の印刷装置にて実行される通常処理の流れを示すフローチャート。
【図７】本発明の印刷装置にて実行される切りしろ切断処理の流れを示すフローチャート。
【符号の説明】
１０１  印刷システム
１０２  ホスト装置
１０３  印刷装置
１０５  通信線
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  インターフェース
２０４  ＲＡＭ
２０７  用紙カッタ
２０８  印刷ヘッド
２１０  ディップスイッチ
２２１  受信バッファ領域
２２２  ラインバッファ領域
２２３  切りしろ情報領域
【図１】
0004192366.tif 000002
【図２】
0004192366.tif 000003
【図３】
0004192366.tif 000004
【図４】
0004192366.tif 000005
【図５】
0004192366.tif 000006
【図６】
0004192366.tif 000007
【図７】
0004192366.tif 000008