cashumit/plugins/ios/Classes/EscCommand.h

455 lines
13 KiB
C
Raw Normal View History

//
// EscCommand.h
// Gprinter
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@interface EscCommand : NSObject
/**
* UPCA条码
* @param content 0-911
*/
-(void) addUPCAtest:(NSString*) content;
/**
*
* @param text
*/
-(void) addText:(NSString*) text;
/**
* :
* @return NSData*
*/
-(NSData*) getCommand;
/**
*
* @param str
*/
-(void) addStrToCommand:(NSString *) str;
/**
* 0x1b,0x40
*/
-(void) addInitializePrinter;
/**
* 8
* @param n
*/
-(void) addPrintAndFeedLines:(int) n;
/**
*
*/
-(void)addPrintAndLineFeed;
/**
* 0x1B 0x21 n(0-255)n的值设置字符打印模式
*@param n 00000000(0X0),10001000(0X88)线00001000(0X08)10000000(0X80)线
*
* Set the print mode, where n can be either:
* 0 (00000000) means default
* 8 (00001000) means bold
* 128 (10000000) means underline
* 136 (10001000) means underline and bold
*/
-(void) addPrintMode:(int) n;
/**
* 0
* @param n
*/
-(void) addSetInternationalCharacterSet:(int) n;
/**
* 90°0
* @param n
*/
-(void) addSet90ClockWiseRotatin:(int) n;
/**
*
* @param n 0,1,2
*/
-(void) addSetJustification:(int) n;
/**
*
* @param m
* @param t1
* @param t2
*/
-(void) addOpenCashDawer:(int) m :(int) t1 :(int) t2;
/**
*
* @param m
* @param t
* @param n
*/
-(void) addSound:(int) m :(int) t :(int) n;
/**
* 30
* @param n
*/
-(void) addLineSpacing:(int) n;
/**
* /
* @param n 0 0 n 255 n的最低位为0时n的最低位为1时n的最低位有效
*/
-(void) addSetUpsideDownMode:(int) n;
/**
* 2n=0x11
* @param n = width | height 0 n 255 1 81 8[] 0 2 4 7
*
* Set character size, where n can be either:
* 0 (0000) means default
* 2 (0010) means double height
* 16 (1000) means double width
* 18 (1010) means double height and width
*/
-(void) addSetCharcterSize:(int) n;
/**
*
* @param n n的最低位为0时n的最低位为1时n的最低位有效
*/
-(void) addSetReverseMode:(int) n;
/**
*
* @param n PRINTER_STATUS 1 n 4
* PRINTER_OFFLINE
* PRINTER_ERROR
* PRINTER_PAPER
*/
-(void) queryRealtimeStatus:(int) n;
/**
*
* @param n
*/
-(void) addCutPaperAndFeed:(int) n;
/**
* 01
*/
-(void) addCutPaper:(int) m;
/**
* HRI字符的打印位置
* @param n 0, 48 1, 49 2, 50 3, 51
*/
-(void) addSetBarcodeHRPosition:(int) n;
/**
* HRI使用字体
*/
-(void) addSetBarcodeHRIFont;
/**
*
* @param n n点40
*/
-(void) addSetBarcodeHeight:(int) n;
/**
* 使
* @param n 2 n 6
*/
-(void) addSetBarcodeWidth:(int) n;
/**
* EAN13码
* @param content 0-912
*/
-(void) addEAN13:(NSString*) content;
/**
* EAN8码
* @param content 0-97
*/
-(void) addEAN8:(NSString*) content;
/**
* UPCA条码
* @param content 0-911
*/
-(void) addUPCA:(NSString*) content;
/**
* :ITF14条码
* @param content 0-9
*/
-(void) addITF:(NSString*) content;
/**
* :CODE39条码
* @param content 0-9 A-Z SP $ % + - . / * (/)
*/
-(void) addCODE39:(NSString*) content;
/**
* CODE128码
* 1D 6B 49 n的命令格式n为后面所有打印字符串的长度使CODEB字符集: {B , 0x7B, 0x42
* @param charset ,CODEB字符集有 {A {B {Ccharset默认值用B content中content可以有多个字符集定义
* @param content 0x00-0x7f
*/
-(void) addCODE128:(char) charset :(NSString*) content;
/**
* CODE128码支持混合{A {B {C打印58mm纸打印超过14位的奇数数字15 17 19
* 1D 6B 49 n的命令格式n为后面所有打印字符串的长度使CODEB字符集: {B , 0x7B, 0x42
* CODEB字符集有 {A {B {CB data中data可以有多个字符集定义
* @param height
* @param width
* @param data 0x00-0x7f16
*/
-(void) addCODE128ABC:(int) height :(int) width :(NSData*) data;
/**
* addNVLOGO
* @param n 1<=n<=20 m默认为0
*/
-(void) addNVLOGO:(int) n :(int) m;
/*
1D 76 30 m xL xH yL yH d1...dk
0 m 3, 48 m 51
0 xL 255
0 xH 255
0 yL 255
0 yH 255
0 d 255
k = ( xL + xH × 256) × ( yL + yH × 256) ( k 0)
m
0, 48
1, 49
2, 50
3, 51
xL xH表示水平方向位图字节数 xL+ xH × 256
yL yH表示垂直方向位图点数 yL+ yH × 256
data
*/
-(void) addESCBitmapwithM:(int) m withxL:(int) xL withxH:(int) xH withyL:(int) yL
withyH:(int) yH withData:(NSData*) data;
/**
*
* @param image
* @param width
*/
-(void)addOriginrastBitImage:(UIImage *)image width:(int)width;
/**
*
* @param image
*/
-(void)addOriginrastBitImage:(UIImage *)image;
/*
ESC指令下QRCode打印流程为四步
1QRCode大小
2
3QRCode对应的文字信息存入打印机缓存中
4QRCode命令
*/
/*
1QRCode大小
[] ASCII码 GS ( K pL pH cn fn n
1D 28 6B 03 00 31 43 n
[] (pL+pH×256)=3 (pL=3,pH=0)
cn=49
fn=67
1 n16
[] n=3
*/
-(void) addQRCodeSizewithpL:(int) pL withpH:(int) pH withcn:(int) cn
withyfn:(int) fn withn:(int) n;
/*
2
[] ASCII码 GS ( K pL pH cn fn m d1...dk
1D 28 6B 03 00 31 45 n
[] (pL+pH×256)=3 (pL=3,pH=0)
cn=49
fn=69
48n51
[] n=48
*/
-(void) addQRCodeLevelwithpL:(int) pL withpH:(int) pH withcn:(int) cn
withyfn:(int) fn withn:(int) n;
/*
3QRCode对应的文字信息存入打印机缓存中
[] ASCII码 GS ( K pL pH cn fn m d1...dk
1D 28 6B pL pH 31 50 30 d1...dk
[] 4(pL+pH×256)7092 (0pL255,0pH27)
cn=49
fn=80
m=48
k=(pL+pH×256)-3
[] QR CODE数据d1...dk)
[] QRCode的数据存储到打印机中
esc @
*/
-(void) addQRCodeSavewithpL:(int) pL withpH:(int) pH withcn:(int) cn
withyfn:(int) fn withm:(int) m withData:(NSData*) data;
/*
4QRCode命令
[] ASCII码 GS ( K pL pH cn fn m
1D 28 6B 03 00 31 51 m
[] (pL+pH×256)=3 (pL=3,pH=0)
cn=49
fn=81
m=48
[] QRCode条码 K< Function 180QRCode数据存储在打印机中
*/
-(void) addQRCodePrintwithpL:(int) pL withpH:(int) pH withcn:(int) cn
withyfn:(int) fn withm:(int) m;
/**
*
* @param n 线
*/
-(void) addSetKanjiFontMode:(int) n;
/**
*
*/
-(void) addSelectKanjiMode;
/**
* 线
* @param n n 线
* n
* 0, 48 线
* 1, 49 线1
* 2, 50 线2
*/
-(void)addSetKanjiUnderLine:(int) n;
/**
*
*/
-(void) addCancelKanjiMode;
/**
*
* @param n
* 0 n255
* [] [n×]
* []
*
* GS P指定
* GS P
*
* 使
* 31 .91 255/203
*
* [] n = 0
*/
-(void) addSetCharacterRightSpace:(int) n;
/**
*
* @param n1 0 n1 255
* @param n2 0 n2 255
*/
-(void) addSetKanjiLefttandRightSpace:(int) n1 :(int) n2;
/**
*
* @param n
* 0 n 255
* []
* n的最低位为0时
* n的最低位为1
* [] n只有最低位有效
* ESC ! /
* [] n = 0
*/
-(void) addTurnEmphasizedModeOnOrOff:(int) n;
/**
*
* @param n
* 0 n 255
* [] /
* n的最低位为0时
* n的最低位为1
* [] n只有最低位有效
*
* [] n = 0
*/
-(void) addTurnDoubleStrikeOnOrOff:(int) n;
/**
* 16data=0x0Adata=0x0D
*/
-(void) addNSDataToCommand:(NSData*) data;
/**
*
* @param x
* @param y
*/
-(void)addSetHorAndVerMotionUnitsX:(int)x Y:(int)y;
/**
*
* @param n
*/
-(void)addSetAbsolutePrintPosition:(int)n;
/**
*
*
* @param width
*
*/
-(void)addSetPrintingAreaWidth:(int)width;
/**
* :
* @param n1 01
* @param n2 01
* @param n3 01
* @param n4 01
*/
-(void)receiptDoubleHeightOrDefaultPrintN1:(int)n1 N2:(int)n2 N3:(int)n3 N4:(int)n4;
/**
* :
* @param n n的参数范围为0-1016-3250-89
*/
-(void)setDefaultCodePage:(int)n;
/**
* :
* @param baudRate
*/
-(void)setBaudRate:(int)baudRate;
/**
* :
* <p>: 3132 ()33 ()35 ()</p>
*
*/
-(void)queryElectricity;
@end