JP2012507060A - プログラムスクリプト言語を用いたラベルプリンタapi - Google Patents

プログラムスクリプト言語を用いたラベルプリンタapi Download PDF

Info

Publication number
JP2012507060A
JP2012507060A JP2010542472A JP2010542472A JP2012507060A JP 2012507060 A JP2012507060 A JP 2012507060A JP 2010542472 A JP2010542472 A JP 2010542472A JP 2010542472 A JP2010542472 A JP 2010542472A JP 2012507060 A JP2012507060 A JP 2012507060A
Authority
JP
Japan
Prior art keywords
printer
firmware
programming code
application program
program interface
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.)
Granted
Application number
JP2010542472A
Other languages
English (en)
Other versions
JP5693235B2 (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.)
Sato Knowledge and Intellectual Property Institute Co Ltd
Sato Holdings Corp
Original Assignee
Sato Knowledge and Intellectual Property Institute Co Ltd
Sato Holdings Corp
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 Sato Knowledge and Intellectual Property Institute Co Ltd, Sato Holdings Corp filed Critical Sato Knowledge and Intellectual Property Institute Co Ltd
Publication of JP2012507060A publication Critical patent/JP2012507060A/ja
Application granted granted Critical
Publication of JP5693235B2 publication Critical patent/JP5693235B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • 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
    • G06K15/1805Receiving printer configuration commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Abstract

システムと方法は、印刷動作を制御するファームウェアを備えたプリンタの機能性を修正することを特徴とする。コンピュータ可読媒体上で実行されたときにプリンタのファームウェアと連動しプリンタの機能性を修正する第1プログラミングコードが作成される。第1プログラミングコードはLUAプログラミング言語のような第1プログラミング言語で記述され、ファームウェアは第1プログラミング言語以外の第2プログラミング言語で記述される。その後、第1プログラミングコードはコンピュータ可読媒体上で実行され、プリンタの機能性はファームウェアと連動する実行された第1プログラミングコード機能として修正される。ファームウェアは連動によって修正されない。
【選択図】図3

Description

本発明は、プリンタに関し、特にラベルアンドタグプリンタファームウェアを連動させることによってプリンタの機能性を高めたプリンタに関する。
大抵のラベルアンドタグプリンタは、従来のあらかじめ定義された専用の制御言語によって動作する。例えば、サトーバーコードプリンタ言語(“SBPL”)、ゼブラプログラミング言語(“ZPL”)、データマックスプリンタ言語(“DPL”)、インターメックプリンタ言語(“IPL”)、または同種のもの全ては、専用機能を含み、それは、ユーザーがプリンタのアウトプット機能の変換を達成できるように極めて重要な最低限のスキルレベルを要求するものである。上記のプリンタ言語を支持するプリンタのベンダーによって提供されるような様々なプリンタモデルは、あらかじめ定義された専用のコマンドによって定義された印刷タスクを実行できる。具体的なプリンタ機能の変換は、一般的にプリンタのファームウェアの変換によってなされる。
各プリンタのそれぞれの制御言語はあらかじめ定義されているから、プリンタを終了するとあらかじめ定義されたタスクを実行できるだけである。様々なプリンタの機能を加える必要がある場合、それに応じてファームウェアを変更する必要がある。これは、しばしば複雑なソースコードの改正と、埋め込まれたプログラミング開発ツールの改正を伴う。これは柔軟性のある方法ではなく、顧客は局所的にカスタマイズできない。
先行技術においては、プリンタのファームウェアソースコードの変更および高価な開発ツールなしにラベル/タグプリンタソフトウェアをカスタマイズまたは修正するような能力はない。
したがって、システムと方法とは印刷動作を制御するためのファームウェアを備えたプリンタの機能性を修正することを特徴とする。コンピュータ可読媒体上で実行されたときに、プリンタのファームウェアと連動しプリンタの機能性を修正する第1プログラミングコードが作成される。第1プログラミングコードはLUAのような第1プログラミング言語で記述され、ファームウェアは第1プログラミング言語以外の第2プログラミング言語で記述される。したがって、第1プログラミングコードはコンピュータ可読媒体上で実行され、プリンタの機能性は第1プログラミングコードの実行およびファームウェアとの連動に応じて修正される。ファームウェアは連動によって修正されない。
好ましい実施形態では、インタプリタ型スクリプト言語は、ラベルアンドタグプリンタに関連して提供され、アプリケーションプログラムインターフェース(API)を介してプリンタのファームウェアと連動し相互作用するプリンタソフトウェアアプリケーション(すなわちプリンタアプリケーションプログラム)の作成に用いられる。
ラベルアンドタグプリンタは、LUA仮想マシンに装備されることが好ましい。LUAスクリプト言語は、アプリケーションプログラムインターフェース(API)を介してプリンタのファームウェアと連動し、プリンタの全てのファームウェアおよびハードウェア機能への接続を許可するラベルアンドタグプリンタに適合させたプリンタアプリケーションの作成に用いられることが好ましい。
本発明の他の特徴と利点とは、添付の図面を参照して以下の説明により明らかになるであろう。
本発明を図解する目的のために、現在好まれる形態が図示されているが、本発明が図示された正確な配置と手段に限定されないことが理解されよう。本発明の特徴と利点とは、添付の図面を参照して以下の説明により明らかになるであろう。
好ましい実施形態に従って、ハードウェアの配置例を示す図である。 図1に示す情報処理装置の実施例の機能的構成要素を示す図である。 好ましい実施形態に従って提供されたプリンタAPIを示すブロック図である。 ラベルアンドタグプリンタによって印刷され、好ましい実施形態に従って提供されたAPIを用いて作成されたラベルの実施例を示す図である。 ラベル上にデータフィールドを提供するためにそれぞれの縦横位置を示した、データフィールド長の実施例を示す図である。 ラベルアンドタグプリンタによって印刷され、好ましい実施形態に従って提供されたAPIを用い、カラーオプションを表現して定義されたラベルのもう一つの実施例を示す図である。 複数の電子メモリ形式を含む好ましい実施形態の実装を示す図である。 複数の電子メモリ形式を含む好ましい実施形態の実装を示す図である。 複数の電子メモリ形式を含む好ましい実施形態の実装を示す図である。 複数の電子メモリ形式を含む好ましい実施形態の実装を示す図である。
本明細書の教示により、一つ以上のインターフェースは、ラベルアンドタグプリンタを備えたファームウェアソースコードの更新、変更、改造の必要性なしに、そして高価な開発ツールの必要性なしに、ラベルアンドタグプリンタの設定を個人がカスタマイズできるようにすることを提供する。したがって、ラベルアンドタグプリンタは、他人にプリンタの専用インタプリタ型言語を用いてアプリケーションを記述させる必要性なしに効果的にアプリケーション開発できる。
好ましい実施形態では、インタプリタ型スクリプト言語は、ラベルアンドタグプリンタと組み合わせて提供される。プリンタアプリケーションプログラムインターフェース(“API”)として初期化された1セットのプリンタ拡張機能は、顧客のためにプリンタファームウェアと相互作用して操作でき、機能性を拡大させる。APIはラベルアンドタグプリンタに備えられることが望ましい。好ましい実施形態では、インタプリタ型スクリプト言語はLUAである。
例えばスクリプト言語で作成された1セットのプリンタAPIとプリンタファームウェアを接続することによって、ラベルアンドタグプリンタのユーザーは、ラベルアンドタグプリンタによって使用される様々なタスクを実行するためのソフトウェアコマンドによって改良された柔軟性とアクセス性を得ることができる。プリンタファームウェアと組み合わせてAPIを使用することで、ユーザーはラベルアンドタグプリンタのファームウェアソースコードの変更が必要なくなるか、ラベルアンドタグプリンタのファームウェアソースコードを概して変更するか修正するかが要求される開発ツールにアクセスする必要がなくなる。以下に更に詳しく説明するように、本明細書の教示と関連して提供されたAPIは様々な機能を裏付ける。例えば、異なるキーボードおよびディスプレイを接続すること、プリントレンダリングの可変フォントおよび可変フォーマットを提供すること、プリンタファイルシステムおよびプリンタコンフィギュレーションにアクセスすることなど、ラベル印刷とタグ印刷に関する様々な機能性のことである。
このように、本発明は、ファームウェアソースコード修正の必要性がなく、または例えばあらかじめ定義された専用制御とプリンタファームウェアを修正するためのソフトウェア開発ツールを含む高価な埋め込みシステムがない複数の印刷ソリューションを提供する。
図面に関して、同じ要素には同じ符号が付されている。図1は本発明の実施形態に従ってハードウェアの配置例を示す図であり、直接ケーブル接続によってまたは通信ネットワーク上でプリンタアプリケーションプログラムを提供し、インストールすることを示す図である。ここではシステム100として参照する。図1に示される実施例では、情報処理装置102は、当業者に知られているように例えばLUAプログラミング言語でアプリケーションを開発するために統合開発環境(“IDE”)を提供する。情報処理装置102は本発明を支持するのに必要なすべてのデータベースを含むことが望ましい。しかしながら情報処理装置102は通信ネットワーク106によってどんな必須のデータベースにも、または情報処理装置102が結合するかもしれない他のどの通信ネットワークにもアクセスできると考えられる。通信ネットワーク106はインターネットのような世界的な公衆通信ネットワークが望ましいが、コンピュータと周辺機器とが通信するのを可能にする広域通信網(WAN)、ローカルエリアネットワーク(LAN)、イントラネットまたは他のネットワークでもよい。
好ましい実施形態では、情報処理装置102は通信ネットワーク106上をデータの送受信ができるコンピュータ可読媒体であり、通信ネットワーク106は例えばメインフレームコンピュータ、ミニコンピュータ、パソコン、ラップトップコンピュータ、携帯情報端末(PDA)、携帯電話およびWeb TVのようなインターネット接続機器などである。さらに情報処理装置102は、MICROSOFT INTERNET EXPLORER、MOZILLA FIREFOXのようなウェブブラウザソフトウェアを具備することが望ましい。情報処理装置102は周知のデータ通信ネットワーク技術を使って通信ネットワーク106に接続する。
また、図1に示すプリンタ108は、ラベルアンドタグプリンタであることが望ましく、情報処理装置102から受信したデータのラベルとタグを印刷するために動作可能である。ラベルアンドタグプリンタ108は、キーボード110とディスプレイ112とを備えていてもよく、情報処理装置102がない場合に、または情報処理装置102と連動してラベルアンドタグプリンタ108での入出力機能を可能にする。
図2は情報処理装置102の機能的構成要素を示す図であり、ソフトウェアコードを実行して情報処理装置102の操作を制御するのに使用する一つ以上の中央演算処理装置(CPU)202を含む。他の構成要素は、読出し専用メモリ(ROM)204、ランダムアクセスメモリ(RAM)206、通信ネットワーク上を他のコンピュータとデータを送受信するための一つ以上のネットワークインターフェース208、ハードディスクドライブのような記憶装置210、フロッピー(登録商標)ディスクドライブ、テープ装置、プログラムコードデータベースおよびアプリケーションデータを格納するためのCD ROMまたはDVD、キーボード、マウス、トラックボール、マイクなどのような一つ以上の入力装置212、およびディスプレイ214を含む。さらに、一つ以上の機能的構成要素202から214は、同様にラベルアンドタグプリンタ108に適切に設定されていてもまたは備えられていてもよい。
情報処理装置102の様々な構成要素は、物理的に同じ筐体の内で構成される必要がなく、単一場所にある必要さえない。例えば記憶装置210は情報処理装置102の残りの要素とかけ離れているサイトにあってもよく、ネットワークインターフェース208を介して通信ネットワーク106を通じてCPU202に接続していてもよい。情報処理装置102は、ハイパーテキストマークアップ言語(HTML)、Java(登録商標)アプレット、ActiveXコントロールプログラムを通信するためのウェブサーバとして作動することと同様に、必要なデータベースとフォーラムと他のコミュニティサービスとを提供するために十分な記憶域を備えているメモリを含むことが望ましい。情報処理装置102は、例えば図2に示されているような構成要素で配置され、その配置は情報処理装置102の期待される動作環境に適している。CPU202とネットワークインターフェース208とメモリと記憶装置とは、予測デマンドを収容するための容量が確実に配置できるように選択される。
本発明の特質は、コンピュータ実行可能コード(すなわちソフトウェア)を記述する当業者が一般のコンピュータプログラミング言語と、LUA、C、C++、Visual Basic、JAVA(登録商標)、HTML、XML、ACTIVE SERVER PAGES、JAVA(登録商標)サーバーページ、サーブレット、MYSQLおよびPHPを含むがこれに限定されない開発環境との一つ以上の組合せを用いて本明細書に説明される機能を実装することができるといったものである。
本発明は、ここに例としてウェブブラウザとウェブサイトサーバー(例えば情報処理装置102)とを用いたウェブベースのシステムに関して説明するが、システム100はそのような構成に限定されない。システム100は、ラベルアンドタグプリンタ108が情報処理装置102と通信して情報処理装置102から受信したデータを出力するように配置されると考えられる。ラベルアンドタグプリンタ108と情報処理装置102との通信方法は周知ものを使用しており、例えばローカルエリアネットワークプロトコル(例えばインターネットパケットエクスチェンジ(IPX)、ダイヤルアップ、サードパーティ、プライベートネットワークまたは付加価値通信網(VAN)のような)に結合する非インターネットブラウザWINDOWS(登録商標)ビューアを使用する。
さらにどの適用するオペレーティングシステムでも(例えばDOS、WINDOWS(登録商標) 3.x、WINDOWS(登録商標) 95、WINDOWS(登録商標) 98、WINDOWS(登録商標) NT、WINDOWS(登録商標) 2000、WINDOWS(登録商標) ME、WINDOWS(登録商標) CE、WINDOWS (登録商標)POCKET PC、WINDOWS(登録商標) XP、MAC OS、UNIX(登録商標)、LINUX、PALM OS、POCKET PCおよび他の適用するペレーティングシステム)情報処理装置102上で使用できると考えられる。
好ましい実施形態では、ラベルアンドタグプリンタ108のアプリケーションは、LUAプログラミング言語で作成される。好ましい実施形態によれば、LUAインタプリタはアプリケーションに備えられたLUAプログラミングステートメントを処理できるよう装備される。典型的な高水準プログラミング言語とは異なり、LUAはスクリプト言語であり基本的なプログラミング言語ではない。ラベルアンドタグプリンタに様々な機能を実行させるようなSBPLコマンドまたは他のあらかじめ定義されたコマンドを受信する典型的なラベルアンドタグプリンタとは異なり、本発明はプリンタファームウェアと連動しLUAインタプリタによって解釈されるLUA言語の拡張であるプリンタAPIを実装する。これは、より先進で複雑なアプリケーションが例えば関数呼び出しによって開発されるのを可能にする。さらに、LUAプログラミング言語の拡張であるAPIを実装することによって、ラベルアンドタグプリンタ108の一部の機能が修正でき、一つの変更を実行するためにはそれぞれのファームウェアアプリケーションの完全な上書きが必要とされる先行技術のラベルアンドタグプリンタとは対照的である。
本発明のもう一つの利点は、LUAプログラミング言語で作成され、ラベルアンドタグプリンタ108APIに実装されるアプリケーションが、よりコンパクトでかなり速く実行することである。これは、先行技術のラベルアンドタグプリンタが、本発明のAPIによってであれば達成される様々な機能を実行するにはより多くのソフトウェアインストラクションを必要とするからである。さらに、LUAインタプリタは、例えば関数呼び出し、変数宣言または同種のものを活用することによって効率的に本発明のAPIと連動し、より少ないメモリ必要条件の機能としてコードの利用が先行技術のラベルアンドタグプリンタより大幅に向上する。
先行技術のラベルアンドタグプリンタより優れた本発明のLUAプリンタAPIのもう一つの長所は、例えばSBPLまたはZPLのような既存の制御言語を通して印刷機能にアクセスするためのインタプリタを必要とすることなく印刷機能にアクセスできることである。言い換えると、前記APIは、プリンタ108の印刷機能を制御するラベルアンドタグプリンタ108ファームウェアと直接連動する。これは、たとえば既存の制御言語と連動させるSBPLコマンドの生成(それによってプリンタ機能の修正と関連したステップとオーバーヘッドが増えてしまう)を必要とする先行技術システムの改善点である。
さらに、本発明のAPIはLUAインタプリタを介して連動するから、アプリケーションと関連したサイズ制限は、特定のラベルアンドタグプリンタ108に基づく内部メモリ必要条件を除いて実質的に削除される。これは、例えばインストールできて動的メモリ割り当てを支持しないコード行数に対する制限がある先行技術のラベルアンドタグプリンタの改善点である。本発明のAPIは、たとえば、関数呼び出しと他の高水準プログラミング言語機能(特定の機能のために実装されるプログラミングコードの量を増やすメモリ(“ガベージコレクション”)を開放することのような)をサポートする。
本発明のもう一つの利点は、例えばMICROSOFT VISUAL STUDIO または他の統合開発環境(“IDE”)のような開発ツールがLUAのためのプラグイン構成要素として使用できるということである。それぞれのラベルアンドタグプリンタ108のためのアプリケーション開発は、ビジュアル統合開発環境のソフトウェアアプリケーションに精通しているか不安がない開発者にはより魅力的である。
本発明のもう一つの利点は、LUAアプリケーションがプリンタ動作をシミュレートするLUA仮想マシンを備えるコンピュータ上で動くことができるということである。ユーザーは、アプリケーションをプリンタ上にダウンロードしてインストールする前にコンピュータ上で作成されたLUAアプリケーションをテストすることができ、それはLUAアプリケーションをテストするために実際にプリンタを動作させる必要性を排除する。
好ましい実施形態において、複数の独立したLUA仮想マシンはチェーンのように動作可能であり、ラベルアンドタグプリンタ108単独上にまたはそのネットワーク上に実装できる。このように、構成可能な動的なローカル設定は、例えば、領域設定と言語設定のような様々なカスタム設定によってデータをソートするバーコードプリンタのために実装できる。様々なローカル設定は、特定のコンピュータシステムのオペレーティングシステムに保存されてもよく、動作への変換は例えばローカル設定によって決まってもよい。
LUAインタプリタを介してAPIを実装することによって、先行技術ですでに利用可能なもの以上にプリンタ機能の増設を提供できる。次に、好ましい実施形態に従って利用可能にしたプリンタ機能の増設とその改善された実装に関する解説を提供する。
実施例にあるようにプログラミング関数呼び出しおよび変数を介してプログラミング機能へ/から値を宣言し、対処し、渡す能力はLUAの実装によってサポートされることが好ましい。プログラミング機能は、機能がうまく実行したかどうかにかかわらず表示するエラーコードのような値を戻すことが好ましい。例えば機能が意図するように実行しなかった場合、エラーの原因、エラーの症状、エラーの結果または他の適切な情報を表示するエラーコードが戻される。さらに、例えばテーブル名、ストリング値、データ、数値またはその種のような機能名と変数名に関連して、直ちにユーザーに表示されないことが望ましく、少なくとも部分的に非表示にするか、完全に非表示にしてもよい。
好ましくは、セキュリティ実装は本明細書の教示により裏付けられ、その教示とは例えば、特定のデータや一つ以上のデータディレクトリにアクセスすること、またはデータディレクトリ、データファイルまたはその種のものの作成、削除または修正を行うことのような様々なタスクを実行するためにユーザーに十分な権限を提供することとアクセス権を与えることとを必要とする、ということを含む。
APIによって支持されるもう一つの特徴は、インターフェースレンダリングである。本明細書では、レンダリングとは通常双方向プログラミングオブジェクトの作成を意味する。例えば、レンダリングされたオブジェクトは、データフィールド(例えばテキストベースのフィールド)、バーコード、グラフィックフィールドとして形成されてもよい。レンダリングされたオブジェクトは、メソッドなどによって操作できるプロパティを一つ以上含む。好ましくは、APIを介してレンダリングされるオブジェクト(例えばテキストフィールド、バーコード、グラフィックオブジェクト)は、ラベルオブジェクトを備えていて(例えば、追加または埋め込んで)、ラベルアンドタグプリンタ108を介して印刷される。
さらに、APIはバーコードのようなオブジェクトの提供をサポートし、そのオブジェクトはラベル作成の間、ラベル印刷の間もしくはその両方のときにエラーを引き起こすことなく、ラベルの、ラベルアンドタグプリンタ108の印刷可能領域の少なくとも部分的に外側に位置付けられる。この特徴は、たとえば、バーコードの半分だけがラベルアンドタグプリンタ108で印刷されるバーコードを有するラベルを作成することを可能にする。ユーザーがラベルアンドタグプリンタ108を介して部分的または不完全なバーコードのようなオブジェクトをラベルに印刷されることを望む場合に、この特徴は先行技術のプリンタ機能の修正方法における改善点を提供する。
一つの実施形態と動作中においては、レンダリングされたオブジェクト(例えばテキストフィールド、バーコード、グラフィックボックス、イメージまたはその種のもの)のそれぞれの位置は、縦横位置パラメータ(例えば“hPos”と“vPos”)によって定義される。パラメータ値は、オブジェクトのためにアンカーポイント位置を定義することが望ましい。hPosとvPosが正しくセットされる場合、エラーパラメータ(例えば”E_SUCCESS“)が定義される。あるいは、hPosまたはvPosが正しくセットされなければ、異なるエラーパラメータ(例えば”EPARAM“)が定義される。
位置決めのために定義されるパラメータに加えて、本発明はバーコードまたはイメージのようなオブジェクトの拡大を支持する。例えば、縦横拡大パラメータ(例えば“hMag”と“vMag”)は縦横のピクセル拡大をセットするために(例えば、値1から12)定義され、それはオブジェクトの縦横拡大のそれぞれの程度を表す。
図3は、ラベルアンドタグプリンタ108インターフェースと連動する好ましい実施形態に従って提供された関連API302を例示するブロック図である。図3で示すように、キーボードAPI304は、ラベルアンドタグプリンタ108と統合されるキーボード110から信号を受信して解釈する(すなわち読み込む)ために操作可能である。あるいは、キーボードAPI304は、ラベルアンドタグプリンタ108に直接結合するのではなく外部キーボードまたは他の入力装置212から信号を読み込んで解釈するために動作する。ディスプレイAPI306は、プリンタ108と一体にしたディスプレイ112に多種多様なテキスト内容と画像を書き込むために動作する。あるいは、ディスプレイAPI306は、ラベルアンドタグプリンタ108に取り付けられた外部ディスプレイ214にテキスト内容と画像を書き込むために動作する。好ましくは、ディスプレイAPI306はフォントと符号化方式の幅広い選択をサポートし、それは例えば多くの異なる記述言語である。
図3に関して続けると、プリントレンダリングAPI308は、ラベルアンドタグプリンタ108で印刷されるラベル上に出力されるユーザー定義のデータフィールド要素をサポートする。そのようなデータフィールド要素の例は、テキストデータフィールド、一次元および二次元のバーコード、線と四角、三角関数、イメージ、個々のピクセル、グラフィックス、フォーマット済みデータおよびカウンタ値を含む。ユーザーはプリンタレンダリングAPI308によってデータフィールドのタイプと特定のラベル/タグ上に出力されるデータフィールドのそれぞれの位置を定義できる。様々な言語をサポートするフォントと符号化方式のための選択可能なオプションは、プリンタレンダリングAPI308によって提供されることが好ましい。固定長または可変長のデータフォーマットはサポートされ、フィールド定義に含むことができ、あるいは、ファイルまたはプリンタレンダリングAPI308を介した通信インターフェースから入力されることが好ましい。他の特徴は、上記のフィールドオブジェクトの一つ以上の色を定義するために選択可能なカラー出力オプションのサポートを含む。さらに、一つ以上のプリントアウトコマンドまたは供給コマンドは、白紙または印刷されたラベルとタグとを出力するためにプリンタレンダリングAPI308の機能として発令可能である。ユーザーが選択可能な印刷品質制御機能が、プリントレンダリングAPI308によってさらに提供されることが好ましい。
さらに、ファイルシステムAPI310は、ユーザーがファイルの格納、削除、読み込みおよび書き込みできるように提供されることが好ましく、そのファイルはラベルアンドタグプリンタ108の読み込み専用のメモリファイルシステム、ランダムアクセスメモリファイルシステム、フラッシュメモリファイルシステムまたは外部メモリソース(例えばコンパクトフラッシュ(登録商標)メモリカード、セキュアデジタルメモリカード、USBメモリデバイス、またはその種のもの)の一つ以上の場所ある。ユーザーにラベルアンドグプリンタ108に関連した様々な内外部ソースに格納されたデータ、ファイルまたはその種のものへのアクセスを提供することは、ラベルアンドタグプリンタ108動作を制御、操作するための柔軟性を著しく高める。ファイルシステムAPI310と関連して望ましく提供される様々な機能の実施例は、フォーマット化したラベルアンドタグプリンタ108のファイルシステムを含み、ディレクトリの反復入力を決定し、特定のディレクトリに誘導し、新しいディレクトリを作成し、ファイルをコピーし、ディレクトリまたはファイルを除去し、ファイルシステム内の使用済みで利用可能なバイトを測定し、ファイルまたはディレクトリのアクセス権を変更する。
図3に関して続けると、RFIDチップ/インレイへの読み込みおよび書き込みアクセスをサポートする無線ICタグ(“RFID”)API312はラベルアンドタグプリンタ108を備える。さらに、リアルタイムクロックAPI314では、ユーザーはラベルアンドタグプリンタ108へ/から日付と時間データを定義して読み込むことができる。コンフィギュレーションAPI316は、ユーザー定義のプリンタに特有のパラメータをサポートする。例えば、コンフィギュレーションAPI316では、ユーザーは印刷速度、品質、日付と時間機能、ローカル言語、メニューコントロールまたはその種のものに関連した通信パラメータを定義できる。コンフィギュレーションAPI316は、ユーザーがラベルアンドタグプリンタ108の操作制御を定義または修正できることに特に有用であり、その操作制御に関しては、概してラベルアンドタグプリンタ108を備えたファームウェア専用であり、専門ソフトウェアとスキルを有した技術的に熟達したユーザーによってだけ修正可能である。さらに、コミュニケーションAPI318は、外部I/Oインターフェースデバイスとの通信を制御することが望ましい。複数の通信プロトコルと通信標準は、例えばRS232、RS485、RS422、USB、LAN、WLANおよびリレーインターフェースの外部デジタルを含んでサポートされる。
図3に示される他のAPI302は、プリンタで制御装置に動作可能であるデバイスAPI320、いつでもプリンタのステータスを報告するために動作可能であるプリンタステータスAPI322、ラベルアンドタグプリンタ108に送信されたXMLコマンドおよび/またはXMLファイルのようなコマンドおよび/またはファイルを解析するために動作可能であるパーサーAPI324を含む。一旦解析されると、XMLコマンドは解釈され、ラベルアンドタグプリンタ108に提供された出力を制御するのに用いることができる。
デバイスAPI320、プリンタステータスAPI322およびパーサーAPI324に加えて、好ましくはペーパーハンドリングAPI326を含むAPI302は、一つまたは複数のラベルとタグのサイズのために、例えばプリントフィード、フォームフィード、ラインフィード、テストフィードまたはその種のものを含む様々なペーパー機能をサポートするために提供される。さらに、サウンドAPI328は、例えばラベルアンドタグプリンタ108のベル、ブザーまたは他のサウンドデバイスのような音声制御を提供することを示す。さらに、センサーAPI330はラベルギャップセンサーとラベルマークセンサーのようなセンサーデバイスから情報を受信するために動作可能であることを示し、そのようなセンサーデバイスはラベルアンドタグプリンタ108を備えており、ラベルの端に達したとき、リボンの端に達したとき、ラベルまたはリボンの端にほとんど達したときのような様々な条件を決定するために使用可能である。一つの実施形態では、一つ以上のこれらの条件の決定が発生したときにセンサーAPI330は警告を出すために動作する。図3に示される他のAPI302は、ラベルアンドタグプリンタ108で発生した様々なイベントを受信して処理するイベントAPI332を含む。データのビット操作を行うために動作可能であるビットハンドリングAPI334を含み、必要に応じてラベルアンドタグプリンタ108で発生した、例えば停電、メモリエラー、紙詰まりまたはその種のエラーを処理するために動作可能であるエラーハンドリングAPI336を含む。
したがって好ましい実施形態により、複数のAPI302は、例えばLUAプログラミング言語またはCプログラミング言語で作成され、SBPLまたはZPLのような既存の制御言語を介してプリント機能にアクセスしているインタプリタの必要なしに、ラベルアンドタグプリンタ108に実装される。図3に例示されるAPI302に加えて、様々な他の雑多な機能は、一つ以上の実施形態に従って実装されるために本明細書において想定される。例えば、機能は、開発の迅速さと容易さのためにテーブルおよび/またはメーターテーブルのクローニングをサポートする。他の実施例は、エラーストリング値を変換する機能(例えば“err2str()”)としてエラーコード値を測定するための機能、一つ以上の複数のフォーマット(例えばXML、LUAまたはその他)にテーブルを保存するための機能、複数のフォーマットを提供されたテーブルをロードするための機能を含み、メニューとプロンプトのための複数の文語と口語をサポートする。
図4は、ラベルアンドタグプリンタ108で印刷され、API302を用いて定義され、好ましい実施形態に従って提供されたラベル400を例示する。図4で示されるように、印刷されたテキストデータのそれぞれの方向または位置にかかわらず、アンカーポイント402は上部左端(例えば、hMagとvMag変数値を介して定義される)のラベル400上に印刷されたテキストデータの位置に定義される。また、図4で示されるのは、ラベルアンドタグプリンタ108を介して印刷されたラベル400の給紙方向404である。ラベル400上に印刷されたテキストデータに加えて、プリントレンダリングAPI308を介してレンダリングされる場合などにグラフィックイメージ406が提供される。
図5は、データフィールド500がラベル400上で提供されるために定義されるデータフィールドサイズを例示し、データフィールド500の上部左端の隅のそれぞれの縦横位置(”hPos”と“vPos”)502と下部右端位置504の縦横位置を示す。さらに、データ方向機能506(例えばdir(0,.359))は、ラベル400上に出力されたとするデータフィールド500の相対的な方向を示す。
図6は、ラベルアンドタグプリンタ108で印刷され、API302を用いて定義され、好ましい実施形態従って提供されたラベル600のもう一つの他の例を示す。図6に示されるラベル600の例では、それぞれの位置608でラベル600上に提供される複数の色602、604、606が示される。したがって、本明細書に示して説明しているように、LUA APIは、LUAインタプリタを介したAPIを実装することによってラベルアンドタグプリンタ108ファームウェアとLUAインタプリタとともに動作するインターフェースであり、顧客は好ましい印刷動作を実装したLUAアプリケーションプログラムを作成することができる。
図7を参照し、好ましい実施形態のラベルアンドタグプリンタ108は2種類のメモリを備えている:フラッシュメモリ702と同期型DRAM(SDRAM)704である。フラッシュメモリ702(好ましくはROMの代わりに使われる)は、他の適当なデータ間で、ラベルアンドタグプリンタ108のブートコード、基本ファームウェア(例えばドライバー、バーコードフォーマットまたはその種のもの)、LUA APIおよびLUA仮想マシンを格納する。当技術分野で周知のように、フラッシュメモリ702に格納されるブートコードはプリンタ108の起動プロセス間に動作する。好ましい実施形態では、ラベルアンドタグプリンタ108の基本ファームウェアとLUA APIとは圧縮した形式でフラッシュメモリ702に格納され、それによってフラッシュメモリ702内でメモリスペースを節約する。
ラベルアンドタグプリンタ108の起動プロセスの前に、SDRAM704は大部分に空で、データを受信する準備ができていることが好ましい。図8に例示されるように、ラベルアンドタグプリンタ108のブート、ラベルアンドタグプリンタ108のファームウェア、LUA APIおよびLUA仮想マシンが圧縮した形式でフラッシュメモリ702に格納されることが好ましい。起動プロセスの後、ファームウェア、LUA APIおよびLUA仮想マシンは、非圧縮形式でSDRAMに展開して提供される。その後、ラベルアンドタグプリンタ108の基本ファームウェア、ドライバー、バーコードデータ、ラベルフォーマット、パーサー、イメージバッファおよび他のデータは、必要に応じて一時的に、動作に備えてSDRAM704に格納される。
図9に関して、LUA仮想マシンは、プリンタ108のファームウェア、LUA APIおよびパーサーと接続してSDRAM704を介して動作することが好ましい。この方法と好ましい実施形態に従って、ラベルアンドタグプリンタ108は印刷動作の間にだけフラッシュメモリ702に頼らないが、その代わりに、動作のためにSDRAM704に格納された非圧縮データとインストラクションによって動作する。この実施形態は先行技術システムと方法より好ましい。それはSDRAM704がフラッシュメモリ702より速く、より効率的に動作し、そしてプリンタ動作完了後にSDRAM704は非圧縮データとインストラクションを消去できるからである。
図9と10に関して、印刷動作の間、本明細書の教示と関連して提供されるLUA APIは、LUA仮想マシンを介して動作し、ラベルアンドタグプリンタ108のバッファに格納されるラベルイメージまたは他のオブジェクトを出力するために、ラベルアンドタグプリンタ108ファームウェアと連動する。ラベルアンドタグプリンタ108は、好ましくはLUA APIを介して定義済みのものとして複数の入力源からインストラクション(例えばLUA APIを介して)および/またはデータを受信できることが好ましい。例えば、データは入力装置212、通信ポート、ネットワークインターフェース208またはその種のものを含むどんな適当な入力ポートを介してでもスキャン、タイプあるいは提供および受信できるであろう。
したがって、本明細書で説明し主張してきたように、そして、添付の図面に示したように、ラベルアンドタグプリンタ108によって提供された機能は、プリンタ108のファームウェアと連動するAPI302の機能として強化、修正、または加えられることが好ましい。アプリケーションは、LUAプログラミング言語のような高水準プログラミング言語を使用して定義されることが好ましく、それによって個人が特定のプリンタモデルファームウェア専用プログラミング言語に熟達している必要性、またはプリンタのファームウェアを修正するために専用の開発ツールにアクセスする必要性を排除する。したがって、プリンタはプリンタの専用インタプリタ型言語を用いたアプリケーションを記述する必要性なしにアプリケーション開発を可能にする。
本発明はその特定の実施形態に関して説明し表示しているが、多くの他の変動と修正と他の用途とは当業者にとっても明らかになるであろう。したがって、本発明が本明細書の特定の開示によって制限されないことを申しいれる。
本発明は、一般にプリンタに関するものであり、より具体的には、ラベル/タグプリンタのファームウェアとのインターフェースを提供することにより、プリンタの性能を向上させるものである。
ほとんどのラベル/タグプリンタは、従来、予め定義されている専用の制御言語を介して動作する。例えば、SATOのバーコードプリンタ言語(SBPL)、ZEBRAのプログラミング言語(ZPL)、DATAMAXのプリンタ言語(DPL),INTERMECのプリンタ言語(IPL)等は、全て、ユーザーがプリンタの出力機能を変更するのを可能にするために、極めて最小の熟練レベルしか要しない専用機能を備えている。種々のプリンタモデル、例えば、上記に挙げたプリンタ言語をサポートするプリンタメーカーにより供給されるプリンタモデルは、予め定義された個別の命令により定義された印刷タスクを実行することができる。一般に、プリンタ機能の特定の変更は、プリンタのファームウェアを改変することにより行う。
各プリンタのそれぞれの制御言語は予め定義されている。したがって、既存のプリンタは、予め定義されたタスクを行うことしかできない。それゆえ、種々のプリンタ機能を追加する必要がある場合は、ファームウェアを変更する必要がある。この改訂を行うには、しばしば、複雑なソースコードの改訂版を作成したり、その改訂版を作成するための埋め込みプログラム開発ツールを作成することが必要となる。これは、顧客が現場で行うことができるような柔軟性をもったアプローチやカスタマイズではない。
従来技術においては、プリンタのファームウェアのソースコードを変更しないと、ラベル/タグプリンタのソフトウェアをカスタマイズ又は改変することができず、また、これには高価な開発ツールが必要であった。
したがって、印刷動作を制御するファームウェアを備えたプリンタの機能性を改変するためのシステム及び方法が定義される。第1プログラミングコードは、それがコンピュータ読み取り可能な媒体上で実行されたとき、プリンタのファームウェアとインターフェースし、プリンタの機能を改変するように開発される。第1プログラミングコードは、LUAプログラミング言語のような第1プログラミング言語で書かれており、ファームウェアは、上記第1プログラミング言語とは異なる第2プログラミング言語で書かれたものである。したがって、第1プログラミングコードがコンピュータ読み取り可能な媒体上で実行され、プリンタの機能は、第1プログラミングコードがファームウェアとインターフェースした結果として改変される。ファームウェア自体は、このインターフェースすることによっては改変されない。
好適な実施形態において、インタープリターされるスクリプト言語がラベル/タグプリンタに関連して提供され、これを使用して、アプリケーションプログラミングインターフェース(API)を介してプリンタのファームウェアとインターフェースして作用するソフトウェアアプリケーション(すなわち、プリンタアプリケションプログラム)を開発する。
好適には、ラベル/タグプリンタには、LUA仮想マシンが備えられる。好ましくは、LUAスクリプト言語は、アプリケーションプログラミングインターフェース(API)を介してプリンタのファームウェアとインターフェースする、ラベル/タグプリンタに適応したプリンタアプリケーションを開発するのに使用される。これにより、プリンタの全てのファームウェア及びハードウェアの機能へのアクセスが可能となる。
本発明のその他の特徴及び利点は、付随する図面を参照した以下の説明により明らかになるであろう。
本発明を説明する目的のため、図面に、好適な形態を示す。しかし、本発明は、図に示されたそのままの構成及び手段に限定されるべきものでないことに留意されたい。本発明の特徴及び利点は、付随する図面を参照した以下の説明により明らかになるであろう。
図1は、本発明によるハードウェアの構成例を示す。 図2は、図1に示す情報処理装置の一例の機能素子を示す。 図3は、好適な実施形態により提供されるプリンタAPIを示すブロック図である。 図4は、ラベル/タグプリンタにより印刷される、本発明により提供されたAPIにより定義される、ラベルの例を示す。 図5は、横位置、縦位置のそれぞれを示し、かつ、ラベル上に提供されるデータフィールドについて定義されるデータフィールドサイズの例を示す。 図6は、ラベル/タグプリンタにより印刷され、APIにより定義される、ラベルの別の例であり、好適な実施形態により提供される色オプションを示すものである。 図7は、複数の電気的メモリの形式を含む好適な実施形態の実装を示すものである。 図8は、複数の電気的メモリの形式を含む好適な実施形態の実装を示すものである。 図9は、複数の電気的メモリの形式を含む好適な実施形態の実装を示すものである。 図10は、複数の電気的メモリの形式を含む好適な実施形態の実装を示すものである。
本技術によれば、ラベル/タグプリンタに供給されているファームウェアのソースコードを更新、変更、又は改変すること無しに、かつ、高価な開発ツールの必要がなく、各人がラベル/タグプリンタの設定をカスタマイズすることが可能となるように、一つ以上のインターフェースが備えられる。故に、ラベル/タグプリンタは、プリンタの専用のインタープリタ型言語を使用することにより、アプリケーションを記述するのにその他のツールを使用することなく、効果的に、アプリケーション開発を行うことが可能となっている。
好適な実施形態においては、インタープリタ型スクリプト言語が、ラベル/タグプリンタと組み合わせて供給される。カスタム化及び拡張機能のためのプリンタファームウェアへの作用、及び操作が可能となるように、プリンタアプリケーションプログラミングインターフェース(API)として形式が整えられたプリンタ拡張機能のセットが供給される。これらのAPIは、ラベル/タグプリンタに提供されていることが望ましい。好適な実施形態において、インタープリタ型スクリプト言語はLUAである。
上記プリンタファームウェアを、例えば、スクリプト言語で開発された上記一群のプリンタAPIにインターフェースすることにより、ラベル/タグプリンタが種々のタスクを行うのに使用するソフトウェアによる命令を介して、ラベル/タグプリンタのユーザーは、改善された柔軟性やユーザー補助機能を享受することができる。プリンタのファームウェアと組み合わせてAPIを使用することにより、ユーザーは、ラベル/タグプリンタのファームウェアのソースコードを改変する必要が無くなり、また、ラベル/タグプリンタのファームウェアソースコードの変更や改変に一般に必要となる開発ツールにアクセスする必要が無くなる。以下に詳しく記述するように、本技術に関連して提供されるAPIは、種々の機能、例えば、違う種類のキーボードや表示ディスプレイのためのインターフェース機能、可変フォントや印刷レンダリングの形式を提供する機能、プリンタのファイルシステムにアクセスする機能、プリンタの設定機能、及び、ラベル/タグプリンタに関係する種々のその他の機能を提供する。
よって、本発明は、ファームウェアのソースコードを改変することなく、また、例えば、予め定義された専用の制御ファームウェア及びプリンタのファームウェアを改変するためのソフトウェア開発ツールを含む高価な埋め込み型システムを必要とすることなく、複数の印刷に関する解決策を提供するものである。
参照図面においては、同様の参照番号は同様の構成要素を示す。図1は、本発明の実施形態における、直接接続されたケーブルを介して、又は、通信ネットワークを介して、プリンタアプリケーションプログラムを供給及びインストールするためのハードウェアの構成例を示すものであり、ここでは一般的に、システム100と称する。図1中での例においては、情報処理装置102には、例えば、本技術の当業者には周知であるように、LUAプログラミング言語でアプリケーションを開発するためのプログラム統合開発環境(IDE)が提供されており、。情報処理装置102は、本発明をサポートするために必要な全てのデータベースを有するのが好ましい。しかし、ここでの情報処理装置102は、通信ネットワーク106又は、情報処理装置102が結合できるその他の通信ネットワークを介して、必要とされるいずれのデータベースにもアクセスできるようなものを想定している。通信ネットワーク106は、インターネットのような世界的な公共ネットワークであることが好ましいが、広域ネットワーク(WAN)やローカルネットワーク(LAN)や、又はイントラネットやコンピュータデバイスや周辺機器との通信を可能にするその他のネットワークでもよい。
好適な実施形態において、情報処理装置102は、通信ネットワーク106を介してデータの送受信をすることができる任意のコンピュータ読み取り可能媒体機器であり、例えば、大型汎用コンピュータ、小型コンピュータ、パーソナルコンピュータ、ノート型コンピュータ、携帯情報端末(PDA)、携帯電話、及び、ウェブテレビのようなインターネットアクセス可能な機器である。また、情報処理装置102は、MICROSOFT INTERNET EXPLORE(登録商標)、MOZILLA FIREFOX(登録商標)のようなウェブブラウザのソフトウェアが装備されていることが望ましい。情報処理装置102は、既知のデータ通信ネットワーク技術を使用した通信ネットワーク106に接続される。
また、図1には、プリンタ108が示されている。プリンタ108は、好ましくは、ラベル/タグプリンタであり、情報処理装置102から受けたデータのラベル及びタグを印刷する操作が可能であるものが好ましい。情報処理装置102に関係無く、又は、情報処理装置102と連携して、ラベル/タグプリンタ108の機能の入出力を行うことが可能とするために、ラベル/タグプリンタ108には、キーボード110及び表示ディスプレイ112が備えられてもよい。
図2は、情報処理装置102の一例の機能構成要素を示し、これは、ソフトウェアコードを実行し、情報処理装置102の動作を制御するための一つ以上の中央処理装置(CPU)202を含んでいる。その他の構成要素としては、読み取り専用メモリ(ROM)204、ランダムアクセスメモリ(RAM)206、通信ネットワークを介して他のコンピュータデバイスとデータへのデータの送受信を行うための一つ以上のネットワークインターフェース208、プログラミングコードのデータベース及びアプリケーションデータを格納するための、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、テープドライブ、CDROM、又はDVDのような記憶装置210、キーボード、マウス、トラックボール、マイク等の一つ以上の入力装置212、及び表示ディスプレイ214が挙げられる。さらに、また、ラベル/タグプリンタ108には、一つ以上の機能素子202から214が好適に形成、又は備えられてもよい。
情報処理装置102の種々の構成要素は、物理的に同じ筐体に含まれる必要は無く、また、一箇所に設置される必要もない。例えば、記憶装置210は、情報処理装置102の残りの構成要素から離れた場所に設置してもよい。また、記憶装置210は、ネットワークインターフェース208を介した通信ネットワーク106を介してCPU202に接続してもよい。情報処理装置102は、ハイパーテキスト・マークアップ言語(HTML)、Java(登録商標)アプレット、Active−X制御プログラムを通信するための通信ウェブサーバーとして機能し、また、必要なデータベース、フォーラム、及びその他の通信サービスを提供することができるようにするため、十分な記憶容量を有するメモリを有することが好ましい。情報処理装置102は、例えば、図2に示すように、その予測される操作環境に適した構成要素と共に配置される。CPU202、ネットワークインターフェース208、及びメモリや格納素子については、期待される要求が満たされるようにその能力が確保されるように選択する。
本発明は、コンピュータが実行可能なコード(すなわちソフトウェア)を作成する分野の当業者において、一つ以上の一般向けコンピュータプログラミング言語と開発環境の組み合わせたもの(これは、LUA、C、C++、Visual Basic、JAVA(登録商標)、HTML、XML、ACTIVE SERVER PAGES、JAVA(登録商標) server pages、servlets、MYSQL、及びPHPを含むが、これらに限るものではない)を使用することにより、ここに述べる機能を実装することを可能とするものである。
本発明は、ここにおいては一例として、ウェブブラウザとウェブサイトサーバー(例えば、情報処理装置)を使用したウェブを基本としたシステムについて記述しているが、システム100は、そのような構成に限るものではない。ここでは、システム100は、既知の通信方法、例えば、インターネットワークパケット交換(IPX)、ダイアルアップネットワーク、第三者機関のネットワーク、個人のネットワーク、又は高度情報通信網(VAN)のようなローカルエリアネットワークプロトコルと結合した非インターネットブラウザであるWINDOWS(登録商標)ビューワーを使用して、ラベル/タグプリンタ108が通信を行い、かつ、情報処理装置102から受け取ったデータを出力できるように構成されると想定する。
さらに、情報処理装置102には、任意の適切なオペレーティングシステムを使用することができると想定する。上記任意の適切なオペレーティングシステムには、例えば、DOS、WINDOWS(登録商標)3.x、WINDOWS(登録商標)95、WINDOWS(登録商標)98、WINDOWS(登録商標) NT、WINDOWS(登録商標)2000、WINDOWS(登録商標) ME、WINDOWS(登録商標) CE、WINDOWS(登録商標) POCKET PC、WINDOWS(登録商標) XP、MAC OS(登録商標)、UNIX(登録商標)、LINUX(登録商標)、PALM OS(登録商標)、POCKET PC、及びその他の適当なオペレーティングシステムを含む。
好ましい実施形態において、ラベル/タグプリンタ108のアプリケーションは、LUAプログラミング言語で開発される。好適な実施形態において、アプリケーションに備えられたLUAプログラミングステートメントの実行を機能することができるように機能するLUAインタープリタが備えられる。一般の高度プログラミング言語と違って、LUAは、スクリプト言語であり、基本的なプログラミング言語ではない。種々の機能を実行させるようなSBPL命令や又は、その他の予め定義された命令を受ける一般のラベル/タグプリンタとは違って、本発明は、LUA言語の拡張である、プリンタファームウェアとインターフェースし、また、LUAインタープリタにより解釈されるプリンタAPIを実装するものである。これにより、関数呼び出しを介すること等により、より高度で複雑なアプリケーションを開発することが可能になる。さらに、従来のラベル/タグプリンタでは、一箇所の変更点を実装するために、対応するファームウェアアプリケーションを完全に上書きする必要があったが、LUAプログラミング言語の拡張機能であるAPIを実装することにより、ラベル/タグプリンタ108の機能を部分的に改変することが可能となった。
本発明の別の利点は、LUAプログラミング言語で開発され、ラベル/タグプリンタ108により解釈されるアプリケーションは、よりコンパクトな構成であり、かつ、著しく動作が速いということが挙げられる。この理由は、従来のラベル/タグプリンタは、種々の機能(本発明においては、APIにより達成される)を実行するのにより多くのソフトウェア命令を必要とするからである。さらに、LUAインタープリタは、関数呼び出しや変数宣言等における利点を利用することにより、効率的に本発明のAPIとインターフェースし、メモリに対する要求が減ったことにより、コードの利便性が、従来技術におけるラベル/タグプリンタより著しく向上した。
従来技術のラベル/タグプリンタに対する本発明のLUAプリンタAPIの別の利点は、インタプリタが、SBPLやZPLのような既存の制御言語を介して印刷機能にアクセスする必要なく、印刷機能にアクセスすることが可能ということである。いい換えると、APIは、ラベル/タグプリンタ108の印刷機能を制御するファームウェアに対して、直接インターフェースする。これは、従来技術によるシステムに対する改善点である。従来技術によるシステムにおいては、例えば既存の制御言語とのインターフェースするためにSBPL命令の生成が必要となり、これにより、プリンタの機能を改変するのに関連した直接、及び間接的な工程が増加してしまう。
さらに、本発明のAPIは、LUAインタープリタを介してインターフェースするので、ラベル/タグプリンタ108における内部メモリの必要性を除いて、アプリケーションのサイズの制限が実質的に無くなる。これは、例えば、インストールされうるコードの行数の制限を持ち、また、動的メモリ割り当てをサポートしていない従来技術におけるラベル/タグプリンタに対する改善点である。本発明におけるAPIは、例えば、或る特定の機能のために実装されたプログラミングコードの量を増やすことができるようにメモリを解放すること(ガーベジコレクション機能)等の関数呼び出しやその他の高度なプログラミング言語機能をサポートしている。
本発明の別の利点は、MICROSOFT VISUAL STUDIOやその他の統合的開発環境(IDE)等の開発ツールをLUAのプラグイン構成要素として使用できるということが挙げられる。各ラベル/タグプリンタ108のアプリケーション開発は、ビジュアルな統合開発環境におけるソフトウェア開発になじんだ、又は快適さを感じる開発者にとってより魅力的なものとなる。
本発明の別の利点は、プリンタ動作をシミュレーション可能であるLUA仮想マシンを有するコンピュータ上で、LUAアプリケーションを走らせることが可能であるということが挙げられる。ユーザーは、アプリケーションをプリンタにダウンロードしてインストールする前に、開発したLUAアプリケーションをコンピューター上でテストすることが可能であり、これにより、LUAアプリケーションをテストするために実際にプリンタを動作させることが不要となる。
好適な実施形態において、複数の独立したLUA仮想マシンは、連結操作可能であり、また、これらは、ネットワーク上の一つのラベル/タグプリンタ108に実装することができる。この方法においては、例えば、地域的な設定や言語の設定等の種々のカスタマイズ設定に応じてデータを並べかえるバーコードプリンタに対して、設定可能な動的ローカル設定が実装可能である。種々のローカル設定は、特定のコンピュータシステムのオペレーティングシステム上に格納されてもよい。また、動作の変更は、例えば、このローカルの設定に依存してもよい。
LUAインタープリタを介してAPIを実装することにより、従来技術においてこれまで利用できたものに加えて、さらなる追加機能が提供される。好適な実施形態における追加のプリンタ機能及び改善された実装について以下に説明する。
好ましくは、一つの実施形態においては、プログラム関数呼び出し、及び、変数の宣言、アドレッシング、及び変数を介してのプログラム関数への値の受け渡し機能は、LUAの実装を介してサポートされる。好ましくは、プログラム関数は、関数が成功して完了したかどうかを現すエラーコードのような値を返す。例えば、関数が意図したように実行されなかった場合、エラーの原因、エラーの症状、エラーの結果、又はその他の適切な情報を現すエラーコードを返す。好ましくは、テーブル名、文字列の値、日付、数値等の関数名や変数名はユーザーに積極的には表示されない。又は、少なくとも、一部又は全てを隠して表示を行ってもよい。
セキュリティの実装は、例えば、ユーザーが特定のデータや、一つ以上のデータディレクトリにアクセスしたり、又は、データディレクトリやデータファイル等を作成、消去、又は改変する、といった種々のタスクを実行するための十分な認証やアクセス許可権を持っていることを要求すること等は、ここに記載している技術によりサポートされるのが望ましい。
APIによりサポートされる別の特徴は、インターフェースのレンダリング機能である。ここで使われている「レンダリング」という意味は、一般に、対話式プログラミングオブジェクトの作成を示す。例えば、レンダリングされたオブジェクトは、データフィールド(テキストベースのフィールド)、バーコード、グラフィックフィールドとして形成されてもよい。これらレンダリングされたオブジェクトは、例えば、メソッドのようなもので操作できる一つ以上の特性を有している。好ましくは、APIによりレンダリングされたオブジェクト(例えば、テキストフィールド、バーコード、及び、グラフィックフィールド)には、ラベルオブジェクトが備えられ(例えば付加される、又は埋め込まれる)、これは、ラベル/タグプリンタ108を介して供給される。
さらに、APIは、エラーを出すことなしに、ラベルの開発中、又はラベルの印刷中、又はその両方の処理中において、少なくともその一部が、ラベル/タグプリンタ108のプリント可能領域の外側にあるラベル上に位置するバーコードのようなオブジェクトの供給をサポートする。この特徴により、例えば、ラベル/タグプリンタ108により、半分しか印刷されないバーコードを有するラベルを開発することが可能となる。この特徴により、ユーザーが部分的、又は不完全なオブジェクト、例えば、バーコードをラベル/タグプリンタ108を使用して、ラベル上に印刷したい場合において、従来技術の方法に対する改善点となっている。
実施形態において、及び動作中において、レンダリングされたオブジェクト、例えば、テキストフィールド、バーコード、グラフィックボックス、画像等の各位置は、水平、及び、垂直位置パラメータ(例えば、「hPos」及び「vPos」)により定義される。このパラメータ値は、オブジェクトの固定点の位置を定義することが好ましい。パラメータhPos及びvPosが適切に設定された場合、あるエラーパラメータ(例えば「E_SUCCESS」)が定義される。また、パラメータhPos及びvPosが適切に設定されなかった場合、違うエラーパラメータ(例えば「EPARAM」)が定義される。
位置決めを定義するためのパラメータに加えて、本発明は、オブジェクト、例えば、バーコードや画像オブジェクトの倍率をサポートする。例えば、水平及び垂直倍率パラメータ(例えば、「hMag」及び「vMag」)は、水平及び垂直ピクセル倍率を設定するために定義されており(例えば、1〜12倍)、これにより、オブジェクトの水平及び垂直倍率の程度を現す。
図3は、好適な実施形態により提供される、ラベル/タグプリンタ108をのインターフェースするための関連するAPI302を示すブロック図である。図3に示すように、キーボードAPI304は、ラベル/タグプリンタ108に統合されたキーボード110からの信号を受信及び、解釈(読み込み)する働きを行う。又は、キーボードAPI304は、ラベル/タグプリンタ108に直接結合されていない外部キーボード又は他の入力デバイス212からの信号を読み込んで解釈する働きを行う。ディスプレイAPI306は、様々なテキスト、及び図形コンテンツを、プリンタ108に統合された表示ディスプレイ112に書き込む働きを行う。又は、ディスプレイAPI306は、テキスト、及び図形コンテンツを、ラベル/タグプリンタ108に付属した外部表示ディスプレイ214に書き込む働きを行う。ディスプレイAPI306は、例えば、様々な違った種類の文字言語のためのフォントや符号化方式を広く選択できるようにサポートするのが望ましい。
引き続き図3を参照して説明する。印刷レンダリングAPI308は、ラベル/タグプリンタ108により印刷されるラベル上に出力されるユーザー定義のデータフィールド要素をサポートする。このようなデータフィールド要素の例として、テキストデータフィールド、一次元及び二次元バーコード、線と長方形、三角関数、画像、個々のピクセル、図形、書式付き日付、及びカウント値が上げられる。プリンタレンダリングAPI308により、ユーザーは、データーフィールドの型、及び、特定のラベル及びタグ上に出力するデータフィールドの位置を定義することができる。プリンタレンダリングAPI308により、様々な言語をサポートするフォント及び符号化方式のための選択可能なオプションが提供されることが望ましい。固定長及び可変長データ形式がサポートされていることが望ましく、これは、フィールド定義に含まれるか、又は、プリンタレンダリングAPI308を介して、ファイル又は通信インターフェースから入力される。その他の特徴として、上記の一つ以上のフィールドオブジェクトの色を定義するための選択可能色出力オプションをサポートすることが挙げられる。さらに、白紙や印刷されたラベル/タグを出力するために、印刷レンダリングAPI308の関数として、一つ以上の印刷命令又は給紙命令を発行することが可能である。さらに、印刷レンダリングAPI308により、ユーザーが選択可能な印刷品質制御機能が提供されることが望ましい。
さらに、コンパクトフラッシュ(登録商標)メモリカード、SDメモリカード、USBメモリ機器等である、ラベル/タグプリンタ108の読み込み専用メモリファイルシステム、ランダムアクセスメモリファイルシステム、フラッシュメモリファイルシステム、又は、外部メモリ源のうち、少なくとも一つに置かれたファイルについて、ユーザーは、格納、消去、読み込み及び書き込みの操作が可能となるようにするため、ファイルシステムAPI310が備えられることが望ましい。ラベル/タグプリンタ108に付随した種々の内部及び外部メモリ源に格納されたデータやファイル等にアクセスする手段をユーザーに提供したことにより、ユーザーは、より柔軟に、ラベル/タグプリンタ108の動作の制御及び操作を行うことができる。ファイルシステムAPI310に関連して提供される望ましい機能の例としては、ラベル/タグプリンタ108のファイルシステムのフォーマット、登録するディレクトリの階層の決定、特定のディレクトリへの移動、新しいディレクトリの作成、ファイルのコピー、ディレクトリ又はファイルの消去、ファイルシステムにおいて使用するバイト又は使用可能なバイトの決定、及び、ファイル又はディレクトリへのアクセス権の変更が挙げられる。
引き続き図3を参照して説明する。無線識別(RFID)API312は、ラベル/タグプリンタ108に備えられたRFIDチップ/インレイ(内部構成部材)への読み込み及び書き込みのためのアクセスをサポートする。さらに、リアルタイムクロックAPI314により、ユーザーは、日時データを定義し、また、日時データをラベル/タグプリンタ108から読み込むことを可能としている。コンフィギュレーションAPI316は、ユーザー定義のプリンタに特定のパラメータをサポートするものである。例えば、コンフィギュレーションAPI316を使用することにより、ユーザーは、印刷スピード、印刷品質、日時機能、現地言語設定、メニュー制御等に関連した通信パラメータを定義することができる。一般にラベル/タグプリンタ108に備えられたファームウェアに限定され、特別なソフトウェアと技能を持った技術的な熟練者にのみ改変可能であるようなラベル/タグプリンタ108の制御動作をユーザーが定義及び改変できるようにするのに、コンフィギュレーションAPI316は特に有用である。また、コミュニケーションAPI318は、外部I/Oインターフェース機器との通信を制御することが望ましい。複数の通信プロトコルと仕様がサポートされる。サポートされる通信プロトコルと仕様の例として、RS232、RS485、RS422、USB、LAN、WAN、WLAN、及び外部デジタルリレーインターフェースが挙げられる。
図3に示すその他のAPI302として、プリンタに含まれるデバイスを制御する働きを行うデバイスAPI320、ある時点のプリンタの状態を報告する働きを行うプリンタステータスAPI322、ラベル/タグプリンタ108に送られたXML命令、及び/又は、XMLファイルのような命令、及び/又は、ファイルの構文解析を行う働きをするパーサーAPI324が挙げられる。構文解析が行われると、XML命令は、インタープリトすることが可能となり、ラベル/タグプリンタ108による出力を制御するのに使用することができる。
デバイスAPI320、プリンタステータスAPI322、及びパーサーAPI324に加えて、API302は、種々の用紙機能をサポートするためのペーパーハンドリングAPI326を有することが望ましい。この機能として、ラベル及びタグの一つ以上の用紙サイズについて、印刷給紙、用紙送り、行送り、テスト送り等が挙げられる。さらに、ラベル/タグプリンタ108に備えられるベル、ブザーやその他の音声装置に対する音声制御機能を提供するサウンドAPI328が挙げられる。さらに、ラベル/タグプリンタ108に備えられるラベルギャップセンサーやラベルマークセンサー等のセンサー機器からの情報を受信する働きを行い、また、ラベルの末端に達した時点、インクリボンの末端に達した時点、ラベルやインクリボンの末端に近づた時点等の種々の条件を判断する働きを行うセンサーAPI330が挙げられる。ある実施形態において、センサーAPI330は、一つ以上の条件が発生したと判断された時に警告を発する働きをする。図3に示されるその他のAPI302として、ラベル/タグプリンタ108に起こった種々のイベントを受信し処理するイベントAPI332、必要に応じてデータのビット操作を行う働きをするビットハンドリングAPI334、ラベル/タグプリンタ108に起きるかもしれないエラー、例えば、停電、メモリーエラー、用紙詰まり等を処理する働きをするエラーハンドリングAPI336が挙げられる。
したがって、好適な実施形態においては、例えば、LUAプログラミング言語やCプログラミング言語で複数のAPI302が開発され、インタープリターが既存の制御言語、例えば、SBPLやZPLを介して印刷機能にアクセスすることなく、それらをラベル/タグプリンタ108に実装することができる。一つ以上の実施形態において、図3に示したAPI302に加えて、種々のその他の機能を実装することが想定できる。例えば、開発を迅速及び容易にするため、テーブル及び/又は、メタテーブルを複製する機能をサポートする。その他の例としては、エラーコード値をエラー文字列値の結果で決定する機能(例えば、err2str)、一つ以上の書式(例えば、XML、LUA、及びその他の形式)でテーブルを保存する機能、複数の書式で提供されたテーブルをロードする機能、及び、メニュー及びプロンプト用の複数の書き言葉や話し言葉をサポートする機能等が挙げられる。
図4は、好適な実施形態において提供されるものであり、API302を使用して定義されたものである、ラベル/タグプリンタ108により印刷された例のラベル400を示す。図4に示すように、印刷されたテキストデータの向き及び位置に関わらず、アンカーポイント402は、ラベル400上のテキストデータの左上位置(例えば、hMag及びvMag変数で定義される)に定義されている。また、図4には、ラベル400がラベル/タグプリンタ108により印刷される時のラベル400の給紙方向404が示されている。ラベル400上に印刷されたテキストデータに加えて、図形画像406がレンダリングAPI308により、レンダリングされる等して提供される。
図5は、ラベル400に提供するデータフィールド500用に定義されたデータフィールドサイズの例を示し、また、データフィールド500の左上隅の水平及び垂直位置(例えば、hPos及びvPos)502、及び、右下隅位置504の水平及び垂直位置をそれぞれ示す。さらに、データ方向関数506(例えば、dir(0,.359))は、それがラベル400上に出力される時の、データフィールド500の相対的な向きを示す。
図6は、好適な実施形態において提供されるものであり、API302を使用して定義されたものである、ラベル/タグプリンタ108により印刷された他の例のラベル600を示す。これは、。図6に示す例のラベル600において、複数の色602、604、及び606がラベル600上に、それぞれの位置608に供給されているのが示されている。したがって、ここに示すように、LUA APIは、LUAインタプリタを介してAPIを解釈することにより、ラベル/タグプリンタ108のファームウェアとLUAインタプリタと共同して動作するインターフェースであり、顧客は、好ましい印刷動作を実行するLUAアプリケーションプログラムを作成することができる。
図7を参照して説明する。好適な実施形態において、ラベル/タグプリンタ108は、2つの種類のメモリ、すなわち、フラッシュメモリ702とシンクロナスDRAM(SDRAM)704が備えられる。フラッシュメモリ702(ROMの代わりとして用いるのが望ましい)は、その他の適当なデータのうち、ラベル/タグプリンタ108の立ち上げコード、基本ファームウェア(例えば、ドライバやバーコード書式等)、LUA API及び、LUA仮想マシン等を格納する。本技術においてよく知られているように、フラッシュメモリ702に格納された立ち上げコードは、プリンタ108の立ち上がり処理において動作する。好適な実施形態において、ラベル/タグプリンタ108の基本ファームウェア及びLUA APIは、圧縮された形式でフラッシュメモリ702に格納されており、よって、フラッシュメモリ702のメモリ容量を節約できる。
ラベル/タグプリンタ108の立ち上げ処理前においては、SDRAM704は、空きスペースを大きくしておき、また、データをすぐ受信できるようにしておくことが望ましい。図8に示すように、ラベル/タグプリンタ108が立ち上がる時、ラベル/タグプリンタ108のファームウェア、LUA API、及び、LUA仮想マシンはフラッシュメモリ702に圧縮形式で格納されていることが望ましい。立ち上げ処理が完了した後、このファームウェア、LUA API,及び、LUA仮想マシンは、圧縮を解かれ、非圧縮形式で、SDRAM704に供給される。この後、ラベル/タグプリンタ108の基本ファームウェア、ドライバ、バーコードデータ、ラベル書式、パーサー、画像バッファ、及びその他のデータは、動作させるため、適宜、一時的にSDRAM704に格納される。
図9を参照すると、LUA仮想マシンは、SDRAM704を介して、プリンタ108のファームウェア、LUA API、及びパーサーと結合して動作することが好ましい。好ましい実施形態において、ラベル/タグプリンタ108は、印刷動作のみにおいてはフラッシュメモリ702に依存せず、その代わり、SDRAM704に格納された非圧縮のデータと命令を介して動作する。SDRAM704は、フラッシュメモリ702よりもより高速かつ効率的に動作し、かつ、SDRAM704は、印刷動作完了後、非圧縮のデータと命令を消去できるので、本実施形態は、一般の典型的な従来技術によるシステム及び方法より好ましい。
図9及び10を参照すると、印刷動作中、ここで述べたものと結びついたLUA APIは、LUA仮想マシンを介して動作し、ラベル/タグプリンタ108のバッファに格納されたラベル画像やその他のオブジェクトを出力するためのラベル/タグプリンタ108のファームウェアをインターフェースする。ラベル/タグプリンタ108は、好ましくはLUA APIを介して定義されている複数の入力源から指示命令(例えば、LUA APIを介して)及び/又は、データを受信できることが望ましい。例えば、データはスキャンすることができ、また、タイピングすることができ、又は、入力装置212、通信ポート、ネットワークインターフェース208等の任意の適切な入力ポートを介して供給、及び受信することが可能であってよい。
以上、説明及び主張し、かつ、添付図面にて示したように、ラベル/タグプリンタ108により与えられる機能性は、プリンタ108のファームウェアとインターフェースするAPI302の機能として、向上、改変、又は追加されることが好ましい。アプリケーションは、LUAプログラミング言語等の高度なプログラミング言語を用いて定義されることが好ましく、これにより、各個人が、特定のプリンタモデルのファームウェアの専用プログラミング言語に精通する必要が無くなり、かつ、このプリンタのファームウェアを改変するための専用の開発ツールに触れる必要が無くなる。よって、プリンタにおいて、プリンタ専用のインタープリタ言語を用いることにより、アプリケーションそのものを書く必要なく、アプリケーション開発を行うことが可能となる。
本発明は、その特定の実施形態に関連して説明及び表現したが、本技術の当業者においては、その他多くの変形、及び改変及び使用は、当然、明白な事であろう。それゆえ、ここで開示した特定の事例にのみ、本発明を制限するものではない。
好ましい実施形態において、ラベル/タグプリンタ108のアプリケーションは、LUAプログラミング言語で開発される。好適な実施形態において、アプリケーションに備えられたLUAプログラミングステートメントの実行を機能することができるように機能するLUAインタープリタが備えられる。一般の高度プログラミング言語と違って、LUAは、スクリプト言語であり、基本的なプログラミング言語ではない。種々の機能を実行させるようなSBPL命令や又は、その他の予め定義された命令を受けるような一般のラベル/タグプリンタとは違って、本発明は、LUA言語の拡張である、プリンタファームウェアとインターフェースし、また、LUAインタープリタにより解釈されるプリンタAPIを実装するものである。これにより、関数呼び出しを介すること等により、より高度で複雑なアプリケーションを開発することが可能になる。さらに、従来のラベル/タグプリンタでは、一箇所の変更点を実装するために、対応するファームウェアアプリケーションを完全に上書きする必要があったが、LUAプログラミング言語の拡張機能であるAPIを実装することにより、ラベル/タグプリンタ108の機能を部分的に改変することが可能となった。
好ましい実施形態において、ラベル/タグプリンタ108のアプリケーションは、LUAプログラミング言語で開発される。好適な実施形態において、アプリケーションに備えられたLUAプログラミングステートメントの実行を機能することができるように機能するLUAインタープリタが備えられる。一般の高度プログラミング言語と違って、LUAは、スクリプト言語であり、基本的なプログラミング言語ではない。種々の機能を実行させるようなSBPL命令や又は、その他の予め定義された命令を受ける一般のラベル/タグプリンタとは違って、本発明は、LUA言語の拡張である、プリンタファームウェアとインターフェースし、また、LUAインタープリタにより解釈されるプリンタAPIを実装するものである。これにより、関数呼び出しを介すること等により、より高度で複雑なアプリケーションを開発することが可能になる。さらに、従来のラベル/タグプリンタでは、一箇所の変更点を実装するために、対応するファームウェアアプリケーションを完全に上書きする必要があったが、LUAプログラミング言語の拡張機能であるAPIを実装することにより、ラベル/タグプリンタ108の機能を部分的に改変することが可能となった。

