|
|
|
|
|
#ifndef YkPosdll
|
|
|
#define YkPosdll
|
|
|
|
|
|
|
|
|
typedef int (__stdcall *CallBack)(unsigned char pParam);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
extern "C"
|
|
|
{
|
|
|
#endif
|
|
|
|
|
|
|
|
|
///串口
|
|
|
#define COM1 1
|
|
|
#define COM2 2
|
|
|
#define COM3 3
|
|
|
#define COM4 4
|
|
|
#define COM5 5
|
|
|
#define COM6 6
|
|
|
#define COM7 7
|
|
|
#define COM8 8
|
|
|
#define COM9 9
|
|
|
#define COM10 10
|
|
|
///并口
|
|
|
#define LPT1 11
|
|
|
#define LPT2 12
|
|
|
|
|
|
///USB 口
|
|
|
#define USB 13
|
|
|
|
|
|
///(有线或无线WIFI)网络 打印机
|
|
|
#define NET 14
|
|
|
|
|
|
|
|
|
//函数功能:连接打印机设备
|
|
|
//参数: iport -- 设备通信接口号,如COM1 - 1 COM2 - 2 如此类推;
|
|
|
//参数:baud -- 波特率 9600 , 38400 , 115200 or 工作端口号 (网络)
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkOpenDevice(int iport,int baud); //,char *szIPAddr);
|
|
|
|
|
|
//函数功能:断开打印设备
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkCloseDevice();
|
|
|
|
|
|
//函数功能:获取设备的操作句柄
|
|
|
//参数:无
|
|
|
//返回值:>0 -- 句柄值 -1 -- 失败
|
|
|
int __stdcall YkGetDeviceHandle();
|
|
|
|
|
|
|
|
|
//函数功能:设备是否已经到连接计算机(仅支持USB口打印机)
|
|
|
//参数:无
|
|
|
//返回值:>0 -- 连接 -1 -- 没有连接
|
|
|
int __stdcall YkIsConnected();
|
|
|
|
|
|
|
|
|
|
|
|
//函数功能:初始化打印机 〈详见命令:ESC @〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkInitPrinter();
|
|
|
|
|
|
//函数功能:把将要打印的字符串送入打印机缓冲区(注: 达到满行时会自动打印出来)
|
|
|
//参数:pstr -- 将要送打印机的字符串数据缓冲,len -- 字符串数据长度
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrintStr(char *pstr);
|
|
|
|
|
|
//函数功能:打印并回车,但不走纸〈详见命令:CR〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnter();
|
|
|
|
|
|
//函数功能:打印并换行,走纸到下一行首〈详见命令:LF〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkFeedPaper();
|
|
|
|
|
|
//函数功能:页模式下,取消打印数据〈详见命令:CAN〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkCancelPrintInPM();
|
|
|
|
|
|
//函数功能:实时响应主机请求, 〈详见命令:DLE ENQ n〉
|
|
|
//参数:n=1:从错误状态恢复,从错误状态出现的行重新开始打印。
|
|
|
//参数:n=2:清除接收缓冲区,打印缓冲区内容。
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkResponse(int n);
|
|
|
|
|
|
//函数功能:Tab水平定位,从下一个水平定位点位置开始打印。〈详见命令:HT〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkTabMove();
|
|
|
|
|
|
//函数功能:页模式下,打印数据〈详见命令:ESC FF〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrintInPM();
|
|
|
|
|
|
//函数功能:设置西文字符右间距,以半点为设定单位〈详见命令:ESC SP n〉
|
|
|
//参数:n = 0~255 ,default = 0
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetCharRightSpace(int n=0);
|
|
|
|
|
|
//函数功能:设置字符打印方式〈详见命令:ESC ! n〉
|
|
|
//参数:n = 0~255 ,default = 0
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetFontStyle(int n=0);
|
|
|
|
|
|
//函数功能:设置绝对打印位置,〈详见命令:ESC $ nL nH〉
|
|
|
//参数:nL -- 位置数值的低字节,nH -- 位置数值的高字节 ,0 ≤ (nL + nH × 256) ≤ 65535 (0 ≤ nL ≤ 255 , 0 ≤ nH ≤ 255)
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int YkSetAbsPrnPos(int nL,int nH);
|
|
|
|
|
|
//函数功能:使能/禁用用户自定义字符户〈详见命令:ESC % n〉
|
|
|
//参数:n = 0~255 ,default = 0
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableUserDefineChar(int n=0);
|
|
|
|
|
|
//函数功能:设置用户自定义字符, 〈详见命令:ESC & y c1 c2 [ x1 d1...d(y×x1)]...[ xk d1...d(y×xk)]〉
|
|
|
//参数:c1, c2分别为起始码和终止码,最多为95个。
|
|
|
//参数:字符宽度,以点为单位,视用什么字体大小而定
|
|
|
//参数:code --自定义字符的内码值,例:使用Font B字体,把空格定义为黑块 内码为c1=0x20,c2=0x20,code[0]=0xff,code[1]=0xff...code[26]=0xff
|
|
|
// YkSetUserDefineChar(0x20,0x20,9,code);
|
|
|
///以下数据详见说明书
|
|
|
//y==3
|
|
|
//0 ≤ x ≤ 12 [Font A (12 × 24)]
|
|
|
//0 ≤ x ≤ 9 [Font B (9 × 17)]
|
|
|
//k = c2 – c1 +1
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetUserDefineChar(int c1,int c2,int x, unsigned char code[]);
|
|
|
|
|
|
//函数功能:使能或禁用字符加下画线功能 〈详见命令:ESC - n〉
|
|
|
//参数:n=1 使能,n=0 禁用,默认值n=0。
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableUnderLine(int n=0);
|
|
|
|
|
|
//函数功能:设置字符行距为默认值3.75毫米 〈详见命令:ESC 2〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetDefaultLineSpace();
|
|
|
|
|
|
//设置字符行距 〈详见命令:ESC 3 n〉
|
|
|
//参数:n=0~255,默认 n=30
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetLineSpace(int n=30);
|
|
|
|
|
|
//函数功能:取消用户自定义字符, 〈详见命令:ESC ? n〉
|
|
|
//参数:n=32~126
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkCancelUserDefChar(int n);
|
|
|
|
|
|
//函数功能:设置水平制表位置 〈详见命令:ESC D〉
|
|
|
//参数:tabstr --tab 位置值组成的字符串序列,如
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetTabPos(char * tabstr);
|
|
|
|
|
|
//函数功能:使能或禁用加重打印模式 〈详见命令: ESC E n〉
|
|
|
//参数:n =0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetEmphasized(int n);
|
|
|
|
|
|
//函数功能:使能或禁用重叠打印模式 〈详见命令: ESC G〉
|
|
|
//参数:n =0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkOverlap(int n);
|
|
|
|
|
|
//函数功能:打印后走纸 n 点行(注:可以精确走纸 1点行=0.125mm) 〈详见命令: ESC J n〉
|
|
|
//参数:n =0~255
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrnAndFeedPaper(int n);
|
|
|
|
|
|
//函数功能:进入页模式工作 〈详见命令:ESC L〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnablePM();
|
|
|
|
|
|
//函数功能:选择字符字型 〈详见命令:ESC M〉
|
|
|
//参数:n=0 选择字型 A (12×24); n=1 选择字型 B (9×17)
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSelectFont(int n);
|
|
|
|
|
|
//函数功能:设置11个国家的不同ASCII字符集 〈详见命令:ESC R n〉
|
|
|
//参数: n 国家代号
|
|
|
/*
|
|
|
n International character set
|
|
|
|
|
|
0 U.S.A.
|
|
|
1 France
|
|
|
2 Germany
|
|
|
3 U.K.
|
|
|
4 Denmark I
|
|
|
5 Sweden
|
|
|
6 Italy
|
|
|
7 Spain I
|
|
|
8 Japan
|
|
|
9 Norway
|
|
|
10 Denmark II
|
|
|
11 Spain II
|
|
|
12 Latin America
|
|
|
13 Korea
|
|
|
14 Slovenia / Croatia
|
|
|
15 China
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetInterCharSet(int n=0);
|
|
|
|
|
|
//函数功能:从页模式切换到标准模式 〈详见命令:ESC S〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnterSM();
|
|
|
|
|
|
//函数功能:页模式下,设置打印方向, 〈详见命令:ESC T n〉
|
|
|
//参数:n=0~3 ;
|
|
|
/*
|
|
|
n Print direction Starting position
|
|
|
0 Left to right Upper left
|
|
|
1 Bottom to top Lower left
|
|
|
2 Right to left Lower right
|
|
|
3 Top to bottom Upper right
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetDirectionInPM(int n);
|
|
|
|
|
|
//函数功能:使能或禁用顺时针90度旋转字符打印, 〈详见命令:ESC V n〉
|
|
|
//参数:n=0禁用顺时针90度旋转打印 n=1 使能顺时针90度旋转打印
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkClockwiseD90(int n);
|
|
|
|
|
|
//函数功能:页模式下,设置设置打印区域,打印页长度范围(76~185mm),打印宽度(最大72mm) 〈详见命令:ESC W xL xH yL yH dxL dxH dyL dyH〉
|
|
|
//参数:left 打印区域左上角x坐标 top 打印区域左上角y坐标 width 打印区域宽度 height 打印区域高度
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetPrnAreaInPM(int left,int top,int width,int height);
|
|
|
|
|
|
//函数功能:设置相对打印位置 〈详见命令:ESC \ nL nH〉
|
|
|
//参数:nL ,nH ; 实际位置= (nL + nH x 256)x0.125 毫米
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetRelPrnPos(int nL,int nH);
|
|
|
|
|
|
//函数功能:设置打印时的对齐方式 〈详见命令:ESC a n〉
|
|
|
//参数:n=0 左对齐 n=1 居中 n=2 右对齐
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetAlign(int n);
|
|
|
|
|
|
//函数功能:设置测纸传感器输出缺纸信号 〈详见命令:ESC c 3 n〉
|
|
|
//参数:n=0~255 , 各位定义,详见命令说明书表格说明
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetPaperSensor(int n);
|
|
|
|
|
|
//函数功能:设置纸尽时停止打印 〈详见命令:ESC c 4 n〉
|
|
|
//参数:n=0~255 , 各位定义,详见命令说明书表格说明
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetSensorToStopPrint(int n);
|
|
|
|
|
|
//函数功能:使能或禁用打印机面板上的开关 〈详见命令:ESC c 5 n〉
|
|
|
//参数:n=0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnablePanelButton(int n=0);
|
|
|
|
|
|
//函数功能:打印后走纸n字符行 〈详见命令:ESC d n〉
|
|
|
//参数:n 字符行数
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrnAndFeedLine(int n);
|
|
|
|
|
|
//函数功能:设置字符代码表 〈详见命令:ESC t n〉
|
|
|
//参数:n 代码表代号 取值范围:0 ≤ n ≤ 5 , 16 ≤ n ≤ 19 , n = 255
|
|
|
/*
|
|
|
n Character code table
|
|
|
0 Page 0 [PC437 (USA: Standard Europe)]
|
|
|
1 Page 1 [Katakana]
|
|
|
2 Page 2 [PC850 (Multilingual)]
|
|
|
3 Page 3 [PC860 (Portuguese)]
|
|
|
4 Page 4 [PC863 (Canadian-French)
|
|
|
5 Page 5 [PC865 (Nordic)]
|
|
|
16 Page 16 [WPC1252]
|
|
|
17 Page 17 [PC866 (Cyrillic #2)]
|
|
|
18 Page 18 [PC852 (Latin 2)]
|
|
|
19 Page 19 [PC858 (Euro)]
|
|
|
255 Page 255 [User-defined page]
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetCharCodeTable(int n);
|
|
|
|
|
|
//函数功能:走黑标纸到打印起始位置 〈详见命令:GS FF〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkFeedToStartPos();
|
|
|
|
|
|
//函数功能:设置字符倍数 〈详见命令:GS ! n〉
|
|
|
//参数:hsize 水平放大倍数 vsize 垂直放在倍数 ,取值范围0~7
|
|
|
/*
|
|
|
hsize ,vsize 值与倍数对应关系
|
|
|
0 1倍(原大小)
|
|
|
1 2倍
|
|
|
2 3倍
|
|
|
3 4倍
|
|
|
4 5倍
|
|
|
5 6倍
|
|
|
6 7倍
|
|
|
7 8倍
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetCharSize(int hsize,int vsize);
|
|
|
|
|
|
//函数功能:页模式下,设置打印区域内绝对垂直打印起始位置 〈详见命令:GS $ nL nH〉
|
|
|
//参数:nL nH 位置值 位置 = (nL + nH x256) x 0.125 毫米
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int YkSetAbsVertPosInPM(int nL,int nH);
|
|
|
|
|
|
//函数功能:进行测试打印 〈详见命令:GS ( A pL pH n m〉
|
|
|
//参数:n,m
|
|
|
/*
|
|
|
n 指定测试时的纸张来源
|
|
|
|
|
|
0 Basic sheet (roll paper)
|
|
|
1 Roll paper
|
|
|
2 Roll paper
|
|
|
|
|
|
m 指定测试样式
|
|
|
|
|
|
1 Hexadecimal dump print
|
|
|
2 Printer status print
|
|
|
3 Rolling pattern print
|
|
|
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDoTestPrint(int n,int m);
|
|
|
|
|
|
|
|
|
|
|
|
//函数功能:进入或退出用户设置模式 〈详见命令:GS ( E pL pH 〉
|
|
|
//参数:m=1 进入 m=2 退出
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkUserDefCmd(int m);
|
|
|
|
|
|
|
|
|
|
|
|
//函数功能:设置MemorySwitch开关 〈详见命令:GS ( E pL pH 〉
|
|
|
//参数:n=0~7对应MemorySwitch开关1~8。
|
|
|
//参数:数组memory[]对应memory1~8每个开关值。
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetMemorySwitch(int n, int memory[]); ///???
|
|
|
|
|
|
//函数功能:读取MemorySwitch开关值 〈详见命令:GS ( E pL pH〉
|
|
|
//参数:n=0~7对应MemorySwitch开关1~8。
|
|
|
//参数:数组memory[]用于存储读回来对应memory1~8每个开关值。
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkGetMemorySwitch(int n,unsigned char memory[11]); ///???
|
|
|
|
|
|
//函数功能:设置黑标的切撕纸位置和起始打印位置 〈详见命令:GS ( F pL pH a m〉
|
|
|
//参数a =1 设置起始打印位置的设定值 a=2 设置开始切纸位置的设定值
|
|
|
//参数m = 0 指定为前向进纸的方向 m = 1 指定为逆向进纸的方向
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetBlackMarkParam(int a,int m,int nL,int nH);
|
|
|
|
|
|
//函数功能:(注:按工作状态功能有所不同)〈详见命令:FF〉
|
|
|
// 页模式:打印后返回到标准模式
|
|
|
// 黑标模式:打印后走黑标到打印起始位置。
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrnAndBackToStd();
|
|
|
|
|
|
//函数功能:定制打印机控制值。 〈详见命令:GS ( M pL pH a n m〉
|
|
|
//参数:
|
|
|
/*
|
|
|
保存或者载入命令所定义的数据。
|
|
|
|
|
|
n 功能
|
|
|
|
|
|
1 将命令GS ( F 所设置的数据保存到用户NV 存储器。
|
|
|
2 从用户NV 存储器载入命令GS ( F 所设置的数据。
|
|
|
3 指定在初始设定时禁止或允许自动数据载入程序。
|
|
|
|
|
|
m 指定数据如下:
|
|
|
|
|
|
m = 0 与该规格参考手册所叙述的GS ( F 命令的初始设定值相同。
|
|
|
m = 1 将被保存的存储区。
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDefineControl(int n,int m);
|
|
|
|
|
|
//函数功能:设置条码HRI字符的打印位置 〈详见命令:GS H n〉
|
|
|
//参数:n=0 不打印,n=1 条形码上方,n=2条形码下方,n=3条形码的上方和下方
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetHRIPos(int n=0);
|
|
|
|
|
|
//函数功能:读取打印机ID 〈详见命令:GS I n〉
|
|
|
//参数:n=1~3 不同型号机型,具体内容不同,请查说明书
|
|
|
/*
|
|
|
n 打印机ID
|
|
|
1 打印机型号ID
|
|
|
2 类型ID 见说明书类型表
|
|
|
3 固件版本ID
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkGetPrinterID(int n);
|
|
|
|
|
|
//函数功能:设置左边距 〈详见命令:GS L nL nH〉
|
|
|
//参数:nL nH 左边距=(nL + nH x 256) x 0.125 毫米
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetLeftMargin(int nL,int nH);
|
|
|
|
|
|
|
|
|
//函数功能:打印位置设置为打印行起点 〈详见命令:GS T n〉
|
|
|
//参数:n=0 删除打印缓冲区中的所有数据后设置打印位置为打印行起始点 n=1 将打印缓冲区中的所有数据打印后设置打印位置为打印行起始点
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkToLineHome(int n);
|
|
|
|
|
|
//函数功能:执行切纸动作,包括进纸 〈详见命令:GS V m〉
|
|
|
//参数:m=66 n:打印机进纸到(切纸位置+ [n × 0.125 毫米{0.0049英寸}])并切纸,一般n=0
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkCutPaper(int m,int n);
|
|
|
|
|
|
//函数功能:设置打印区域宽度。 〈详见命令:GS W nL nH〉
|
|
|
//参数:nL --打印区域宽度低字节 nH -- 打印区域宽度高字节
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetPrnAreaWidth(int nL,int nH);
|
|
|
|
|
|
//函数功能:页模式下,设置相对于当前位置的垂直打印起点位置 〈详见命令:GS \ nL nH〉
|
|
|
//参数:nL --位置低字节 nH -- 位置高字节
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetRelVertPosInPM(int nL,int nH);
|
|
|
|
|
|
//函数功能:使能或禁用自动状态回复功能(ASB) 〈详见命令:GS a n〉
|
|
|
//参数:0 -- 禁用 1 -- 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableASB(int n);
|
|
|
|
|
|
//函数功能:使能或禁用平滑模式 〈详见命令:GS b n〉
|
|
|
//参数:0 -- 禁用 1 -- 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableSmoothPrn(int n);
|
|
|
|
|
|
// 函数功能:设置条码的HRI字符字型 〈详见命令:GS f n〉
|
|
|
//参数:0 -- 字体A (12 × 24) 1 -- 字体B (9 × 17)
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetHRICharStyle(int n);
|
|
|
|
|
|
//函数功能:设置条码高度 〈详见命令:GS h n〉
|
|
|
//参数:n=1~255 垂直方向的点数
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetBarCodeHeight(int n);
|
|
|
|
|
|
//函数功能:打印条码 〈详见命令:GS k m n d1 ... dn〉
|
|
|
//参数:m=65~75
|
|
|
/*
|
|
|
m 条形码系统 字符个数 备注
|
|
|
65 UPC-A 11 ≤ n ≤ 12 48 ≤ d ≤ 57
|
|
|
66 UPC-E 11 ≤ n ≤ 12 48 ≤ d ≤ 57
|
|
|
67 JAN13 (EAN13) 12 ≤ n ≤ 13 48 ≤ d ≤ 57
|
|
|
68 JAN8 (EAN8) 7 ≤ n ≤ 8 48 ≤ d ≤ 57
|
|
|
69 CODE39 1 ≤ n ≤ 255 48 ≤ d ≤ 57, 65 ≤ d ≤ 90, 32, 36,37, 43, 45, 46, 47
|
|
|
70 ITF 1 ≤ n ≤ 255 (n 为偶数) 48 ≤ d ≤ 57
|
|
|
71 CODABAR 1 ≤ n ≤ 255 48 ≤ d ≤ 57, 65 ≤ d ≤ 68, 36, 43,45, 46, 47, 58
|
|
|
72 CODE93 1 ≤ n ≤ 255 0 ≤ d ≤ 127
|
|
|
73 CODE128 1 ≤ n ≤ 255 0 ≤ d ≤ 127
|
|
|
74 标准EAN13 12 ≤ n ≤ 13 48 ≤ d ≤ 57
|
|
|
75 标准EAN8 7 ≤ n ≤ 8 48 ≤ d ≤ 57
|
|
|
*/
|
|
|
//参数:n 上表中字符个数
|
|
|
//参数:barcode 要转化为条码的数据
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrintBarCode(int m,int n,char * barcode);
|
|
|
|
|
|
//函数功能:获取打印机状态, 〈详见命令:DLE EOT n〉
|
|
|
//参数:n = 1~5
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkGetStatus(unsigned char n);
|
|
|
|
|
|
//函数功能:读取打印机状态 〈详见命令:GS r n〉
|
|
|
//参数:n=1 传送打印纸传感器状态
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkGetPrinterStatus(unsigned char n);
|
|
|
|
|
|
//函数功能:设置条码宽度 〈详见命令:GS w n〉
|
|
|
//参数:参数n=2~6
|
|
|
/*
|
|
|
二元条形码
|
|
|
n 多元条形码单位宽度(毫米) 窄条宽度(毫米) 宽条宽度(毫米)
|
|
|
2 0.250 0.250 0.625
|
|
|
3 0.375 0.375 1.000
|
|
|
4 0.560 0.500 1.250
|
|
|
5 0.625 0.625 1.625
|
|
|
6 0.750 0.750 2.000
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetBarCodeWidth(int n);
|
|
|
|
|
|
//函数功能:设置汉字字符打印模式组合。〈详见命令:FS ! n〉
|
|
|
//参数:n=0~255 详见命令说明书中表格
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetChineseFontStyle(int n);
|
|
|
|
|
|
//函数功能:进入汉字打印方式。〈详见命令:FS &〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableChineseMode();
|
|
|
|
|
|
|
|
|
//函数功能:退出汉字打印方式。〈详见命令:FS .〉
|
|
|
//参数:无
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDisableChineseMode();
|
|
|
|
|
|
//函数功能:使能或禁用汉字下划线模式。〈详见命令:FS - n〉
|
|
|
//参数:n=0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableChineseUnderLine(int n);
|
|
|
|
|
|
|
|
|
//函数功能:定义用户自定义汉字 〈详见命令:FS 2 c1 c2 d1...dk〉
|
|
|
//参数:c1、c2汉字用户自定义汉字区内的区位码,详见说明书表格,如汉字区GB18030,c1 = FE A1 ≤ c2 ≤ FE ,k=72,数组d元素取值范围0~255
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetUserDefChinese(int c1,int c2,int code[]);
|
|
|
|
|
|
//函数功能:设置用户自定义字符代码系统 〈详见命令:FS C n〉
|
|
|
//参数:自定义字符代码系统代号 n= 0~1
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetUserDefChineseArea(int n);
|
|
|
|
|
|
//函数功能:设置汉字字符左右间距 〈详见命令:FS S n1 n2〉
|
|
|
//参数:左间距n1,右间距n2,0 ≤ n1 ≤ 255,0 ≤ n2 ≤ 255
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetChineseLeftRightSpace(int n1,int n2);
|
|
|
|
|
|
//函数功能:使能或禁用汉字四倍大小打印。〈详见命令:FS W n〉
|
|
|
//参数:n=0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetChinese4TimesSize(int n);
|
|
|
|
|
|
//函数功能:使能或禁用颠倒打印模式〈详见命令: ESC { n〉
|
|
|
//参数:n=0 禁用 n=1 使能
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableUpsidedown(int n);
|
|
|
|
|
|
//函数功能:打印预定义位图 〈详见命令: FS p n m〉
|
|
|
//参数:m 打印密度
|
|
|
/* m 效果 垂直密度(dpi) 水平密度(dpi)
|
|
|
0 普通 203 203
|
|
|
1 倍宽 203 101
|
|
|
2 倍高 101 203
|
|
|
3 4倍 101 101
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrintDefineBitmap(int m,int n);
|
|
|
|
|
|
//函数功能:下载预定义位图 〈详见命令: FS q n〉
|
|
|
//参数:szBmpFile,要下载的位图的全路径。
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDefineBitmap(char *szBmpFile);
|
|
|
|
|
|
//函数功能:即时打印BMP图象。 〈详见命令:ESC * m nL nH d1...dk 〉
|
|
|
//参数:szBmpFile,要下载的位图的全路径。
|
|
|
/*
|
|
|
m 垂直密度 水平密度
|
|
|
0 60 90
|
|
|
1 60 180
|
|
|
32 180 90
|
|
|
33 180 180
|
|
|
一般 m=33
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkPrintBitmap(char *szBmpFile,int m);
|
|
|
|
|
|
//函数功能:下装图形后即时打印。 〈详见命令:先执行GS * ,后执行 GS / m〉
|
|
|
//参数:szBmpFile,要下载的位图的全路径。
|
|
|
/*
|
|
|
m 效果 垂直密度(dpi) 水平密度(dpi)
|
|
|
0 普通 180 180
|
|
|
1 倍宽 180 90
|
|
|
2 倍高 90 180
|
|
|
3 四倍 90 90
|
|
|
一般 m=0
|
|
|
*/
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDownloadBitmapAndPrint(char *szBmpFile,int m);
|
|
|
|
|
|
|
|
|
///函数功能:设置钱箱驱动方式 〈详见命令: ESC p m t1 t2〉
|
|
|
//参数:使用那个管脚输出脉冲 m=0 2脚 m=1 5脚 脉冲宽度为 t1*2ms t2*2ms ,其中要求 t1 < t2 ,一般 t1=150 t2=250
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int YkSetCashBoxDriveMode(int m,int t1,int t2);
|
|
|
|
|
|
|
|
|
//函数功能:设置单状态回调函数(注:适用于能返回状态的打印机型号,如串口打印机)
|
|
|
//参数:pCallBack -- 回调函数指针
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkSetCallBack(CallBack pCallBack);
|
|
|
|
|
|
//函数功能:使能打印状态回调函数,方便在回调函数根据打印机状态处理业务流程
|
|
|
//参数:enable = 1 ,使能 =0 禁用
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkEnableCallBack(int enable=0);
|
|
|
|
|
|
|
|
|
//函数功能:直接与设备数据交互通信(注: 不熟悉设备功能,不建议直接使用)
|
|
|
//参数:pdata -- 将要送打印机的数据缓冲,len -- 数据长度
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkDirectIO(unsigned char *pdata,int len);
|
|
|
|
|
|
|
|
|
//函数功能:写入打印机序列号(仅使用于杭州宽达公司)
|
|
|
//参数:pdata -- 将要写入的打印机序列号的的数据缓冲,字符串以0结尾
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkWriteSerialNo(char *pdata);
|
|
|
|
|
|
//函数功能:读取打印机序列号(仅使用于杭州宽达公司)
|
|
|
//参数:pdata -- 将要接收打印机序列号的的数据缓冲(分配足够大空间,不少于10字节 ),字符串以0结尾
|
|
|
//返回值:0 -- 成功 -1 -- 失败
|
|
|
int __stdcall YkReadSerialNo(char *pdata);
|
|
|
|
|
|
|
|
|
int __stdcall YkPrintRasterBmp(char *szBmpFile);
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
#endif |