(57)【要約】【課題】印刷媒体の不足による印刷の中断を、より確実に防止できる印刷装置、及び、印刷装置の制御方法を提供する。【解決手段】印刷媒体を収納する収納部と、収納部に収納される印刷媒体の残量を検出する検出制御部１１２と、検出制御部１１２で検出された印刷媒体の残量が所定値以上である場合には通常印刷を実行し、検出制御部１１２で検出された印刷媒体の残量が所定値より少ない場合は、印刷媒体の残量に応じて段階的に、通常印刷と比較して印刷媒体の使用量を削減する削減印刷を実行する制御部１１０と、を備えるプリンター。【選択図】図４
2018126940.tif 000002
【特許請求の範囲】
【請求項１】
印刷媒体を収納する収納部と、
前記収納部に収納される前記印刷媒体の残量を検出する検出部と、
前記検出部で検出された前記印刷媒体の残量が所定値以上である場合には通常印刷を実行し、前記検出部で検出された前記印刷媒体の残量が所定値より少ない場合は、前記印刷媒体の残量に応じて段階的に、前記通常印刷と比較して前記印刷媒体の使用量を削減する削減印刷を実行する制御部と、を備える印刷装置。
【請求項２】
前記制御部は、
前記検出部で検出された前記印刷媒体の残量に応じて、前記印刷媒体の使用量を低減するように印刷可能な複数の削減処理のうちいずれか１以上を選択して、選択した前記削減処理に基づき前記削減印刷を実行する請求項１に記載の印刷装置。
【請求項３】
前記制御部は、
前記検出部で検出された前記印刷媒体の残量に応じて、選択する前記削減処理の数を変化させる請求項２に記載の印刷装置。
【請求項４】
前記制御部は、
前記検出部で検出された前記印刷媒体の残量が所定値以下である場合、選択可能な全ての前記削減処理を選択し、前記削減印刷を実行する請求項２または３に記載の印刷装置。
【請求項５】
前記削減処理は、印刷時において、前記印刷媒体に形成する余白を縮小させる余白縮小処理、行間を縮小させる行間縮小処理、改行をキャンセルする改行削除処理、および、文字サイズを縮小する文字縮小処理のうち、少なくともいずれかを含む請求項２から４のいずれか一項に記載の印刷装置。
【請求項６】
前記削減印刷を実行するか否かを設定する設定部を備え、
前記制御部は、
前記設定部により前記削減印刷を実行すると設定されている場合、前記検出部で検出された前記印刷媒体の残量に応じて段階的に、前記削減印刷を実行する請求項１から５のいずれか一項に記載の印刷装置。
【請求項７】
印刷形態の設定に係る設定値を保持する設定値保持部を備え、
前記制御部は、前記通常印刷を実行する場合に、前記設定値保持部が保持する設定値に従って前記印刷媒体に印刷する請求項１から６のいずれか一項に記載の印刷装置。
【請求項８】
前記印刷媒体はロール紙であり、
前記収納部に収納されている前記ロール紙の紙幅を記憶する記憶部と、
前記収納部に収納されている前記ロール紙の重量を測定する重量測定部と、を備え、
前記検出部は、
前記記憶部に記憶する前記ロール紙の紙幅、及び、前記重量測定部により測定される前記ロール紙の重量に基づき前記ロール紙の残りの長さを検出する請求項１から７のいずれか一項に記載の印刷装置。
【請求項９】
前記印刷媒体はロール紙であり、
前記収納部に収納されている前記ロール紙の直径を測定する直径測定部を備え、
前記検出部は、
前記直径測定部により測定された前記ロール紙の直径に基づいて、前記ロール紙の残りの長さを検出する請求項１から７のいずれか一項に記載の印刷装置。
【請求項１０】
印刷媒体を収納する収納部を備える印刷装置の制御方法であって、
前記収納部に収納される前記印刷媒体の残量を検出し、
検出した前記印刷媒体の残量に応じて段階的に、前記印刷媒体の使用量を削減するように印刷する削減印刷を実行する、
印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、及び、印刷装置の制御方法に関する。
【背景技術】
【０００２】
従来、用紙に印刷を行う装置において、用紙残量の不足による中断を避けるための処理を行うものが知られている（例えば、特許文献１参照。）。特許文献１記載のプリンターは、用紙残量と、印刷するドキュメントの総ページ数とを比較し、印刷するドキュメントの総ページ数の方が用紙残量よりも多い場合には、縮小処理を行うなどして印刷する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２３５４７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１記載の装置は、印刷するドキュメントの総ページ数の方が用紙残量よりも多いと判断してから縮小処理を開始するので、縮小処理を行っても、ドキュメントの全ページを印刷できるとは限らない。このため、ドキュメントの印刷を開始してから、用紙の不足による中断が発生する可能性があり、より確実に印刷の中断を防止することが望まれていた。
本発明は、上述した事情に鑑みてなされたものであり、用紙等の印刷媒体の不足による印刷の中断を、より確実に防止できる印刷装置、及び、印刷装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、印刷媒体を収納する収納部と、前記収納部に収納される前記印刷媒体の残量を検出する検出部と、前記検出部で検出された前記印刷媒体の残量が所定値以上である場合には通常印刷を実行し、前記検出部で検出された前記印刷媒体の残量が所定値より少ない場合は、前記印刷媒体の残量に応じて段階的に、前記通常印刷と比較して前記印刷媒体の使用量を削減する削減印刷を実行する制御部と、を備える。
本発明によれば、印刷媒体の残量に応じて、印刷媒体の使用量を段階的に削減することができる。このため、印刷媒体が確実に不足すると判定してから使用量の削減を行う場合に比べて、効率よく印刷媒体の使用量を減らすことができ、印刷媒体の不足による印刷の中断を、より確実に防止できる。
【０００６】
上記構成において、前記制御部は、前記検出部で検出された前記印刷媒体の残量に応じて、前記印刷媒体の使用量を低減するように印刷可能な複数の削減処理のうちいずれか１以上を選択して、選択した前記削減処理に基づき前記削減印刷を実行する構成であってもよい。
この構成によれば、複数の削減処理から印刷媒体の残量に応じて選択される削減処理を実行するので、効率よく印刷媒体の使用量を減少させ、印刷媒体の不足による印刷の中断を、より確実に防止できる。
【０００７】
また、上記構成において、前記制御部は、前記検出部で検出された前記印刷媒体の残量に応じて、選択する前記削減処理の数を変化させる構成であってもよい。
この構成によれば、実行される削減処理の数を印刷媒体の残量に応じて変化させことで、より効果的に、印刷媒体の使用量を減少させることができる。
【０００８】
また、上記構成において、前記制御部は、前記検出部で検出された前記印刷媒体の残量が所定値以下である場合、選択可能な全ての前記削減処理を選択し、前記削減印刷を実行する構成であってもよい。
この構成によれば、印刷媒体の使用量を削減する割合を最大化することによって、効果的に印刷媒体の使用量を減少させて、印刷媒体の不足による印刷の中断を、より確実に防止できる。
【０００９】
また、上記構成において、前記削減処理は、印刷時において、前記印刷媒体に形成する余白を縮小させる余白縮小処理、行間を縮小させる行間縮小処理、改行をキャンセルする改行削除処理、および、文字サイズを縮小する文字縮小処理のうち、少なくともいずれかを含むものであってもよい。
この構成によれば、余白縮小処理、行間縮小処理、改行削除処理、および、文字縮小処理等により、効果的に、印刷媒体の使用量を削減できる。
【００１０】
また、上記構成において、前記削減印刷を実行するか否かを設定する設定部を備え、前記制御部は、前記設定部により前記削減印刷を実行すると設定されている場合、前記検出部で検出された前記印刷媒体の残量に応じて段階的に、前記削減印刷を実行する構成であってもよい。
この構成によれば、削減印刷の実行の要否を設定することができ、印刷媒体の使用量の削減を優先する使用方法のほか、印刷装置を、印刷媒体の使用量よりも印刷の態様を変えないことを優先する使用方法でも活用できる。
【００１１】
また、上記構成において、印刷形態の設定に係る設定値を保持する設定値保持部を備え、前記制御部は、前記通常印刷を実行する場合に、前記設定値保持部が保持する設定値に従って前記印刷媒体に印刷する構成であってもよい。
この構成によれば、印刷形態の設定に係る設定値を有し、この設定値に従って印刷を実行することができる。また、設定値を変更することで、容易に、印刷媒体の使用量を削減できる。
【００１２】
また、上記構成において、前記印刷媒体はロール紙であり、前記収納部に収納されている前記ロール紙の紙幅を記憶する記憶部と、前記収納部に収納されている前記ロール紙の重量を測定する重量測定部と、を備え、前記検出部は、前記記憶部に記憶する前記ロール紙の紙幅、及び、前記重量測定部により測定される前記ロール紙の重量に基づき前記ロール紙の残りの長さを検出する構成であってもよい。
この構成によれば、印刷媒体の残量を、簡単な方法により正確に検出することができ、より効果的に、印刷媒体の使用量を減少させることができる。
【００１３】
また、上記構成において、前記印刷媒体はロール紙であり、前記収納部に収納されている前記ロール紙の直径を測定する直径測定部を備え、前記検出部は、前記直径測定部により測定された前記ロール紙の直径に基づいて、前記ロール紙の残りの長さを検出する構成であってもよい。
この構成によれば、印刷媒体の残量を、より正確に検出することができ、より効果的に、印刷媒体の使用量を減少させることができる。
【００１４】
また、上記目的を達成するために、本発明は、印刷媒体を収納する収納部を備える印刷装置の制御方法であって、前記収納部に収納される前記印刷媒体の残量を検出し、検出した前記印刷媒体の残量に応じて段階的に、前記印刷媒体の使用量を削減するように印刷する削減印刷を実行する。
本発明によれば、印刷媒体の残量に応じて、印刷媒体の使用量を段階的に削減することができる。このため、印刷媒体が確実に不足すると判定してから使用量の削減を行う場合に比べて、効率よく印刷媒体の使用量を減らすことができ、印刷媒体の不足による印刷の中断を、より確実に防止できる。
【図面の簡単な説明】
【００１５】
【図１】実施形態に係るプリンターの外観斜視図。
【図２】プリンター本体の断面視図。
【図３】プリンター本体の要部斜視図。
【図４】プリンターの機能構成を示すブロック図。
【図５】削減処理テーブルの例を示す模式図。
【図６】プリンターが印刷する印刷物の例を示す平面図。
【図７】削減処理条件テーブルの例を示す模式図。
【図８】プリンターが印刷する印刷物の例を示す平面図。
【図９】プリンターの動作を示すフローチャート。
【発明を実施するための形態】
【００１６】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明を適用した実施形態に係るサーマルプリンターの外観図である。
印刷装置としてのプリンター１は、長尺の感熱紙をロール状に巻回した感熱ロール紙（以下、ロール紙という）２０（図２参照）を印刷媒体とし、サーマルヘッド３５（図２参照）により、文字、画像、図形等を印刷するサーマルプリンターである。
【００１７】
以下の説明では、図１中の左側をプリンター１の前（フロント）側、図中右側を後（リア）側とする。
図１に示すように、プリンター１は、開閉可能なカバー３を有するケース２を有する。ケース２は、後述するプリンター本体１１（図２）の外装である。ケース２にはオープンボタン７が設けられ、オープンボタン７が押し下げられると、カバー３が開放され、ケース２内部のロール紙収容部１７（図２）が露出する。これにより、ロール紙収容部１７（収納部）に収容されるロール紙２０の補充、交換が可能な状態となる。
【００１８】
ケース２の上面には、印刷後のロール紙２０が排出される排出口５が開口する。排出口５の内部には、後述するオートカッター３６が配置される。
また、ケース２の前面には、プリンター１の電源をオン／オフさせる電源スイッチ６が配置される。
【００１９】
ケース２の上面には、表示部４が配置される。表示部４は、光源としてＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）を有するＬＥＤ表示部４ａ、４ｂ、４ｃを備える。表示部４は、ＬＥＤ表示部４ａ、４ｂ、４ｃの点灯状態により、プリンター１の動作状態等を表示する。また、表示部４は、ユーザーの操作を受け付けるスイッチ４ｄを備える。
【００２０】
図２は、プリンター本体１１の構成を示す断面図である。また、図３は、プリンター本体１１においてカバーフレーム１３を開いた状態を示す要部斜視図である。
プリンター本体１１は、上方が開口した略箱形状の本体フレーム１２と、本体フレーム１２の後端部にヒンジ１４を介して開閉可能に設けられたカバーフレーム１３とを備え、これらのフレームに各部が装着される。
【００２１】
本体フレーム１２は、略円弧上に凹む凹状底壁１５が配置された空間を形成し、この空間は、ロール紙２０が巻き回されたロール２１を収容するロール紙収容部１７として機能する。つまり、凹状底壁１５はロール紙収容部１７の底面を構成する。ロール紙収容部１７の上方は開口し、この開口に跨ってカバーフレーム１３が配置される。カバーフレーム１３は、ロール紙収容部１７の上部に位置する蓋部１６を有する。蓋部１６は、ロール２１の外形状に沿って湾曲した形状であるため、円柱状のロール２１を収容する用途に好適である。カバーフレーム１３の上には、合成樹脂製の外装が装着され、カバー３（図１）が構成される。つまり、カバーフレーム１３は、カバー３の裏側に位置し、カバー３と一体的に開閉する。
【００２２】
ロール紙収容部１７の前方にはロール紙引出部１８が設けられ、ロール紙引出部１８の前方に、ロール紙２０を搬送するプラテン３４と、ロール紙２０に感熱記録を行うサーマルヘッド３５とが対向配置される。
ロール紙収容部１７に収容されたロール２１から引き出されるロール紙２０は、ロール紙収容部１７の前方の空間であるロール紙引出部１８を通り、ロール紙引出部１８の前方に位置するプラテン３４とサーマルヘッド３５とにより挟まれる。
【００２３】
ロール紙２０は、プラテン３４とサーマルヘッド３５との間を通って上方に搬送される。サーマルヘッド３５の上方には排出口５が位置し、排出口５から、図２に矢印で示すようにロール２１が上向きに排出される。
【００２４】
排出口５にはオートカッター３６が設けられる。オートカッター３６は、排出口５を通過するロール紙２０を挟んで対向する固定刃３７と可動刃３８とを有する。可動刃３８は、カッターモーター１３２の駆動力によって固定刃３７に向けて移動し、ロール紙２０を切断する。固定刃３７は固定刃カバー３２により覆われ、可動刃３８はカッターモーター１３２とともに可動刃カバー３３によって覆われる。
【００２５】
カバーフレーム１３は、ヒンジ１４によって本体フレーム１２に対して回動可能に取り付けられる。カバーフレーム１３がヒンジ１４を中心として回動することにより、カバー３が開いて、プリンター１の外部からロール２１をロール紙収容部１７に装填、取り出し、或いは交換できる。
【００２６】
プラテン３４は円筒形状のローラープラテンであり、プリンター本体１１の幅方向に延在し、カバーフレーム１３に支持される。プラテン３４は、カバーフレーム１３が回動する際に、カバーフレーム１３とともに上方へ移動する。
【００２７】
サーマルヘッド３５は、発熱素子を直線状に並べて幅方向に延びるラインサーマルヘッドである。サーマルヘッド３５は、支軸３５Ａを介して本体フレーム１２に回動自在に支持される。サーマルヘッド３５の背面側には、本体フレーム１２に固定された押圧板３９が位置し、押圧板３９とサーマルヘッド３５との間にはコイルばね３１が配置される。サーマルヘッド３５は、コイルばね３１によってプラテン３４側へ付勢され、ロール紙２０に当接する。
【００２８】
ロール紙２０は、プラテン３４とサーマルヘッド３５との間に挟まれて、プラテン３４の回転により搬送される。プラテン３４は、カバーフレーム１３により支持され、プラテン３４に対向するサーマルヘッド３５は本体フレーム１２に取り付けられる。このため、図３に示すようにカバーフレーム１３を開くと、プラテン３４とサーマルヘッド３５が互いに離間する。
【００２９】
カバーフレーム１３が開かれた状態でロール２１がロール紙収容部１７に投入される場合、ロール２１からロール紙２０を引き出してカバーフレーム１３を閉じることにより、ロール２１はプラテン３４とサーマルヘッド３５との間に挟まれる。このため、ロール２１を補充する際には、ロール紙収容部１７に投入したロール紙２０を引き出してカバーフレーム１３を閉じるだけで、すぐに印刷可能な状態になる。
【００３０】
ロール紙収容部１７は、ロール２１の残量を検出するための構成として、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５、及び紙重量センサー１２６を備える。なお、本実施形態のプリンター１には、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５及び紙重量センサー１２６を備えた構成を例示するが、本発明が適用される構成はこれに限定されない。例えば、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５及び紙重量センサー１２６のうちいずれか１以上を備える構成であれば、本発明を適用できる。径検出部１２５は直径測定部に相当し、紙重量センサー１２６は重量測定部に相当する。
【００３１】
ニアエンドセンサー１２３は、凹状底壁１５の前部に配設される。ニアエンドセンサー１２３は、凹状底壁１５に埋設されたスイッチ式のセンサーであり、ロール紙収容部１７に収容されるロール２１により押圧されてオフになり、ロール２１がなくなるとオンに切り替わる。
【００３２】
図２及び図３に示すように凹状底壁１５は複数の段を有し、中央よりやや後方に最深部１５Ａが形成される。印刷実行に伴ってロール２１から随時ロール紙２０が引き出され、ロール２１の残量が減ると、ロール２１の外径は徐々に縮小する。これに伴い、ロール２１は凹状底壁１５の上を最深部１５Ａに向かって、段階的に移動していく。図２に示すように、ロール２１の下からロール紙２０が引き出されるため、ロール紙２０が引き出されることでロール２１は常に転動する。このため、ロール２１は凹状底壁１５上を容易に移動する。
【００３３】
ニアエンドセンサー１２３は、凹状底壁１５の前部の斜面に配置される。このため、ロール２１の残量が所定量を下回った時点で、ロール２１がニアエンドセンサー１２３から離れて最深部１５Ａに嵌り、ニアエンドセンサー１２３の検出状態はオフからオンに切り替わる。ニアエンドセンサー１２３の検出状態がオフからオンに切り替わるとき、ロール２１の残量は完全にゼロではない。このため、ニアエンドセンサー１２３の検出状態に基づいて、ロール２１の残量が所定量より少ないか否かを知ることができる。
【００３４】
リアルエンドセンサー１２２は、ニアエンドセンサー１２３よりも前方に配置され、プラテン３４の下方においてロール紙２０の有無を検出する。リアルエンドセンサー１２２は、ニアエンドセンサー１２３と同様のスイッチ式のセンサー、或いは、反射型または透過型の光学的センサーで構成される。リアルエンドセンサー１２２の出力値は、ロール２１から引き出されたロール紙２０がある場合はオフであり、ロール紙２０がない場合はオンとなる。このため、ロール紙収容部１７内のロール紙２０がなくなったときにオンに切り替わる。リアルエンドセンサー１２２がオンに切り替わった時点で、ロール紙２０の後端はプラテン３４とサーマルヘッド３５との間にある。つまり、ロール紙２０（ロール２１）の残量はほぼゼロである。このように、リアルエンドセンサー１２２の検出状態に基づいて、ロール２１の残量がゼロになったことを検出できる。
【００３５】
径検出部１２５は、図２に示すように、凹状底壁１５に立設され、或いは凹状底壁１５の側壁に固定され、ロール２１の芯２１ａの位置を検出する。より具体的には、径検出部１２５は、凹状底壁１５または最深部１５Ａを基準とした芯２１ａの高さ位置に応じた出力値を出力する。径検出部１２５は、例えば、芯２１ａの中心に存在する空洞を検出する反射型の光センサーを用いて構成される。また、例えば、径検出部１２５は、芯２１ａに係合する複数の爪部（図示略）を、芯２１ａの複数の高さ位置に対応する位置にそれぞれ配置し、爪部の移動を機械的に検出して出力値を切り替えるセンサー回路（図示略）を備える構成としてもよい。
【００３６】
ロール２１からロール紙２０が引き出されてロール２１の径が縮小すると、芯２１ａの位置は凹状底壁１５に向けて下降する。径検出部１２５は、芯２１ａの高さ位置を検出することにより、ロール２１の直径を計測することができる。
【００３７】
なお、径検出部１２５が、芯２１ａの高さ位置が所定の位置に達した場合に出力を切り替える構成である場合は、ニアエンドセンサー１２３と径検出部１２５の検出の閾値を異なる値とすることが好ましい。具体的には、ニアエンドセンサー１２３がオフからオンに切り替わるときのロール紙２０の残量と、径検出部１２５がオフからオンに切り替わるときのロール紙２０の残量とが、異なる量に設定することが好ましい。ニアエンドセンサー１２３の検出の閾値は、凹状底壁１５におけるニアエンドセンサー１２３の位置により調整及び設定できる。また、径検出部１２５の検出の閾値は、凹状底壁１５から径検出部１２５の爪部までの高さにより調整及び設定できる。
【００３８】
紙重量センサー１２６は、凹状底壁１５においてロール２１が接する位置に設置される。紙重量センサー１２６は、凹状底壁１５の裏面側に埋設されてもよいし、凹状底壁１５においてロール２１に接する面に設置されてもよい。紙重量センサー１２６としては、例えば、圧力を検出する圧力センサーを用いることができる。紙重量センサー１２６は、凹状底壁１５においてロール２１の下端に接する位置に配置され、ロール２１の重量を検出する。
【００３９】
ロール紙収容部１７には、ロール２１の幅方向におけるサイズに合わせて仕切板１９が配置される。仕切板１９は、凹状底壁１５に対し着脱可能に取り付けられ、ロール２１の側面に接して、ロール２１の幅方向の位置を規制する板状部材である。ロール紙収容部１７にセットされるロール２１の幅方向のサイズは、例えば、８０ｍｍ、５８ｍｍ、２  １／４インチ、３  １／８インチ等である。プリンター１において、ロール紙収容部１７よりも幅が細いロール２１を使用する場合、ロール紙収容部１７内でロール２１を安定させるため、仕切板１９が取り付けられる。
【００４０】
プリンター１は、ロール紙収容部１７にセットされるロール２１の幅方向のサイズを検出する構成、或いは、ロール２１の幅方向のサイズを設定する構成を備える。本実施形態では、一例として、仕切板１９の有無及び仕切板１９の位置を検出する紙幅センサー１２７（図４）を備える構成を説明する。
【００４１】
プラテン３４は、軸３４Ａを介してカバーフレーム１３の前端に回動自在に支持される。軸３４Ａの一端はプリンター本体１１の側方に突出し、本体フレーム１２の側壁に配設される駆動輪列４０を介して、後述する搬送モーター１３１（図４参照）の駆動力が伝達される。
【００４２】
図４は、プリンター１の機能構成を示すブロック図である。
プリンター１は、プリンター１の各部を制御する制御部１１０を備える。制御部１１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等を備える。制御部１１０は、ＣＰＵによりプログラムを実行することで、後述する各種機能をハードウェアとソフトウェアとの協働により実現する。また、制御部１１０は、後述する機能を実行するようプログラムされたハードウェアであってもよい。ＲＡＭは、ＣＰＵが実行するプログラムや処理対象のデータ等を一時的に記憶するワークエリアを形成する。ＲＯＭは、ＣＰＵが実行する基本制御プログラムや、各種設定値などを含むデータを不揮発的に記憶する。
【００４３】
制御部１１０は、通信制御部１１１、検出制御部１１２（検出部）、印刷制御部１１３、及び削減処理部１１４を有する。これらは制御部１１０のハードウェアの機能として実現される。
【００４４】
プリンター１は、ホストコンピューター２００に接続される。ホストコンピューター２００は、有線または無線通信回線により、プリンター１が備える通信部１５５に接続され、通信部１５５との間で通信を実行する。ホストコンピューター２００は、プリンター１に対し、プリンター１を動作させるコマンドを送信する。ホストコンピューター２００が送信するコマンドは、コマンドの内容を規定するパラメーターや、コマンドに従って処理されるデータを含んでもよい。例えば、ホストコンピューター２００は、プリンター１に対して印刷実行を指示する印刷コマンドを送信する。印刷コマンドは、印刷形態を指定するパラメーター、文字コードや画像データ等のデータ、改行を指示する改行コマンドやオートカッター３６によるカットを指示するカットコマンド等のコマンドを伴う形態で送信できる。印刷コマンドと、印刷コマンドとともに送信されるパラメーター、データ、コマンドを含む一連のデータを、印刷ジョブと呼ぶ。印刷ジョブは、コマンド単位で分割されてホストコンピューター２００からプリンター１に送信されてもよい。
制御部１１０は、通信部１５５がホストコンピューター２００から受信するコマンドに従って動作を実行し、ロール紙２０に対し印刷を行う。
【００４５】
制御部１１０には、プログラムやデータを記憶する記憶部１５０を備える。記憶部１５０は、半導体メモリー素子や磁気的記憶装置により構成される。記憶部１５０は、例えば、１または複数の設定値に対応する記憶領域を有し、この記憶領域に記憶する値を変更可能なメモリースイッチとして機能してもよい。また、例えば、記憶部１５０は、プリンター１がロール紙２０に印刷する画像の画像データ、フォントデータ等を記憶する。記憶部１５０が記憶するフォントデータには、バーコードフォントや、他言語のフォントを含んでもよい。ここで、記憶部１５０が記憶するデータとして、印刷設定データ１５１、登録画像データ１５２、削減設定データ１５３を例示する。
【００４６】
印刷設定データ１５１は、プリンター１が印刷する形態を設定する設定値を含む。具体的には、印刷設定データ１５１は、フォントの種類、文字サイズ、改行幅、後述するトップマージンのサイズ、ボトムマージンのサイズ等の設定値を含む。上述のように、プリンター１が複数のサイズのロール２１を使用可能である場合、ロール２１のサイズ毎に印刷設定データ１５１が記憶部１５０に記憶されてもよい。印刷形態の設定に係る設定値を含む印刷設定データ１５１を保持する記憶部１５０は、設定値保持部に相当する。
【００４７】
登録画像データ１５２は、プリンター１がロール紙２０に印刷する画像の画像データである。この構成では、ホストコンピューター２００が登録画像データ１５２の印刷を指示することにより、画像データをホストコンピューター２００が送信しなくても、プリンター１が画像を印刷できる。この構成は、ホストコンピューター２００とプリンター１との間の通信データ量を削減して処理を効率化する効果がある。
【００４８】
削減設定データ１５３は、プリンター１がロール紙２０に対する印刷を行う際のロール紙２０の使用量（消費量）を削減する削減処理に関する設定値を含む。削減設定データ１５３は、プリンター１が実行可能な削減処理の種類を規定する削減処理テーブル１５３ａ（図５）、及び、削減処理条件テーブル１５３ｂ（図７）を含む。
【００４９】
通信部１５５は、ＲＳ−２３２Ｃ、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等の規格に準拠したコネクター及び通信インターフェース回路を備え、ホストコンピューター２００と接続されて通信を実行する。また、通信部１５５は、ホストコンピューター２００との間で、無線ＬＡＮ（ＷｉＦｉ（登録商標）を含む）、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の無線通信を実行してもよい。
【００５０】
通信部１５５は、ホストコンピューター２００から受信したデータ（コマンドを含む）を制御部１１０に出力する。プリンター１は、通信部１５５が受信したデータを一時的に記憶する受信バッファー（図示略）を備えてもよい。受信バッファーは、制御部１１０のＲＡＭや記憶部１５０の記憶領域を利用して形成してもよく、その他の揮発性記憶装置をプリンター１に設けてもよい。
通信部１５５は、制御部１１０の制御に従ってホストコンピューター２００に対しデータを送信する。通信部１５５がホストコンピューター２００に送信するデータは、例えば、ホストコンピューター２００が送信したコマンドに対する応答のデータである。
【００５１】
制御部１１０には、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５、紙重量センサー１２６、及び紙幅センサー１２７が接続される。これらのセンサーは、ゲートアレイ（図示略）等のセンサー駆動用の素子を介して制御部１１０に接続されてもよい。制御部１１０は、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５、紙重量センサー１２６、及び紙幅センサー１２７の検出値を取得可能である。
【００５２】
制御部１１０には、制御対象の動作部として、サーマルヘッド３５、搬送モーター１３１、カッターモーター１３２、及び、ロール紙引出部１８が接続される。サーマルヘッド３５、搬送モーター１３１、及びカッターモーター１３２は、それぞれ、駆動用の電力を出力する駆動回路を介して制御部１１０に接続されてもよい。この場合、制御部１１０は、駆動回路を制御することにより、サーマルヘッド３５、搬送モーター１３１、及びカッターモーター１３２の各々を制御する。サーマルヘッド３５は、制御部１１０の制御に従って発熱素子によりロール紙２０に熱を与えて、ドットを形成する。搬送モーター１３１は、制御部１１０の制御により回転してロール紙２０を搬送する。カッターモーター１３２は、制御部１１０の制御により回転してロール紙２０をカットする。
【００５３】
通信制御部１１１は、通信部１５５を制御して、ホストコンピューター２００が送信するデータの受信、及び、ホストコンピューター２００に対するデータの送信を実行する。また、通信制御部１１１は、通信部１５５により受信されて受信バッファーに格納されたコマンドやデータを解析する。
【００５４】
検出制御部１１２は、リアルエンドセンサー１２２、ニアエンドセンサー１２３、径検出部１２５、紙重量センサー１２６、及び、紙幅センサー１２７の出力値を取得する。検出制御部１１２は、取得した出力値に基づき、ロール紙収容部１７に収容されるロール２１の残量を検出する。
【００５５】
印刷制御部１１３は、通信部１５５により受信した印刷ジョブを実行し、サーマルヘッド３５、搬送モーター１３１、及びカッターモーター１３２を制御して、ロール紙２０に対する印刷を実行する。
【００５６】
印刷制御部１１３は、通信制御部１１１により受信バッファーから印刷ジョブのデータを読み出して、読み出したデータから画像データ、画像データを指定するデータ、文字コード、改行コマンド、フィードコマンドを検出し、印刷するデータを生成する。ここで、印刷制御部１１３は、受信バッファーから読み出したデータにおいて画像データを検出した場合、画像データを印刷するための印刷用データを生成して、サーマルヘッド３５を駆動する。また、印刷制御部１１３は、画像データを指定するデータを検出した場合、指定された画像データを記憶部１５０から読み出す。また、印刷制御部１１３は、文字コードを検出した場合、印刷設定データ１５１または受信バッファーから読み出したデータにより指定される文字サイズのフォントデータを記憶部１５０から読み出す。印刷制御部１１３は、画像データやフォントデータを含む印刷用データを、サーマルヘッド３５を駆動する駆動信号に変換し、サーマルヘッド３５を駆動して印刷を行う。
【００５７】
また、印刷制御部１１３は、フィードコマンドを検出した場合、印刷設定データ１５１に設定された搬送量に従って搬送モーター１３１を駆動させて、ロール紙２０を搬送させる。また、印刷制御部１１３は、改行コマンドを検出した場合、印刷設定データ１５１に設定された改行量に従って搬送モーター１３１を駆動させて、ロール紙２０を搬送させる。また、印刷制御部１１３は、カットを指示するカットコマンドを検出した場合、カッターモーター１３２を駆動させてロール紙２０をカットする。
【００５８】
削減処理部１１４は、印刷制御部１１３が印刷を実行する場合に、削減設定データ１５３に基づき、削減処理を実行する。削減処理部１１４は、削減処理において、印刷制御部１１３が印刷を実行する場合の印刷条件である印刷設定データ１５１の設定値を変更する。
すなわち、削減処理部１１４は、印刷設定データ１５１の設定値のうち、改行コマンドに対応する改行の量、フィードコマンドに対応する搬送量、文字サイズ、画像データの印刷サイズ等の設定値を変更する。
【００５９】
例えば、制御部１１０は、プリンター１の動作開始後の初期化の処理において、印刷設定データ１５１に含まれる設定値等を、一時的に制御部１１０のＲＡＭに展開する。印刷制御部１１３は、ＲＡＭに展開された設定値等に従って、受信バッファーから読み出したデータに基づきサーマルヘッド３５及び搬送モーター１３１を駆動する。削減処理部１１４は、削減処理を実行する場合に、印刷設定データ１５１に基づきＲＡＭに展開された設定値を変更する。また、削減処理部１１４は、印刷制御部１１３が改行コマンドに基づき実行する処理の一部を変更する。
【００６０】
削減処理について説明する。
図５は、削減処理テーブル１５３ａの例を示す模式図である。図５は、削減処理テーブル１５３ａに含まれるデータの実体や記憶部１５０における記憶形態を限定するものではない。図６は、プリンター１が印刷する印刷物の例を示す図であり、レシート６０の平面図である。
【００６１】
削減処理テーブル１５３ａは、プリンター１が実行可能な削減処理を示すデータを含み、各々の削減処理には識別用の情報（図５では番号）が対応付けられる。図５の例では、４種類の削減処理が設定される。内訳は、「余白縮小」処理がＮｏ．１、「行間縮小」処理がＮｏ．２、「改行削除」処理がＮｏ．３、「文字サイズ縮小」処理がＮｏ．４とされる。各々の削減処理の内容について説明する。
【００６２】
図６に示すレシート６０は、プリンター１が印刷する印刷物の一例であり、小売店や飲食店等の店舗において印刷・発行される一般的なレシートを模している。
レシート６０は、上部から順に、ヘッダー画像６１、日付印字部６２、取引商品印字部６３、メッセージ印字部６４、区切り線６５、ボトム画像６６、バーコード印字部６７を含む。ヘッダー画像６１は、登録画像データ１５２またはホストコンピューター２００から送信される画像データに基づき印刷される画像である。日付印字部６２、取引商品印字部６３及びメッセージ印字部６４は、ホストコンピューター２００から送信される文字コードに基づき印刷され、改行位置は改行コマンドによって指定される。なお、日付印字部６２及びメッセージ印字部６４は、印刷設定データ１５１に含まれる設定値に従って、印刷制御部１１３が文字列を生成または配置してもよい。この場合、ホストコンピューター２００が送信する印刷ジョブは日付印字部６２及びメッセージ印字部６４に関する文字コードを含まなくてもよい。
【００６３】
区切り線６５は、印刷設定データ１５１に含まれる設定値に従って、印刷制御部１１３が生成及び配置する線である。ボトム画像６６は、登録画像データ１５２またはホストコンピューター２００から送信される画像データに基づき印刷される画像である。バーコード印字部６７には、ホストコンピューター２００から送信される文字コードに基づきバーコードフォントが印刷される。
【００６４】
図中符号Ｐの矢印は、印刷方向を示す。プリンター１ではサーマルヘッド３５に対しロール紙２０が移動するが、ロール紙２０に対するサーマルヘッド３５の位置は相対的に符号Ｐで示す方向に移動するので、この方向を印刷方向と呼ぶ。また、ロール紙２０の長手方向に相当する向きを、上下方向とする。印刷方向Ｐに対し上流側が上、下流側が下である。
【００６５】
レシート６０には複数の余白が存在する。すなわち、ヘッダー画像６１の最上部からレシート６０の上端までの余白６９Ａ、ヘッダー画像６１の下端から日付印字部６２の上端までの余白６９Ｂ、日付印字部６２の文字の下端から取引商品印字部６３の文字の上端までの余白６９Ｃがある。また、取引商品印字部６３の下端からメッセージ印字部６４までの余白６９Ｄ、メッセージ印字部６４の下端から区切り線６５までの余白６９Ｅ、及び、バーコード印字部６７の下端からレシート６０の下端までの余白６９Ｆがある。
【００６６】
レシート６０の上端および下端は、オートカッター３６がカットしたカット位置である。余白６９Ａは、いわゆるトップマージンであり、カット位置から、サーマルヘッド３５が印刷を開始する位置までの距離に相当する。余白６９Ａのサイズ（大きさ、長さ）の最小値は、搬送方向におけるオートカッター３６の固定刃３７及び可動刃３８の位置と、サーマルヘッド３５の位置との関係により決定されるが、この最小値を超える範囲で変更可能である。余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅのサイズは、印刷制御部１１３によって、サーマルヘッド３５が印刷するタイミングとプラテン３４の搬送量とを制御することで、変更可能である。余白６９Ｆは、いわゆるボトムマージンであり、印刷制御部１１３によって、サーマルヘッド３５が印刷するタイミング、プラテン３４の搬送量、及びオートカッター３６の動作タイミングを制御することで、変更可能である。
【００６７】
余白６９Ａ及び余白６９Ｆのサイズは、カットコマンドに対応する設定値として、印刷設定データ１５１に含まれる。余白６９Ａ及び余白６９Ｆは、印刷制御部１１３がカットコマンドを検出した場合に、搬送モーター１３１によりロール紙２０を搬送することで形成される。このため、印刷制御部１１３がカットコマンドを検出した場合に搬送モーター１３１を駆動する搬送量が、余白６９Ａ及び余白６９Ｆのサイズを決定する。
【００６８】
余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅのサイズは、フィードコマンドに対応する設定値として、印刷設定データ１５１に含まれる。すなわち、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅは、印刷制御部１１３がフィードコマンドを検出した場合に、搬送モーター１３１によりロール紙２０を搬送することで形成される。このため、印刷制御部１１３がフィードコマンドを検出した場合に搬送モーター１３１を駆動する搬送量が、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅのサイズを決定する。
【００６９】
また、余白６９Ｃは、改行コマンドに応じて設定されてもよい。すなわち、ホストコンピューター２００が送信する印刷ジョブに、日付印字部６２と取引商品印字部６３との間の改行を指示する改行コマンドが含まれてもよい。同様に、余白６９Ｄは、取引商品印字部６３とメッセージ印字部６４との間の改行を指示する改行コマンドに基づき形成されてもよい。同様に、余白６９Ｅは、メッセージ印字部６４とボトム画像６６との間の改行を指示する改行コマンドに基づき形成されてもよい。この場合、余白６９Ｃの大きさは、印刷ジョブに含まれる改行コマンドの数により決定される。余白６９Ｄも同様である。余白６９Ｅも同様である。この場合、余白６９Ｃ、６９Ｄ、６９Ｅのサイズは、改行コマンドに対応して印刷制御部１１３が搬送モーター１３１を駆動する搬送量により決定される。
【００７０】
印刷設定データ１５１は、上述したように、改行コマンドに対応する改行の量、フィードコマンドに対応する搬送量、画像データの印刷サイズ等の設定値を含み、これらは余白６９Ａ〜６９Ｆのサイズに関する設定値といえる。また、印刷設定データ１５１は、日付印字部６２、取引商品印字部６３、メッセージ印字部６４及びバーコード印字部６７で使用するフォントの種類（フォント名称）、文字サイズの設定値を含む。
【００７１】
取引商品印字部６３における改行は、ホストコンピューター２００が送信する印刷ジョブに含まれる改行コマンドに従って形成される。印刷制御部１１３は、改行コマンドを検出すると、検出位置で改行を行う。この場合の改行の大きさ（改行量）は、印刷設定データ１５１に含まれる設定値に従う。具体的には、取引商品印字部６３における行と行との間の空白を「行間」と呼ぶ場合、行間サイズＷ２の設定値が印刷設定データ１５１に含まれてもよい。行間サイズＷ２は文字の下端から次の行の文字の上端までの空白の長さである。あるいは、文字と行間とを合わせたサイズである行サイズＷ１の設定値が印刷設定データ１５１に含まれてもよい。行サイズＷ１が設定されている場合、行間サイズＷ２は、文字サイズにより増減する。
【００７２】
プリンター１が実行する削減処理のうち、余白縮小処理は、余白６９Ａ〜６９Ｆのいずれか１以上のサイズを縮小する処理である。余白６９Ａ〜６９Ｆのうち余白縮小処理で縮小される余白の位置、数、及び、縮小率の設定値は、削減設定データ１５３に含まれる。
【００７３】
行間縮小処理は、行サイズＷ１及び行間サイズＷ２の少なくともいずれかを縮小する処理である。行間縮小処理の対象が行サイズＷ１及び行間サイズＷ２のいずれであるか、及び、縮小率の設定値は、削減設定データ１５３に含まれる。
【００７４】
従って、余白縮小処理、及び、行間縮小処理で、削減処理部１１４は、削減設定データ１５３に含まれる余白の位置、数、及び、縮小率の設定値や、行間縮小処理の対象、縮小率の設定値等に従って、印刷設定データ１５１の設定値を変更する。
削減処理部１１４は、例えば、印刷設定データ１５１の設定に従い、余白縮小処理で余白６９Ａ、６９Ｆを縮小することができる。この場合、削減処理部１１４は、カットコマンドに対応してロール紙２０を搬送する搬送量の設定値を変更する。また、削減処理部１１４は、余白縮小処理で、フィードコマンドに対応するロール紙２０の搬送量を変更してもよく、この場合、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅのサイズが変更される。また、行間縮小処理で、削減処理部１１４は、改行コマンドに対応してロール紙２０を搬送する搬送量を変更し、これにより、行サイズＷ１及び／または行間サイズＷ２が変更される。なお、行サイズＷ１または行サイズＷ２が変更される場合、文字サイズの変更を伴ってもよい。また、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅが改行コマンドにより形成される場合、削減処理部１１４が、行間縮小処理または改行削除処理を実行することにより、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅのサイズが縮小される。この場合、削減処理部１１４は、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅの形成を指示する改行コマンドと、その他の改行コマンドとを識別してもよい。そして、余白縮小処理を実行する際に余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅの形成を指示する改行コマンドを削減する処理を行ってもよい。
【００７５】
改行削除処理は、印刷ジョブに含まれる改行コマンドに基づいて印刷制御部１１３が形成する改行を削除する処理である。改行削除処理は、例えば、連続する複数の改行コマンドに基づく改行を、１つの改行コマンドに基づく改行に置き換える処理であり、この場合、複数行の改行が、１行分の改行に置き換えられる。削減処理部１１４は、印刷制御部１１３が改行コマンドに従って改行を行う処理の内容を設定する。例えば、削減処理部１１４は、印刷制御部１１３によって、連続する複数の改行コマンドを１つの改行コマンドに置換する処理を実行させる。
【００７６】
文字サイズ縮小処理は、サーマルヘッド３５が印刷する文字のサイズ（フォントサイズ）を、より小さい文字サイズに置き換える処理である。つまり、文字サイズ縮小処理は、印刷制御部１１３が、印刷設定データ１５１に基づいて文字コードから生成する文字を、より小さい文字サイズの文字に置き換える処理である。文字サイズ縮小処理の対象は、文字コードに基づき印刷される部分であり、図６の例では、少なくとも取引商品印字部６３が対応する。また、日付印字部６２、取引商品印字部６３、メッセージ印字部６４、及びメッセージ印字部６４を対象としてもよい。削減処理部１１４は、印刷設定データ１５１に含まれる設定値により文字サイズが指定される場合、文字サイズの設定値を変更する。また、削減処理部１１４は、印刷制御部１１３が受信バッファーから読み出したデータに文字サイズを指定するデータが含まれる場合、この文字サイズを、より小さい文字サイズに置換する処理を、印刷制御部１１３により実行させる。
【００７７】
図７は、削減処理条件テーブル１５３ｂの例を示す模式図である。図７は、削減処理条件テーブル１５３ｂに含まれるデータの実体や記憶部１５０における記憶形態を限定するものではない。
【００７８】
削減処理条件テーブル１５３ｂに示すように、削減設定データ１５３は、プリンター１が実行可能な削減処理の種類と、削減処理を実行する条件とを定めるデータを含む。
削減処理部１１４は、削減処理を、段階的に実行する。図７の例では、ロール紙２０の残量（ロール２１の残量）をレベル０〜５の６段階に段階分けした場合の各段階について、実行する削減処理が削減処理条件テーブル１５３ｂに設定される。
【００７９】
ロール紙２０の残量は、検出制御部１１２が各センサーの検出値に基づき検出する。検出制御部１１２は、ロール紙２０の残量を、図７に例示したように未使用のロール紙２０に対する割合（％）で求めてもよいし、長さの単位により求めてもよい。ロール紙２０の残量を段階分けする処理は、削減処理部１１４が行ってもよいし、検出制御部１１２が行ってもよい。
【００８０】
検出制御部１１２は、リアルエンドセンサー１２２の検出値に基づき、ロール紙２０の残量は極めて少ない状態、すなわちリアルエンドセンサー１２２の検出の閾値以下となったことを検出する。また、検出制御部１１２は、ニアエンドセンサー１２３の検出値に基づき、ロール紙２０の残量が少ない状態、すなわちニアエンドセンサー１２３の検出の閾値以下となったことを検出する。
【００８１】
検出制御部１１２は、径検出部１２５の検出値に基づきロール２１の径を求め、このロール２１の径からロール紙２０の残量を求めることができる。なお、径検出部１２５が、スイッチ式のセンサーで構成され、ロール２１の径が閾値以下となったことを検出する構成では、検出制御部１１２は、ロール２１の径が閾値以下であるか否かを検出してもよい。
【００８２】
また、検出制御部１１２は、紙重量センサー１２６が検出するロール２１の重量に基づき、ロール紙２０の残量を算出できる。紙重量センサー１２６が検出する重量からロール紙２０の残量である長さを算出する場合、ロール紙２０の幅を考慮する必要がある。ロール紙２０の幅は、紙幅センサー１２７が検出するロール紙収容部１７の有無及び位置に基づき決定してもよい。また、ロール紙２０の幅が、ホストコンピューター２００が送信する設定コマンドや、スイッチ４ｄの操作により事前に設定される場合、ロール紙２０の幅に関する設定値が印刷設定データ１５１に含まれる。この場合、検出制御部１１２は、印刷設定データ１５１からロール紙２０の幅の設定値を取得して演算処理を行ってもよい。
【００８３】
また、検出制御部１１２は、プラテン３４が搬送するロール紙２０の搬送量を用いる演算によって、ロール紙２０の残量を求めてもよい。すなわち、検出制御部１１２が、各種センサーの検出値等に基づいてロール紙２０の残量をいったん求めた後、求めた残量を、例えばＲＡＭ或いは記憶部１５０に記憶する。検出制御部１１２は、プラテン３４による搬送を行う毎に搬送量をカウントし、カウントした残量を、ＲＡＭ或いは記憶部１５０に記憶したロール紙２０の残量から減算する処理を行う。この場合、ＲＡＭ或いは記憶部１５０に、ロール紙２０の残量の最新の値を保持できるので、削減処理部１１４は、ＲＡＭ或いは記憶部１５０に記憶された残量を取得することができる。この構成によれば、各センサーによる検出や検出値を取得する処理、ロール紙２０の残量を算出する演算処理等の負荷を軽減できる。
【００８４】
本実施形態では、削減処理部１１４がロール紙２０の残量を割合（％）で求め、削減処理部１１４が求める割合を、予め設定された閾値により段階分けし、段階ごとに削減処理を設定した例を示す。例えば、図７の例では、残量１０％以上をレベル０とし、削減処理を行わないよう設定される。同様に、残量５．０％以上１０％未満をレベル１とし、削減処理Ｎｏ．１（余白縮小処理）を実行するよう設定される。残量２．０％以上５．０％未満をレベル２とし、削減処理Ｎｏ．２（行間縮小処理）を実行するよう設定される。残量１．０％以上２．０％未満をレベル３とし、削減処理Ｎｏ．１及びＮｏ．２を実行するよう設定される。残量０．５％以上１．０％未満をレベル４とし、削減処理Ｎｏ．１、Ｎｏ．２及びＮｏ．３（改行削除処理）を実行するよう設定される。残量０．５％未満をレベル５とし、削減処理Ｎｏ．１、Ｎｏ．２、Ｎｏ．３及びＮｏ．４（文字サイズ縮小処理処理）を実行するよう設定される。なお、削減処理条件テーブル１５３ｂに示したレベルの閾値は、予め設定され、削減設定データ１５３に含まれて記憶され、図７に示した数値は一例に過ぎない。
【００８５】
削減処理条件テーブル１５３ｂに基づき、削減処理部１１４は、ロール紙２０の残量の段階に応じて、複数種類の削減処理のいずれか１つ、或いは、複数の削減処理の組み合わせを実行する。これにより、ロール紙２０の残量が十分な状態では、印刷設定データ１５１の設定及び印刷ジョブに従った印刷形態で印刷を実行でき、ロール紙２０の残量が少ない状態では効果的にロール紙２０の使用量を削減できる。
【００８６】
削減処理条件テーブル１５３ｂでは、例えばレベル１とレベル２について、ロール紙２０の残量に対応して、削減処理部１１４が実行する削減処理が異なる処理となるよう設定される。また、削減処理条件テーブル１５３ｂによれば、ロール紙２０の残量が少ない場合は、残量が多い場合よりも、ロール紙２０の使用量を削減する削減幅が大きくなるよう設定される。
【００８７】
また、削減処理条件テーブル１５３ｂによれば、ロール紙２０の残量が少ない場合は、残量が多い場合よりも、プリンター１が印刷する印刷物（本実施形態ではレシート６０）の印刷形態に与える影響が小さい削減処理が割り当てられる。ここで、印刷物の印刷形態とは、印刷物に印刷された文字や画像の外観を意味し、印刷物の印刷形態に与える影響とは、印刷物の視認性に与える影響といえる。つまり、プリンター１では、削減処理を選択する場合の優先順位が、印刷物の視認性を損なう可能性が小さい処理を優先するように定められる。これにより、ロール紙２０の残量に対応して、印刷物の視認性をできるだけ損なわないように、削減処理が選択される。
【００８８】
図８は、プリンター１が印刷する印刷物の例を示す図であり、削減処理されたレシート６０の平面図である。図８に例示するレシート６０は、「余白縮小」の削減処理が行われた印刷物の例である。この例では、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅがフィードコマンドにより形成され、余白縮小処理により、削減処理部１１４が、フィードコマンドに対応する設定値を変更（縮小）した場合に相当する。
【００８９】
図６のレシート６０と比較して、図８のレシート６０は、余白縮小処理によって、余白６９Ａ〜６９Ｆのうち、余白６９Ｂ、６９Ｃ、６９Ｄ、６９Ｅが縮小されている。このため、レシート６０の全長が短くなっており、ロール紙２０の使用量が削減されたことが明らかである。なお、余白縮小処理は、余白６９Ｂ〜６９Ｅの搬送方向のサイズを小さくする処理に限定されない。余白縮小処理は、余白６９Ａ〜６９Ｆの全てのサイズを小さくする処理であってもよいし、余白を解消する（サイズを０とする）処理であってもよい。
【００９０】
余白縮小処理は、文字や画像が印刷されない部分あるいは領域を小さくする処理であり、印刷物（レシート６０）の文字や画像の視認性に与える影響が小さい。行間縮小処理も同様である。また、改行削除処理は、連続する複数の改行コマンドに基づく改行を１つの改行コマンドに基づく改行に置き換える場合には、余白縮小処理と同様に、印刷物の文字や画像の視認性に与える影響が小さい。これに対し、文字サイズ縮小処理は、文字の視認性に与える影響が比較的大きい。
【００９１】
プリンター１は、削減処理部１１４が実行可能な複数種類の削減処理のうち、印刷物の印刷形態に与える影響、特に、印刷物に印刷される文字や画像の視認性に与える影響が大きい種類の削減処理を、ロール紙２０の残量がより少ない場合に実行する。従って、印刷物の印刷形態に与える影響を抑えながら、ロール紙２０の使用量を削減できる。
【００９２】
なお、印刷制御部１１３は、受信バッファーからページ単位でデータを読み出して、１ページ分の印刷用データを生成し、ＲＡＭに展開する構成であってもよい。この場合、印刷制御部１１３は、画像データ、フォントデータ、及び余白を含む印刷用データを、ＲＡＭに展開し、行単位でサーマルヘッド３５を駆動する信号への変換を行い、サーマルヘッド３５及び搬送モーター１３１を駆動して印刷を行う。この場合の１ページは、サーマルヘッド３５の印刷位置から、オートカッター３６によりカットする位置までを含む。この場合、削減処理部１１４は、削減処理において、印刷制御部１１３がＲＡＭに展開した印刷用データに対し、余白量、行サイズ、行間サイズ、文字サイズ等を変更する処理を行う。
【００９３】
図９は、プリンター１の動作を示すフローチャートである。
制御部１１０は、ホストコンピューター２００から通信部１５５により印刷ジョブを受信する（ステップＳ１１）。受信された印刷ジョブは受信バッファーに格納される。
【００９４】
制御部１１０は、上述した各種の方法のいずれかにより、ロール紙２０の残量を検出し、検出したロール紙２０の残量のレベル分け（段階分け）を行う（ステップＳ１２）。制御部１１０は、レベル分けの結果、残量レベルが変化したか否かを判定する（ステップＳ１３）。制御部１１０は、前回に印刷ジョブを実行したときのロール紙２０の残量のレベルと、ステップＳ１２で求めたレベルとを比較し、一致しない場合に、残量レベルが変化したと判定する。
【００９５】
ロール紙２０の残量レベルが変化したと判定した場合（ステップＳ１３；Ｙｅｓ）、制御部１１０は、削減処理条件テーブル１５３ｂに従って、実行する削減処理を選択する（ステップＳ１４）。制御部１１０は、ステップＳ１４で選択した削減処理を、実行する対象の処理として設定する（ステップＳ１５）。ステップＳ１５、及び後述するステップＳ２０の処理において、制御部１１０は設定部として機能する。
【００９６】
制御部１１０は、ステップＳ１１で受信した印刷ジョブに基づき印刷を開始する（ステップＳ１６）。ステップＳ１６では、印刷制御部１１３が、受信バッファーからデータを読み出し、読み出したデータに含まれる画像データ、文字コード、各種コマンドに基づき、印刷設定データ１５１の設定値に従って、サーマルヘッド３５及び搬送モーター１３１を駆動する。ここで、削減処理部１１４は、ステップＳ１５で設定された削減処理に対応して印刷設定データ１５１の設定値を変更しているので、印刷制御部１１３は、変更後の設定値に基づきステップＳ１６以後の印刷を行う。また、ステップＳ１４で、ロール紙２０の残量レベルが変化していないと判定した場合（ステップＳ１３；Ｎｏ）、制御部１１０はステップＳ１６に移行して印刷を開始する。なお、ロール紙２０の残量が多く、ステップＳ１５で選択される削減処理がない場合には、削減処理が行われないので、印刷制御部１１３は、印刷設定データ１５１の設定値に従ってステップＳ１６以後の印刷を行う。ステップＳ１６以後、印刷制御部１１３は、受信バッファーのデータを順に読み出して、印刷を継続する。
【００９７】
印刷開始後、制御部１１０は、上述した各種の方法のいずれかにより、ロール紙２０の残量を検出し、検出したロール紙２０の残量のレベル分けを行う（ステップＳ１７）。制御部１１０は、レベル分けの結果、残量レベルが変化したか否かを判定する（ステップＳ１８）。制御部１１０は、ステップＳ１２で求めたロール紙２０の残量のレベルと、ステップＳ１７で求めたレベルとを比較し、一致しない場合に、残量レベルが変化したと判定する。
【００９８】
ロール紙２０の残量レベルが変化したと判定した場合（ステップＳ１８；Ｙｅｓ）、制御部１１０は、削減処理条件テーブル１５３ｂに従って、実行する削減処理を選択する（ステップＳ１９）。制御部１１０は、ステップＳ１９で選択した削減処理を、実行する対象の処理として設定する（ステップＳ２０）。ステップＳ１８で、ロール紙２０の残量レベルが変化していないと判定した場合（ステップＳ１８；Ｎｏ）、及び、ステップＳ２０で削減処理を設定した後、制御部１１０は、ステップＳ２１に移行する。
【００９９】
ステップＳ２１で、制御部１１０は、ステップＳ１１で受信した印刷ジョブに基づく印刷が完了したか否かを判定する（ステップＳ２２）。印刷完了とは、例えば、カッターモーター１３２によりカットを行うまでを指す。この場合、印刷制御部１１３が受信バッファーからカットコマンドを検出してカッターモーター１３２を駆動したことで、印刷完了となる。また、印刷制御部１１３が、受信バッファーから読み出したデータにおいて印刷ジョブの終了を示すコマンドを検出した場合に、印刷完了と判定してもよい。制御部１１０は、印刷が完了していないと判定した場合は（ステップＳ２１；Ｎｏ）、ステップＳ１７に戻る。また、印刷が完了したと判定した場合（ステップＳ２１；Ｙｅｓ）、本処理を終了する。
【０１００】
制御部１１０がステップＳ１７の処理を行うタイミングは、例えば、印刷制御部１１３が１行分の印刷を実行した後とすることができる。この場合、制御部１１０は、１行分の印刷が実行されてから、次の行の印刷を開始する前に、ステップＳ１７〜Ｓ２１の動作を実行する。そして、ステップＳ２０で削減処理が設定された後、印刷制御部１１３は、設定後の削減処理で変更される印刷設定データ１５１の設定値に従って、次の行の印刷を実行する。これにより、行ごとに削減処理を設定し、実行することができ、ロール紙２０の残量の減少に速やかに対応して削減処理を行える。
【０１０１】
以上説明したように、本発明を適用した実施形態に係るプリンター１は、ロール紙２０を収納するロール紙収容部１７と、ロール紙収容部１７に収納されるロール紙２０の残量を検出する検出制御部１１２とを備える。プリンター１は、検出制御部１１２で検出されたロール紙２０の残量が所定値以上である場合には通常印刷を実行し、検出されたロール紙２０の残量が所定値より少ない場合は、ロール紙２０の残量に応じて段階的に、通常印刷と比較してロール紙２０の使用量を削減する削減印刷（削減処理）を実行する制御部１１０を備える。
本発明の印刷装置、及び印刷装置の制御方法を適用したプリンター１によれば、ロール紙２０の残量に応じて、ロール紙２０の使用量を段階的に削減することができる。このため、ロール紙２０が確実に不足すると判定してから使用量の削減を行う場合に比べて、効率よくロール紙２０の使用量を減らすことができ、ロール紙２０の不足による印刷の中断を、より確実に防止できる。ここで、所定値は、削減処理条件テーブル１５３ｂに定められたレベル分けの閾値に相当する。
【０１０２】
制御部１１０は、検出制御部１１２で検出されたロール紙２０の残量に応じて、ロール紙２０の使用量を低減するように印刷可能な複数の削減処理のうちいずれか１以上を選択して、選択した削減処理に基づき削減印刷を実行する。これにより、複数の削減処理からロール紙２０の残量に応じて選択される削減処理を実行するので、効率よくロール紙２０の使用量を減少させ、ロール紙２０の不足による印刷の中断を、より確実に防止できる。
【０１０３】
また、制御部１１０は、検出制御部１１２で検出されたロール紙２０の残量に応じて、選択する削減処理の数を変化させる。例えば、削減処理条件テーブル１５３ｂに設定されたように、ロール紙２０の残量のレベルに応じて、実行される削減処理の数が変化する。これにより、実行される削減処理の数をロール紙２０の残量に応じて変化させことで、より効果的に、ロール紙２０の使用量を減少させることができる。
【０１０４】
また、制御部１１０は、検出制御部１１２で検出されたロール紙２０の残量が所定値以下である場合、選択可能な全ての削減処理を選択し、削減印刷を実行する。例えば、図７の削減処理条件テーブル１５３ｂにおいて、レベル５では全ての削減処理が実行されるよう設定される。これにより、ロール紙２０の使用量を削減する割合を最大化することによって、効果的にロール紙２０の使用量を減少させて、ロール紙２０の不足による印刷の中断を、より確実に防止できる。
【０１０５】
また、削減処理は、印刷時において、ロール紙２０に形成する余白を縮小させる余白縮小処理、行間を縮小させる行間縮小処理、改行をキャンセルする改行削除処理、および、文字サイズを縮小する文字縮小処理のうち、少なくともいずれかを含む。これにより、余白縮小処理、行間縮小処理、改行削除処理、および、文字縮小処理等により、効果的に、ロール紙２０の使用量を削減できる。
【０１０６】
また、制御部１１０は、ステップＳ１６、Ｓ２１で、削減印刷を実行するか否かを設定する設定部として機能する。制御部１１０は、削減印刷を実行すると設定した場合、検出制御部１１２で検出されたロール紙２０の残量に応じて段階的に、削減印刷を実行する。これにより、削減印刷の実行の要否を設定することができ、ロール紙２０の使用量の削減を優先する使用方法のほか、印刷装置を、ロール紙２０の使用量よりも印刷の態様を変えないことを優先する使用方法でも活用できる。
【０１０７】
また、プリンター１は、印刷形態の設定に係る設定値を含む印刷設定データ１５１を記憶する記憶部１５０を備える。制御部１１０は、通常印刷を実行する場合に、記憶部１５０が保持する印刷設定データ１５１の設定値に従ってロール紙２０に印刷する。これにより、印刷形態の設定に係る印刷設定データ１５１の設定値に従って印刷を実行することができる。また、印刷形態の設定に係る印刷設定データ１５１の設定値を変更することで、容易に、印刷媒体の使用量を削減できる。また、ホストコンピューター２００から受信する印刷ジョブに含まれるデータが、印刷形態の設定に係る設定値に相当する文字サイズ等を含む場合、制御部１１０は、この設定値に従って印刷を行い、ロール紙２０の残量に応じて段階的に、設定値を変更する。これにより、プリンター１が記憶する設定値だけでなく、印刷の指示により指定される設定値を変更して、ロール紙２０の使用量を効果的に削減できる。
【０１０８】
また、プリンター１は、印刷媒体としてロール紙２０を用い、ロール紙収容部１７に収納されているロール紙２０の紙幅を記憶部１５０に記憶する構成とすることができる。この構成で、プリンター１は、ロール紙収容部１７に収納されているロール紙の重量を測定する紙重量センサー１２６を備える。検出制御部１１２は、記憶部１５０に記憶するロール紙２０の紙幅、及び、紙重量センサー１２６により測定されるロール紙２０の重量に基づきロール紙２０の残りの長さを検出する。これにより、ロール紙２０の残量を、簡単な方法により正確に検出することができ、より効果的に、ロール紙２０の使用量を減少させることができる。
【０１０９】
また、プリンター１は、印刷媒体としてロール紙２０を用い、ロール紙収容部１７に収納されているロール紙の直径を測定する径検出部１２５を備える構成とすることができる。この構成で、検出制御部１１２は、径検出部１２５により測定されたロール紙２０（ロール２１）の直径に基づいて、ロール紙２０の残りの長さを検出する。これにより、ロール紙２０の残量を、より正確に検出することができ、より効果的に、ロール紙２０の使用量を減少させることができる。
【０１１０】
なお、上記実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。
例えば、上記実施形態で説明したプリンター１は、印刷媒体としてロール紙２０を用い、カバーフレーム１３を開くことにより露出するロール紙収容部１７に、ロール２１を収容する構成を例示した。本発明はこれに限定されず、カット紙を収容する紙トレイを備える印刷装置に本発明を適用してもよい。この場合、印刷媒体の残量は、紙トレイに収容された印刷媒体の残量を光学的に、或いは、重量により検出する構成が挙げられるが、その他の構成であってもよい。また、印刷媒体は紙に限定されず、布、不織布、或いはその他のシートとすることができる。
【０１１１】
また、例えば、上記実施形態で説明したプリンター１において、残量を示す記号やマークが付されたロール紙２０を備え、上記記号やマークを光学的に読み取ることで、プリンター１が、ロール紙２０の残量を求めてもよい。また、制御部１１０が、未使用時のロール２１の長さを設定値として記憶部１５０に保持し、プラテン３４によるロール紙２０の搬送量を減算することで、ロール紙２０の残量を常時保持する構成であってもよい。
また、図５に示したＮｏ．１〜Ｎｏ．４の削減処理はあくまで一例であり、印刷媒体に印刷する文字、画像、バーコード等の情報を削減せずに印刷媒体の使用量を削減できる処理であれば、適用可能である。また、印刷媒体に印刷する情報の一部を削除する処理を、削減処理に含めてもよい。
【０１１２】
また、図４に示した各機能部を独立したハードウェアにより構成する必要はなく、ソフトウェアとハードウェアとの協働により、複数の機能部の機能を１つのハードウェアに集約して実現することも勿論可能である。また、本発明を適用可能な印刷装置は、装置内部に記録媒体を収容し、この記録媒体を搬送して記録するプリンターであれば特に制限されない。具体的には、プリンター１のようなサーマルラインプリンターに限らず、インクジェット式プリンター、ドットインパクト式プリンター、レーザープリンター、熱昇華型プリンターのいずれであってもよい。また、他の方式で文字や画像を形成するプリンターであってもよい、また、他の装置に組み込まれる各種プリンターにも本発明を適用可能である。さらに、上述の動作を行う制御部１１０のＣＰＵが実行するプログラムは、プリンター１が備える記憶部１５０に限らず、他の記憶装置、記憶媒体や外部装置の記憶媒体に記憶させ、制御部１１０により読み出して実行する構成としても良い。
【符号の説明】
【０１１３】
１…プリンター（印刷装置）、５…排出口、１１…プリンター本体、１２…本体フレーム、１３…カバーフレーム、１４…ヒンジ、１５…凹状底壁、１５Ａ…最深部、１６…蓋部、１７…ロール紙収容部（収納部）、１８…ロール紙引出部、１９…仕切板、２０…ロール紙（印刷媒体）、２１…ロール（印刷媒体）、２１ａ…芯、３４…プラテン、３５…サーマルヘッド、３６…オートカッター、４０…駆動輪列、６０…レシート、６１…ヘッダー画像、６２…日付印字部、６３…取引商品印字部、６４…メッセージ印字部、６５…区切り線、６６…ボトム画像、６７…バーコード印字部、６９Ａ〜６９Ｆ…余白、１１０…制御部（制御部、設定部）、１１１…通信制御部、１１２…検出制御部（検出部）、１１３…印刷制御部、１１４…削減処理部、１２２…リアルエンドセンサー、１２３…ニアエンドセンサー、１２５…径検出部（直径測定部）、１２６…紙重量センサー（重量測定部）、１２７…紙幅センサー、１５０…記憶部、１５１…印刷設定データ、１５２…登録画像データ、１５３…削減設定データ、１５３ａ…削減処理テーブル、１５３ｂ…削減処理条件テーブル、１５５…通信部、２００…ホストコンピューター、Ｐ…印刷方向、Ｗ１…行サイズ、Ｗ２…行間サイズ。
【図１】
2018126940.tif 000003
【図２】
2018126940.tif 000004
【図３】
2018126940.tif 000005
【図４】
2018126940.tif 000006
【図５】
2018126940.tif 000007
【図６】
2018126940.tif 000008
【図７】
2018126940.tif 000009
【図８】
2018126940.tif 000010
【図９】
2018126940.tif 000011