JP6206521B2 - 印刷制御スクリプトおよびクライアント端末の制御方法 - Google Patents

印刷制御スクリプトおよびクライアント端末の制御方法 Download PDF

Info

Publication number
JP6206521B2
JP6206521B2 JP2016044287A JP2016044287A JP6206521B2 JP 6206521 B2 JP6206521 B2 JP 6206521B2 JP 2016044287 A JP2016044287 A JP 2016044287A JP 2016044287 A JP2016044287 A JP 2016044287A JP 6206521 B2 JP6206521 B2 JP 6206521B2
Authority
JP
Japan
Prior art keywords
character code
script
character
printing device
print control
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
JP2016044287A
Other languages
English (en)
Other versions
JP2016146190A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2016044287A priority Critical patent/JP6206521B2/ja
Publication of JP2016146190A publication Critical patent/JP2016146190A/ja
Application granted granted Critical
Publication of JP6206521B2 publication Critical patent/JP6206521B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、デバイスドライバーを用いることなくデバイスを動作させることができる印刷制御スクリプトおよびクライアント端末の制御方法に関する。
従来、この種の技術として、アプリケーションの実行要求を行うクライアント端末と、アプリケーションを実行するアプリケーション実行サーバーと、クライアント端末の印刷指令に基づいて印刷を行う印刷装置と、印刷装置を制御する印刷制御サーバーと、がネットワーク接続された印刷制御システムが知られている(特許文献1参照)。当該印刷制御システムでは、印刷制御サーバーが印刷装置のドライバー(以下、「印刷ドライバー」と称する)として機能するため、クライアント端末に印刷ドライバーをインストールすることなく、印刷装置を動作させることができる。
特開2009−15748号公報
ところで、上記特許文献1の印刷制御システムでは、印刷制御サーバーによって、アプリケーション実行サーバーで用いられる汎用文字コードを、印刷装置用の文字コードに変換している。このため、クライアント端末と印刷制御サーバー間がオフラインの場合、印刷装置を制御することができない。また、文字コードの変換を、印刷装置側で行うことも考えられるが、高い処理能力を必要とするため、適用可能な印刷装置が限られてしまう。
本発明は、上記の問題点に鑑み、ネットワークが切断された状況でもデバイスの制御が可能であり、且つ簡易な構成で文字コード変換を行い得る印刷制御スクリプトおよびクライアント端末の制御方法を提供することを目的とする。
本発明の印刷制御スクリプトは、クライアント端末のWebブラウザを用いて、Webサーバーから取得したWebページに組み込まれた印刷制御スクリプトであって、クライアント端末を、Webページに組み込まれたページ制御スクリプトにより印刷指示が受け付けられると、印刷制御スクリプトの文字コードであるスクリプト文字コードを、クライアント端末に接続された印刷装置の文字コードである印刷装置文字コードに変換する文字コード変換部と、変換後の印刷装置文字コードを含むコマンドを、印刷装置に送信するコマンド送信部と、印刷装置から応答情報を受信する応答情報受信部と、応答情報に含まれる印刷装置文字コードをスクリプト文字コードに変換する文字コード逆変換部と、として機能させるためのものであることを特徴とする。
上記の印刷制御スクリプトにおいて、スクリプト文字コードを印刷装置文字コードの順に格納した文字コード変換テーブルを作成するテーブル作成部をさらに備え、文字コード変換部は、文字コード変換テーブルを参照して変換を行うことを特徴とする。
上記の印刷制御スクリプトにおいて、テーブル作成部は、スクリプト文字コードを印刷装置文字コードの順に配列した印刷装置文字列に含まれる各文字と、当該印刷装置文字列の各文字の格納位置に基づいて算出した印刷装置文字コードと、を対応付けて、文字コード変換テーブルを作成することを特徴とする。
上記の印刷制御スクリプトにおいて、文字コード変換テーブルは、連想配列の添え字と要素の値、若しくはオブジェクトのプロパティの名称とプロパティの値、の対応関係を記憶していることを特徴とする。
記の印刷制御スクリプトにおいて、文字コード逆変換部は、印刷装置文字列から、印刷装置文字コードに基づいて算出した格納位置に存在するスクリプト文字コードを取り出すことにより、変換を行うことを特徴とする。
本発明のクライアント端末の制御方法は、Webブラウザを用いて、WebサーバーからWebページを取得するクライアント端末の制御方法であって、Webページに組み込まれた印刷制御スクリプトは、Webページに組み込まれたページ制御スクリプトにより印刷指示が受け付けられると、印刷制御スクリプトの文字コードであるスクリプト文字コードを、クライアント端末に接続された印刷装置の文字コードである印刷装置文字コードに変換する文字コード変換ステップと、変換後の印刷装置文字コードを含むコマンドを、印刷装置に送信するコマンド送信ステップと、印刷装置から応答情報を受信する応答情報受信ステップと、応答情報に含まれる印刷装置文字コードをスクリプト文字コードに変換する文字コード逆変換ステップと、を実行することを特徴とする。
上記のクライアント端末の制御方法において、印刷制御スクリプトは、スクリプト文字コードを印刷装置文字コードの順に格納した文字コード変換テーブルを作成するテーブル作成ステップをさらに実行することを特徴とする。
お、以下の構成としても良い。
本発明のデバイス制御装置は、標準のWebブラウザを備え、Webサーバーおよびデバイスと接続されたデバイス制御装置であって、Webブラウザを用いて、Webサーバーから、Webページと、デバイスを制御するためのデバイス制御スクリプトを取得するWebページ取得部と、Webブラウザを用いて、取得したWebページを表示し、デバイス制御スクリプトを実行するWebページ表示部と、デバイス制御スクリプトを用いて、当該デバイス制御スクリプトの文字コードであるスクリプト文字コードを、デバイス用の文字コードであるデバイス文字コードに変換する文字コード変換部と、デバイス制御スクリプトを用いて、変換後のデバイス文字コードを含むコマンドを、デバイスに送信するコマンド送信部と、を備えたことを特徴とする。
本発明のデバイス制御方法は、標準のWebブラウザを用いたデバイス制御方法であって、Webブラウザが、Webサーバーから、Webページと、デバイスを制御するためのデバイス制御スクリプトを取得するWebページ取得ステップと、取得したWebページを表示し、デバイス制御スクリプトを実行するWebページ表示ステップと、を実行し、デバイス制御スクリプトが、デバイス制御スクリプトの文字コードであるスクリプト文字コードを、デバイス用の文字コードであるデバイス文字コードに変換する文字コード変換ステップと、変換後のデバイス文字コードを含むコマンドを、デバイスに送信するコマンド送信ステップと、を実行することを特徴とする。
これらの構成によれば、プラグインやデバイスドライバーを必要とすることなく、標準のWebブラウザ(プラグインをサポートしていないノンプラグインWebブラウザ)で実行可能なデバイス制御スクリプトを用いて文字コードの変換を行うことができる。これにより、デバイス側で文字コード変換を行う必要がないため、高機能ではないデバイスを用いることができる。また、標準のWebブラウザを搭載した端末(スマートフォンやタブレット端末など)に、本発明を適用できる。また、デバイスドライバーが不要であるため、文字コード変換ライブラリーを、ハードウェアやOS(Operating System)ごとに用意する必要がなく、開発コストを削減できる。さらに、Webブラウザ(デバイス制御装置)にて文字コードの変換を行うため、Webサーバーとのネットワークがオフラインの場合でもデバイスを制御できる。特に、デバイス制御装置がオフライン状態でWebページを動作可能な機能(オフラインアプリケーション機能)を有している場合、Webサーバーに依存しない文字コード変換機能が役立つ。
上記のデバイス制御装置において、文字コード変換部は、文字コード変換テーブルを参照してコード変換を行い、デバイス制御スクリプトを用いて、文字コード変換テーブルを作成するテーブル作成部をさらに備えたことを特徴とする。
この構成によれば、文字コード変換テーブルを用いるため、少ない演算量でコード変換を行うことができる。また、テーブル作成部を備えているため、デバイスの文字コードセット(キャラクタセット)の種類に応じて、文字コード変換テーブルを作成することができる。つまり、種々の文字コードセットに対応できるため、デバイスの選択肢が広がる。
上記のデバイス制御装置において、テーブル作成部は、スクリプト文字をデバイス文字コード順に格納したデバイス文字列に含まれる各文字と、当該デバイス文字列の各文字の格納位置に基づいて算出したデバイス文字コードと、を対応付けて、文字コード変換テーブルを作成することを特徴とする。
この構成によれば、文字コード変換テーブルを「デバイス文字コード順に格納したデバイス文字列」で管理するため、デバイスの機種に合わせて、文字を容易に追加・削除することができる。つまり、デバイスの仕様書に記載される文字コード表の文字の順序は、デバイスの文字コード体系に従っているため、新しい機種に対応する場合など、その機種の仕様書を参照することで、「デバイス文字コード順に格納したデバイス文字列」を容易に作成することができる。
上記のデバイス制御装置において、文字コード変換テーブルは、連想配列の添え字と要素の値、若しくはオブジェクトのプロパティの名称とプロパティの値、の対応関係を記憶していることを特徴とする。
この構成によれば、スクリプトファイルを小容量とすることができる。これにより、大容量且つ複雑な処理を行うデバイス制御スクリプトを必要としないため、Webページの更新速度の低下や、ユーザーの操作に対する応答速度の低下を防ぐことができる。
上記のデバイス制御装置において、デバイス制御スクリプトを用いて、デバイスから応答情報を受信する応答情報受信部と、デバイス制御スクリプトを用いて、応答情報に含まれるデバイス文字コードをスクリプト文字コードに変換する文字コード逆変換部と、をさらに備えたことを特徴とする。
この構成によれば、デバイスから送信された応答情報(ステータスやエラー等)をスクリプト文字コードに逆変換するため、Webページに表示してユーザーに通知したり、メンテナンスや再操作の方法を促したりすることができる。また、Webサーバー等に、システムの稼働状況(動作ログ)を記録するためにも利用できる。
上記のデバイス制御装置において、文字コード逆変換部は、デバイス文字列から、デバイス文字コードに基づいて算出した格納位置に存在するスクリプト文字コードを取り出すことにより、コード変換を行うことを特徴とする。
この構成によれば、逆変換を行うための文字コード変換テーブルの記述を省略できるため、スクリプトファイルの容量をさらに小さくすることができる。
上記のデバイス制御装置において、デバイスは、印刷装置であり、デバイス制御スクリプトは、印刷制御スクリプトであることを特徴とする。
この構成によれば、本発明を、印刷装置を制御するための装置に適用できる。
本発明のデバイス制御システムは、上記のデバイス制御装置と、Webサーバーと、デバイスと、を備えたことを特徴とする。
本発明のプログラムは、コンピューターに、上記のデバイス制御方法における文字コード変換ステップおよびコマンド送信ステップを実行させることを特徴とする。
これらの構成によれば、ネットワークが切断された状況でもデバイス制御が可能であり、且つ簡易な構成で文字コード変換を行い得るデバイス制御システムおよびデバイス制御方法を実現できる。
本発明の一実施形態に係る印刷制御システムのシステム構成図である。 印刷制御システムの機能ブロック図である。 印刷装置文字列の一例、並びに印刷装置文字列に含まれる各文字と印刷装置文字コードの対応付けの一例を示す説明図である。 印刷処理を示すフローチャートである。 文字コード変換テーブル作成処理を示すフローチャートである。 文字コード変換処理(順方向変換処理,逆方向変換処理)を示すフローチャートである。
以下、添付の図面を参照して、本実施形態に係る印刷制御スクリプトおよびクライアント端末の制御方法について説明する。本実施形態では、クライアント端末に専用の印刷ドライバーをインストールすることなく、Webブラウザを用いて印刷装置を動作させることができる印刷制御システムを例示する。
図1は、印刷制御システムSY(デバイス制御システム)のシステム構成図である。同図に示すように、印刷制御システムSYは、Webサーバー1と、クライアント端末2(デバイス制御装置)と、印刷装置3(デバイス)と、から成る。Webサーバー1とクライアント端末2は、インターネット等のネットワークを介して接続される。また、クライアント端末2と印刷装置3は、有線/無線LAN等のネットワークを介して接続される。クライアント端末2は、例えば小売店のレジカウンターに設置されるPOS(Point Of Sales)端末であり、印刷装置3は、会計レシートを発行するレシートプリンターである。
なお、図1のシステム構成図では、Webサーバー1、クライアント端末2および印刷装置3が、それぞれ1台ずつの構成を示したが、これに限るものではなく、1台のWebサーバー1に対して複数台のクライアント端末2が接続されたり、1台のクライアント端末2に対して複数台の印刷装置3が接続されたりする構成であっても良い。
Webサーバー1は、制御部11、通信部12および記憶部13の他、一般的なコンピューターに搭載されるハードウェア構成を有している。制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)等により構成される。記憶部13は、例えばHDD(Hard Disk Drive)であり、HTTPサーバー15およびWebアプリケーション16を記憶している。
通信部12は、クライアント端末2(Webブラウザ27)と通信を行なうためのインターフェースである。このWebサーバー1とクライアント端末2との通信は、HTTPサーバー15によりHTTP(Hypertext Transfer Protocol)に基づいて行なわれる。すなわち、Webサーバー1は、クライアント端末2(Webブラウザ27)からのHTTPリクエストを受け付け、このHTTPリクエストに含まれるURL(Uniform Resource Locator)に基づいて、Webアプリケーション16が提供するWebページ40をクライアント端末2に送信する。
なお、詳細は後述するが、このWebページ40には、Webページ40自体を制御するためのページ制御スクリプト41(JavaScript(登録商標))と、印刷制御を行うための印刷制御スクリプト42(JavaScript(登録商標))が組み込まれている。クライアント端末2は、Webブラウザ27において(Webページ40の内部で)印刷制御スクリプト42を実行することにより、印刷処理を行う。
印刷装置3は、制御部31、通信部32、記憶部33および印刷機構34を備えている。制御部31は、CPU等を有し、印刷装置3全体を制御する。記憶部33は、例えば不揮発性メモリー(フラッシュROM等)であり、HTTPサーバー36を記憶している。
印刷機構34は、印刷ヘッド、用紙送り機構、用紙切断機構などを含み、制御部31の制御下で印刷動作を行う。なお、印刷方式は、インクジェット方式やレーザー方式など、その種類を問わない。
通信部32は、クライアント端末2(Webブラウザ27)と通信を行なうためのインターフェースである。この印刷装置3とクライアント端末2(Webブラウザ27)との通信は、HTTPサーバー36によりHTTPに基づいて行われる。すなわち、クライアント端末2から、印刷装置3に割り当てられたサービスエンドポイントアドレス(http://x.x.x.x/などのURI(Uniform Resource Identifier))に対して印刷データが送信されると、印刷装置3は当該印刷データを受信し、当該印刷データに基づいて、印刷機構34により印刷を実行する。
クライアント端末2は、制御部21、表示部22、通信部23、記憶部24および操作部25を備えている。制御部21は、CPU等を有し、クライアント端末2全体を制御する。
表示部22は、Webブラウザ27上に、当該Webブラウザ27により取得(ダウンロード)したWebページ40を表示したり、Webブラウザ27の操作に伴う各種通知画面や各種設定画面を表示する。操作部25は、Webブラウザ27で表示したWebページ40において、印刷指示等の各種操作を行うために用いられる。なお、表示部22と操作部25は、別々のハードウェアとして構成しても良いし、タッチパネルとして一体に構成しても良い。
通信部23は、Webサーバー1および印刷装置3と通信を行なうためのインターフェースである。上述のとおり、クライアント端末2は、Webブラウザ27を用いて、Webサーバー1および印刷装置3と通信を行なう。
記憶部24は、例えばHDDであり、Webブラウザ27を記憶している。このWebブラウザ27は、プラグインモジュールをサポートしない単機能ブラウザ(標準のブラウザ)である。制御部21は、このWebブラウザ27により、通信部23を介してWebサーバー1にアクセスし、Webアプリケーション16が提供するWebページ40を取得する。
Webページ40には、上述のとおり、ページ制御スクリプト41および印刷制御スクリプト42が組み込まれている。Webブラウザ27が、Webページ40に組み込まれたページ制御スクリプト41によりユーザーの印刷指示操作(印刷ボタンの押下等)を受付けると、同じくWebページ40に組み込まれた印刷制御スクリプト42を実行して文字コード変換処理を行い、印刷データを生成して、印刷装置3に(印刷装置3のサービスエンドポイントに対し)送信する。この印刷データの送信先となる印刷装置3のサービスエンドポイントアドレスは、印刷制御スクリプト42内で指定されている。
なお、上記クライアント端末2は、Webブラウザ27が動作するコンピューターであれば良く、例えば、スマートフォンやタブレット端末、パーソナルコンピューターなど、その種類を問わない。
次に、図2を参照し、印刷制御システムSYの機能構成(主に、Webブラウザ27および印刷制御スクリプト42によって実現される機能)について説明する。同図(a)は、Webブラウザ27の機能ブロック図である。Webブラウザ27は、主な機能構成として、Webページ取得部51およびWebページ表示部52を備えている。
Webページ取得部51は、Webサーバー1(Webアプリケーション16)にアクセスし、対象となるWebページ40(ページ制御スクリプト41および印刷制御スクリプト42が組み込まれたWebページ40)を取得する。
なお、Webページ40と印刷制御スクリプト42は、同時に取得するのではなく、個別に取得しても良い。また、先に取得したWebページ40に、後から取得した印刷制御スクリプト42を動的に組み込んでも良い。また、Webページ40と印刷制御スクリプト42を個別に取得する場合、Webページ40の取得元となるWebサーバー1と、印刷制御スクリプト42の取得元となるWebサーバー1は、必ずしも同一でなくても良い。
Webページ表示部52は、Webページ40を表示し、当該Webページ40に組み込まれたページ制御スクリプト41および印刷制御スクリプト42を実行する。
一方、図2(b)は、印刷制御スクリプト42の機能ブロック図である。印刷制御スクリプト42は、主な機能構成として、テーブル作成部61、文字コード変換部62、コマンド送信部63、応答情報受信部64および文字コード逆変換部65を備えている。
テーブル作成部61は、文字コード変換処理を行うための文字コード変換テーブル70を作成する(文字コード変換テーブル作成処理,図5参照)。具体的には、印刷制御スクリプト42の文字コードであるスクリプト文字コード(Unicode(登録商標)などの汎用文字コード)を、印刷装置3用の文字コードである印刷装置文字コード(デバイス文字コード)順に格納することにより、文字コード変換テーブル70を作成する。なお、以下の説明では、スクリプト文字コードを印刷装置文字コード順に配列したものを、「印刷装置文字列(デバイス文字列)」と称する。つまり、文字コード変換テーブル70は、印刷装置文字列に含まれる各文字と、当該印刷装置文字列の各文字の格納位置に基づいて算出した印刷装置文字コードと、を対応付けたものである。
図3(a)は、印刷装置文字列の一例を示す説明図である。同図パターン1では、ANKの文字コード順に並んだUnicode(登録商標)文字列を、印刷装置文字列とした例を示している。つまり、同図四角枠内に示す文字列が、印刷装置文字列である。また、同図パターン2では、シフトJISの文字コード順に並んだUnicode(登録商標)文字列を、印刷装置文字列とした例を示している。このように、印刷装置文字列は、文字コードセットの種類に応じて記述される。
また、文字コード変換テーブル70は、連想配列の添え字と要素の値、若しくはオブジェクトのプロパティの名称とプロパティの値、の対応関係を記憶している。図3(b)は、印刷装置文字列に含まれる各文字と、印刷装置文字コードの対応付けの一例を示す説明図である。同図パターン1では、Unicode(登録商標)文字列が「aウムラウト」の場合の、連想配列による対応付けを示している。同例において、符号81は連想配列、符号82は連想配列の添え字、符号83は連想配列の要素を示している。また、同図パターン2では、Unicode(登録商標)文字列が「aウムラウト」の場合の、オブジェクトのプロパティによる対応付けを示している。同例において、符号85はオブジェクト、符号86はオブジェクトのプロパティの名称、符号87はオブジェクトのプロパティの値を示している。
なお、テーブル作成部61は、作成した文字コード変換テーブル70を、WebストレージなどのAPI(Application Program Interface)を使用してストレージオブジェクトに保存する。これにより、同一ドメインにあるWebページ40を表示する場合、その文字コード変換テーブル70が消去されないため(Webストレージに保存されるため)、Webページ40を表示するたびに文字コード変換テーブル70を作成する必要がない。つまり、テーブル作成部61は、初めてWebページ40を表示したときのみ、文字コード変換テーブル70を作成する。
図2の説明に戻る。文字コード変換部62は、文字コード変換テーブル70を参照し、スクリプト文字コードを印刷装置文字コードに変換する(順方向変換処理,図6(a)参照)。コマンド送信部63は、変換後の印刷装置文字コードを含むコマンド(例えば、印刷装置文字コードにESC/POSコマンドを付加したもの)を、印刷装置3に送信する。
応答情報受信部64は、印刷装置3から、ステータスやエラー情報を含む応答情報を受信する。文字コード逆変換部65は、応答情報に含まれる印刷装置文字コードをスクリプト文字コードに変換する(逆方向変換処理,図6(b)参照)。具体的には、文字コード変換テーブル70(印刷装置文字列)から、印刷装置文字コードに基づいて算出した格納位置に存在するスクリプト文字コードを取り出すことにより、コード変換を行う。
次に、図4のフローチャートを参照し、印刷処理の一連の流れについて説明する。クライアント端末2(Webブラウザ27)は、Webサーバー1からWebページ40を取得すると(S01)、これを表示部22に表示し、印刷制御スクリプト42を実行する(S02)。印刷制御スクリプト42は、初めて表示したWebページ40であるか否かを判別し(S03)、初めてであると判定した場合は(S03:Yes)、文字コード変換テーブル作成処理を行う(S04)。一方、初めてではないと判定した場合は(S03:No)、S04を省略し、ユーザーからの印刷指示の有無を判別する(S05)。
ユーザーからの印刷指示があった場合は(S05:Yes)、順方向変換処理を行う(S06)。つまり、スクリプト文字コードを印刷装置文字コードに変換する。また、変換後の印刷装置文字コードを含むコマンドを印刷装置3に送信する(S07)。その後、印刷装置3から応答情報を受信し(S08)、当該応答情報の逆方向変換処理を行う(S09)。つまり、印刷装置文字コードをスクリプト文字コードに変換する。最後に、Webブラウザ27は、変換後の応答情報(スクリプト文字コード)を、Webページ40に表示する(S10)。これにより、印刷装置3のステータスやエラー情報をユーザーに通知し、レシート用紙の補充など印刷装置3のメンテナンスや、再印刷などの対応を促すことができる。また、S10と並行して、変換後の応答情報を、Webサーバー1に通知し、システムの稼働状況(動作ログ)をWebサーバー1内に記録しても良い。
次に、図5のフローチャートを参照し、文字コード変換テーブル作成処理について説明する。当該フローチャートは、図4のS04に相当するサブフローチャートである。印刷制御スクリプト42は、スクリプト文字を、印刷装置文字コードのコード順に並べることにより、印刷装置文字列を作成する(S21)。つまり、図3(a)の四角枠に示したように、印刷装置3に対応する文字コードセット(ANK文字コードセット(パターン1)、シフトJIS文字コードセット(パターン2))に応じた印刷装置文字列(スクリプト文字列)を作成する。
続いて、印刷装置文字列に含まれる各文字と、各文字の格納位置を対応付ける(S22)。つまり、各文字のインデックス(印刷装置文字列内における順位)に0x80を加算したものを、各文字の格納位置として対応付ける。最後に、S22の対応付け結果を、文字コード変換テーブル70に格納する(S23)。「対応付け結果」とは、図3(b)の四角枠に示したような、連想配列の添え字と要素の値の対応付け(パターン1)、若しくはオブジェクトのプロパティの名称とプロパティの値の対応付け(パターン2)を指す。
次に、図6のフローチャートを参照し、文字コード変換処理について説明する。図6(a)に示す順方向変換処理は、図4のS06に相当するサブフローチャートである。印刷制御スクリプト42は、変換対象となるスクリプト文字を取得すると(S31)、当該スクリプト文字を、取得したスクリプト文字の格納位置に対応する印刷装置文字コードに変換する(S32)。例えば、印刷装置文字列として、図3(a)のパターン1に示すスクリプト文字列を作成した場合であって、スクリプト文字「aウムラウト」を取得した場合、印刷装置文字列の中で4番目に位置するため、印刷装置文字コード「0x84(4番目+0x80=0x84)」に変換する。
一方、図6(b)は、逆方向変換処理を示すフローチャートであり、図4のS09に相当する。印刷制御スクリプト42は、変換対象となる印刷装置文字コード(応答情報)を取得すると(S41)、当該印刷装置文字コードを、その格納位置に格納されているスクリプト文字に変換する(S42)。例えば、印刷装置文字列として、図3(a)のパターン1に示すスクリプト文字列を作成した場合であって、印刷装置文字コード「0x84」を取得した場合は、印刷装置文字列の中の4番目(0x84−0x80=4番目)のスクリプト文字「aウムラウト」に変換する。
以上説明したとおり、本実施形態によれば、プラグインや印刷ドライバーを用いることなく、標準のWebブラウザ27で実行可能な印刷制御スクリプト42を用いて、文字コードの変換を行うことができる。これにより、プラグインをサポートしていないWebブラウザ27を搭載した端末において、簡易なコード変換を実現できる。また、印刷ドライバーが不要であるため、文字コード変換ライブラリーを、ハードウェアやOSごとに用意する必要がなく、開発コストを削減できる。さらに、Webブラウザ27にて文字コードの変換を行うため、Webサーバー1とのネットワークが切断された状態場合でも、印刷装置3を制御することができる。特に、クライアント端末2が、オフライン状態でWebページ40を動作可能なAPIをサポートしている場合、Webサーバー1にアクセスすることなくコード変換を行い得るため、本発明の適用が有用である。また、Webブラウザ27にてコード変換を行うため、印刷装置3のスペックを問わない(低スペックの印刷装置3でも導入できる)。
また、印刷制御スクリプト42は、テーブル作成機能を有しているため、印刷装置3の文字コードセットに応じた文字コード変換テーブル70を作成することができる。また、文字コード変換テーブル70は、スクリプト文字を印刷装置文字コード順に格納した印刷装置文字列で管理するため、印刷装置3の機種に合わせて、文字を容易に追加・削除することができる。また、文字コード変換テーブル70を用いることで、1文字の文字コード変換処理(順方向変換処理および逆方向変換処理)に必要な計算量を、最良の場合でオーダーO(1)とすることができる。つまり、本実施形態では、データ量=文字コード変換テーブル70の文字数、計算量=文字コード変換に必要な処理ステップであり、文字コード変換テーブル70の文字数が増えても、文字コード変換に必要な処理ステップは増えない。したがって、文字コード変換テーブル70の文字数が増えても、Webページ40の更新速度が低下したり、ユーザーの操作に対する応答速度が低下したりする虞がない。
また、印刷制御スクリプト42は、印刷装置3から送信された応答情報の逆変換機能も有しているため、応答情報をWebページ40に表示してユーザーに通知したり、メンテナンスや再操作の方法を促したりすることができる。また、逆変換する際も文字コード変換テーブル70を利用できるため(順方向変換処理と逆方向変換処理で2種類の変換テーブルを必要としないため)、スクリプトファイルの更なる小容量化を図ることができる。
なお、上記の実施形態において、テーブル作成部61は、初めてWebページ40を表示したときだけ文字コード変換テーブル70を作成したが、Webページ40を表示する都度、文字コード変換テーブル70を作成しても良い。この構成によれば、Webストレージなど、データをWebブラウザ27に保存する機能を有しない場合でも、支障なく動作させることができる。すなわち、Webページ40を移動または更新すると、Webブラウザ27がスクリプトの実行を中止し、スクリプトの実行状態や変数を破棄するが、Webページ40の表示ごとに文字コード変換テーブル70を作成するため、問題はない。
また、上記に示した印刷制御システムSYの各構成要素(Webブラウザ27、印刷制御スクリプト42など)をプログラムとして提供することが可能である。また、そのプログラムを各種記録媒体(CD−ROM、フラッシュメモリ等)に格納して提供することも可能である。すなわち、コンピューターを印刷制御システムSYの各構成要素として機能させるためのプログラム、およびそれを記録した記録媒体も、本発明の権利範囲に含まれる。
また、上記の実施形態では、デバイスとして印刷装置3(レシートプリンター)を例示したが、レシートプリンター以外の印刷装置(例えば、ラベルライターなど)にも、本発明を適用可能である。また、印刷装置3以外に、文字コード変換を必要とする種々の電子機器に適用しても良い。例えば、表示装置を備えた組み込み機器をデバイスとして適用することが考えられる。特に、文字コード変換をデバイス自身で行うことができない低スペック機器への適用が望ましい。主な用途は、設定変更(表示・記録内容の変更)で、クライアント端末2(Webブラウザ27)を設定用端末として使用する。具体的な適用機器としては、POS(Point Of Sales)関連機器の場合、カスタマディスプレー、カードリーダーライター、ハンディスキャナー、電子POP、電子棚札、オーダーディスプレーなどが挙げられる。また、業務用機器の場合、自動販売機、電光掲示板、空調機器、厨房機器、防犯装置などが挙げられる。さらに、民生機器の場合、映像機器、音響機器、デジタル家電(液晶テレビ、レコーダー、デジタルカメラなど)、電話機、時計などが挙げられる。
また、上記の実施形態では、スクリプトの一例として、JavaScript(登録商標)を例示したが、これ以外の各種プログラミング言語を用いた場合でも本発明を適用可能である。その他、本発明の要旨を逸脱しない範囲で、適宜変更が可能である。
1…Webサーバー 2…クライアント端末 3…印刷装置 15…HTTPサーバー 16…Webアプリケーション 27…Webブラウザ 40…Webページ 42…印刷制御スクリプト 51…Webページ取得部 52…Webページ表示部 61…テーブル作成部 62…文字コード変換部 63…コマンド送信部 64…応答情報受信部 65…文字コード逆変換部 70…文字コード変換テーブル SY…印刷制御システム

Claims (7)

  1. クライアント端末のWebブラウザを用いて、Webサーバーから取得したWebページに組み込まれた印刷制御スクリプトであって、
    前記クライアント端末を、
    前記Webページに組み込まれたページ制御スクリプトにより印刷指示が受け付けられると、前記印刷制御スクリプトの文字コードであるスクリプト文字コードを、前記クライアント端末に接続された印刷装置の文字コードである印刷装置文字コードに変換する文字コード変換部と、
    変換後の前記印刷装置文字コードを含むコマンドを、前記印刷装置に送信するコマンド送信部と、
    前記印刷装置から応答情報を受信する応答情報受信部と、
    前記応答情報に含まれる前記印刷装置文字コードを前記スクリプト文字コードに変換する文字コード逆変換部と、として機能させるための印刷制御スクリプト。
  2. 前記スクリプト文字コードを前記印刷装置文字コードの順に格納した文字コード変換テーブルを作成するテーブル作成部をさらに備え、
    前記文字コード変換部は、前記文字コード変換テーブルを参照して変換を行うことを特徴とする請求項1に記載の印刷制御スクリプト。
  3. 前記テーブル作成部は、前記スクリプト文字コードを前記印刷装置文字コードの順に配列した印刷装置文字列に含まれる各文字と、当該印刷装置文字列の各文字の格納位置に基づいて算出した前記印刷装置文字コードと、を対応付けて、前記文字コード変換テーブルを作成することを特徴とする請求項2に記載の印刷制御スクリプト。
  4. 前記文字コード変換テーブルは、連想配列の添え字と要素の値、若しくはオブジェクトのプロパティの名称とプロパティの値、の対応関係を記憶していることを特徴とする請求項3に記載の印刷制御スクリプト。
  5. 前記文字コード逆変換部は、前記印刷装置文字列から、前記印刷装置文字コードに基づいて算出した格納位置に存在する前記スクリプト文字コードを取り出すことにより、変換を行うことを特徴とする請求項3または4に記載の印刷制御スクリプト。
  6. Webブラウザを用いて、WebサーバーからWebページを取得するクライアント端末の制御方法であって、
    前記Webページに組み込まれた印刷制御スクリプトは、
    前記Webページに組み込まれたページ制御スクリプトにより印刷指示が受け付けられると、前記印刷制御スクリプトの文字コードであるスクリプト文字コードを、前記クライアント端末に接続された印刷装置の文字コードである印刷装置文字コードに変換する文字コード変換ステップと、
    変換後の前記印刷装置文字コードを含むコマンドを、前記印刷装置に送信するコマンド送信ステップと、
    前記印刷装置から応答情報を受信する応答情報受信ステップと、
    前記応答情報に含まれる前記印刷装置文字コードを前記スクリプト文字コードに変換する文字コード逆変換ステップと、を実行することを特徴とするクライアント端末の制御方法。
  7. 前記印刷制御スクリプトは、
    前記スクリプト文字コードを前記印刷装置文字コードの順に格納した文字コード変換テーブルを作成するテーブル作成ステップをさらに実行することを特徴とする請求項に記載のクライアント端末の制御方法。
JP2016044287A 2016-03-08 2016-03-08 印刷制御スクリプトおよびクライアント端末の制御方法 Active JP6206521B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016044287A JP6206521B2 (ja) 2016-03-08 2016-03-08 印刷制御スクリプトおよびクライアント端末の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016044287A JP6206521B2 (ja) 2016-03-08 2016-03-08 印刷制御スクリプトおよびクライアント端末の制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011277330A Division JP5903871B2 (ja) 2011-12-19 2011-12-19 デバイス制御装置、デバイス制御システム、デバイス制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2016146190A JP2016146190A (ja) 2016-08-12
JP6206521B2 true JP6206521B2 (ja) 2017-10-04

Family

ID=56686510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016044287A Active JP6206521B2 (ja) 2016-03-08 2016-03-08 印刷制御スクリプトおよびクライアント端末の制御方法

Country Status (1)

Country Link
JP (1) JP6206521B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03279998A (ja) * 1990-03-29 1991-12-11 Casio Comput Co Ltd フォント出力制御装置
JP3330117B2 (ja) * 2000-02-23 2002-09-30 コナミ株式会社 情報提供システム及び方法
JP5493764B2 (ja) * 2009-11-20 2014-05-14 セイコーエプソン株式会社 制御装置、制御装置の制御方法、及び、プログラム

Also Published As

Publication number Publication date
JP2016146190A (ja) 2016-08-12

Similar Documents

Publication Publication Date Title
JP5903871B2 (ja) デバイス制御装置、デバイス制御システム、デバイス制御方法およびプログラム
JP6171530B2 (ja) 印刷制御装置、印刷システムおよび印刷制御方法
JP5691361B2 (ja) ネットワークシステム、クライアント、クライアントの制御方法およびプログラム
CN103226451A (zh) 使用打印机和移动设备来打印电子文档的方法和系统
JP5040486B2 (ja) ネットワークシステムおよびプログラム
JP4900096B2 (ja) ネットワークシステムおよびプログラム
JP2014032454A (ja) プリンターシステムおよびプリンター設定方法
US9720630B2 (en) Recording device, control method of a recording device, and recording system
US10068219B2 (en) Information processing method and recording system
JP4983445B2 (ja) ネットワークシステムおよびプログラム
JP6206521B2 (ja) 印刷制御スクリプトおよびクライアント端末の制御方法
JP5614475B2 (ja) Posシステム
JP2019105911A (ja) メンテナンスデータ提供システム、サーバ及び情報処理プログラム
JP5370528B2 (ja) ネットワークシステム、ネットワークシステムの制御方法およびプログラム
JP5515498B2 (ja) 制御装置、制御装置の制御方法、プログラム
JP5299503B2 (ja) ネットワークシステムおよびプログラム
JP2014006629A (ja) アプリケーション実行システムおよびアプリケーション実行方法
JP5533929B2 (ja) クライアント端末、クライアント端末の制御方法およびプログラム
JP5668816B2 (ja) 印刷装置の制御方法及び印刷装置
JP5360269B2 (ja) ネットワークシステム、ネットワークシステムの制御方法およびプログラム
JP5817891B2 (ja) Posシステムの制御方法
JP5660174B2 (ja) ディスプレイの制御方法及びデバイスアダプタ
JP7127434B2 (ja) 情報処理装置および情報処理装置の制御方法
JP6528905B2 (ja) 印刷出力方法、印刷出力プログラムおよび印刷出力システム
JP2014215665A (ja) 印刷制御方法および印刷制御装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170321

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170413

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170821

R150 Certificate of patent or registration of utility model

Ref document number: 6206521

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150