JP4743083B2 - 印刷装置 - Google Patents

印刷装置 Download PDF

Info

Publication number
JP4743083B2
JP4743083B2 JP2006299342A JP2006299342A JP4743083B2 JP 4743083 B2 JP4743083 B2 JP 4743083B2 JP 2006299342 A JP2006299342 A JP 2006299342A JP 2006299342 A JP2006299342 A JP 2006299342A JP 4743083 B2 JP4743083 B2 JP 4743083B2
Authority
JP
Japan
Prior art keywords
data
print
limited
input
printing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006299342A
Other languages
English (en)
Other versions
JP2008114461A (ja
Inventor
秀和 石井
裕二 飯田
明彦 丹羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2006299342A priority Critical patent/JP4743083B2/ja
Priority to EP07019057A priority patent/EP1918855A3/en
Priority to US11/904,348 priority patent/US8004696B2/en
Publication of JP2008114461A publication Critical patent/JP2008114461A/ja
Application granted granted Critical
Publication of JP4743083B2 publication Critical patent/JP4743083B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/002Interacting with the operator
    • G06K15/005Interacting with the operator only locally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/181Receiving print data characterized by its formatting, e.g. particular page description languages
    • G06K15/1811Receiving print data characterized by its formatting, e.g. particular page description languages including high level document description only
    • G06K15/1813Page description language recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1822Analysing the received data before processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Record Information Processing For Printing (AREA)
  • Printers Characterized By Their Purpose (AREA)

Description

本発明は、受信データが入力項目に入力された状態のテンプレートを印刷する印刷装置に関するものである。
従来より、印刷装置には、秤、バーコード・リーダ、医療機器などのホストからデータを受信すると、その受信データに含まれる項目データをテンプレートの各入力項目に入力して印刷するものがある。この点、ホストからの受信データには、項目データやデリミタや印刷開始コマンドなどが含まれている。従って、印刷装置では、ホストからの受信データから、項目データやデリミタや印刷開始コマンドなどを自動的に解析させるために、そのホストが使用するデリミタ文字や印刷開始文字などをユーザが予め登録していた。そして、印刷装置では、このような初期設定が行われれば、ホストからデータを受信する度に、その受信データに含まれる項目データやデリミタや印刷開始コマンドなどを自動的に解析できるので、その受信データに含まれる項目データが入力項目に入力されたテンプレートを適切な状態にすることができる。
尚、コンピュータであるホストからの受信データを印刷装置が自動的に解析する技術には、以下に指摘する特許文献1や特許文献2などがある。
特開平5−199990号公報 特開2004−330688号公報
しかしながら、ホストからの受信データの構成がユーザにとって不明である場合には、そのホストが使用するデリミタ文字や印刷開始文字などをユーザが予め登録することは困難であるので、ホストからのデータを印刷装置が受信しても、その受信データに含まれる項目データやデリミタや印刷開始コマンドなどを正しく区別することができず、その受信データに含まれる項目データが入力項目に入力されたテンプレートを適切な状態にすることができない。
そこで、本発明は、上述した点を鑑みてなされたものであり、印刷装置の受信データの構成がユーザにとって不明であっても、その受信データに含まれる項目データがテンプレートの入力項目に適切に入力された状態にすることが可能な印刷装置を提供することを課題とする。
この課題を解決するために成された請求項1に係る発明は、印刷装置であって、複数の入力項目で構成されたテンプレートが記憶されるテンプレート記憶手段と、受信データを受信する受信手段と、前記受信データを複数の範囲に区切るための限定データの候補を前記テンプレートの入力項目の個数よりも1つ少ない数である限定データ数分前記受信データで周期的に繰り返される文字列から少なくとも1つ取得する限定データ候補取得手段と、前記限定データの候補の中から限定データの仮決定を行うデータ候補仮決定手段と、前記データ候補仮決定手段による限定データの仮決定に基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第1印刷データを作成する第1印刷データ作成手段と、前記第1印刷データの印刷イメージが表示される表示手段と、を備えたこと、を特徴とする。
また、請求項2に係る発明は、請求項1に記載する印刷装置であって、前記限定データと前記各区切データとはそれぞれ種類が異なること、を特徴とする。
また、請求項3に係る発明は、請求項1又は請求項2に記載する印刷装置であって、第1印刷手段と、前記表示手段に表示されている第1印刷データの印刷イメージを前記第1印刷手段に印刷させることをユーザが指示する第1入力手段と、を備えたこと、を特徴とする。
また、請求項4に係る発明は、請求項1又は請求項2に記載する印刷装置であって、前記限定データを特定する限定データ特定手段と、前記限定データ特定手段が特定する前記限定データを、前記表示手段に印刷イメージが表示されている第1印刷データを作成した際に仮決定された前記限定データとすることをユーザが指示する第2入力手段と、前記限定データ特定手段により特定された前記限定データに基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第2印刷データを作成する第2印刷データ作成手段と、前記第2印刷データの印刷イメージを印刷する第2印刷手段と、を備えたこと、を特徴とする。
また、請求項5に係る発明は、請求項1に記載する印刷装置であって、前記受信データの終了を示す終了データの候補を前記限定データの候補に基づいて前記受信データから少なくとも1つ取得する終了データ候補取得手段を備え、前記第1印刷データ作成手段は、前記限定データの候補に加えて前記終了データの候補に基づいて前記第1印刷データを作成すること、を特徴とする。
また、請求項6に係る発明は、請求項5に記載する印刷装置であって、前記限定データと前記終了データと前記各区切データとはそれぞれ種類が異なること、を特徴とする。
また、請求項7に係る発明は、請求項5又は請求項6に記載する印刷装置であって、第1印刷手段と、前記表示手段に表示されている第1印刷データの印刷イメージを前記第1印刷手段に印刷させることをユーザが指示する第1入力手段と、を備えたこと、を特徴とする。
また、請求項8に係る発明は、請求項5又は請求項6に記載する印刷装置であって、前記限定データを特定する限定データ特定手段と、前記終了データを特定する終了データ特定手段と、前記限定データ特定手段が特定する前記限定データと前記終了データ特定手段が特定する前記終了データとを、前記表示手段に印刷イメージが表示されている第1印刷データを作成した際に仮決定された限定データ及び終了データとすることをユーザが指示する第3入力手段と、前記限定データ特定手段により特定された前記限定データと前記終了データ特定手段により特定された前記終了データに基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第3印刷データを作成する第3印刷データ作成手段と、前記第3印刷データの印刷イメージを印刷する第3印刷手段と、を備えたこと、を特徴とする。
また、請求項9に係る発明は、請求項1乃至請求項8のいずれか一つに記載する印刷装置であって、前記データ候補仮決定手段に対して仮決定を更新させることをユーザが指示する第4入力手段を備えたこと、を特徴とする。
また、請求項10に係る発明は、請求項1乃至請求項9のいずれか一つに記載する印刷装置であって、前記限定データ候補取得手段は、前記限定データの候補を前記テンプレートの入力項目の個数よりも1つ少ない数以下の何れかの数を前記限定データ数として当該限定データ数分前記受信データで周期的に繰り返される文字列から少なくとも1つ取得すること、を特徴とする。
また、請求項11に係る発明は、請求項10に記載する印刷装置であって、前記限定データ候補取得手段は、前記テンプレートの入力項目の個数よりも1つ少ない数から前記限定データ数を開始して1ずつデクリメントしながら、限定データ数分周期的に繰り返される文字列が前記受信データに見付かるまで繰り返すことにより限定データの候補を取得すること、を特徴とする。
また、請求項12に係る発明は、請求項10又は請求項11に記載する印刷装置であって、前記限定データ数を更新させることをユーザが指示する第5入力手段を備え、前記限定データ候補取得手段は、前記第5入力手段により更新された限定データ数に基づいて前記限定データの候補を取得すること、を特徴とする。
すなわち、本発明の印刷装置では、受信データを受信すると、その受信データを複数の範囲に区切るための限定データの候補がテンプレートの入力項目の個数よりも1つ少ない数である限定データ数分その受信データで周期的に繰り返される文字列から少なくとも1つ取得され、その限定データの候補の中から限定データの仮決定が行われ、その限定データの仮決定に基づいてその受信データを複数の区切データに区切りながら当該各区切データをテンプレートの各入力項目に入力することにより第1印刷データが作成され、その第1印刷データの印刷イメージが表示される。従って、その受信データに含まれる各区切データが各入力項目に入力されたテンプレートの印刷イメージをユーザが見ることができるので、その受信データに含まれる各区切データが各入力項目に入力されたテンプレートが適切な状態にあるか否かをユーザが確認することができる。
また、限定データと各区切データとが異なる種類のデータからなるので、限定データと区切データとの区別が明確になり、区別の処理も簡略化できる。限定データの候補の個数を少なくできる可能性がある。
また、本発明の印刷装置において、表示されている第1印刷データの印刷イメージを印刷させることをユーザの指示により行うようにすれば、ユーザは、印刷イメージの確認結果が良好であることを条件としてその指示を行うことにより、その受信データに含まれる各区切データが各入力項目に適切に入力されたテンプレートを印刷させることが可能となる。
また、本発明の印刷装置において、限定データ特定手段が特定する限定データを、印刷イメージが表示されている第1印刷データを作成した際に仮決定された前記限定データとすることをユーザの指示により行うようにし、限定データ特定手段により特定された限定データに基づいてその受信データを複数の区切データに区切りながら当該各区切データをテンプレートの各入力項目に入力することにより第2印刷データを作成するようにし、その第2印刷データの印刷イメージを印刷するようにすれば、ユーザは、1度第2入力手段により限定データを指示した場合、以後の受信データに対し、限定データを特定する操作を繰り返すことなく、その受信データに含まれる各区切データが各入力項目に適切に入力されたテンプレートを印刷させることが可能となる。
さらに、本発明の印刷装置において、受信データの終了を示す終了データの候補をその限定データの候補に基づいてその受信データから少なくとも1つ取得し、その限定データの候補やその終了データの候補に基づいて第1印刷データが作成される。従って、その受信データに含まれる各区切データからその終了データの候補を除くことができるので、その受信データに終了データが含まれていれば、その受信データに含まれる各区切データがテンプレートの各入力項目に適切に入力された状態にある可能性が高くなる。
また、限定データと終了データと各区切データとが異なる種類のデータからなるので、各データ同士の区別が明確になり、区別の処理も簡略化できる。限定データの候補の個数及び、終了データの候補の個数を少なくできる可能性がある。
また、本発明の印刷装置において、表示されている第1印刷データの印刷イメージを印刷させることをユーザの指示により行うようにすれば、ユーザは、印刷イメージの確認結果が良好であることを条件としてその指示を行うことにより、その受信データに含まれる各区切データが各入力項目に適切に入力されたテンプレートを印刷させることが可能となる。
また、本発明の印刷装置において、限定データ特定手段が特定する限定データと終了データ特定手段が特定する終了データとを、印刷イメージが表示されている第1印刷データを作成した際に仮決定された限定データ及び終了データとすることをユーザの指示により行うようにし、限定データ特定手段により特定された限定データと終了データ特定手段により特定された終了データに基づいてその受信データを複数の区切データに区切りながら当該各区切データをテンプレートの各入力項目に入力することにより第3印刷データを作成するようにし、その第3印刷データの印刷イメージを印刷するようにすれば、ユーザは、1度第3入力手段により限定データ及び終了データを指示した場合、以後の受信データに対し、限定データ及び終了データを特定する操作を繰り返すことなく、その受信データに含まれる各区切データが各入力項目に適切に入力されたテンプレートを印刷させることが可能となる。
また、本発明の印刷装置において、仮決定を更新させることをユーザの指示により行うようにすれば、ユーザは、印刷イメージの確認結果が良好でないときにその指示を行うことにより、その更新後の仮決定に基づいて作成された第1印刷データの印刷イメージを表示させることができるので、確認結果が良好である印刷イメージを表示させる可能性が高くなる。
尚、本発明の印刷装置において、限定データの候補をテンプレートの入力項目の個数よりも1つ少ない数以下の何れかの数を限定データ数として当該限定データ数分受信データで周期的に繰り返される文字列から少なくとも1つ取得されるようにすれば、テンプレートの入力項目に既に入力されているデータなどを活用することができる。
以下、本発明の実施の形態を図面を参照にして説明する。図1は、本発明の一実施形態である印刷装置の特徴を示した図である。図1に示すように、本実施形態の印刷装置1では、4個の入力項目41、42、43、44を有するテンプレート40がFlash ROM14に記憶されており、ホスト39からの受信データ51がテンプレート40の各入力項目41、42、43、44に入力された状態の印刷プレビュー61がLCD23に表示される。
この点、ホスト39からの受信データ51(具体的には、「100/50/200/350CR」)には、テンプレート40の各入力項目41、42、43、44にそれぞれ入力される4個の項目データ(具体的には、「100」「50」「200」「350」)に加えて、それらの各項目データを限定する3個のデリミタ(具体的には、「/」「/」「/」)や、印刷開始コマンドに相当する印刷開始文字列(具体的には、「CR」)が含まれている。尚、「CR」は、キャリッジ・リターン・コードの略号であり、これで1つのコードを示している。ASCIIコードにおける制御コードの1つである。
但し、本実施形態の印刷装置1では、ホスト39からの受信データ51に含まれているデリミタや印刷開始文字列を判定できない。そこで、本実施形態の印刷装置1では、ホスト39からの受信データ51に含まれているデリミタの個数が、テンプレート40の各入力項目41、42、43、44の個数よりも1つ少ないことを鑑みて、ホスト39からの受信データ51にデリミタが3個含まれていると計算する。そして、その3個分と同等の3回に渡って、ホスト39からの受信データ51で周期的に繰り返される文字列(具体的には、「/」「0/」)を取得して、デリミタの候補とする。さらに、ホスト39からの受信データ51で最後のデリミタの候補以降に位置するデータ群(具体的には、「350CR」)から印刷開始文字列の候補(具体的には、「CR」「0CR」「50CR」「350CR」)を取得する。
そして、デリミタの候補と印刷開始文字列の候補とをそれぞれ仮決定し、その仮決定されたデリミタの候補と印刷開始文字列の候補を使用して、ホスト39からの受信データ51に含まれる4個の項目データを推定し、それらの4個の項目データをテンプレート40の各入力項目41、42、43、44に入力された状態の印刷プレビュー61をLCD23に表示させる。
このとき、LCD23に表示された印刷プレビュー61が適切な状態にあれば、操作キー21をユーザが操作することにより、印刷プレビュー61のイメージ通りに印字テープ52を印刷する。
尚、仮決定されるデリミタの候補と印刷開始文字列の候補の組合せは、ここでは、デリミタの候補(具体的には、「/」「0/」)が2個で印刷開始文字列の候補(具体的には、「CR」「0CR」「50CR」「350CR」)が4個であるから、合計8個(=2個×4個)となる。従って、LCD23に表示される印刷プレビューも8通りあることになる。そこで、図2に、8通りの印刷プレビューを示した。
印刷プレビュー61Aは、デリミタの候補として「/」が印刷開始文字列の候補として「CR」がそれぞれ仮決定された場合にLCD23に表示される。図1に示された印刷プレビュー61である。
印刷プレビュー61Bは、デリミタの候補として「/」が印刷開始文字列の候補として「0CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Cは、デリミタの候補として「/」が印刷開始文字列の候補として「50CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Dは、デリミタの候補として「/」が印刷開始文字列の候補として「350CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Eは、デリミタの候補として「0/」が印刷開始文字列の候補として「CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Fは、デリミタの候補として「0/」が印刷開始文字列の候補として「0CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Gは、デリミタの候補として「0/」が印刷開始文字列の候補として「50CR」がそれぞれ仮決定された場合にLCD23に表示される。
印刷プレビュー61Hは、デリミタの候補として「0/」が印刷開始文字列の候補として「350CR」がそれぞれ仮決定された場合にLCD23に表示される。
この点、図1に示した印刷装置1では、操作キー21をユーザが操作すれば、仮決定されるデリミタの候補と印刷開始文字列の候補の組合せが更新される。従って、操作キー21の操作をユーザが繰り返せば、8通りの印刷プレビュー61を一つずつ順番でLCD23に表示させることができる。そして、LCD23に表示された印刷プレビュー61が適切な状態にあれば、操作キー21をユーザが操作することにより、その適切な状態にある印刷プレビュー61のイメージ通りの印字テープ52を印刷することができる。
尚、各印刷プレビュー61の上端部には、それぞれの印刷プレビュー61を特定するための分数表示がなされている。例えば、印刷プレビュー61Aの上端部に分数表示されている「1/8」とは、8通りの中の1通り目の印刷プレビューであることを示している。また、印刷プレビュー61Bの上端部に分数表示されている「2/8」とは、8通りの中の2通り目の印刷プレビューであることを示している。以下、印刷プレビュー61C、61D、61E、61F、61G、61Hの上端部にそれぞれ分数表示されている「3/8」、「4/8」、「5/8」、「6/8」、「7/8」、「8/8」についても、同様である。
次に、本実施形態の印刷装置1の構成について説明する。図3は、本実施形態の印刷装置1の外観斜視図である。図3に示すように、本実施形態の印刷装置1は、ハンディタイプのラベルプリンタであって、本体筐体2に対して、指令キー3や、上キー4、下キー5、複数のキーからなる編集キー6、印字テープ52をカットする手動レバー7、ホスト39と接続するケーブルのコネクタが差し込まれる接続ポート8等が設けられている。尚、指令キー3や、上キー4、下キー5、編集キー6により、操作キー21が構成される。
図4は、本実施形態の印刷装置1の制御系を示した図である。本実施形態の印刷装置1では、入出力インターフェース11に対して、後述する各プログラムなどを実行するCPU12や、ROM13、Flash ROM14、RAM15等が接続されている。
この点、ROM13には、後述する各プログラムなどが記憶される。また、FlashROM14には、テンプレート40に関する情報などが記憶される。また、RAM15には、印刷バッファ16及びテキストバッファ17が確保されるとともに、CPU12が各プログラムなどを実行する際に使用するワークエリアも確保される。そのワークエリアには、モードフラグや、変数x、変数y、変数i、変数jなどが設けられる。
また、本実施形態の印刷装置1では、入出力インターフェース11に対して、操作キー21や、LCD23に表示データを出力するための表示用RAMを備えたディスプレイコントローラ(以下、LCDCという)22、サーマルヘッド25を駆動するための駆動回路24、印字カセット内の印字テープ52を外部に送り出すテープ送りモータ27を駆動するための駆動回路26等が接続されている。また、ホスト39も、接続ポート8にコネクタが差し込まれたケーブルを介して、入出力インターフェース11に接続される。
次に、本実施形態の印刷装置1の制御動作について説明する。図5は、メインプログラムのフローチャートを示した図である。
すなわち、CPU12は、メインプログラムを読み出して実行すると、図5に示すように、先ず、S11において、ホスト39からデータを受信したか否かを判定する。ここで、ホスト39からデータを受信したと判定した場合には(S11:YES)、後述するS12のデータ処理を実行した後に、このS11に戻る。尚、CPU12は、ホスト39からの受信データ51をRAM15のワークエリアに記憶しておく。一方、ホスト39からデータを受信していないと判定した場合には(S11:NO)、S13に進む。
S13では、CPU12は、編集用キーがユーザにより操作されたか否かを判定する。この点、編集用キーとは、指令キー3を除いた操作キー21をいう。ここで、編集用キーがユーザにより操作されたと判定した場合には(S13:YES)、S14に進んで、ユーザによる編集用キーの操作を介して文章入力が行われた後に、上述したS11に戻る。尚、ユーザによる編集用キーの操作を介した文章入力は、印刷内容を入力・編集するものであるが、公知であるので、その詳細な説明は省略する。一方、編集用キーがユーザにより操作されていないと判定した場合には(S13:NO)、S15に進む。
S15では、CPU12は、モードキーがユーザにより操作されたか否かを判定する。この点、モードキーとは、指令キー3をいう。ここで、モードキーがユーザにより操作されたと判定した場合には(S15:YES)、後述するS16のモード処理を実行した後に、上述したS11に戻る。一方、モードキーがユーザにより操作されていないと判定した場合には(S15:NO)、S17に進んで、その他の処理を実行した後、上述したS11に戻る。
次に、上述したS16のモード処理について説明する。図6は、モード処理のフローチャートを示した図である。
すなわち、CPU12は、上記メインプログラムでS16のモード処理を実行すると、図6に示すように、先ず、S21において、モードフラグはONであるか否かを判定する。モードフラグは、RAM15のワークエリアに確保され、初期状態はOFFである。このとき、モードフラグはONであると判定した場合には(S21:YES)、S22に進む。S22では、CPU12は、モードフラグはOFFとし、その後に、上記メインプログラムのS11に戻る。一方、モードフラグはONでないと判定した場合には(S21:NO)、S23に進む。S23では、CPU12は、モードフラグはONとし、その後に、上記メインプログラムのS11に戻る。
次に、上記メインプログラムのS12のデータ処理について説明する。図7は、データ処理のフローチャートを示した図である。
すなわち、CPU12は、上記メインプログラムでS12のデータ処理を実行すると、図7に示すように、先ず、S31において、モードフラグはONであるか否かを判定する。
ここで、モードフラグはONであると判定した場合には(S31:YES)、S32に進む。S32では、CPU12は、後述する印刷コマンド解析処理を実行し、その後に、上記メインプログラムのS11に戻る。一方、モードフラグはONでないと判定した場合には(S31:NO)、S33に進む。S33では、CPU12は、後述する印刷データ作成処理を実行し、その後に、S34に進む。S34では、CPU12は、通常印刷を行い、その後に、上記メインプログラムのS11に戻る。尚、通常印刷では、CPU12は、駆動回路26を介してテープ送りモータ27を駆動させることによって印字カセット内の印字テープ52を外部に送り出しつつ、駆動回路24を介して駆動させたサーマルヘッド25によって、印字カセット内の印字テープ52に対し印刷バッファに16に展開された印刷イメージを印刷させる。
次に、上記図7のデータ処理におけるS32の印刷コマンド解析処理について説明する。図8は、印刷コマンド解析処理のフローチャートを示した図である。
すなわち、CPU12は、上記図7のデータ処理におけるS32の印刷コマンド解析処理を実行すると、図8に示すように、先ず、S41において、テンプレート40からデリミタの個数を取得する。図1の場合では、CPU12は、テンプレート40の入力項目41、42、43、44の個数(4個)よりも1個少ない個数(3個)を、ホスト30からの受信データ51に含まれるデリミタの個数とする。
尚、テンプレート40は、上記図5のメインプログラムにおけるS17のその他の処理において選択される。
その後、CPU12は、S42に進んで、デリミタの個数が2個以上であるか否かを判定する。ここで、デリミタの個数が2個未満であると判定した場合には(S42:NO)、後述するS46のデリミタ文字列候補決定処理に進む。一方、デリミタの個数が2個以上であると判定した場合には(S42:YES)、S43に進む。図1の場合では、ホスト30からの受信データ51は、上記S41によりデリミタの個数が3個とされるので、S43に進むことになる。
S43では、CPU12は、ホスト30からの受信データ51において、デリミタの個数だけの文字列が周期的に存在するか否かを判定する。ここで、デリミタの個数だけの文字列が周期的に存在すると判定した場合には(S43:YES)、後述するS46のデリミタ文字列候補決定処理に進む。図1の場合では、「/」又は「0/」の文字列が該当するので、後述するS46のデリミタ文字列候補決定処理に進むことになる。一方、デリミタの個数だけの文字列が周期的に存在しないと判定した場合には(S43:NO)、S44に進む。
S44では、CPU12は、LCD23にエラー表示を行う。その後は、CPU12は、S45において、操作キー21を構成するいずれかのキーが押下されたと判定するまで待機し(S45:NO)、操作キー21を構成するいずれかのキーが押下されたと判定した場合には(S45:YES)、上記メインプログラムのS11に戻る。
一方、上記S42でデリミタの個数が2個未満であると判定した場合や(S42:NO)、上記S43でデリミタの個数だけの文字列が周期的に存在すると判定した場合には(S43:YES)、S46のデリミタ文字列候補決定処理に進む。そこで、S46のデリミタ文字列候補決定処理について説明する。図9は、デリミタ文字列候補決定処理のフローチャートを示した図である。
すなわち、CPU12は、S46のデリミタ文字列候補決定処理を実行すると、図9に示すように、S61において、デリミタの候補を検索してRAM15のワークエリアに記憶するとともに、検索されたデリミタの候補の個数を、RAM15のワークエリアに確保された変数xに格納する。尚、デリミタの候補は、上記図8のS43で判定の対象とされる文字列である。従って、図1の場合では、「/」又は「0/」がデリミタの候補であり、その個数は2個である。
その後に、CPU12は、上記図8の印刷コマンド解析処理に戻って、S47の印刷開始文字列候補決定処理に進む。そこで、S47の印刷開始文字列候補決定処理について説明する。図10は、印刷開始文字列候補決定処理のフローチャートを示した図である。
すなわち、CPU12は、S47の印刷開始文字列候補決定処理を実行すると、図10に示すように、S71において、印刷開始文字列の候補を検索してRAM15のワークエリアに記憶するとともに、検索された印刷開始文字列の個数を、RAM15のワークエリアに確保された変数yに格納する。尚、印刷開始文字列の候補は、上述したように、受信データにおいて最後のデリミタの候補以降に位置するデータ群から取得される。この点、図1の場合では、「/」又は「0/」がデリミタの候補であることを考慮すると、「CR」「0CR」「50CR」「350CR」が印刷開始文字列の候補であり、その個数は4個である。
その後は、CPU12は、上記図8の印刷コマンド解析処理に戻って、S48の表示変数初期化処理に進む。そこで、S48の表示変数初期化処理について説明する。図11は、表示変数初期化処理のフローチャートを示した図である。
すなわち、CPU12は、S48の表示変数初期化処理を実行すると、図11に示すように、先ず、S81において、RAM15のワークエリアに確保された変数iを初期化する。このとき、CPU12は、デリミタの候補と変数iの対応関係を定義し、RAM15のワークエリアに記憶する。図1の場合では、例えば、デリミタの候補「/」に対して「0」を変数iの値として対応させ、デリミタの候補「0/」に対して「1」を変数iの値として対応させる。次に、CPU12は、S82に進むと、RAM15のワークエリアに確保された変数jを初期化する。このとき、CPU12は、印刷開始文字列の候補と変数jの対応関係を定義し、RAM15のワークエリアに記憶する。図1の場合では、例えば、印刷開始文字列の候補「CR」に対して「0」を変数jの値として対応させ、印刷開始文字列の候補「0CR」に対して「1」を変数jの値として対応させ、印刷開始文字列の候補「50CR」に対して「2」を変数jの値として対応させ、印刷開始文字列の候補「350CR」に対して「3」を変数jの値として対応させる。
尚、変数iと変数jは初期化されると、「0」が代入される。
また、変数iと変数jの値は、印刷プレビュー61の上端部での分数表示(図2参照)を行う際にも活用される。
その後は、CPU12は、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。そこで、S49の印刷プレビュー表示処理について説明する。
図12は、印刷プレビュー表示処理のフローチャートを示した図である。
すなわち、CPU12は、S49の印刷プレビュー表示処理を実行すると、図12に示すように、S91において、デリミタと印刷開始文字列の仮決定を行う。ここでは、変数iの値に対応するデリミタの候補を仮決定するとともに、変数jの値に対応する印刷開始文字列の候補を仮決定する。例えば、変数iの値が「0」である場合には、それに対応する「/」のデリミタの候補が仮決定される。また、変数jの値が「0」である場合には、それに対応する「CR」の印刷開始文字列の候補が仮決定される。
そして、CPU12は、S92に進むと、印刷データの作成を行う。すなわち、CPU12は、受信データをその先頭から順にテンプレート40の入力項目41に入力し、その入力は、仮決定されたデリミタの候補(1個目)の直前に位置するデータまで行う。そして、受信データをそのデリミタの候補(1個目)の直後のデータから順にテンプレート40の入力項目42に入力し、その入力は、仮決定されたデリミタの候補(2個目)の直前に位置するデータまで行う。そして、受信データをそのデリミタの候補(2個目)の直後のデータから順にテンプレート40の入力項目43に入力し、その入力は、仮決定されたデリミタの候補(3個目)の直前に位置するデータまで行う。さらに、受信データをそのデリミタの候補(3個目)の直後のデータから順にテンプレート40の入力項目43に入力し、その入力は、仮決定された印刷開始文字列の候補の直前に位置するデータまで行う。そして、CPU12は、このように作成した印刷データをテキストバッファ17に格納する。その後、CPU12は、この印刷データに基づいて印刷イメージを印刷バッファ16に展開する。
その後、CPU12は、S93に進むと、印刷バッファ16に展開された印刷イメージの印刷プレビューをLCD23に表示する。
具体的に言えば、図1の場合において、「/」のデリミタの候補が仮決定され、「CR」の印刷開始文字列の候補が仮決定されたときには、ホスト39からの受信データ51(「100/50/200/350CR」)をその先頭データの「1」から順にテンプレート40の入力項目41に入力し、その入力は、仮決定された「/」のデリミタの候補(1個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目41には、「100」のデータが入力される。そして、ホスト39からの受信データ51(「100/50/200/350CR」)を、その「/」のデリミタの候補(1個目)の直後に位置するデータの「5」から順にテンプレート40の入力項目42に入力し、その入力は、仮決定された「/」のデリミタの候補(2個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目42には、「50」のデータが入力される。そして、ホスト39からの受信データ51(「100/50/200/350CR」)を、その「/」のデリミタの候補(2個目)の直後に位置するデータの「2」から順にテンプレート40の入力項目43に入力し、その入力は、仮決定された「/」のデリミタの候補(3個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目43には、「200」のデータが入力される。さらに、ホスト39からの受信データ51(「100/50/200/350CR」)を、その「/」のデリミタの候補(3個目)の直後に位置するデータの「3」から順にテンプレート40の入力項目43に入力し、その入力は、仮決定された「CR」の印刷開始文字列の候補の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目44には、「350」のデータが入力される。
そして、このように作成した印刷データがテキストバッファ17に格納され、この印刷データに基づいて作成された印刷イメージが印刷バッファ16に展開され、この印刷イメージの印刷プレビュー61AがLCD23に表示される。
その後は、CPU12は、上記図8の印刷コマンド解析処理に戻って、S50に進む。S50では、CPU12は、操作キー21を構成するいずれかのキーが押下されたと判定するまで待機し(S50:NO)、操作キー21を構成するいずれかのキーが押下されたと判定した場合には(S50:YES)、S51に進む。
S51では、CPU12は、上記S50で押下された操作キー21がOKキーであるか否かを判定する。OKキーとは、指令キー3である(上記モードキーと併用)。ここで、上記S50で押下された操作キー21がOKキーでないと判定した場合には(S51:NO)、S52に進む。
S52では、CPU12は、上キー4又は下キー5が押下されたか否かを判定する。ここで、上キー4及び下キー5のいずれも押下されていないと判定した場合には(S52:NO)、上述したS49に戻る。一方、上キー4又は下キー5のいずれかが押下されたと判定した場合には(S52:YES)、S53の表示更新処理に進む。
そこで、S53の表示更新処理について説明する。図13は、表示更新処理のフローチャートを示した図である。
すなわち、CPU12は、S53の表示更新処理を実行すると、図13に示すように、S101において、上キー4が押下されたか否かを判定する。ここで、上キー4が押下されたと判定した場合には(S101:YES)、S102に進む。S102では、CPU12は、変数xの値から「1」を減算した値より変数iの値が小さいか否かを判定する。ここで、変数xの値から「1」を減算した値より変数iの値が小さいと判定した場合には(S102:YES)、S103に進む。S103では、CPU12は、変数iをインクリメントし、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
一方、上記S102において、変数xの値から「1」を減算した値より変数iの値が等しい又は大きいと判定した場合には(S102:NO)、S104に進む。S104では、CPU12は、変数yの値から「1」を減算した値より変数jの値が小さいか否かを判定する。ここで、変数yの値から「1」を減算した値より変数jの値が小さいと判定した場合には(S104:YES)、S105に進む。S105では、CPU12は、変数iを初期化するとともに、変数jをインクリメントし、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
一方、上記S104において、変数yの値から「1」を減算した値より変数jの値が等しい又は大きいと判定した場合には(S104:NO)、S106に進む。S106では、CPU12は、変数iと変数jを初期化し、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
一方、上記S101において、上キー4が押下されていないと判定した場合には(S101:NO)、S107に進む。S107では、CPU12は、変数iの値が「0」より大きいか否かを判定する。ここで、変数iの値が「0」より大きいと判定した場合には(S107:YES)、S108に進む。S108では、CPU12は、変数iをデクリメントし、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
一方、上記S107において、変数iの値が「0」であると判定した場合には(S107:NO)、S109に進む。S109では、CPU12は、変数jの値が「0」より大きいか否かを判定する。ここで、変数jの値が「0」より大きいと判定した場合には(S109:YES)、S110に進む。S110では、CPU12は、変数xの値から「1」を減算した値を変数iに代入するとともに変数jをデクリメントし、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
一方、S109において、変数jの値が「0」であると判定した場合には(S109:NO)、S111に進む。S111では、CPU12は、変数xの値から「1」を減算した値を変数iに代入するとともに変数yの値から「1」を減算した値を変数jに代入し、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進む。
従って、図1の場合において、この表示更新処理が実行されると、上キー4又は下キー5の押下を行うことにより、変数iと変数jの各値(i、j)が、(0、0)、(0、1)、(0、2)、(0、3)、(1、0)、(1、1)、(1、2)、(1、3)のいずれかの組合せになる。よって、この表示更新処理が実行されたことによって、変数iと変数jの各値(i、j)が変更され、その後に、上記図8の印刷コマンド解析処理に戻って、S49の印刷プレビュー表示処理に進んで、図12のS91が実行されると、デリミタと印刷開始文字列の仮決定が更新される。
上記図8の印刷コマンド解析処理に戻り、上記S51において、上記S50で押下された操作キー21がOKキーであると判定した場合には(S51:YES)、S54に進む。S54では、CPU12は、現在仮決定されているデリミタの候補をデリミタとして設定するとともに、現在仮決定されている印刷開始文字列の候補を印刷開始文字列として設定する。その後は、上記図5のメインプログラムのS11に戻る。
次に、上記図7のデータ処理におけるS33の印刷データ作成処理について説明する。図14は、印刷データ作成処理のフローチャートを示した図である。
すなわち、CPU12は、S33の印刷データ作成処理を実行すると、図14に示すように、先ず、S121において、デリミタと印刷開始文字列を取得する。このとき、取得されるデリミタと印刷開始文字列は、上記S54で設定されたデリミタと印刷開始文字列である。
その後は、CPU12は、S122に進んで、印刷データの作成を行う。すなわち、CPU12は、受信データをその先頭から順にテンプレート40の入力項目41に入力し、その入力は、取得されたデリミタ(1個目)の直前に位置するデータまで行う。そして、受信データをそのデリミタ(1個目)の直後のデータから順にテンプレート40の入力項目42に入力し、その入力は、取得されたデリミタ(2個目)の直前に位置するデータまで行う。そして、受信データをそのデリミタ(2個目)の直後のデータから順にテンプレート40の入力項目43に入力し、その入力は、取得されたデリミタ(3個目)の直前に位置するデータまで行う。さらに、受信データをそのデリミタ(3個目)の直後のデータから順にテンプレート40の入力項目43に入力し、その入力は、取得された印刷開始文字列の直前に位置するデータまで行う。そして、CPU12は、このように作成した印刷データをテキストバッファ17に格納する。その後、CPU12は、この印刷データに基づいて印刷イメージを印刷バッファ16に展開する。
具体的に言えば、図1の場合において、「/」のデリミタが設定され、「CR」の印刷開始文字列が設定されたときには、ホスト39からの受信データ51(「100/50/200/350CR」)をその先頭データの「1」から順にテンプレート40の入力項目41に入力し、その入力は、設定された「/」のデリミタ(1個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目41には、「100」のデータが入力される。そして、ホスト39からの受信データ51(「100/50/20
0/350CR」)を、その「/」のデリミタ(1個目)の直後に位置するデータの「5」から順にテンプレート40の入力項目42に入力し、その入力は、設定された「/」のデリミタ(2個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目42には、「50」のデータが入力される。そして、ホスト39からの受信データ51(「100/50/200/350CR」)を、その「/」のデリミタ(2個目)の直後に位置するデータの「2」から順にテンプレート40の入力項目43に入力し、その入力は、設定された「/」のデリミタ(3個目)の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目43には、「200」のデータが入力される。さらに、ホスト39からの受信データ51(「100/50/200/350CR」)を、その「/」のデリミタ(3個目)の直後に位置するデータの「3」から順にテンプレート40の入力項目43に入力し、その入力は、設定された「CR」の印刷開始文字列の直前に位置するデータの「0」まで行う。その結果、テンプレート40の入力項目44には、「350」のデータが入力される。そして、このように作成された印刷データは、テキストバッファ17に格納され、この印刷データに基づいて作成された印刷イメージが印刷バッファ16に展開される。
その後は、上記図7のデータ処理に戻って、S34に進む。S34では、上述したようにして、印刷バッファに16に展開された印刷イメージが印字テープ52に印刷される。その後は、上記図5のメインプログラムのS11に戻る。
以上詳細に説明したように、本実施形態の印刷装置1においては、ホスト39からの受信データ51(具体的には、「100/50/200/350CR」)があると(S11:YES)、その受信データ51を複数の範囲に区切るためのデリミタの候補が、その受信データ51から取得される(S61)。この点、その受信データ51に含まれているデリミタの個数(3個)は、テンプレート40の入力項目41、42、43、44の個数(4個)よりも1個少ないはずである。そこで、テンプレート40の入力項目41、42、43、44の個数(4個)に基づいて算出されるデリミタの個数(3個)分と同等な回数(3回)だけ、その受信データ51において周期的に繰り返される文字列(具体的には、「/」「0/」)が検索され、デリミタの候補とされる。
さらに、その受信データ51の終了を示す印刷開始文字列の候補(具体的には、「CR」「0CR」「50CR」「350CR」)が、その受信データ51において最後のデリミタの候補以降に位置するデータ群(具体的には、「350CR」)から取得される(S71)。その後、デリミタの候補と印刷開始文字列の候補がそれぞれ一つ仮決定される(S91)。そして、それぞれ一つに仮決定されたデリミタの候補と印刷開始文字列の候補に基づいて、その受信データ51が区切られながらテンプレート40の入力項目41、42、43、44に入力されることにより、印刷データが作成される。その作成された印刷データから印刷イメージが作成され、この印刷イメージが印刷バッファ16に展開される(S92)。その印刷プレビュー61がLCD23に表示される(S93)。
従って、ユーザは、LCD23に表示された印刷プレビュー61を見れば、仮決定されたデリミタの候補と印刷開始文字列の候補に基づく印刷データの作成が適切であるか否かを確認することができる。
また、印刷開始文字列の候補に基づいて印刷データの作成が行われていることから、テンプレート40の入力項目41、42、43、44に対し、受信データ51の印刷開始文字列が入力されることはない。従って、作成された印字データは、その受信データ51がテンプレート40の入力項目41、42、43、44に適切に入力された状態にある可能性が高くなる。
また、本実施形態の印刷装置1においては、上キー4又は下キー5をユーザが押下すれば(S52:YES)、デリミタの各候補に対応付けられた変数iの値又は印刷開始文字列の各候補に対応付けられた変数jの値が変更されることにより(S53)、それぞれ一つに仮決定されたデリミタの候補又は印刷開始文字列の候補も変更される(S91)。そして、この変更されたデリミタの候補又は印刷開始文字列の候補に基づいて新たな印刷データが作成される。その作成された新たな印刷データから印刷イメージが作成され、この印刷イメージが印刷バッファ16に展開される(S92)。その印刷プレビュー61がLCD23に表示される(S93)。
従って、ユーザは、LCD23に表示された印刷プレビュー61を見た結果、仮決定されたデリミタの候補と印刷開始文字列の候補に基づく印刷データの作成が適切でないと判断すれば、上キー4又は下キー5をユーザが押下すれば、デリミタの候補又は印刷開始文字列の候補が変更され、変更されたデリミタの候補又は印刷開始文字列の候補に基づく新たな印刷データの印刷プレビュー61がLCD23に表示されるので、デリミタの候補と印刷開始文字列の候補に基づく印刷データの作成が適切になるまで、デリミタの候補又は印刷開始文字列の候補を変更させることができる。
また、本実施形態の印刷装置1においては、指令キー3をユーザが押下すれば(S51:YES)、現在のデリミタの候補がデリミタと設定されるとともに現在の印刷開始文字列の候補が印刷開始文字列と設定され(S54)、この設定されたデリミタ及び印刷開始文字列に基づいて印刷データが作成される(S122)。その作成された印刷データはテキストバッファ17に格納され、この印刷データに基づいて作成された印刷イメージは、印刷バッファ16に展開され、印字テープ52に印刷される(S34)。
従って、ユーザは、LCD23に表示された印刷プレビュー61を見た結果、デリミタの候補と印刷開始文字列の候補に基づく印刷データの作成が適切であると判断した場合には、指令キー3を押下すれば、受信データ51を各入力項目41、42、43、44に適切に入力されたテンプレート40を印字テープ52に印刷させることができる。よって、ユーザは、受信データ51に含まれるデリミタ及び印刷開始文字列を知る必要もないし、ましてや、受信データ51に含まれるデリミタ及び印刷開始文字列を印刷装置1に予め設定する必要もない。さらに、1度指令キー3を押下すれば、印刷データの作成が適切となるデリミタの候補と印刷開始文字列の候補が特定されることから、指令キー3の押下を繰り返すことなく、受信データ51を各入力項目41、42、43、44に適切に入力されたテンプレート40を印字テープ52に印刷させることができる。
尚、本発明は上記実施の形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、本実施形態の印刷装置1においては、図8の印刷コマンド解析処理や図13の表示更新処理に代わって、図15の印刷コマンド解析処理や図16の表示更新処理としてもよい。そこで、以下に、図15の印刷コマンド解析処理や図16の表示更新処理を説明するが、図8の印刷コマンド解析処理や図13の表示更新処理と共通な箇所は同じ符号を付して説明を省略し、異なる箇所のみ説明する。
図15の印刷コマンド解析処理では、CPU12は、S43において、デリミタの個数だけの文字列が周期的に存在しないと判定した場合には(S43:NO)、S131に進む。S131では、CPU12は、デリミタの個数をデクリメントし、その後に、S42に戻る。また、CPU12は、S52において、上キー4又は下キー5のいずれかが押下されたと判定した場合には(S52:YES)、S132の表示更新処理に進む。S132の表示更新処理とは、図16の表示更新処理である。
図16の表示更新処理では、CPU12は、S106で変数iと変数jを初期化すると、S141に進む。S141では、CPU12は、デリミタの個数が上限値であるか否かを判定する。尚、上限値とは、図15の印刷コマンド解析処理のS41で取得したデリミタの個数(3個)である。ここで、デリミタの個数が上限値であると判定した場合には(S141:YES)、S142に進む。S142では、CPU12は、デリミタの個数を「0」とし、その後に、上記図15の印刷コマンド解析処理に戻って、後述するS133に進む。一方、上記S141において、デリミタの個数が上限値でないと判定した場合には(S141:NO)、S143に進む。S143では、CPU12は、デリミタの個数をインクリメントし、その後に、上記図15の印刷コマンド解析処理に戻って、後述するS133に進む。
図16の表示更新処理では、CPU12は、S109で変数jの値が「0」であると判定した場合には(S109:NO)、S144に進む。S144では、CPU12は、変数iと変数jを初期化し、その後に、S145に進む。S145では、CPU12は、デリミタの個数が下限値であるか否かを判定する。尚、下限値とは、「0」である。ここで、デリミタの個数が下限値であると判定した場合には(S145:YES)、S146に進む。S142では、CPU12は、デリミタの個数を最大値(上限値)とし、その後に、上記図15の印刷コマンド解析処理に戻って、後述するS133に進む。一方、上記S145において、デリミタの個数が下限値でないと判定した場合には(S145:NO)、S147に進む。S147では、CPU12は、デリミタの個数をデクリメントし、その後に、上記図15の印刷コマンド解析処理に戻って、後述するS133に進む。
そして、上記図15の印刷コマンド解析処理に戻って、S133に進むと、CPU12は、デリミタの個数が変更されたか否かを判定する。ここでは、図16の表示更新処理において、デリミタの個数が変更されたか否かが判定される。ここで、デリミタの個数が変更されたと判定した場合には(S133:YES)、S42に戻る。一方、デリミタの個数が変更されていないと判定した場合には(S133:NO)、S49に戻る。
そして、図15の印刷コマンド解析処理や図16の表示更新処理を実行すれば、テンプレート40の入力項目41、42、43、44の個数(4個)に基づいて算出されるデリミタの個数(3個)よりも少ないデリミタの個数をもって、受信データ51をテンプレート40の入力項目41、42、43、44に入力させることができる。その結果、テンプレート40の入力項目41、42、43、44には、受信データ51が入力されないものがあるが、既に入力されているデータがそのまま維持されることによって、印刷データが作成されるので、既に入力されているデータが活用されることになる。
また、本実施形態の印刷装置1においては、図8や図15の印刷コマンド解析処理のS51において、上記S50で押下された操作キー21がOKキーであると判定した場合には(S51:YES)、S54を実行するのではなく、印刷バッファ16に展開されている印刷イメージを印字テープ52に印刷してもよい。このような場合でも、受信データ51を各入力項目41、42、43、44に適切に入力されたテンプレート40を印字テープ52に印刷させることができるし、さらに、図5のメインプログラムにおけるモード関連の処理(S15,S16)を削除することができる。
また、本実施形態の印刷装置1においては、ホスト39からの受信データ51に含まれている項目データ、デリミタと印刷開始文字列が、種類の異なるデータで構成されていてもよい。具体的に言えば、「A1BC2DEF34GHIJCR」の受信データ51において、項目データ(「A」「BC」「DEF」「GHIJ」)が英字で構成され、デリミタ(「1」「2」「3」「4」)が数字で構成され、印刷開始文字列(「CR」)がASCIIコードの制御コードで構成されているような場合である。尚、この例の場合、デリミタ「3」と「4」の間に項目データが存在しないと読み取ることが可能である。また、デリミタ「3」に続く項目データからデリミタ「33」に続く項目データが存在しないと読み取ることも可能である。項目データ、デリミタ、印刷開始文字列を種類の異なるデータで構成することにより、項目データとデリミタ、項目データと印刷開始文字列、デリミタと印刷開始文字列において、互いの区別が明確となり、区別の処理を簡略化できる。また、デリミタ、または印刷開始文字列、またはその両方の候補の個数を、項目データ、デリミタ、印刷開始文字列の種類が不明または同一のデータで構成する場合に比べ、少なくできる可能性が高まる。または、候補は1通り、つまり、項目データ、デリミタ、印刷開始文字列の組合せが確定できる可能性が高まる。
また、本実施形態の印刷装置1においては、ホスト39からの受信データ51に印刷開始文字列が含まれていなくても対応することができる。この場合には、本実施形態の印刷装置1において、ホスト39からの受信データ51の末尾に架空の印刷開始文字列を追加させた後に、上述したメインプログラム等を実行してもよいし、あるいは、上述したメインプログラム等において、印刷開始文字列に関する処理を省くとともに、デリミタの候補のみに基づいて印刷データを作成してもよい。このような場合であっても、上述した効果を奏することが可能である。
本発明は、テンプレートの入力項目に受信データを自動的に入力する技術に適用し得る。
本実施の一形態である印刷装置の特徴を示した図である。 同印刷装置で表示される印刷プレビューの例を示した図である。 同印刷装置の外観斜視図である。 同印刷装置の制御系を示したブロック図である。 メインプログラムのフローチャートを示した図である。 モード処理のフローチャートを示した図である。 データ処理のフローチャートを示した図である。 印刷コマンド解析処理のフローチャートを示した図である。 デリミタ候補決定処理のフローチャートを示した図である。 印刷開始文字列候補決定処理のフローチャートを示した図である。 表示変数初期化処理のフローチャートを示した図である。 印刷表示プレビュー処理のフローチャートを示した図である。 表示更新処理のフローチャートを示した図である。 印刷データ作成処理のフローチャートを示した図である。 他の印刷コマンド解析処理のフローチャートを示した図である。 他の表示更新処理のフローチャートを示した図である。
1 印刷装置
3 指令キー
4 上キー
5 下キー
8 接続ポート
11 入出力インターフェース
12 CPU
13 ROM
14 Flash ROM
15 RAM
16 印刷バッファ
21 操作キー
23 LCD
25 サーマルヘッド
39 ホスト
40 テンプレート
41、42、43、44 入力項目
51 受信データ
52 印字テープ
61A、61B、61C、61D、61E、61F、61G、61H 印刷プレビュー

Claims (12)

  1. 複数の入力項目で構成されたテンプレートが記憶されるテンプレート記憶手段と、
    受信データを受信する受信手段と、
    前記受信データを複数の範囲に区切るための限定データの候補を前記テンプレートの入力項目の個数よりも1つ少ない数である限定データ数分前記受信データで周期的に繰り返される文字列から少なくとも1つ取得する限定データ候補取得手段と、
    前記限定データの候補の中から限定データの仮決定を行うデータ候補仮決定手段と、
    前記データ候補仮決定手段による限定データの仮決定に基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第1印刷データを作成する第1印刷データ作成手段と、
    前記第1印刷データの印刷イメージが表示される表示手段と、を備えたこと、を特徴とする印刷装置。
  2. 請求項1に記載する印刷装置であって、
    前記限定データと前記各区切データとはそれぞれ種類が異なること、を特徴とする印刷装置。
  3. 請求項1又は請求項2に記載する印刷装置であって、
    第1印刷手段と、
    前記表示手段に表示されている第1印刷データの印刷イメージを前記第1印刷手段に印刷させることをユーザが指示する第1入力手段と、を備えたこと、を特徴とする印刷装置。
  4. 請求項1又は請求項2に記載する印刷装置であって、
    前記限定データを特定する限定データ特定手段と、
    前記限定データ特定手段が特定する前記限定データを、前記表示手段に印刷イメージが表示されている第1印刷データを作成した際に仮決定された前記限定データとすることをユーザが指示する第2入力手段と、
    前記限定データ特定手段により特定された前記限定データに基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第2印刷データを作成する第2印刷データ作成手段と、
    前記第2印刷データの印刷イメージを印刷する第2印刷手段と、を備えたこと、を特徴とする印刷装置。
  5. 請求項1に記載する印刷装置であって、
    前記受信データの終了を示す終了データの候補を前記限定データの候補に基づいて前記受信データから少なくとも1つ取得する終了データ候補取得手段を備え、
    前記第1印刷データ作成手段は、前記限定データの候補に加えて前記終了データの候補に基づいて前記第1印刷データを作成すること、を特徴とする印刷装置。
  6. 請求項5に記載する印刷装置であって、
    前記限定データと前記終了データと前記各区切データとはそれぞれ種類が異なること、を特徴とする印刷装置。
  7. 請求項5又は請求項6に記載する印刷装置であって、
    第1印刷手段と、
    前記表示手段に表示されている第1印刷データの印刷イメージを前記第1印刷手段に印刷させることをユーザが指示する第1入力手段と、を備えたこと、を特徴とする印刷装置。
  8. 請求項5又は請求項6に記載する印刷装置であって、
    前記限定データを特定する限定データ特定手段と、
    前記終了データを特定する終了データ特定手段と、
    前記限定データ特定手段が特定する前記限定データと前記終了データ特定手段が特定する前記終了データとを、前記表示手段に印刷イメージが表示されている第1印刷データを作成した際に仮決定された限定データ及び終了データとすることをユーザが指示する第3入力手段と、
    前記限定データ特定手段により特定された前記限定データと前記終了データ特定手段により特定された前記終了データに基づいて前記受信データを複数の区切データに区切りながら当該各区切データを前記テンプレートの各入力項目に入力することにより第3印刷データを作成する第3印刷データ作成手段と、
    前記第3印刷データの印刷イメージを印刷する第3印刷手段と、を備えたこと、を特徴とする印刷装置。
  9. 請求項1乃至請求項8のいずれか一つに記載する印刷装置であって、
    前記データ候補仮決定手段に対して仮決定を更新させることをユーザが指示する第4入力手段を備えたこと、を特徴とする印刷装置。
  10. 請求項1乃至請求項9のいずれか一つに記載する印刷装置であって、
    前記限定データ候補取得手段は、前記限定データの候補を前記テンプレートの入力項目の個数よりも1つ少ない数以下の何れかの数を前記限定データ数として当該限定データ数分前記受信データで周期的に繰り返される文字列から少なくとも1つ取得すること、を特徴とする印刷装置。
  11. 請求項10に記載する印刷装置であって、
    前記限定データ候補取得手段は、前記テンプレートの入力項目の個数よりも1つ少ない数から前記限定データ数を開始して1ずつデクリメントしながら、限定データ数分周期的に繰り返される文字列が前記受信データに見付かるまで繰り返すことにより限定データの候補を取得すること、を特徴とする印刷装置。
  12. 請求項10又は請求項11に記載する印刷装置であって、
    前記限定データ数を更新させることをユーザが指示する第5入力手段を備え、
    前記限定データ候補取得手段は、前記第5入力手段により更新された限定データ数に基づいて前記限定データの候補を取得すること、を特徴とする印刷装置。
JP2006299342A 2006-11-02 2006-11-02 印刷装置 Expired - Fee Related JP4743083B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006299342A JP4743083B2 (ja) 2006-11-02 2006-11-02 印刷装置
EP07019057A EP1918855A3 (en) 2006-11-02 2007-09-27 Printing apparatus and computer program product
US11/904,348 US8004696B2 (en) 2006-11-02 2007-09-27 Printing apparatus and computer program product for delimiting received data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006299342A JP4743083B2 (ja) 2006-11-02 2006-11-02 印刷装置

Publications (2)

Publication Number Publication Date
JP2008114461A JP2008114461A (ja) 2008-05-22
JP4743083B2 true JP4743083B2 (ja) 2011-08-10

Family

ID=39048888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006299342A Expired - Fee Related JP4743083B2 (ja) 2006-11-02 2006-11-02 印刷装置

Country Status (3)

Country Link
US (1) US8004696B2 (ja)
EP (1) EP1918855A3 (ja)
JP (1) JP4743083B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5360563B2 (ja) * 2009-06-01 2013-12-04 ブラザー工業株式会社 印字ラベル作成装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263471A (ja) * 1995-03-27 1996-10-11 Hitachi Ltd 情報処理装置
JP2003526845A (ja) * 1999-10-29 2003-09-09 ジーアイエイチ・コーポレーション プリンタプログラミングツールおよび方法
JP2005234959A (ja) * 2004-02-20 2005-09-02 Nec Corp テンプレート作成装置、プログラム、および方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918723A (en) * 1988-10-07 1990-04-17 Jerry R. Iggulden Keyboard to facsimile machine transmission system
JPH05199990A (ja) 1991-11-29 1993-08-10 Fuji Photo Optical Co Ltd 電子内視鏡の撮像手段ドライブ用アダプタ
US6530072B1 (en) * 1998-05-11 2003-03-04 Chrysalis Symbolic Design, Inc. Rule based hierarchy generation in a circuit design verification system
US20020165912A1 (en) * 2001-02-25 2002-11-07 Storymail, Inc. Secure certificate and system and method for issuing and using same
US20030042319A1 (en) * 2001-08-31 2003-03-06 Xerox Corporation Automatic and semi-automatic index generation for raster documents
US7315613B2 (en) * 2002-03-11 2008-01-01 International Business Machines Corporation Multi-modal messaging
JP4388929B2 (ja) * 2002-12-27 2009-12-24 富士通株式会社 構造化文書の構造変換装置、構造変換方法、記録媒体
JP2004330688A (ja) 2003-05-09 2004-11-25 Hitachi Printing Solutions Ltd ページ記述言語と文字コード体系の自動判別機能を備えるプリンタ装置
US20050099442A1 (en) * 2003-11-12 2005-05-12 Transact Technologies Incorporated Printer having a configurable template and methods for configuring a printer template
CN101006425A (zh) * 2004-03-10 2007-07-25 汉德马克公司 数据访问架构
US7646375B2 (en) * 2004-08-31 2010-01-12 Research In Motion Limited Handheld electronic device with text disambiguation
US20060259519A1 (en) * 2005-05-12 2006-11-16 Microsoft Corporation Iterative definition of flat file data structure by using document instance

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263471A (ja) * 1995-03-27 1996-10-11 Hitachi Ltd 情報処理装置
JP2003526845A (ja) * 1999-10-29 2003-09-09 ジーアイエイチ・コーポレーション プリンタプログラミングツールおよび方法
JP2005234959A (ja) * 2004-02-20 2005-09-02 Nec Corp テンプレート作成装置、プログラム、および方法

Also Published As

Publication number Publication date
US8004696B2 (en) 2011-08-23
JP2008114461A (ja) 2008-05-22
EP1918855A3 (en) 2011-12-28
EP1918855A2 (en) 2008-05-07
US20080252911A1 (en) 2008-10-16

Similar Documents

Publication Publication Date Title
EP1967963B1 (en) Printing apparatus
JP5493764B2 (ja) 制御装置、制御装置の制御方法、及び、プログラム
JP4270152B2 (ja) 印刷制御プログラム、印刷制御装置及び印刷制御方法
JP4774806B2 (ja) ファイル検索装置、印刷装置、ファイル検索方法及びそのプログラム
US9292768B2 (en) Method of generating label data for printing images that are larger than a tape width of a tape-shaped member, recording medium, label data generating apparatus, and label creating system
JP6880921B2 (ja) 設定処理装置およびプログラム
JP4743083B2 (ja) 印刷装置
JP2021082930A (ja) プログラム、および情報処理装置
JP4375419B2 (ja) 印刷装置
JP2006195964A (ja) 情報処理装置、情報処理方法、制御プログラム
JP4893326B2 (ja) 印刷装置、印刷方法、印刷プログラムおよび印刷システム
JP2010017909A (ja) 印刷装置および印刷システム
JP4774805B2 (ja) ファイル検索装置、印刷装置、ファイル検索方法及びそのプログラム
EP0284355A2 (en) Document processing apparatus
EP2371570B1 (en) Printer
JP2008125031A (ja) 印刷装置
JP3092264B2 (ja) 印刷装置
JP5075520B2 (ja) 印刷データ出力装置及びその方法
JP2010067019A (ja) 画像処理装置、情報処理方法、コンピュータプログラム、及び、情報記録媒体
JP2005014547A (ja) 画像形成装置
JP4985689B2 (ja) 印刷装置
JP2006076163A (ja) 印刷制御装置、プログラム、および印刷制御装置のテスト印刷方法
JP3342463B2 (ja) 印刷方法
JP3342462B2 (ja) 印刷装置
JPS61143834A (ja) 文書処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110316

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110425

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4743083

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees