User manual - プリンタライブラリマニュアルver.1.06(2014年6月13日)

62
ESC K n1 n2 Data
【名称】 スタンプ定義(登録)
【コード】
0x1B 0x4B n1 n2 Data
【定義域】 横方向指定(8 ドット単位)
0x01n10x48(用紙幅 80mm(82.55mm)の場合)
0x01n10x30(用紙幅 58mm の場合)
縦方向指定(1ドットライン単位)
0x01n20x60
【機能】 スタンプデータを定義します。
【動作】 横方向のサイズはスタンプデータの横ドット数÷8 とし、8 ドット単位で指定します。
Data には 1 バイト単位でスタンプデータを指定します。
既に登録されているデータがある場合は、そのデータに対して上書きします。
スタンプ登録時は、スタンプデータ1バイトを TCHAR 型のデータ1つに入力して下さ
い。
) 縦横 24dot スタンプの場合
TCHAR CAN = 0x0018;
TCHAR Stamp[6912+4], Data[72] = {スタンプデータ...};
Stamp[0] = 0x1B;
Stamp[1] = 0x4B;
Stamp[2] = 0x03;
Stamp[3] = 0x24;
memcpy(&Stamp[4], Data, 72);
If (PRNGetStatus() != PRN_NORMAL)
PRNTextOut(1, &CAN);
PRNTextOut(4+72, Stamp);
プリンタドライバ内のバッファがフルになった場合、ESC コマンドの解析を停止しま
す。エラーが発生している場合はバッファ内のデータを印刷できないため、データを
クリアするために CAN を送信しています。
スタンプ登録 ESC コマンドは分割せずに送信してください。
ESC G
【名称】 スタンプ印刷
【コード】
0x1B 0x
47
【機能】 スタンプデータを印刷データとして展開します。
スタンプを印刷する場合は、ESC G の後に CR LF を送信して下さい。
TCHAR cmd[] = {0x1B, 0x47, 0x0D};
TCHAR cmd2[] = {0x20, 0x20, 0x20, 0x20, 0x1B, 0x47, 0x0D};
PRNTextOut(3, cmd);
PRNTextOut(7, cmd2); /* スペースでスタンプの印刷位置を右へずらして印刷 */
注意:スタンプの大きさ(横幅)と左右マージン設定の関係が下記のような場合は、ス
タンプを印刷することはできません。
> 印刷領域(576dot or 384dot) (左マージン+右マー
ジン)