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

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

Info

Publication number
JP5693235B2
JP5693235B2 JP2010542472A JP2010542472A JP5693235B2 JP 5693235 B2 JP5693235 B2 JP 5693235B2 JP 2010542472 A JP2010542472 A JP 2010542472A JP 2010542472 A JP2010542472 A JP 2010542472A JP 5693235 B2 JP5693235 B2 JP 5693235B2
Authority
JP
Japan
Prior art keywords
label
tag printer
modifying
firmware
functionality
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.)
Active
Application number
JP2010542472A
Other languages
English (en)
Other versions
JP2012507060A (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 Holdings Corp
Original Assignee
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 Holdings Corp filed Critical Sato Holdings Corp
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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Description

本発明は、一般にプリンタに関するものであり、より具体的には、ラベル/タグプリンタのファームウェアとのインターフェースを提供することにより、プリンタの性能を向上させるものである。
ほとんどのラベル/タグプリンタは、従来、予め定義されている専用の制御言語を介して動作する。例えば、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プログラミング言語等の高度なプログラミング言語を用いて定義されることが好ましく、これにより、各個人が、特定のプリンタモデルのファームウェアの専用プログラミング言語に精通する必要が無くなり、かつ、このプリンタのファームウェアを改変するための専用の開発ツールに触れる必要が無くなる。よって、プリンタにおいて、プリンタ専用のインタープリタ言語を用いることにより、アプリケーションそのものを書く必要なく、アプリケーション開発を行うことが可能となる。
本発明は、その特定の実施形態に関連して説明及び表現したが、本技術の当業者においては、その他多くの変形、及び改変及び使用は、当然、明白な事であろう。それゆえ、ここで開示した特定の事例にのみ、本発明を制限するものではない。

Claims (14)

  1. 印刷動作を制御するためのファームウェアを備えたラベル/タグプリンタの機能性を改変する方法であり、この方法は、
    第1プログラミングコードの開発であり、この第1プログラミングコードは、コンピュータ読み取り可能な媒体で実行されると、前記ラベル/タグプリンタのファームウェアは、複数の機能とインターフェースを可能とした複数のアプリケーションプログラミングインターフェースを有し、前記ラベル/タグプリンタのバーコードを半分だけ印字する等の前記ラベル/タグプリンタに関する様々な機能性を改変するものであり、
    前記第1プログラミングコードは、スクリプト言語で書かれ、かつ、前記ファームウェアは、専用プログラミング言語で書かれたものである、
    第1プログラミングコードを開発し、
    前記コンピュータ読み取り可能な媒体上で前記第1プログラミングコードを実行し、前記複数のアプリケーションプログラミングインターフェースを介して前記第1プログラミングコードを前記ファームウェアとインターフェースさせ、
    前記第1プログラミングコードを実行し、前記ファームウェアと前記複数のアプリケーションプログラミングインターフェースを介してインターフェースすることにより、前記ラベル/タグプリンタの前記様々な機能性を改変し、
    前記ファームウェアは、前記第1プログラミングコードと前記インターフェースすることによっては改変されないものである、ラベル/タグプリンタの機能性を改変する方法。
  2. 請求項1に記載のラベル/タグプリンタの機能性を改変する方法において、
    前記スクリプト言語はLUAであること、
    を特徴とするラベル/タグプリンタの機能性を改変する方法。
  3. 請求項2に記載のラベル/タグプリンタの機能性を改変する方法において、
    前記スクリプト言語を実行する動作は、LUA仮想マシンにおいて、前記第1プログラミングコードを解釈する動作をさらに有すること、
    を特徴とするラベル/タグプリンタの機能性を改変する方法。
  4. 請求項1に記載のラベル/タグプリンタの機能性を改変する方法において、
    前記第1プログラミングコードは、前記ラベル/タグプリンタ以外のコンピュータデバイス上でテスト可能であること、
    を特徴とするラベル/タグプリンタの機能性を改変する方法。
  5. ラベル/タグプリンタの機能性を改変するためのシステムであり、このシステムは、
    印刷機能を有するラベル/タグプリンタと、
    スクリプト言語で書かれ、かつ、コンピュータ読み取り可能な媒体で実行可能であ、印刷機能を改変するための命令を含むものである、第1プログラミングコードと、
    専用プログラミング言語で書かれ、かつ、前記ラベル/タグプリンタ上で実行されると、印刷動作の制御を行う、ファームウェアと、
    前記第1プログラミングコードが実行されるコンピュータ読み取り可能な媒体、から構成され、
    前記第1プログラミングコードは、前記コンピュータ読み取り可能な媒体上で実行されると、前記ラベル/タグプリンタのバーコードを半分だけ印字する等の前記ラベル/タグプリンタに関する様々な機能性を改変されるようにするために、前記ファームウェアは、複数の機能とインターフェースを可能とした複数のアプリケーションプログラミングインターフェースを有し、かつ、前記ファームウェアは、前記第1プログラミングコードによる前記ファームウェアとの前記インターフェースでは改変されないものである、ラベル/タグプリンタの機能性を改変するためのシステム。
  6. 請求項5に記載のラベル/タグプリンタの機能性を改変するためのシステムにおいて、
    前記スクリプト言語はLUAであること、
    を特徴とするラベル/タグプリンタの機能性を改変するためのシステム。
  7. 請求項6に記載のラベル/タグプリンタの機能性を改変するためのシステムにおいて、
    前記スクリプト言語を実行する動作は、LUA仮想マシンにおいて、前記第1プログラミングコードを解釈する動作をさらに有すること、
    を特徴とするラベル/タグプリンタの機能性を改変するためのシステム。
  8. 請求項5に記載のラベル/タグプリンタの機能性を改変するためのシステムにおいて、
    前記第1プログラミングコードは、ファームウェアなしで書かれること、
    を特徴とするラベル/タグプリンタの機能性を改変するためのシステム。
  9. 印刷動作を制御するためのファームウェアを備えたラベル/タグプリンタの機能性を改変する方法であり、この方法は、
    第1プログラミングコードの開発であり、この第1プログラミングコードは、コンピュータ読み取り可能な媒体で実行されると、前記ラベル/タグプリンタのファームウェアは、複数の機能とインターフェースを可能とした複数のアプリケーションプログラミングインターフェースを有し、前記ラベル/タグプリンタのバーコードを半分だけ印字する等の前記ラベル/タグプリンタに関する様々な機能性を改変するものであり、前記第1プログラミングコードは、スクリプト言語で書かれ、かつ、前記ファームウェアは、専用プログラミング言語で書かれたものである、
    前記第1プログラミングコードを開発し、
    前記第1プログラミングコードと前記ファームウェアを、前記ラベル/タグプリンタに備えられる第1メモリ上に、圧縮形式で格納し、
    前記ラベル/タグプリンタを立ち上げる時に、圧縮されている前記第1プログラミングコードと前記ファームウェアの圧縮を復元して、前記ラベル/タグプリンタに備えられる第2メモリへ渡し、
    前記第2メモリ上で前記第1プログラミングコードと前記ファームウェアとを実行し、前記複数のアプリケーションプログラミングインターフェースを介して前記第1プログラミングコードを前記ファームウェアとインターフェースし、
    前記第1プログラミングコードを実行して前記ファームウェアと前記複数のアプリケーションプログラミングインターフェースを介してインターフェースすることにより、前記ラベル/タグプリンタの前記様々な機能性を改変し、前記ファームウェアは、前記第1プログラミングコードと前記インターフェースすることによっては改変されないものである、ラベル/タグプリンタの機能性を改変する方法。
  10. 請求項9に記載のラベル/タグプリンタの機能性を改変する方法において、
    前記第1メモリは、フラッシュメモリであること、
    を特徴とするラベル/タグプリンタの機能性を改変する方法。
  11. 請求項9に記載のラベル/タグプリンタの機能性を改変する方法において、
    前記第2メモリは、SDRAMであること、
    を特徴とするラベル/タグプリンタの機能性を改変する方法。
  12. ラベル/タグプリンタの機能性を改変するためのシステムであり、このシステムは、
    印刷機能を有するラベル/タグプリンタと、
    スクリプト言語で書かれ、かつ、コンピュータ読み取り可能な媒体で実行可能であり、印刷機能を改変するための命令を含むものである、第1プログラミングコードと、
    専用プログラミング言語で書かれ、かつ、前記ラベル/タグプリンタ上で実行されると、印刷動作の制御を行う、ファームウェアと、
    前記第1プログラミングコードと前記ファームウェアが圧縮形式で格納される第1メモリと、
    前記第1プログラミングコードと前記ファームウェアが実行される第2メモリと、
    から構成され、
    前記ラベル/タグプリンタが立ち上げられるとき、前記第1メモリ内の圧縮された前記第1プログラミングコードと前記ファームウェアは、圧縮を復元されて、前記第2メモリへと渡され、
    前記第1プログラミングコードと前記ファームウェアが、前記第2メモリ上で実行される時、前記ラベル/タグプリンタの機能が改変されるようにするために、前記第1プログラミングコードと前記ファームウェアが有する複数の機能とインターフェースを可能とした複数のアプリケーションプログラミングインターフェースを有し、かつ、前記ファームウェアは、前記第1プログラミングコードが前記ファームウェアと前記インターフェースすることによっては改変されないものである、ラベル/タグプリンタの機能性を改変するためのシステム。
  13. 請求項12に記載のラベル/タグプリンタの機能性を改変するためのシステムにおいて、
    前記第1メモリはフラッシュメモリであること、
    を特徴とするラベル/タグプリンタの機能性を改変するためのシステム。
  14. 請求項12に記載のラベル/タグプリンタの機能性を改変するためのシステムにおいて、
    前記第2メモリはSDRAMであること、
    を特徴とするラベル/タグプリンタの機能性を改変するためのシステム。
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 JP2012507060A (ja) 2012-03-22
JP5693235B2 true 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)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ596755A (en) 2009-06-08 2014-03-28 Sato Chishiki Zaisan Kenkyusyo System and method for injecting run-time programming code in a printing device
JP5383516B2 (ja) * 2010-01-06 2014-01-08 キヤノン株式会社 画像形成装置及びそのファームウェア更新方法、並びにプログラム
US9436422B2 (en) * 2010-02-10 2016-09-06 Sato Holdings Kabushiki Kaisha System and method for printer emulation on a computing device not being connected to the printer
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
JP2014008679A (ja) * 2012-06-29 2014-01-20 Ishida Co Ltd 印字装置および印字方法
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
JP6488687B2 (ja) 2014-04-10 2019-03-27 富士通株式会社 機能拡張方法、機能拡張プログラム、及び端末装置
US12021917B2 (en) * 2014-12-19 2024-06-25 Zebra Technologies Corporation Method for enabling communication between a user device browser and a local device
WO2016117096A1 (ja) * 2015-01-22 2016-07-28 富士通株式会社 アプリケーション機能拡張方法、アプリケーション機能拡張プログラム、及びアプリケーション機能拡張装置
WO2017086989A1 (en) * 2015-11-20 2017-05-26 Hewlett-Packard Development Company, L.P. Xml file condensing
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 上海捷勃特机器人有限公司 机器人程序的存储及编译方法

