以下、本発明の実施の形態を図面を参照にして説明する。図1はテープカセット収納部の収納カバーを開けて示すテープ印字装置の平面図である。図1において、テープ印字装置1には文字等を入力するための文書入力キー2、印刷キー3、TABキー4、改行や各種処理の実行を指令するリターンキー5、TAB長設定キー111、定長設定キー112、2個の位置合わせモード設定キー113等の各種のファンクションキーが設けられたキーボード6、キーボード6から入力された文字等を表示する液晶ディスプレイ7及び後述するテープカセット30を収納するカセット収納部8が配設されている。
尚、本発明の実施の形態における文字には、文書入力キー2による入力された文字だけでなく、記号、スペース、外枠等が含まれる。
また、カセット収納部8には、後述するパルスモータ75により回転駆動され、テープカセット30のリボン巻取スプール38を回動してサーマルインクリボン34を巻取るリボン巻取軸9が立設されており、又、その斜め前方(キーボード6側)には、パルスモータ75から適宜の伝達機構を介して回転駆動され、後述するテープ送りローラ43を回動するためのテープ送りローラ軸10が立設されている。更に、カセット収納部8の前方には、サーマルインクリボン34を介して後述するフィルムテープ32上に印字を行うサーマルヘッド11が固設されている。
尚、かかるカセット収納部8は、テープ印字装置1の後方に回動可能に枢支された収納カバー12により開閉され、開状態でテープカセット30の交換等が行われる。
次に、テープカセット30の構成について図2及び図3を参照して説明する。図2はカセット収納部8にテープカセット30を収納した状態を示す平面図(テープカセット30は上ケースを除いて示す)であり、また、図3はその一部を拡大して示す平面図である。
これらの図において、下ケース31内には透明なフィルムテープ32が巻回されたテープスプール33、サーマルインクリボン34が巻回されたリボンスプール35、剥離紙付き両面粘着テープ36が剥離紙側を外側にして巻回された粘着テープスプール37が配設されており、これら各スプール33、35、37は図示しない上ケースの下面に設けられた支持部との協働により回転可能に支持されている。
また、各スプール33、35、37の間にリボン巻取スプール38が同様に回転可能に支持されており、かかるリボン巻取スプール38は上記したリボン巻取軸9に噛合されリボン巻取軸9の駆動により印字で使用されたサーマルインクリボン34を巻取る。
更に、前記したサーマルヘッド11は下ケース31に設けられた凹部39に配置され、このサーマルヘッド11には後述するローラホルダHに回転可能に支持されたプラテンローラ40が圧接状態で対向配置されている。かかるサーマルヘッド11は多数の発熱素子(本実施例のサーマルヘッド11では128個の発熱素子が設けられている)を有しており、サーマルインクリボン34を介してフィルムテープ32に文字等の印字を行うものである。
また、下ケース31のテープ排出部41(図1、図2中左下側)の近傍にテープ圧接ローラ42が回転可能に支持され、このテープ圧接ローラ42には後述するローラホルダHに回転可能に支持されたテープ送りローラ43が圧接状態で対向配置されている。
カセット収納部8において、テープカセット30の前方(図1、図2中下側)には、ローラホルダHが支持軸44により回動可能に枢支され、このローラホルダHは図示しない手動の切換機構により印字位置とリリース位置とに切換可能とされている(図1、図2は共に印字位置に切り換えられた状態を示す)。
かかるローラホルダHには、図3に示すように上記したプラテンローラ40及びテープ送りローラ43がそれぞれ回転可能に、且つ、サーマルヘッド11及び圧接ローラ42に対し圧接されるように配設されている。
即ち、プラテンローラ40は、ホルダ部材45上に立設された回転軸46を中心として回転可能に支持され、また、ホルダ部材45はこれとローラホルダHの後壁Rとの間に介挿された弾性ばね47によりサーマルヘッド11に圧接されている。
また、テープ送りローラ43は、ホルダ部材48上に立設された回転軸49を中心として回転可能に支持され、また、ホルダ部材48はこれとローラホルダHの後壁Rとの間に介挿された弾性ばね50により圧接ローラ42に対し圧接されるように配設されている。尚、テープ送りローラ43は前記したテープ送りローラ軸10により回転駆動され、同時に、圧接ローラ42は図示しないギヤ機構でテープ送りローラ43と連動して回転駆動される。
更に、プラテンローラ40及びテープ送りローラ43の双方に接触するように中間ローラ51がホルダ部材52に回転軸53を介して回転可能に支持されており、また、かかるホルダ部材52は前記回転軸46を中心としてホルダ部材45と同軸的に回動可能とされ、常には、ホルダ部材52の後端部とローラホルダHとの間に介挿された引きばね54の作用により図2中反時計方向に付勢されている。これにより、中間ローラ51はプラテンローラ40及びテープ送りローラ43の双方に接触されている。
また、フィルムテープ32の送り方向に沿ってサーマルヘッド11の下流側であるテープ排出部41の近傍にはカッタ機構が55が配設されている。かかるカッタ機構55は公知のハサミと同様の構成をしており、固定刃56と可動刃57とからなる。この可動刃57は枢支軸58を中心として回動する回動レバー59に固着されており、また、回動レバー59はギヤ機構60を介してDCモータ61の駆動軸61Aに固着されたピニオン62と連結されている。
これより、可動刃57はDCモータ61の駆動軸61Aの正逆回転に伴いピニオン62、ギヤ機構60、回動レバー59を介して、枢支軸58を支点として開閉するものであり、かかる開閉動作に伴い固定刃56と協働して作成された印字テープTを切断するものである。
尚、圧接ローラ42及びテープ送りローラ43は、これらが協働してサーマルヘッド11によりサーマリルインクリボン34を介して文字等が印字されたフィルムテープ32に対し両面粘着テープ36の粘着剤面を圧着し、最終的に印字テープTを作成するものである。
次に、テープ印字装置の制御系について図4に基づき説明する。図4はテープ印字装置のブロック図であり、制御装置(以下、CPUと称する)70を核として構成されている。図4において、キーボード6がCPU70に接続されており、CPU70はキーボード6の文章入力キー2から入力される文字入力信号や印刷キー3、TABキー4、リターンキー5、TAB長設定キー111、定長設定キー112、位置合わせモード設定キー113等のキーから入力される各種入力信号を判別する。
また、CPU70にはROM71が接続されている。このROM71には、後述するメイン制御プログラムや、位置合わせモード設定処理プログラム、TAB長設定処理プログラム、定長設定処理プログラム、印刷処理プログラム、キーボード6の文章入力キー2から入力された文字等に対応するコードデータに基づいてドットパターンデータを発生するCGROM、その他テープ印字装置の制御上必要な各種のプログラムが記憶されている。
更に、CPU70に接続されたRAM72は各種データを一時的に記憶させておくものであり、キーボード6の文章入力キー2から入力された文字等に対応するコードデータを順次記憶してテキストが保存されるテキストバッファ、前記CGROMを介してテキストバッファのコードデータがドットパターンデータに展開されて記憶される展開バッファ、展開バッファのドットパターンデータが転送され前記サーマルヘッド11により印字される印字データを記憶する印刷バッファ、液晶ディスプレイ7に表示する表示データを記憶する表示バッファ、その他外字パターンデータを登録しておくための外字パターンバッファ等のメモリを備えている。
更に、CPU70には液晶ディスプレイ駆動回路73を介して液晶ディスプレイ7が接続され、CPU70はRAM72の表示バッファに記憶された表示データに基づいて液晶ディスプレイ駆動回路73を駆動し、液晶ディスプレイ7に入力された文字等を表示させる。また、CPU70はROM71に記憶されたプログラムに基づいてパルスモータ駆動回路74を駆動してパルスモータ75の制御を行い、これにより印字テープTの送り制御を行う。同様に、CPU70はROM71に記憶されたプログラムに基づいてDCモータ駆動回路76を駆動することによりDCモータ61の制御を行う。
また、CPU70にはサーマルヘッド駆動回路77を介してサーマルヘッド11が接続されており、CPU70はRAM72の印刷バッファに記憶された印字データに基づいてサーマルヘッド駆動回路77を駆動し、サーマルヘッド11によりフィルムテープ32上に文字等の印字を行う。
次に、本実施の形態のテープ印字装置1における主要な機能について説明する。本実施の形態のテープ印字装置1は、上述したように、可動刃57と固定刃56を協働させて印字テープTを切断することにより、1枚のプリントラベルを作出することができるが、このとき、定長設定キー112等を使用すれば、当該プリントラベルの長さを予め指定することができる。この点、プリントラベルの長さを予め指定した場合において、例えば、キーボード6の文章入力キー2等を使用することにより、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章を入力したときには、図5(a)に示すように、液晶ディスプレイ7に表示され、その後は、図5(b)に示すように、予め指定された長さに対して、1行目の「abcdefg ABC EFGHIJK」の文章及び2行目の「hijklm LMN OPQ」の文章それぞれがセンタリングされたプリントラベルPR1を作出することができる。
一方、ここで、位置合わせモード設定キー113等を使用することにより、位置合わせモードに設定した際には、作出されるプリントラベルは、図5(b)ではなく、図5(c)に示すようになり、各行の文章を構成する各文字ブロックについて各行頭からの順番毎に頭出しが揃えられるとともに、予め指定された長さにおいて左右に等しい余白が確保されたプリントラベルPR2を作出することができる。これらを具体的に言えば、位置合わせモードに設定された際に作出された図5(c)のプリントラベルPR2では、1行目の文章を構成する3つの文字ブロックである「abcdefg」、「ABC」、「EFGHIJK」と、2行目の文章を構成する3つの文字ブロック「hijklm」、「LMN」、「OPQ」とについて、各行頭から1番目にある「abcdefg」と「hijklm」の各文字ブロックの先頭位置が揃えられ、各行頭から2番目にある「ABC」と「LMN」の各文字ブロックの先頭位置が揃えられ、各行頭から3番目にある「DEFGHIJK」と「OPQ」の各文字ブロックの先頭位置が揃えられるとともに、さらに、各行頭から1番目にある「abcdefg」及び「hijklm」の各文字ブロックの左側と、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの右側において、相等しい余白が確保される。
次に、前記のような機能を実施するテープ印字装置1の動作について図面を参照して説明する。図6はメイン制御プログラムのフローチャートを示した図である。図6に示すように、先ず、ステップ(以下、「S」と略記する)11において、キーボード6上のいずれかのキーからキー入力があると、S12に進んで、文章入力キー2の入力があったかどうかが判断される。このとき、文章入力キー2の入力があったと判断される場合(S12:YES)には、S13に進んで、RAM72に確保されたテキストバッファを使用して文字入力処理が行われた後に、上述したS11に戻る。一方、文書入力キー2の入力がなかったと判断される場合(S12:NO)には、S14に進む。
S14では、2個の位置合わせモード設定キー113のいずれかの入力があったかどうかが判断される。このとき、2個の位置合わせモード設定キー113のいずれかの入力があったと判断される場合(S14:YES)には、S15に進んで、後述する図7の位置合わせモード設定処理が行われた後に、上述したS11に戻る。一方、2個の位置合わせモード設定キー113のいずれの入力もなかったと判断される場合(S14:NO)には、S16に進む。
S16では、TABキー4の入力があったかどうかが判断される。このとき、TABキー4の入力があったと判断される場合(S16:YES)には、S17に進んで、RAM72に確保されたテキストバッファを使用してTAB入力処理が行われた後に、上述したS11に戻る。一方、TABキー4の入力がなかったと判断される場合(S16:NO)には、S18に進む。
S18では、TAB長設定キー111の入力があったかどうかが判断される。このとき、TAB長設定キー111の入力があったと判断される場合(S18:YES)には、S19に進んで、後述する図8のTAB長設定処理が行われた後に、上述したS11に戻る。一方、TAB長設定キー111の入力がなかったと判断される場合(S18:NO)には、S20に進む。
S20では、定長設定キー112の入力があったかどうかが判断される。このとき、定長設定キー112の入力があったと判断される場合(S20:YES)には、S21に進んで、後述する図9の定長設定処理が行われた後に、上述したS11に戻る。一方、定長設定キー112の入力がなかったと判断される場合(S20:NO)には、S22に進む。
S22では、印刷キー3の入力があったかどうかが判断される。このとき、印刷キー3の入力があったと判断される場合(S22:YES)には、S23に進んで、後述する図16〜図18の印刷処理が行われた後に、上述したS11に戻る。一方、印刷キー3の入力がなかったと判断される場合(S22:NO)には、S24に進んで、その他の処理(例えば、プリントラベルの左右余白の設定)を行った後に、上述したS11に戻る。
次に、上述した図6のS15の位置合わせモード設定処理について図7を参照して説明する。図7は位置合わせモード設定処理プログラムのフローチャートを示した図である。図7に示すように、先ず、S31において、キーボード6上のいずれかのキーからキー入力があると、S32に進んで、位置合わせモード設定キー113の一方であるモード設定キーの入力があったかどうかが判断される。このとき、モード設定キーの入力があったと判断される場合(S32:YES)には、S33に進んで、RAM72に確保されたフラグを介して位置合わせモードに設定される。その後、S34において、キーボード6上のいずれかのキーからキー入力があると、S35に進んで、S34のキー入力に基づいて区切設定が行われ、その後、図6のメイン制御プログラムに復帰する。
ここで、S35の区切設定について、具体的に説明すれば、図5を例にすると、1行目の文章を構成する3つの文字ブロックである「abcdefg」、「ABC」、「EFGHIJK」と、2行目の文章を構成する3つの文字ブロック「hijklm」、「LMN」、「OPQ」とについて、各文字ブロックの範囲を定めるデミリタがS35の区切設定において設定される。ここで、デミリタの設定候補には、例えば、スペースや、コンマ、小数点、デシマルポイント、特定の記号などの入力文字データ、あるいは、TABなどの入力制御データなどがあり、これらのずべてをデミリタとして設定してもよいし、これらのうちいくつかをデミリタとして設定してもよいし、これらのうちいずれか一つをデミリタとして設定してもよい。
尚、デミリタとして設定されたものは、2つ以上連続して入力されている場合には、その文字列を1つのデミリタとして扱われる。
また、上述したS32において、モード設定キーの入力がなかったと判断される場合(S32:NO)には、S36に進んで、位置合わせモード設定キー113の他方であるモード解除キーの入力があったかどうかが判断される。このとき、モード解除キーの入力があったと判断される場合(S36:YES)には、S37に進んで、RAM72に確保されたフラグを介して位置合わせモードが解除された後、図6のメイン制御プログラムに復帰する。一方、モード解除キーの入力がなかったと判断される場合(S36:NO)には、何もすることなく、図6のメイン制御プログラムに復帰する。
次に、上述した図6のS19のTAB長設定処理について図8を参照して説明する。図8はTAB長設定処理プログラムのフローチャートを示した図である。図8に示すように、先ず、S41において、キーボード6上のいずれかの数字キーからキー入力があると、S42に進んで、S41の数字キー入力に基づいてTAB長の設定が行われ、その後に、S43に進む。S43では、TAB長が異常であるか否かが判断される。このとき、TAB長が異常であると判断される場合(S43:YES)には、S41に戻って、上述した処理が繰り返される一方、TAB長が異常でないと判断される場合(S43:NO)には、何もすることなく、図6のメイン制御プログラムに復帰する。
尚、S42で設定されたTAB長は、RAM72に確保された第1所定領域に上書きで記憶される。また、S43における判断は、ROM71に予め記憶されたTAB長の設定可能範囲との比較で行われる。
次に、上述した図6のS21の定長設定処理について図9を参照して説明する。図9は定長設定処理プログラムのフローチャートを示した図である。図9に示すように、先ず、S51において、キーボード6上のいずれかの数字キーからキー入力があると、S52に進んで、S51の数字キー入力に基づいて、プリントラベルの長さである定長の設定が行われ、その後に、S53に進む。S53では、定長が異常であるか否かが判断される。このとき、定長が異常であると判断される場合(S53:YES)には、S51に戻って、上述した処理が繰り返される一方、定長が異常でないと判断される場合(S53:NO)には、何もすることなく、図6のメイン制御プログラムに復帰する。
尚、S52で設定された定長は、RAM72に確保された第2所定領域に上書きで記憶される。また、S53における判断は、ROM71に予め記憶された定長の設定可能範囲との比較で行われる。
次に、上述した図6のS23の印刷処理について図10〜図19を参照して説明する。ここでは、先ず、当該印刷処理を説明するために必要な概念について、図5(a)の文章と、図5(b)のプリントラベルPR1、図5(c)のプリントラベルPR2を対象にして、具体的に定義する。
すなわち、図5(a)の文章を対象にした場合には、図10に示すように、1行目の文字列長を「TL1」とし、2行目の文字列長を「TL2」とする。
さらに、1行目の行頭から1番目にある「abcdefg」の文字ブロックの文字列長を「BL11」とし、1行目の行頭から2番目にある「ABC」の文字ブロックの文字列長を「BL12」とし、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの文字列長を「BL13」とする。また、2行目の行頭から1番目にある「hijklm」の文字ブロックの文字列長を「BL21」とし、2行目の行頭から2番目にある「LMN」の文字ブロックの文字列長を「BL22」とし、2行目の行頭から3番目にある「OPQ」の文字ブロックの文字列長を「BL23」とする。
そして、1行目の「abcdefg ABC EFGHIJK」の文章及び2行目の「hijklm LMN OPQ」の文章それぞれには、各文字ブロックの範囲を定めるデミリタDMが存在するが、この点、1行目の行頭から1番目にある「abcdefg」の文字ブロックの文字列長「BL11」と、1行目の行頭から2番目にある「ABC」の文字ブロックの文字列長「BL12」、2行目の行頭から1番目にある「hijklm」の文字ブロックの文字列長「BL21」、2行目の行頭から2番目にある「LMN」の文字ブロックの文字列長「BL22」のそれぞれには、1つのデミリタDMの幅が含まれている。すなわち、各行の行頭から最後にある文字ブロックを除き、各文字ブロックの文字列長のそれぞれには、1つのデミリタDMの幅が含まれる。
尚、図10では、液晶ディスプレイ7に表示された状態を示しているが、この点、説明の便宜上、各文字ブロックの文字列は印字された際の大きさを示すものとする。また、図10では、デミリタDMを「□」で表しているが、この点も、説明の便宜上、各文字ブロックの文字列が印字された際に確保されるスペースの大きさを示すものとする。
また、以上より、以下の記述においては、ある行の文字列長を単に示すときは「文字列長TL」を使用し、ある文字ブロックの文字列長を単に示すときは「文字列長BL」を使用する。
また、本実施の形態のテープ印字装置1では、プロポーショナル・スペーシングを用いた印刷が行われる。すなわち、文字の展開データの横方向において定義される前余白・文字幅・後余白について、それぞれ各文字毎に適切な値が設定されており、これにより、釣り合いの取れた配置で文字、すなわち、文章を印字させることができる。具体的には、文字「A」を例にとれば、図11に示すように定義される。また、各文字毎の前余白・文字幅・後余白の値は、図12に示すように、各文字毎に適切な値を設定したテーブル201がROM71に予め記憶されることにより確保される。
また、図5(b)のプリントラベルPR1を対象にした場合の定義例を図13に示す。図5(b)のプリントラベルPR1は、上述したように、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われた際のプリントラベルの印刷例であるが、図13に示すように、図5(b)のプリントラベルPR1を対象にした場合には、1行目の「abcdefg ABC EFGHIJK」の文章に対し、左に確保された余白を「左余白」とし、右に確保された余白を「右余白」とする。この点、「左余白」と「右余白」は相等しいため、いずれも、「SP1」とする。また、2行目の「hijklm LMN OPQ」の文章に対しても、同様であり、左に確保された余白を「左余白」とし、右に確保された余白を「右余白」とする。この点、「左余白」と「右余白」は相等しいため、いずれも、「SP2」とする。
以上より、以下の記述では、定長設定処理が行われて印刷されたプリントラベルにおいて、ある行の「左余白」及び「右余白」を単に示すときは「スペース量SP」を使用する。また、図13に示すように、プリントラベルの全長を示すときは、「ラベル長L」を使用する。
また、図5(c)のプリントラベルPR2を対象にした場合の定義例を図19に示す。図5(c)のプリントラベルPR2は、上述したように、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われ、且つ、位置合わせモード設定キー113の入力に基づく位置合わせモード設定(図6のS15、図7のS33)が行われた際のプリントラベルの印刷例である。図19に示すように、図5(c)のプリントラベルPR2を対象にした場合には、各行頭から1番目にある「abcdefg」と「hijklm」の各文字ブロックの先頭位置が揃えられた位置を「開始位置BP1」とする。また、各行頭から2番目にある「ABC」と「LMN」の各文字ブロックの先頭位置が揃えられた位置を「開始位置BP2」とする。また、各行頭から3番目にある「DEFGHIJK」と「OPQ」の各文字ブロックの先頭位置が揃えられた位置を「開始位置BP3」とする。さらに、各行頭から1番目にある「abcdefg」及び「hijklm」の各文字ブロックの左側と、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの右側において、相等しく確保された余白量を「最小のスペース量SPmin」とする。
以上より、以下の記述では、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われ、且つ、位置合わせモード設定キー113の入力に基づく位置合わせモード設定(図6のS15、図7のS33)が行われた際のプリントラベルにおいて、各行頭から同順位にある各文字ブロックの先頭位置が揃えられた位置を単に示すときは「開始位置BP」を使用し、当該プリントラベルの両端に相等しく確保される余白量を示すときは「最小のスペース量SPmin」を使用する。
そして、上述した図6のS23の印刷処理を行う際には、その最初において、位置合わせ処理が行われる。図14は、位置合わせ処理プログラムのフローチャートを示した図である。図14に示すように、先ず、S61において、各行の文字列長TLが算出される。具体的に言えば、図10に示すように、例えば、ここで、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、1行目の文字列長TL1と2行目の文字列長TL2とが算出され、この点、1行目の文字列長TL1と2行目の文字列長TL2には、各文字の前余白・文字幅・後余白が含まれるとともに(図11参照)、各文字ブロックの間に存在するデミリタDMの幅も含まれる。
その後は、S62に進んで、ラベル長Lが算出される。具体的に言えば、例えば、図13に示すように、プリントラベルPR1の全長である「L」が算出される。尚、図13に示す「L」は、上述したように、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われた際に印刷・作出されるプリントラベルの全長であるが、上記定長設定処理(図6のS21、図9参照)が行われなかった場合には、各行の文字列長TLの中での最大値を検索し、当該最大値に対し、自動設定又は上述した図6のS24におけるその他の処理で自由に設定されたプリントラベルの左右余白量を加算した値が、ラベル長Lとして算出される。
その後は、S63に進んで、各行のスペース量SPが算出される。具体的に言えば、図10に示すように、例えば、ここで、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、1行目のスペース量SP1と2行目のスペース量SP2とが算出される。尚、1行目のスペース量SP1は、(ラベル長L−1行目の文字列長TL1)/2で算出される。また、2行目のスペース量SP2は、(ラベル長L−2行目の文字列長TL2)/2で算出される。
その後は、S64に進んで、位置合わせモード設定状態にあるか否かが判断される。この点、位置合わせモードは、上述したように、RAM72に確保されたフラグを介して設定・解除がなされるので(図7のS33、S37参照)、ここでの判断も、当該フラグを介して行われる。このとき、位置合わせモード設定状態にあると判断される場合(S64:YES)には、S65に進んで、後述する図14の位置合わせモード処理が行われた後に、後述する図16の印刷処理に進む。一方、位置合わせモード設定状態にないと判断される場合(S64:YES)には、何もすることなく、後述する図16の印刷処理に進む。
尚、上記図14の位置合わせ処理で算出された各行の文字列長TLや、ラベル長L、各行のスペース量SPは、RAM72に確保された第3所定領域に上書きで記憶される。
次に、上述した図14のS65の位置合わせモード処理について図15を参照して説明する。図15は位置合わせモード処理プログラムのフローチャートを示した図である。図15に示すように、先ず、S71において、各文字ブロックの文字列長BLが算出される。具体的に言えば、図10に示すように、例えば、ここで、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、1行目の行頭から1番目にある「abcdefg」の文字ブロックの文字列長BL11と、1行目の行頭から2番目にある「ABC」の文字ブロックの文字列長BL12、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの文字列長BL13、2行目の行頭から1番目にある「hijklm」の文字ブロックの文字列長BL21、2行目の行頭から2番目にある「LMN」の文字ブロックの文字列長BL22、2行目の行頭から3番目にある「OPQ」の文字ブロックの文字列長BL23のそれぞれが算出される。この点、各文字ブロックの文字列長BL11、BL12、BL13、BL21、BL22、BL23には、各文字の前余白・文字幅・後余白が含まれる(図11参照)。また、各文字ブロックの文字列長BL11、BL12、BL21、BL22には、各文字ブロックの間に存在するデミリタDMの幅も含まれる。
その後は、S72に進んで、各文字ブロックの開始位置BPの初期化がなされる。このとき、各行の行頭から1番目にある文字ブロックの開始位置BP1には「0」が代入される。
さらに、S73では、各行の同順位の文字ブロックの文字列長BLが比較され、その後は、S74に進んで、S73での比較において最大と判断された文字ブロックの文字列長BLに対して、前順位の文字ブロックの開始位置BPが加算されることにより、次順位の文字ブロックの開始位置BPが算出される。そして、上述したS73〜S74の処理は、S75の判断処理により、各行の文字ブロックの全てについてなされるまで行われる(S75:NO)。
具体的に言えば、図10に示すように、例えば、ここで、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、先ず、1行目の行頭から1番目にある「abcdefg」の文字ブロック及び2行目の行頭から1番目にある「hijklm」の文字ブロックの先頭位置として、開始位置BP1に「0」が代入される(図19参照)。
そして、1行目の行頭から1番目にある「abcdefg」の文字ブロックの文字列長BL11と2行目の行頭から1番目にある「hijklm」の文字ブロックの文字列長BL21とが比較される。このとき、文字列長BL11が文字列長BL21より大きいので、開始位置BP1に対して文字列長BL11が加算され、これにより、開始位置BP2が算出される。この点、開始位置BP2は、1行目の行頭から2番目にある「ABC」の文字ブロック及び2行目の行頭から2番目にある「LMN」の先頭位置である(図19参照)。
次に、1行目の行頭から2番目にある「ABC」の文字ブロックの文字列長BL12と2行目の行頭から2番目にある「LMN」の文字ブロックの文字列長BL22とが比較される。もっとも、いずれの文字ブロックも3文字であるが、プロポーショナル・スペーシングを用いている関係上、文字ブロックの文字列長BL12、BL22のいずれかが大きい場合があり、開始位置BP2に対して、文字ブロックの文字列長BL12、BL22のいずれか大きい方が加算され、これにより、開始位置BP3が算出される。尚、文字ブロックの文字列長BL12、BL22のいずれも等しい場合には、開始位置BP2に対して、文字ブロックの文字列長BL12、BL22のいずれかが加算され、これにより、開始位置BP3が算出される。この点、開始位置BP3は、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロック及び2行目の行頭から3番目にある「OPQ」の文字ブロックの先頭位置である(図19参照)。
次に、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの文字列長BL13と2行目の行頭から3番目にある「OPQ」の文字ブロックの文字列長BL23とが比較される。このとき、文字列長BL13が文字列長BL23より大きいので、開始位置BP3に対して文字列長BL13が加算され、これにより、開始位置BP4が算出される(図19参照)。尚、この時点で、1行目及び2行目の全ての文字ブロックについて処理が行われたので、上述したS73〜S74の処理は終了し、S76に進む(S75:YES)。
そして、S75において、各行の文字ブロックの全てについて行ったと判断される場合(S75:YES)には、S76に進んで、各行のスペース量SPの中で最も小さいものが検索され、これにより、最小スペース量SPminが算出され、その後に、図14の位置合わせ処理に復帰する。
具体的に言えば、図10に示すように、例えば、ここで、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、各行のスペース量SPは、図14の位置合わせ処理のS63で算出されるが、それを図示すると、図13に示すようになる。従って、1行目のスペース量SP1が2行目のスペース量SP2より小さいので、最小スペース量SPminとして、1行目のスペース量SP1が算出される。
尚、上記図15の位置合わせモード処理で算出された各文字ブロックの文字列長BLや、各文字ブロックの開始位置BP、最小スペース量SPminは、RAM72に確保された第4所定領域に上書きで記憶される。
次に、上述した図6のS23の印刷処理について図16を参照して説明する。図16は印刷処理プログラムのフローチャートを示した図である。図16に示すように、先ず、S81において、位置合わせモード設定状態にあるか否かが判断される。この点、位置合わせモードは、上述したように、RAM72に確保されたフラグを介して設定・解除がなされるので(図7のS33、S37参照)、ここでの判断も、当該フラグを介して行われる。このとき、位置合わせモード設定状態にあると判断される場合(S81:YES)には、S82に進んで、後述する図17の第1印刷処理が行われ、その後に、図6のメイン制御プログラムに復帰する。一方、位置合わせモード設定状態にないと判断される場合(S81:YES)には、S83に進んで、後述する図18の第2印刷処理が行われ、その後に、図6のメイン制御プログラムに復帰する。
次に、上述した図16のS83の第2印刷処理について図17を参照して説明する。図17は第2印刷処理プログラムのフローチャートを示した図である。尚、当該第2印刷処理の機能を具体的に言えば、ここで、例えば、図5(a)に示すように、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、図5(b)及び図13に示すように、予め指定されたプリントラベルPR1の長さに対して、1行目の「abcdefg ABC EFGHIJK」の文章及び2行目の「hijklm LMN OPQ」の文章それぞれがセンタリングして印刷される。
すなわち、当該第2印刷処理では、図17に示すように、先ず、S91において、RAM72に確保された変数Nに「1」が代入された後に、S92に進んで、N行目の左余白の展開が終了しているか否かが判断される。このとき、N行目の左余白の展開が終了していないと判断される場合(S92:NO)には、S94において、ROM71に確保された印刷バッファに対しN行目のスペース量SPが左余白として展開され、その後に、S95に進む。尚、N行目のスペース量SPは、上記図14の位置合わせ処理のS63で算出され、RAM72に確保された第3所定領域に上書きで記憶されている。一方、N行目の左余白の展開が終了していると判断される場合(S92:YES)には、S93において、当該印刷バッファに対しN行目の1文字が展開された後で、S95に進む。
そして、S95では、当該印刷バッファに対しN行目の全文字の展開が終了しているか否かが判断される。このとき、当該印刷バッファに対しN行目の全文字の展開が終了していないと判断される場合(S95:NO)には、上述したS93に戻って、当該印刷バッファに対しN行目の次の1文字が展開される。一方、当該印刷バッファに対しN行目の全文字の展開が終了していると判断される場合(S95:YES)には、S96に進んで、N行目は最終行であるか否かが判断される。このとき、N行目は最終行でないと判断される場合(S96:NO)には、S97に進んで、RAM72に確保された変数Nに「1」が加算された後に、S92に戻って、上述した処理が繰り返される。
一方、N行目は最終行であると判断される場合(S96:YES)には、S98に進んで、各行のスペース量SPの中で最も小さいスペース量が検索され、当該印刷バッファにおいて、この最小のスペース量が最後に位置する文字ブロックの右側に展開されることで、プリントラベルの右側余白が確保される。
尚、ここでは、各行のスペース量SPを各行の右余白としてそれぞれ展開させてもよい。
そして、S99に進むと、当該印刷バッファに展開された内容がサーマルヘッド11を介して印字テープTに印刷され、その後に、図6のメイン制御プログラムに復帰する。尚、印刷された印字テープTは、図6のS24のその他の処理において切断され、プリントラベルとなる。
次に、上述した図16のS82の第1印刷処理について図18を参照して説明する。図18は第1印刷処理プログラムのフローチャートを示した図である。尚、当該第1印刷処理の機能を具体的に言えば、ここで、例えば、図5(a)に示すように、「abcdefg ABC EFGHIJK」と「hijklm LMN OPQ」の2行に渡る文章が既に入力されている場合には、図5(c)及び図19に示すように、予め長さが指定されたプリントラベルPR2に対して、各行頭から1番目にある「abcdefg」と「hijklm」の各文字ブロックの先頭位置が揃えられ、各行頭から2番目にある「ABC」と「LMN」の各文字ブロックの先頭位置が揃えられ、各行頭から3番目にある「DEFGHIJK」と「OPQ」の各文字ブロックの先頭位置が揃えられるとともに、さらに、各行頭から1番目にある「abcdefg」及び「hijklm」の各文字ブロックの左側と、1行目の行頭から3番目にある「DEFGHIJK」の文字ブロックの右側において、相等しい余白が確保されるように印刷される。
すなわち、当該第1印刷処理では、図18に示すように、先ず、S111において、RAM72に確保された変数Nに「1」が代入された後に、S112に進んで、ROM71に確保された印刷バッファに対し、最小スペース量SPminがN行目の左余白として展開される。尚、最小スペース量SPminは、上記図15の位置合わせモード処理のS76で算出され、RAM72に確保された第4所定領域に上書きで記憶されている。
そして、S113において、当該展開の最終位置が文字ブロックの開始位置BPであるか否かが判断される。このとき、当該展開の最終位置が文字ブロックの開始位置BPであると判断される場合(S113:YES)には、S114に進んで、当該開始位置BPに対応するN行目の文字ブロックの全文字が展開され、その後に、S116に進む。一方、当該展開の最終位置が文字ブロックの開始位置BPでないと判断される場合(S113:NO)には、S115に進んで、当該印刷バッファに対し空白ドットが展開され、その後に、S116に進む。尚、文字ブロックの開始位置BPは、上記図15の位置合わせモード処理のS74で算出され、RAM72に確保された第4所定領域に上書きで記憶されている。
そして、S116では、当該印刷バッファに対しN行目の文字ブロックの全ての展開が終了しているか否かが判断される。このとき、当該印刷バッファに対しN行目の文字ブロックの全ての展開が終了していないと判断される場合(S116:NO)には、S114に戻って、上述した処理が繰り返される。一方、当該印刷バッファに対しN行目の文字ブロックの全ての展開が終了していると判断される場合(S116:YES)には、S117に進んで、N行目は最終行であるか否かが判断される。このとき、N行目は最終行でないと判断される場合(S117:NO)には、S118に進んで、RAM72に確保された変数Nに「1」が加算された後に、S92に戻って、上述した処理が繰り返される。
一方、N行目は最終行である判断される場合(S117:YES)には、S119に進んで、当該印刷バッファにおいて、最小スペース量SPminを最後に位置する文字ブロックの右側に展開することで、プリントラベルの右側余白を確保する。
そして、S120に進むと、当該印刷バッファに展開された内容がサーマルヘッド11を介して印字テープTに印刷され、その後に、図6のメイン制御プログラムに復帰する。尚、印刷された印字テープTは、図6のS24のその他の処理において切断され、プリントラベルとなる。
尚、本発明は上記実施の形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、本実施の形態のテープ印字装置1において、図18の第1印刷処理のS112〜S117では、印刷バッファへの文字ブロックの展開を各行毎に行っている。この点、図19に示すように、各行の行頭から同順位の文字ブロックの開始位置BPが同じであることから、各行の行頭から同順位の文字ブロック毎にそれらの全文字を同時に展開させてもよい。
また、本実施の形態のテープ印字装置1において、例えば、「ABCEFGH IJKLM N」と「ABC abcdef DEF」の2行に渡る文章が入力されている場合において、TAB編集された際に、1行目の行頭から1番目の文字ブロックである「ABCEFGH」の文字列がTAB長を超えたときは、通常では、図20(a)のプリントラベルPR3が作出され、各行頭から1番目にある「ABCDEFGH」と「ABC」の各文字ブロックの先頭位置が揃えられ、さらに、1行目の行頭から2番目にある「IJKLM」の文字ブロックと2行目の行頭から3番目にある「DEF」の文字ブロックの各先頭位置が揃えられるが、その一方で、2行目の行頭から2番目にある「abcdef」の先頭位置は、1行目の各文字ブロックの先頭位置のいずれにも揃えられることはない。
しかしながら、本実施の形態のテープ印字装置1では、このような場合において、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われ、且つ、位置合わせモード設定キー113の入力に基づく位置合わせモード設定(図6のS15、図7のS33)で位置合わせモードに設定されると(図16のS81:YES)、この設定条件で図18の第1印刷処理がなされる結果、図20(b)のプリントラベルPR3が作出される。この図20(b)のプリントラベルPR3では、1行目の文章を構成する3つの文字ブロックである「ABCEFGH」、「IJKLM」、「N」、2行目の文章を構成する3つの文字ブロック「ABC」、「abcdef」、「DEF」とについて、各行頭から1番目にある「ABCEFGH」と「ABC」の各文字ブロックの先頭位置が揃えられ、各行頭から2番目にある「IJKLM」と「abcdef」の各文字ブロックの先頭位置が揃えられ、各行頭から3番目にある「N」と「DEF」の各文字ブロックの先頭位置が揃えられるとともに、さらに、各行頭から1番目にある「ABCEFGH」及び「ABC」の各文字ブロックの左側と、2行目の行頭から3番目にある「DEF」の文字ブロックの右側において、相等しい余白が確保される。
すなわち、TAB編集された文章において、TAB長を超えた文字列があった場合でも、各行の文字ブロックの先頭位置を左からの順番毎に揃えた状態で印刷させることが可能であり、さらに、そのとき作出されたプリントラベルの両端においては、各行のスペース量のうち最小のものを左右余白として確保することも可能である。
もっとも、このとき、プリントラベルに確保される左右余白を、定長設定キー112の入力に基づく定長設定処理(図6のS21、図9参照)が行われない場合、すなわち、デフォルメとして確保される通常余白量にすることも可能である。そのためには、上述したように、定長設定処理(図6のS21、図9参照)が行われないことが必要であるが、さらに、図18の第1印刷処理において、S112では、N行目の左余白として通常余白量を展開し、S119でも、通常余白量を展開する必要がある。