|
-
-
EPSON Advanced Printer Driver 4 シリーズにてキャッシュドロアーを開く(以下、ドロアーオープンと省略)方法は、以下の3通りがあります。
※他のドライバー・バージョンのFAQ一覧はこちら
- プリンタードライバーのプロパティー画面上で、ドロアーオープンのタイミングを設定する。
- 印刷内容にデバイスフォント(制御文字)を含め印刷する。
- ドライバーに含まれている機能『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 |
|