Claims (26)

  1. 印刷動作を制御するファームウェアを備えたプリンタの機能性を修正するための方法であって、
    コンピュータ可読媒体上で実行されたときに前記プリンタのファームウェアと連動し前記プリンタの機能性を修正する第1プログラミングコードを作成するステップであって、
    前記第1プログラミングコードが第1プログラミング言語で記述され、
    さらに前記ファームウェアが前記第1プログラミング言語以外の第2プログラミング言語で記述されているステップと、
    前記第1プログラミングコードを前記コンピュータ可読媒体上で実行し、前記第1プログラミングコードを前記ファームウェアと連動させるステップと、
    前記プリンタの機能性を、前記第1プログラミングコードの実行および前記ファームウェアとの連動に応じて修正するステップであって、
    前記ファームウェアが前記連動によって修正されないステップと、を含んでなる方法。
  2. 前記プリンタが、ラベルアンドタグプリンタである請求項1に記載の方法。
  3. 前記第1プログラミング言語が、スクリプト言語である請求項1に記載の方法。
  4. 前記スクリプト言語が、LUAである請求項3に記載の方法。
  5. 前記第1プログラミングコードの実行が、LUA仮想マシンでの前記第1プログラミングコードの解釈をさらに含む請求項4に記載の方法。
  6. 前記第1プログラミングコードが、少なくとも一つのアプリケーションプログラムインターフェースを含む請求項1に記載の方法。
  7. 前記少なくとも一つのアプリケーションプログラムインターフェースが、キーボードアプリケーションプログラムインターフェース、ディスプレイアプリケーションプログラムインターフェース、プリントレンダリングアプリケーションプログラムインターフェース、ファイルシステムアプリケーションプログラムインターフェース、無線ICタグアプリケーションプログラムインターフェース、リアルタイムクロックアプリケーションプログラムインターフェース、コンフィギュレーションアプリケーションプログラムインターフェース、コミュニケーションアプリケーションプログラムインターフェース、デバイスアプリケーションプログラムインターフェース、プリンタステータスアプリケーションプログラムインターフェース、XMLパーシングアプリケーションプログラムインターフェース、ペーパーハンドリングアプリケーションプログラムインターフェース、サウンドアプリケーションプログラムインターフェース、センサーアプリケーションプログラムインターフェース、イベントアプリケーションプログラムインターフェース、ビットハンドリングアプリケーションプログラムインターフェース、およびエラーハンドリングアプリケーションプログラムインターフェースのうち、一つまたはそれ以上を含む請求項6に記載の方法。
  8. 前記第1プログラミングコードが、前記プリンタ以外のコンピュータデバイス上でテスト可能である請求項1に記載の方法。
  9. 前記第1プログラミングコードが、統合開発環境において作成される請求項1に記載の方法。
  10. プリンタの機能性を修正するためのシステムであって、
    前記プリンタの機能性を有したプリンタと、
    第1プログラミング言語で記述され、前記プリンタ上で実行されるときに印刷動作を制御する前記プリンタを備えたファームウェアと、
    前記第1プログラミング言語以外の第2プログラミング言語で記述され、コンピュータ可読媒体上で実行可能である第1プログラミングコードと、
    前記第1プログラミングコードはプリンタの機能性を修正するコマンドを含み、
    前記第1プログラミングコードが実行されるコンピュータ可読媒体と、を含んでなるシステムであって、
    前記第1プログラミングコードが前記コンピュータ可読媒体上で実行されるとき前記第1プログラミングコードと前記ファームウェアとが前記プリンタの機能性を修正するために連動するステップと、
    さらに前記ファームウェアが、前記第1プログラミングコードと前記ファームウェアとの前記連動によって修正されないステップと、を含んでなるシステム。
  11. 前記プリンタが、ラベルアンドタグプリンタである請求項10に記載のシステム。
  12. 前記第2プログラミング言語が、スクリプト言語である請求項10に記載のシステム。
  13. 前記スクリプト言語が、LUAである請求項12に記載のシステム。
  14. 前記第1プログラミングコードの実行が、LUA仮想マシンでの前記第1プログラミングコードの解釈をさらに含む請求項10に記載のシステム。
  15. 前記第1プログラミングコードが、少なくとも一つのアプリケーションプログラムインターフェースを含む請求項10に記載のシステム。
  16. 前記少なくとも一つのアプリケーションプログラムインターフェースが、キーボードアプリケーションプログラムインターフェース、ディスプレイアプリケーションプログラムインターフェース、プリントレンダリングアプリケーションプログラムインターフェース、ファイルシステムアプリケーションプログラムインターフェース、無線ICタグアプリケーションプログラムインターフェース、リアルタイムクロックアプリケーションプログラムインターフェース、コンフィギュレーションアプリケーションプログラムインターフェース、コミュニケーションアプリケーションプログラムインターフェース、デバイスアプリケーションプログラムインターフェース、プリンタステータスアプリケーションプログラムインターフェース、XMLパーシングアプリケーションプログラムインターフェース、ペーパーハンドリングアプリケーションプログラムインターフェース、サウンドアプリケーションプログラムインターフェース、センサーアプリケーションプログラムインターフェース、イベントアプリケーションプログラムインターフェース、ビットハンドリングアプリケーションプログラムインターフェース、およびエラーハンドリングアプリケーションプログラムインターフェースのうち、一つまたはそれ以上を含む請求項15に記載のシステム。
  17. 前記第1プログラミングコードが、ファームウェアなしで記述される請求項10に記載のシステム。
  18. 前記第1プログラミングコードを作成するための統合開発環境をさらに含む請求項10に記載のシステム。
  19. 印刷動作を制御するファームウェアを備えたプリンタの機能性を修正する方法であって、
    コンピュータ可読媒体上で実行されたときに前記プリンタのファームウェアと連動し前記プリンタの機能性を修正する第1プログラミングコードを作成するステップであって、
    前記第1プログラミングコードが第1プログラミング言語で記述され、
    さらに前記ファームウェアが前記第1プログラミング言語以外の第2プログラミング言語で記述されているステップと、
    前記第1プログラミングコードと前記ファームウェアとが圧縮した形式で前記プリンタに備えられている第1メモリ上に保存されるステップと、
    前記プリンタを起動させたとき圧縮された前記第1プログラミングコードと前記ファームウェアとを前記プリンタに備えられている第2メモリに展開するステップと、
    前記第1プログラミングコードと前記ファームウェアとを前記第2メモリ上で実行し、前記第1プログラミングコードを前記ファームウェアと連動させるステップと、
    前記プリンタの機能性を、前記第1プログラミングコードの実行および前記ファームウェアとの連動に応じて修正するステップであって、
    前記ファームウェアが前記連動によって修正されないステップと、を含んでなる方法。
  20. 前記第1メモリが、フラッシュメモリである請求項19に記載の方法。
  21. 前記第2メモリが、SDRAMである請求項19に記載の方法。
  22. プリンタの機能性を修正するためのシステムであって、
    前記プリンタの機能性を有したプリンタと、
    第1プログラミング言語で記述され、前記プリンタ上で実行されるときに印刷動作を制御する前記プリンタを備えたファームウェアと、
    前記第1プログラミング言語以外の第2プログラミング言語で記述され、コンピュータ可読媒体上で実行可能である第1プログラミングコードと、
    前記第1プログラミングコードはプリンタの機能性を修正するコマンドを含み、
    前記第1プログラミングコードと前記ファームウェアとが圧縮した形式で保存される第1メモリと、
    前記第1プログラミングコードと前記ファームウェアとが実行される第2メモリとを含んでなるシステムであって、
    前記プリンタを起動させたとき前記第1メモリ内の圧縮された前記第1プログラミングコードと前記ファームウェアとを前記第2メモリに展開するステップと、
    前記第1プログラミングコードと前記ファームウェアとが前記第2メモリ上で実行されるとき前記第1プログラミングコードと前記ファームウェアとが前記プリンタの機能性を修正するために連動するステップと、
    さらに前記ファームウェアが、前記第1プログラミングコードと前記ファームウェアとの前記連動によって修正されないステップと、を含んでなるシステム。
  23. 前記第1メモリが、フラッシュメモリである請求項22に記載のシステム。
  24. 前記第2メモリが、SDRAMである請求項22に記載のシステム。
  25. 印刷動作を制御するファームウェアを備えたプリンタの機能性を修正する方法であって、
    コンピュータ可読媒体上で実行されたときに前記プリンタのファームウェアと連動し前記プリンタの機能性を修正する第1プログラミングコードを作成するステップであって、
    前記第1プログラミングコードが第1プログラミング言語で記述され、
    さらに前記ファームウェアが前記第1プログラミング言語以外の第2プログラミング言語で記述されているステップと、
    前記第1プログラミングコードが、前記プリンタに備えられている第1メモリ上に記憶されるステップと、
    前記第1プログラミングコードと前記ファームウェアとを前記第2メモリ上で実行し、前記第1プログラミングコードを前記ファームウェアと連動させるステップと、
    前記プリンタの機能性を、前記第1プログラミングコードの実行および前記ファームウェアとの連動に応じて修正するステップであって、
    前記ファームウェアが前記連動によって修正されないステップと、を含んでなる方法。
  26. プリンタの機能性を修正するためのシステムであって、
    前記プリンタの機能性を有したプリンタと、
    第1プログラミング言語で記述され、前記プリンタ上で実行されるときに印刷動作を制御する前記プリンタを備えたファームウェアと、
    前記第1プログラミング言語以外の第2プログラミング言語で記述され、コンピュータ可読媒体上で実行可能である第1プログラミングコードと、
    前記第1プログラミングコードはプリンタの機能性を修正するコマンドを含み、
    前記第1プログラミングコードが保存される第1メモリと、
    前記第1プログラミングコードと前記ファームウェアとが実行される第2メモリとを含んでなるシステムであって、
    前記第1プログラミングコードと前記ファームウェアとが前記第2メモリ上で実行されるとき前記第1プログラミングコードと前記ファームウェアとが前記プリンタの機能性を修正するために連動するステップと、
    さらに前記ファームウェアが、前記第1プログラミングコードと前記ファームウェアとの前記連動によって修正されないステップと、を含んでなるシステム。
