ロゴ:EPSON
ロゴ:よくあるご質問(FAQ)

製品別
質問別
エプソンパートナーポータル

URLをクリップボードにコピーしました
シェア用URL:https://faq2.epson.jp/web/Detail.aspx?id=31064
  FAQ番号:31064
キャッシュドロアーの開閉ができない。設定や手段、方法がわからない。<EPSON Advanced Printer Driver 4 シリーズ>
TMプリンターに接続されたキャッシュドロアーを開閉する方法を教えてください。
 
 

EPSON Advanced Printer Driver 4 シリーズにてキャッシュドロアーを開く(以下、ドロアーオープンと省略)方法は、以下の3通りがあります。
他のドライバー・バージョンのFAQ一覧はこちら

  1. プリンタードライバーのプロパティー画面上で、ドロアーオープンのタイミングを設定する。
  2. 印刷内容にデバイスフォント(制御文字)を含め印刷する。
  3. ドライバーに含まれている機能『Status API』を使用する。

『Status API』の説明/詳細は、プリンタードライバーのマニュアル「Status API ガイド」を参照してください。

 
ドロアーオープンの方法
1.

プリンタードライバーのプロパティーで、ドロアーオープンのタイミング(印刷終了時など)を設定します。

以下の項目を設定することで、レシート印刷の際に自動でドロアーオープンするように指定することができます。

 
(1) プリンタードライバーの「プロパティー」画面の「全般」タブを開き、「印刷設定」ボタンをクリック。
 
(2) 開かれた「印刷設定」画面の「書式設定」タブを開く。
 
(3) 書式設定から「キャッシュドロアー」を選択。
 
(4) ドロアーオープンさせたいタイミングを選択する。
 

この設定によって、印刷開始/終了時にドロアーをオープンします。
弊社のドロアーを使用している場合「キャッシュドロアー#1(2 ピン)」に設定することでドロアーが開きます。
使用するドロアーのタイプに合わせて 2 ピン、5 ピンどちらかを選択してください。

2.

EPSON Advanced Printer Driverでは、プリンター制御を行うためのデバイスフォントを用意しています。
デバイスフォント:”control”で特定の文字を印字することにより、印刷以外の動作を行なうことができます。

例:TM-T88IVの場合) B・・・・ドロアーオープン 2 ピン 100ms

印字データの中に、Controlフォントを含めて印字する。
(制御文字を印刷した時点でドロアーオープン動作します)

例)Visual C# で行う場合
 
private const string CTRL_DRW = "B";
private const string PRINTER_NAME = "EPSON TM-T88IV Receipt";// プリンター名
private void cmdPrint_Click(object sender, System.EventArgs e)
{
	PrintDocument pdPrint = new PrintDocument();
	pdPrint.PrintPage += new PrintPageEventHandler(pdPrint_PrintPage);
	pdPrint.PrinterSettings.PrinterName = PRINTER_NAME;
	pdPrint.DocumentName = "Testing";
	// 印刷
	pdPrint.Print();
}
// 印刷処理
private void pdPrint_PrintPage(object sender, PrintPageEventArgs e)
{
	float x, y;
	Font controlFont = new Font("Arial",
			(float)2,
			FontStyle.Regular,
			GraphicsUnit.Point);
	e.Graphics.PageUnit = GraphicsUnit.Point;
	x = 10;
	y = 0;
	e.Graphics.DrawString(CTRL_DRW, controlFont, Brushes.Black, x, y);
}

”control”フォントなどデバイスフォントには、使用するための必要条件があります。
条件の詳細は、プログラムからデバイスフォントを利用する必要条件<EPSON Advanced Printer Driver シリーズ>を参照してください。

デバイスフォント:”control ”で扱える、制御文字の種類につきましては、プリンタードライバーのマニュアル[設定ガイド プリンター仕様一覧表]を参照してください。

3.

EPSON Advanced Printer Driverには、拡張機能として「Status API」を用意しています。
「Status API」を使用することで、ドロアーオープン命令を送信することができます。

※「Status API」は、ドライバーのインストールに含まれています。

Status API は、開発言語で使用できる「関数」として用意しています。
具体的には、以下の3つの関数を使用いたします。

  • OpenMonPrinter・・・・プリンターと直接通信を開始
  • OpenDrawer・・・・・・・ドロアオープンコマンドを送信
  • CloseMonPrinter・・・・プリンターとの通信を終了

Status API では レシート印刷の有無に関係なくドロアーオープン処理を行うことができます。

 
例)Visual C# で行う場合
 
using com.epson.pos.driver;
private const string PRINTER_NAME = "EPSON TM-T88IV Receipt";// プリンター名
private StatusAPI m_objAPI;
m_objAPI = new StatusAPI();
private void cmdPrint_Click(object sender, System.EventArgs e)
{
	// BiOpenMonPrinterの実行
	if (m_objAPI.OpenMonPrinter(OpenType.TYPE_PRINTER, PRINTER_NAME) == ErrorCode.SUCCESS)
	{
		m_objAPI.OpenDrawer( Drawer.EPS_BI_DRAWER_1, Pulse.EPS_BI_PULSE_100);
		m_objAPI.CloseMonPrinter();
	}else{
		//監視プリンターのオープン失敗処理
	}
}

具体的な実現方法については、プリンタードライバーのマニュアル/サンプルプログラムをダウンロードし、参照してください。

PC一体型プリンター TM-T88V-DT
キャッシュドロアー DLA-58EDIII,DM-Z100,DM-Z400,DMA-48EDIII,DSA-35EDIII
TMシリーズ TM-H5000II,TM-H6000II,TM-H6000III,TM-H6000IV,TM-J2000,TM-J2100,TM-L60II,TM-L90 オートカッターモデル,TM-L90 ピーラーモデル,TM-T20,TM-T285,TM-T70,TM-T88III,TM-T88IV,TM-T88V,TM-T90,TM-U220A,TM-U220B,TM-U220D,TM-U295,TM-U590,TM-U675,TM-U950
FAQ改善アンケート

このページの評価をお聞かせください。〇✖をお選びください。

 

■役に立った
■役に立たなかった