Family Cites Families (68)

* 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
AU2919501A (en) 1999-10-29 2001-05-08 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
WO2001072109A2 (en) * 2000-03-28 2001-10-04 Stamps.Com Inc. Apparatus, systems and methods for online, multi-parcel, multi-carrier, multi-service parcel returns shipping management
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
US6847466B1 (en) * 2000-04-27 2005-01-25 Hewlett-Packard Development Company, L.P. Printing method
US7286250B2 (en) * 2000-04-27 2007-10-23 Canon Kabushiki Kaisha Print control apparatus and method, and print system
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 株式会社リコー 画像形成装置
US7355739B2 (en) * 2001-09-14 2008-04-08 Ricoh Company, Ltd. Image forming device having a memory assignment unit
JP4001531B2 (ja) * 2001-09-21 2007-10-31 株式会社リコー 画像形成装置
WO2003036558A1 (en) * 2001-10-24 2003-05-01 Nik Multimedia, Inc. User definable image reference points
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
JP2004046469A (ja) 2002-07-11 2004-02-12 Canon Inc 周辺装置
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
JP4164467B2 (ja) * 2004-03-26 2008-10-15 キヤノン株式会社 画像処理装置、画像処理制御方法、及びプログラム
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 国际商业机器公司 增强便携式装置的显示输出能力的设备和方法
JP2006268467A (ja) 2005-03-24 2006-10-05 Canon Inc 画像処理装置
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
JP2007066271A (ja) 2005-09-02 2007-03-15 Canon Inc 情報処理装置及びその制御方法、データ処理装置、並びにプログラム
US9141374B2 (en) * 2005-09-16 2015-09-22 Ricoh Company, Ltd. Image forming device, information processing method, information processing program, and recording medium
JP4832226B2 (ja) * 2005-09-16 2011-12-07 株式会社リコー 機器、情報処理方法、情報処理プログラム、及び記録媒体
JP4464363B2 (ja) 2006-04-10 2010-05-19 キヤノン株式会社 画像形成装置、制御方法、制御プログラム
JP4612903B2 (ja) * 2006-10-24 2011-01-12 キヤノン株式会社 映像再生装置およびその制御方法
JP4274227B2 (ja) * 2006-10-26 2009-06-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置及びプログラム
JP5011502B2 (ja) 2007-01-22 2012-08-29 京セラドキュメントソリューションズ株式会社 電子機器、サービス提供方法及びプログラム
JP2008204270A (ja) * 2007-02-21 2008-09-04 Ricoh Co Ltd 画像形成装置、リソース管理方法、およびプログラム
JP2008225882A (ja) 2007-03-13 2008-09-25 Seiko Epson Corp 電子機器
JP4551910B2 (ja) 2007-04-09 2010-09-29 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、プログラム、及びコンピュータ読み取り可能な記憶媒体
JP2008276478A (ja) * 2007-04-27 2008-11-13 Brother Ind Ltd タグラベル編集装置及びタグラベル作成装置
US8181885B2 (en) * 2007-09-21 2012-05-22 Silverbrook Research Pty Ltd Method of imaging a coding pattern having an orientation identified via a plurality of direction components
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

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5693235B2 (ja) プログラムスクリプト言語を用いたラベル/タグプリンタapi
JP5518904B2 (ja) 印刷装置へランタイムプログラミングコードを導入するためのシステム及び方法
KR100838871B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 기억 매체
KR101443304B1 (ko) 프린터 에뮬레이션을 위한 시스템 및 방법
JP4812093B2 (ja) 情報処理装置、情報処理装置の制御方法、情報処理方法、プログラムおよび記憶媒体
JP5361358B2 (ja) 情報処理装置およびその制御方法、並びにプログラム
US8687004B2 (en) Font file with graphic images
JP5532317B2 (ja) 画像形成制御プログラム、画像形成プログラム、及び画像形成設定情報のデータ構造
JP6089542B2 (ja) 印刷制御装置、印刷制御方法、及び、プログラム
JP5727067B2 (ja) 印刷装置へランタイムプログラミングコードを導入するためのシステム及び方法
JP4702948B2 (ja) デバイスドライバをカスタマイズする情報処理装置、方法、記憶媒体
JP2005085052A (ja) 携帯情報端末、印刷方法および印刷用プログラム
JP7271208B2 (ja) プログラム、および情報処理装置
JP2008217433A (ja) 情報処理装置、情報処理方法、プログラム、及び記憶媒体
JP2013097477A (ja) 印刷システム

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