JP2010542472A 2008-10-27 2008-10-27 プログラムスクリプト言語を用いたラベル/タグプリンタapi Active JP5693235B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/069839 WO2010050037A1 (en) 2008-10-27 2008-10-27 Label printer api using program scripting language

Publications (2)

Publication Number Publication Date
JP2012507060A true JP2012507060A (ja) 2012-03-22
JP5693235B2 JP5693235B2 (ja) 2015-04-01

Family

ID=42128415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010542472A Active JP5693235B2 (ja) 2008-10-27 2008-10-27 プログラムスクリプト言語を用いたラベル/タグプリンタapi

Country Status (10)

Country Link
US (1) US9870522B2 (ja)
EP (1) EP2349729A4 (ja)
JP (1) JP5693235B2 (ja)
KR (1) KR101505660B1 (ja)
CN (1) CN102202904B (ja)
AU (1) AU2008363368B2 (ja)
CA (1) CA2741595C (ja)
HK (1) HK1162409A1 (ja)
NZ (1) NZ591880A (ja)
WO (1) WO2010050037A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014008679A (ja) * 2012-06-29 2014-01-20 Ishida Co Ltd 印字装置および印字方法
EP2947565A2 (en) 2014-04-10 2015-11-25 Fujitsu Ltd. Function extension method and terminal device

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5518904B2 (ja) 2009-06-08 2014-06-11 サトーホールディングス株式会社 印刷装置へランタイムプログラミングコードを導入するためのシステム及び方法
JP5383516B2 (ja) * 2010-01-06 2014-01-08 キヤノン株式会社 画像形成装置及びそのファームウェア更新方法、並びにプログラム
AU2010345994A1 (en) * 2010-02-10 2012-08-23 Kabushiki Kaisha Sato Chishiki Zaisan Kenkyusyo System and method for printer emulation
GB2478750A (en) * 2010-03-16 2011-09-21 Domino Printing Sciences Plc Configurable marking apparatus
US8910115B2 (en) * 2012-04-02 2014-12-09 Kony Solutions, Inc. Systems and methods for application development
CN102819579B (zh) * 2012-07-25 2014-12-10 珠海金山网络游戏科技有限公司 一种采用包机制的lua脚本文件管理方法
WO2015116176A1 (en) * 2014-01-31 2015-08-06 Hewlett-Packard Development Company, L.P. Device provided script to convert command
US20160182604A1 (en) * 2014-12-19 2016-06-23 Zih Corp. Method for enabling communication between a user device browser and a local device
WO2016117096A1 (ja) * 2015-01-22 2016-07-28 富士通株式会社 アプリケーション機能拡張方法、アプリケーション機能拡張プログラム、及びアプリケーション機能拡張装置
EP3377987A4 (en) * 2015-11-20 2019-04-17 Hewlett-Packard Development Company, L.P. XML FILE COMPRESSION
KR102536637B1 (ko) * 2018-03-29 2023-05-26 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
CN108874376B (zh) * 2018-06-19 2021-09-07 北京智明星通科技股份有限公司 函数和类的导出方法及装置、终端和计算机可读存储介质
CN109254740A (zh) * 2018-08-31 2019-01-22 北京京东尚科信息技术有限公司 打印方法、系统和电子设备
CN113687832B (zh) * 2021-10-27 2022-03-04 上海捷勃特机器人有限公司 机器人程序的存储及编译方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046469A (ja) 2002-07-11 2004-02-12 Canon Inc 周辺装置
JP2005284384A (ja) * 2004-03-26 2005-10-13 Canon Inc 画像処理装置、画像処理制御方法、及びプログラム
JP2006268467A (ja) * 2005-03-24 2006-10-05 Canon Inc 画像処理装置
JP2006302275A (ja) * 2006-04-10 2006-11-02 Canon Inc 画像形成装置、制御方法、制御プログラム
JP2007066271A (ja) * 2005-09-02 2007-03-15 Canon Inc 情報処理装置及びその制御方法、データ処理装置、並びにプログラム
JP2007251976A (ja) * 2007-04-09 2007-09-27 Canon Inc 画像処理装置、画像処理装置の制御方法、プログラム、及びコンピュータ読み取り可能な記憶媒体
JP2008109416A (ja) * 2006-10-26 2008-05-08 Konica Minolta Business Technologies Inc 画像処理装置及びプログラム
JP2008176674A (ja) * 2007-01-22 2008-07-31 Kyocera Mita Corp 電子機器、サービス提供方法及びプログラム
JP2008204270A (ja) * 2007-02-21 2008-09-04 Ricoh Co Ltd 画像形成装置、リソース管理方法、およびプログラム
JP2008225882A (ja) * 2007-03-13 2008-09-25 Seiko Epson Corp 電子機器

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833626A (en) * 1986-10-14 1989-05-23 International Business Machines Corporation Optimizing printer throughput
JPH01153132A (ja) 1987-12-11 1989-06-15 Olympus Optical Co Ltd 内視鏡用挿入補助具
US5483624A (en) * 1992-03-27 1996-01-09 Monarch Marking Systems, Inc. Programmable hand held labeler
US5526469A (en) * 1994-06-14 1996-06-11 Xerox Corporation System for printing image data in a versatile print server
US5805777A (en) * 1995-10-11 1998-09-08 Eastman Kodak Company Extended printer control interface
US6057858A (en) * 1996-08-07 2000-05-02 Desrosiers; John J. Multiple media fonts
US5754748A (en) 1996-09-13 1998-05-19 Lexmark International, Inc. Download of interpreter to a printer
US6146030A (en) * 1997-03-21 2000-11-14 Intermec Ip Corporation Method and apparatus for printing laminated bar code symbols and other symbols suffering from specular reflection distortions
JPH11282684A (ja) 1998-03-27 1999-10-15 Canon Inc 画像処理装置、画像処理装置の制御方法、および記憶媒体
JPH11306107A (ja) 1998-04-20 1999-11-05 Ricoh Co Ltd ネットワーク通信システムおよびネットワーク通信システムにおける周辺機器のソフトウェア更新・配布方法並びにその方法をコンピュータに実行させるプログラムを記録した機械読み取り可能な記録媒体
JPH11313213A (ja) * 1998-04-27 1999-11-09 Canon Inc 情報処理装置、情報処理方法及び媒体
US6400471B1 (en) * 1999-02-11 2002-06-04 Flashpoint Technology, Inc. Flexible architecture for image processing
US7472910B1 (en) * 1999-03-30 2009-01-06 Canon Kabushiki Kaisha Animation display apparatus, arcade game machine, control method and apparatus thereof, and storage medium
WO2001030581A1 (en) 1999-10-29 2001-05-03 Zih Corporation Printer programming tool and method
US6525835B1 (en) * 1999-12-15 2003-02-25 Pitney Bowes Inc. Method and system for parcel label generation
JP4254052B2 (ja) * 2000-01-04 2009-04-15 コニカミノルタビジネステクノロジーズ株式会社 出力システム及びそれに用いる出力方法並びに出力システムにおいて実行されるプログラムを記録した記録媒体
US8359405B1 (en) * 2000-02-28 2013-01-22 John Border Performance enhancing proxy and method for enhancing performance
CN1639716A (zh) * 2000-03-28 2005-07-13 邮票商业公司 用于在线、多包裹、多承运人、多服务包裹退货运输处理的装置、系统和方法
US6906812B2 (en) * 2000-04-14 2005-06-14 Seiko Epson Corporation Symbol printer, symbol printing method, symbol printer driver, and a data storage medium storing a symbol printing program
US7286250B2 (en) * 2000-04-27 2007-10-23 Canon Kabushiki Kaisha Print control apparatus and method, and print system
US6847466B1 (en) * 2000-04-27 2005-01-25 Hewlett-Packard Development Company, L.P. Printing method
US7712024B2 (en) * 2000-06-06 2010-05-04 Microsoft Corporation Application program interfaces for semantically labeling strings and providing actions based on semantically labeled strings
US6990441B1 (en) * 2000-10-02 2006-01-24 Bolme Paul A Natural language messages from a keystroke output wedge
JP2002236577A (ja) * 2000-11-17 2002-08-23 Canon Inc 印刷処理における自動認証方法及びそのシステム
EP1255227A1 (en) * 2001-04-27 2002-11-06 STMicroelectronics Limited Vertices index processor
US20020186393A1 (en) * 2001-06-11 2002-12-12 Pochuev Denis A. Document printing using format-specific translation modules
JP2003035594A (ja) 2001-07-23 2003-02-07 Ishida Co Ltd 商品情報処理システムおよび情報処理装置
US7076530B2 (en) * 2001-08-31 2006-07-11 Thomson Licensing Multiple function modem including external memory adapter
JP4101004B2 (ja) 2001-09-14 2008-06-11 株式会社リコー 画像形成装置
JP4001531B2 (ja) * 2001-09-21 2007-10-31 株式会社リコー 画像形成装置
US7355739B2 (en) * 2001-09-14 2008-04-08 Ricoh Company, Ltd. Image forming device having a memory assignment unit
CN100389428C (zh) * 2001-10-24 2008-05-21 Nik软件公司 用于利用图像基准点处理数字图像的方法和设备
JP4227342B2 (ja) 2002-02-27 2009-02-18 キヤノン株式会社 画像形成装置、画像形成方法、および記憶媒体
US7426549B2 (en) * 2002-05-31 2008-09-16 Hewlett-Packard Development Company, L.P. Mechanism for sharing web-based imaging information from a mainframe computing environment
US7283268B2 (en) * 2002-07-11 2007-10-16 Paxar Corporation Printer with interpreter
JP4066747B2 (ja) 2002-08-29 2008-03-26 株式会社村田製作所 測定装置
US7106472B2 (en) * 2002-10-31 2006-09-12 Hewlett-Packard Development Company, L.P. Print driver for an extended printing device
US7145682B2 (en) * 2002-12-20 2006-12-05 Hewlett-Packard Development Company, L.P. Temporary printer firmware upgrade
JP2004312711A (ja) * 2003-03-25 2004-11-04 Ricoh Co Ltd 画像形成装置及び画像形成装置を遠隔のアプリケーションにより操作する方法
US7139005B2 (en) * 2003-09-13 2006-11-21 Microsoft Corporation Optimized fixed-point mathematical library and graphics functions for a software-implemented graphics rendering system and method using a normalized homogenous coordinate system
JP3793197B2 (ja) * 2003-12-03 2006-07-05 キヤノン株式会社 情報処理装置、情報処理方法、情報処理プログラム並びに記憶媒体
US7382400B2 (en) * 2004-02-19 2008-06-03 Robert Bosch Gmbh Image stabilization system and method for a video camera
US20050237556A1 (en) * 2004-04-06 2005-10-27 Watkins Rex D Printer input device having intelligent and non-intelligent modes
US20050262497A1 (en) * 2004-05-19 2005-11-24 Microsoft Corporation System and method for generating embedded resource updates for output device
JP2006085291A (ja) * 2004-09-14 2006-03-30 Fuji Xerox Co Ltd 情報処理装置及びアプリケーションプログラム
US7458894B2 (en) * 2004-09-15 2008-12-02 Microsoft Corporation Online gaming spectator system
US20060106629A1 (en) * 2004-11-16 2006-05-18 Cohen Mark N Record transfer
CN100422923C (zh) * 2004-11-23 2008-10-01 国际商业机器公司 增强便携式装置的显示输出能力的设备和方法
JP4591148B2 (ja) * 2005-03-25 2010-12-01 富士ゼロックス株式会社 機能変換装置、機能変換方法、機能変換プログラム、デバイスデータ生成装置、デバイスデータ生成方法、及びデバイスデータ生成プログラム
JP4407594B2 (ja) * 2005-08-17 2010-02-03 富士ゼロックス株式会社 複合機
US7872668B2 (en) * 2005-08-26 2011-01-18 Nvidia Corporation Video image processing with programmable scripting and remote diagnosis
JP4832226B2 (ja) * 2005-09-16 2011-12-07 株式会社リコー 機器、情報処理方法、情報処理プログラム、及び記録媒体
US9141374B2 (en) * 2005-09-16 2015-09-22 Ricoh Company, Ltd. Image forming device, information processing method, information processing program, and recording medium
JP4612903B2 (ja) * 2006-10-24 2011-01-12 キヤノン株式会社 映像再生装置およびその制御方法
JP2008276478A (ja) * 2007-04-27 2008-11-13 Brother Ind Ltd タグラベル編集装置及びタグラベル作成装置
EP2201500A4 (en) * 2007-09-21 2013-01-02 Silverbrook Res Pty Ltd CODING PATTERN WITH DATA ELEMENT DECODING THROUGH MULTIMIPULAR POSITION MODULATION
US7979260B1 (en) * 2008-03-31 2011-07-12 Symantec Corporation Simulating PXE booting for virtualized machines
US8941673B2 (en) * 2011-11-08 2015-01-27 Red Hat, Inc. Rendering images in a remote web browser

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046469A (ja) 2002-07-11 2004-02-12 Canon Inc 周辺装置
JP2005284384A (ja) * 2004-03-26 2005-10-13 Canon Inc 画像処理装置、画像処理制御方法、及びプログラム
JP2006268467A (ja) * 2005-03-24 2006-10-05 Canon Inc 画像処理装置
JP2007066271A (ja) * 2005-09-02 2007-03-15 Canon Inc 情報処理装置及びその制御方法、データ処理装置、並びにプログラム
JP2006302275A (ja) * 2006-04-10 2006-11-02 Canon Inc 画像形成装置、制御方法、制御プログラム
JP2008109416A (ja) * 2006-10-26 2008-05-08 Konica Minolta Business Technologies Inc 画像処理装置及びプログラム
JP2008176674A (ja) * 2007-01-22 2008-07-31 Kyocera Mita Corp 電子機器、サービス提供方法及びプログラム
JP2008204270A (ja) * 2007-02-21 2008-09-04 Ricoh Co Ltd 画像形成装置、リソース管理方法、およびプログラム
JP2008225882A (ja) * 2007-03-13 2008-09-25 Seiko Epson Corp 電子機器
JP2007251976A (ja) * 2007-04-09 2007-09-27 Canon Inc 画像処理装置、画像処理装置の制御方法、プログラム、及びコンピュータ読み取り可能な記憶媒体

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014008679A (ja) * 2012-06-29 2014-01-20 Ishida Co Ltd 印字装置および印字方法
EP2947565A2 (en) 2014-04-10 2015-11-25 Fujitsu Ltd. Function extension method and terminal device
US9749423B2 (en) 2014-04-10 2017-08-29 Fujitsu Limited Function extension method and terminal device

