対象読者
- 個人開発者(趣味)であること
- スマホ・タブレット等でレシートプリンターを利用したい人
はじめに
レシートプリンターを制御する方法は数多くあります。コマンド送信、ドライバーの利用などなど…。しかしいずれも初学者がいきなり手を出すのは困難です。また、ドライバーやプラグインのインストールが必要になります。なるべく簡単にレシートプリンターを制御できる方法がないか…と探していると、EPSONの「EPSON TM Print Assistant」というスマートデバイス向けのアプリがありましたので紹介します。
EPSON TM Print Assistantとは
概要
EPSONの提供するiOS/Android用アプリ。スマートデバイス上のアプリケーションと TM プリンター間の印刷データを中継します。アプリケーションが作成したEpson ePOS-Print XML形式またはPDFの印刷データをURLスキームで渡すと、EPSONの規格であるESC/POSコマンドに変換してレシートプリンターへ送信してくれます。画像付きのPDFも印刷できる点がありがたいですね(あんまり重い画像を入れると規格サイズ内でもフリーズしますが)。
インターフェイス
スマートデバイス⇔レシートプリンターのインターフェイスは、Bluetooth、有線/無線LAN、USB(Type-B)が使用できます。
なお、Chromebookで接続を行ったところ、印刷が終わるといちいちBluetoothが切断され、再接続に時間がかかって使い物になりませんでした。全てのデバイスについて、高速かつ抜け落ちにくいUSB-B接続をおススメします(私はC-Bケーブルを購入して利用しています)。
Epson ePOS-Print XMLについて
Epson ePOS-Print XMLは非常にわかりやすい構文です。例えば単に"Hello World"と出力するには以下のように記述します。
<epos-print xmlns="http://www.epson-pos.com/schemas/2011/03/epos-print"> //おまじない
<text>Hello World</text>
</epos-print>
ちなみにVisual StudioのXMLスキーマという機能を使えば良き感じに開発できるらしいです。 自分はマニュアルに書いてあるのにその存在に気付かず何時間も構文エラーと格闘していました
また、印刷内容を作成した後XMLを貼り付ければ内容がプレビューできる公式の簡易エディターがあるので利用してみると良いでしょう。
どういうときに使えるか
一番役に立ちそうなのはWebアプリケーションからの印刷でしょうか。EPSON TM Print AssistantのURLスキームを利用すれば、印刷したいデータさえ作ってしまえば、プリンター側の難しい事情を考えることなしに、手軽に印刷を行えます。
開発方法
スキーム、ホストなどは公式マニュアルを参照してください。
利用例
軽く調べた感じだと、以下のような事例があるようです。
-
アプリ「リストナウ」
公式サイトに、EPSON TM Print Assistantを使ってEPSONのプリンターからレシートを印刷する方法が記載されています。 - 文化祭整理券システム
WebアプリからEPSON TM Print Assistantに遷移して、印刷しているのがわかります。
【文化祭まであと15時間!】
— 浅野学園鉄道研究部(ARA) (@ara___1963) September 13, 2025
今回から運転シミュレーターは整理券制となりました。発券の様子です。
熟練の部員による手さばきで、快適な運転体験を! pic.twitter.com/r5SP1gxPwx
おわりに
いかがでしょうか。 なんとなく高校生のうちにアドベントカレンダーを埋めてみたかったというしょうもない理由のため突貫工事で書いた記事ですが、少しでも参考になれば幸いです。
参考資料
プリント支援ツール Epson TM Print Assistant|レシートプリンター|製品情報|エプソン
XMLファイルダウンロード|レシートプリンター|製品情報|エプソン(Epson ePOS-Print XMLのサンプル)