Also Published As

Publication number Publication date
KR20110088521A (ko) 2011-08-03
US20110209137A1 (en) 2011-08-25
KR101505660B1 (ko) 2015-03-24
CA2741595A1 (en) 2010-05-06
US9870522B2 (en) 2018-01-16
JP5693235B2 (ja) 2015-04-01
AU2008363368A1 (en) 2010-05-06
NZ591880A (en) 2013-12-20
HK1162409A1 (en) 2012-08-31
CA2741595C (en) 2018-05-15
CN102202904A (zh) 2011-09-28
EP2349729A4 (en) 2012-09-05
EP2349729A1 (en) 2011-08-03
AU2008363368B2 (en) 2015-09-24
CN102202904B (zh) 2014-12-31
WO2010050037A1 (en) 2010-05-06

Similar Documents

Publication Publication Date Title
JP5693235B2 (ja) プログラムスクリプト言語を用いたラベル/タグプリンタapi
KR100838871B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 기억 매체
JP5518904B2 (ja) 印刷装置へランタイムプログラミングコードを導入するためのシステム及び方法
KR100820849B1 (ko) 디바이스 드라이버를 커스터마이즈하는 정보 처리장치,정보 처리방법, 및 기억매체
KR101443304B1 (ko) 프린터 에뮬레이션을 위한 시스템 및 방법
JP4812093B2 (ja) 情報処理装置、情報処理装置の制御方法、情報処理方法、プログラムおよび記憶媒体
US8687004B2 (en) Font file with graphic images
JP5727067B2 (ja) 印刷装置へランタイムプログラミングコードを導入するためのシステム及び方法
JP2006309725A (ja) デバイスドライバをカスタマイズする情報処理装置、方法、記憶媒体
Roof et al. Producing Reports
AU2015201583A1 (en) System and method for printer emulation

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110905

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130321

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20130418

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131001

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131008

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20140110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150203

R150 Certificate of patent or registration of utility model

Ref document number: 5693235

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110715

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20110203

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250