CaysnPrinter Windows平台开发包接口说明文档及打印示例程序下载地址:
CaysnPrinter Windows平台开发包接口说明文档及打印示例程序 PrinterLibs For Windows_20160927
接口说明:
一 概述
1 PrinterLibs是在Windows平台用C++编写的DLL,DLL导出C风格的函数。
2 PrinterLibs函数有以下几类
A Port_XXX
以Port开头的函数,主要是打开端口,关闭端口,枚举端口。
支持通过串口,并口,USB口,网口进行打印。
备注:Port_SetPort:该函数可以指定POS_XXX系列函数所使用的通讯端口。
B PAGE_XXX
以PAGE开头的函数,封装了页模式指令,可以控制打印机以页模式的方式
打印。
① PAGE_PageEnter进入页模式
② PAGE_SetPrintArea设置页模式打印区域
③ PAGE_DrawXXX系列函数在指定区域打印
④ PAGE_PagePrint打印整个页面
⑤ PAGE_PageExit退出页模式
备注:
②③可以重复调用
仅支持页模式的机型可以使用这些函数
C POS_XXX
以POS开头的函数,主要是封装了ESC/POS指令,可以控制打印机打印。
① 进纸系列函数可以控制打印机进纸
② 设置系列函数可以设置打印的格式等
③ 打印系列函数可以打印文本,条码,QR码,图片等
④ 查询系列函数可以查询打印机状态
⑤ 其他函数可以控制钱箱、切刀、蜂鸣器等
二 函数说明
Port Function
Port_OpenCom
Syntax
BOOL Port_OpenCom(TCHAR * pName, DWORD dwBaudrate, DWORD dwParity)
Parameters
pName
端口名称。
例如:COM1,COM2,COM3...COM11...
dwBaudrate
波特率
一般取9600,19200,38400,57600,115200.
需要和打印机波特率保持一致,建议使用高波特率以获得较好的打印速度
dwParity
效验位
取值如下:
#define PARITY_NONE ((WORD)0x0100)
#define PARITY_ODD ((WORD)0x0200)
#define PARITY_EVEN ((WORD)0x0400)
#define PARITY_MARK ((WORD)0x0800)
#define PARITY_SPACE ((WORD)0x1000)
Return value
如果打开成功,返回TRUE。否则,返回FALSE
Remarks
如果串口被占用,打开串口会失败。
如果波特率和打印机波特率不匹配,则无法打印。
Port_OpenTcp
Syntax
BOOL Port_OpenTcp(TCHAR * szIp, USHORT nPort)
Parameters
szIp
IP地址
例如:192.168.1.87
nPort
端口号
固定值:9100
Return value
如果打开成功,返回TRUE。否则,返回FALSE
Remarks
PC和打印机需要同网段的才可以连接
Port_OpenUsb
Syntax
BOOL Port_OpenUsb(TCHAR * pName)
Parameters
pName
端口名称。
可以通过Port_EnumUSB来得到打印机的名称。
也可以使用任意其他字符串,这时候,如果找到Caysn的USB打印机,会直接打开
Return value
如果打开成功,返回TRUE。否则,返回FALSE
Remarks
Caysn的USB打印机接到电脑上,如果设备管理器中出现了USB Printing Support,则可以使用该函数打开。
如果出现的是 Prolific USB-to-Serial Comm Port,则说明这是USB虚拟串口,需要使用Port_OpenCom。
Port_OpenLpt
Syntax
BOOL Port_OpenLpt(TCHAR * pName)
Parameters
pName
端口名称。
例如:LPT1,LPT2,LPT3...
Return value
如果打开成功,返回TRUE。否则,返回FALSE
Remarks
并口只有单向通讯,只可写不可读。
一切查询状态的函数,对并口来说均是无效的。
Port_OpenPrn
Syntax
BOOL Port_OpenPrn(TCHAR * pName)
Parameters
pName
打印机名称。
例如:KP80 Printer
Return value
如果打开成功,返回TRUE。否则,返回FALSE
Remarks
打开打印机端口。必须使用Caysn打印机驱动才可以。
Port_CloseCom
Syntax
VOID Port_CloseCom()
Parameters
Return value
Remarks
关闭端口
Port_CloseTcp
Syntax
VOID Port_CloseTcp()
Parameters
Return value
Remarks
关闭端口
Port_CloseUsb
Syntax
VOID Port_CloseUsb()
Parameters
Return value
Remarks
关闭端口
Port_CloseLpt
Syntax
VOID Port_CloseLpt()
Parameters
Return value
Remarks
关闭端口
Port_ClosePrn
Syntax
VOID Port_ClosePrn()
Parameters
Return value
Remarks
关闭端口
Port_SetPort
Syntax
VOID Port_SetPort(DWORD dwPortType)
Parameters
dwPortType
端口类型。
#define KCPORTYPE_COM 0x1
#define KCPORTYPE_ETH 0x2
#define KCPORTYPE_USB 0x4
#define KCPORTYPE_LPT 0x8
#define KCPORTYPE_PRN 0x10
Return value
Remarks
需要设置端口类型,POS_XXX系列函数才能正常使用。
Port_EnumCom
枚举串口
Syntax
VOID Port_EnumCom(TCHAR * pBuf, int cbBuf, int * pcbNeeded, int * pcnReturned)
Parameters
pBuf
枚举到的端口列表。
cbBuf
pBuf缓冲区字节数
pcbNeeded
需要的缓冲区长度
pcnReturned
返回的端口数目
Return value
Remarks
使用范例代码如下:C++
int cbNeeded = 0;
int cnReturned = 0;
Port_EnumCom(NULL, 0, &cbNeeded, &cnReturned);
if (cbNeeded)
{
TCHAR * pBuf = (TCHAR *)malloc(cbNeeded);
if (pBuf)
{
Port_EnumCom(pBuf, cbNeeded, &cbNeeded, &cnReturned);
TCHAR * pDevice = pBuf;
for (int i = 0; i < cnReturned; ++i)
{
ComboBox_AddString(hCbx, pDevice);
pDevice += lstrlen(pDevice) + 1;
}
free(pBuf);
}
}
Port_EnumLpt
枚举并口
VOID Port_EnumLpt(TCHAR * pBuf, int cbBuf, int * pcbNeeded, int * pcnReturned)
Parameters
pBuf
枚举到的端口列表。
cbBuf
pBuf缓冲区字节数
pcbNeeded
需要的缓冲区长度
pcnReturned
返回的端口数目
Return value
Remarks
使用范例代码如下:C++
int cbNeeded = 0;
int cnReturned = 0;
Port_EnumLpt(NULL, 0, &cbNeeded, &cnReturned);
if (cbNeeded)
{
TCHAR * pBuf = (TCHAR *)malloc(cbNeeded);
if (pBuf)
{
Port_EnumLpt(pBuf, cbNeeded, &cbNeeded, &cnReturned);
TCHAR * pDevice = pBuf;
for (int i = 0; i < cnReturned; ++i)
{
ComboBox_AddString(hCbx, pDevice);
pDevice += lstrlen(pDevice) + 1;
}
free(pBuf);
}
}
Port_EnumUsb
枚举USB端口
VOID Port_EnumUsb(TCHAR * pBuf, int cbBuf, int * pcbNeeded, int * pcnReturned)
Parameters
pBuf
枚举到的端口列表。
cbBuf
pBuf缓冲区字节数
pcbNeeded
需要的缓冲区长度
pcnReturned
返回的端口数目
Return value
Remarks
使用范例代码如下:C++
int cbNeeded = 0;
int cnReturned = 0;
Port_EnumUsb(NULL, 0, &cbNeeded, &cnReturned);
if (cbNeeded)
{
TCHAR * pBuf = (TCHAR *)malloc(cbNeeded);
if (pBuf)
{
Port_EnumUsb(pBuf, cbNeeded, &cbNeeded, &cnReturned);
TCHAR * pDevice = pBuf;
for (int i = 0; i < cnReturned; ++i)
{
ComboBox_AddString(hCbx, pDevice);
pDevice += lstrlen(pDevice) + 1;
}
free(pBuf);
}
}
Port_EnumPrn
枚举打印机列表
VOID Port_EnumPrn(TCHAR * pBuf, int cbBuf, int * pcbNeeded, int * pcnReturned)
Parameters
pBuf
枚举到的端口列表。
cbBuf
pBuf缓冲区字节数
pcbNeeded
需要的缓冲区长度
pcnReturned
返回的端口数目
Return value
Remarks
使用范例代码如下:C++
int cbNeeded = 0;
int cnReturned = 0;
Port_EnumPrn(NULL, 0, &cbNeeded, &cnReturned);
if (cbNeeded)
{
TCHAR * pBuf = (TCHAR *)malloc(cbNeeded);
if (pBuf)
{
Port_EnumPrn(pBuf, cbNeeded, &cbNeeded, &cnReturned);
TCHAR * pDevice = pBuf;
for (int i = 0; i < cnReturned; ++i)
{
ComboBox_AddString(hCbx, pDevice);
pDevice += lstrlen(pDevice) + 1;
}
free(pBuf);
}
}
Page Function
PAGE_PageEnter
选择页模式
Syntax
BOOL PAGE_PageEnter()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
PAGE_PagePrint
页模式下打印页面内容
Syntax
BOOL PAGE_PagePrint()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
PAGE_PageExit
退出页模式
Syntax
BOOL PAGE_PageExit()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
PAGE_SetPrintArea
页模式下设置打印区域
Syntax
BOOL PAGE_SetPrintArea(int left, int top, int right, int bottom, int direction)
Parameters
left
打印区域左上角x坐标
top
打印区域左上角y坐标
right
打印区域右下角x坐标
bottom
打印区域右下角y坐标
direction
打印区域方向
direction | 打印方向 | 起始位置 |
0 | 自左向右 | 左上角(图中的A) |
1 | 自下向上 | 左下角(图中的B) |
2 | 自右向左 | 右下角(图中的C) |
3 | 自上向下 | 右上角(图中的D) |
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
下图展示了打印区域的概念
PAGE_DrawString
画文本
Syntax
BOOL PAGE_DrawString(TCHAR * pszString, int x, int y, int nWidthScale, int nHeightScale, int nFontType, int nFontStyle)
Parameters
pszString
要打印的内容。UNICODE编码字符串。
x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)
支持左对齐,居中,右对齐
传入x见下表
x | 含义 |
-1 | 左对齐 |
-2 | 居中对齐 |
-3 | 右对齐 |
大于等于0 | 横坐标 |
y
指定垂直方向的起始点位置离打印区域上边界的点数。(纵坐标)
nWidthScale
指定宽度放大倍数 [0,7]
nHeightScale
指定高度放大倍数 [0,7]
nFontType
字体类型
0 标准字体
1 压缩字体
nFontStyle
指定字体风格,可以为下表中的一个或者若干个(相加即可)
Value | Meaning |
0x00 | 正常 |
0x08 | 加粗 |
0x80 | 1点粗的下划线 |
0x100 | 2点粗的下划线 |
0x200 | 倒置(只在行首有效) |
0x400 | 反显(黑底白字) |
0x1000 | 每个字符顺时针旋转 90 度 |
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
页模式Draw函数并不立刻打印,只是填在页面中,直到调用了PAGE_PagePrint,才开始打印。
PAGE_DrawRect
画矩形
Syntax
BOOL PAGE_DrawRect(int x, int y, int nWidth, int nHeight, int nColor)
Parameters
x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)
y
指定垂直方向的起始点位置离打印区域上边界的点数。(纵坐标)
nWidth
指定矩形宽度
nHeight
指定矩形高度
nColor
指定矩形颜色
0 白色
1 黑色
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
如果想画线,只需要把宽度设置为1(若想画粗一点的线,可设置大一点)即可。
注意:不要画太大区域矩形,否则电源撑不住打印机会复位。
PAGE_DrawBarcode
画条码
Syntax
BOOL PAGE_DrawBarcode(TCHAR * pszBarcodeContent, int x, int y, int nBarcodeUnitWidth, int nBarcodeHeight, int nHriFontType, int nHriFontPosition, int nBarcodeType)
Parameters
pszBarcodeContent
条码内容
x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)
支持左对齐,居中,右对齐
传入x见下表
x | 含义 |
-1 | 左对齐 |
-2 | 居中对齐 |
-3 | 右对齐 |
大于等于0 | 横坐标 |
y
指定垂直方向的起始点位置离打印区域上边界的点数。(纵坐标)
nBarcodeUnitWidth
指定条码的基本元素宽度。
可以为以下列表中所列值(n)之一。
n | 单基本模块宽度 | 双基本模块宽度(离散型) | |
窄元素宽度 | 宽元素宽度 | ||
2 | 0.25mm | 0.25mm | 0.625mm |
3 | 0.375mm | 0.375mm | 1.0mm |
4 | 0.5mm | 0.5mm | 1.25mm |
5 | 0.625mm | 0.625mm | 1.625mm |
6 | 0.75mm | 0.75mm | 1.875mm |
nBarcodeHeight
条码高度
nHriFontType
指定 HRI(Human Readable Interpretation)字符的字体类型。
可以为以下列表中所列值之一。
Value | Meaning |
0x00 | 标准ASCII |
0x01 | 压缩ASCII |
nHriFontPosition
指定HRI(Human Readable Interpretation)字符的位置。
可以为以下列表中所列值之一。
Value | Meaning |
0x00 | 不打印 |
0x01 | 只在条码上方打印 |
0x02 | 只在条码下方打印 |
0x03 | 条码上、下方都打印 |
nBarcodeType
可以为以下列表中所列值之一。
Value | Meaning |
0x41 | UPC-A |
0x42 | UPC-C |
0x43 | JAN13(EAN13) |
0x44 | JAN8(EAN8) |
0x45 | CODE39 |
0x46 | ITF |
0x47 | CODEBAR |
0x48 | CODE93 |
0x49 | CODE 128 |
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
PAGE_DrawQRCode
画二维码
Syntax
BOOL PAGE_DrawQRCode(TCHAR * pszContent, int x, int y, int nQRCodeUnitWidth, int nVersion, int nEcLevel)
Parameters
pszContent
二维码文本
x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)
支持左对齐,居中,右对齐
传入x见下表
x | 含义 |
-1 | 左对齐 |
-2 | 居中对齐 |
-3 | 右对齐 |
大于等于0 | 横坐标 |
y
指定垂直方向的起始点位置离打印区域上边界的点数。(纵坐标)
nQRCodeUnitWidth
QR码单元宽度,范围[1,16]。
QR码单元宽度越大,QR码越大。
nVersion
QR码版本。0表示自动计算版本。
QR码版本越大,能编码的字符就越多,QR码也越大。
nEcLevel
QR码纠错等级。[1,4]
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
PAGE_DrawBitmap
画BMP位图
Syntax
BOOL PAGE_DrawBitmap(TCHAR * FileName, int x, int y, int dwWidth, int dwHeight)
Parameters
FileName
位图文件路径
x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)
支持左对齐,居中,右对齐
传入x见下表
x | 含义 |
-1 | 左对齐 |
-2 | 居中对齐 |
-3 | 右对齐 |
大于等于0 | 横坐标 |
y
指定垂直方向的起始点位置离打印区域上边界的点数。(纵坐标)
dwWidth
要打印的宽度
dwHeight
要打印的高度
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
Pos Function
POS_TextOut
打印文本
Syntax
BOOL POS_TextOut(TCHAR * pszString, int x, int nWidthScale, int nHeightScale, int nFontType, int nFontStyle)
Parameters
pszString
要打印的内容。UNICODE编码字符串。
x
指定水平方向的起始点位置离左边界的点数。
nWidthScale
指定宽度放大倍数 [0,7]
nHeightScale
指定高度放大倍数 [0,7]
nFontType
字体类型
0 标准字体
1 压缩字体
nFontStyle
指定字体风格,可以为下表中的一个或者若干个(相加即可)
Value | Meaning |
0x00 | 正常 |
0x08 | 加粗 |
0x80 | 1点粗的下划线 |
0x100 | 2点粗的下划线 |
0x200 | 倒置(只在行首有效) |
0x400 | 反显(黑底白字) |
0x1000 | 每个字符顺时针旋转 90 度 |
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_TextOut并不立刻打印,需要调用POS_FeedXXX系列函数,才会把行缓冲区中的内容打印出来。
POS_SetBarcode
打印条码
Syntax
BOOL POS_SetBarcode(TCHAR * pszBarcodeContent, int nBarcodeUnitWidth, int nBarcodeHeight, int nHriFontType, int nHriFontPosition, int nBarcodeType)
Parameters
pszBarcodeContent
条码内容
nBarcodeUnitWidth
指定条码的基本元素宽度。
可以为以下列表中所列值(n)之一。
n | 单基本模块宽度 | 双基本模块宽度(离散型) | |
窄元素宽度 | 宽元素宽度 | ||
2 | 0.25mm | 0.25mm | 0.625mm |
3 | 0.375mm | 0.375mm | 1.0mm |
4 | 0.5mm | 0.5mm | 1.25mm |
5 | 0.625mm | 0.625mm | 1.625mm |
6 | 0.75mm | 0.75mm | 1.875mm |
nBarcodeHeight
条码高度
nHriFontType
指定 HRI(Human Readable Interpretation)字符的字体类型。
可以为以下列表中所列值之一。
Value | Meaning |
0x00 | 标准ASCII |
0x01 | 压缩ASCII |
nHriFontPosition
指定HRI(Human Readable Interpretation)字符的位置。
可以为以下列表中所列值之一。
Value | Meaning |
0x00 | 不打印 |
0x01 | 只在条码上方打印 |
0x02 | 只在条码下方打印 |
0x03 | 条码上、下方都打印 |
nBarcodeType
可以为以下列表中所列值之一。
Value | Meaning |
0x41 | UPC-A |
0x42 | UPC-C |
0x43 | JAN13(EAN13) |
0x44 | JAN8(EAN8) |
0x45 | CODE39 |
0x46 | ITF |
0x47 | CODEBAR |
0x48 | CODE93 |
0x49 | CODE 128 |
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_SetQRCode
打印二维码(QR码)
Syntax
BOOL POS_SetQRCode(TCHAR * pszContent, int nQRCodeUnitWidth, int nVersion, int nEcLevel)
Parameters
pszContent
二维码文本
nQRCodeUnitWidth
QR码单元宽度,范围[1,16]。
QR码单元宽度越大,QR码越大。
nVersion
QR码版本。0表示自动计算版本。
QR码版本越大,能编码的字符就越多,QR码也越大。
nEcLevel
QR码纠错等级。[1,4]
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_PrintPicture
打印BMP位图
Syntax
BOOL POS_PrintPicture(TCHAR * FileName, DWORD dwWidth, DWORD dwHeight)
Parameters
FileName
位图文件完整路径
dwWidth
要打印的宽度
dwHeight
要打印的高度
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_SelfTest
打印自检页
Syntax
BOOL POS_SelfTest()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_Query
查询打印机状态
Syntax
BOOL POS_Query(unsigned char status[1])
Parameters
status
打印机状态
该值目前无意义
Return value
如果状态查询成功,返回TRUE。否则,返回FALSE
Remarks
该命令返回TRUE表明打印机处于可打印状态。
POS_RTQuery
实时查询打印机状态
Syntax
BOOL POS_RTQuery(unsigned char status[4])
Parameters
status
打印机状态
各字节含义见下表:
1:打印机状态
位 | 0/1 | 十六进制码 | 十进制码 | 功能 |
0 | 0 | 00 | 0 | 固定为0 |
1 | 1 | 02 | 2 | 固定为1 |
2 | 0 | 00 | 0 | 一个或两个钱箱打开 (没有钱箱的机器该位固定为零) |
1 | 04 | 4 | 两个钱箱都关闭 | |
3 | 0 | 00 | 0 | 联机 |
1 | 08 | 8 | 脱机 | |
4 | 1 | 10 | 16 | 固定为1 |
5,6 |
| -- | -- | 未定义 |
7 | 0 | 00 | 00 | 纸已撕走 |
1 | 80 | 96 | 纸未撕走 |
2:传送脱机状态
位 | 0/1 | 十六进制码 | 十进制码 | 功能 |
0 | 0 | 00 | 0 | 固定为0 |
1 | 1 | 02 | 2 | 固定为1 |
2 | 0 | 00 | 0 | 上盖关 |
1 | 04 | 4 | 上盖开 | |
3 | 0 | 00 | 0 | 未按走纸键 |
1 | 08 | 8 | 按下走纸键 | |
4 | 1 | 10 | 16 | 固定为1 |
5 | 0 | 00 | 0 | 打印机不缺纸 |
1 | 20 | 32 | 打印机缺纸 | |
6 | 0 | 00 | 00 | 没有出错情况 |
1 | 40 | 64 | 有错误情况 | |
7 | 0 | 00 | 0 | 固定为0 |
3:传送错误状态
位 | 0/1 | 十六进制码 | 十进制码 | 功能 |
0 | 0 | 00 | 0 | 固定为0 |
1 | 1 | 02 | 2 | 固定为1 |
2 |
| -- | -- | 未定义 |
3 | 0 | 00 | 0 | 切刀无错误 |
1 | 08 | 8 | 切刀有错误 | |
4 | 1 | 10 | 16 | 固定为1 |
5 | 0 | 00 | 0 | 无不可恢复错误 |
1 | 20 | 32 | 有不可恢复错误 | |
6 | 0 | 00 | 00 | 打印头温度和电压正常 |
1 | 40 | 64 | 打印头温度或电压超出范围 | |
7 | 0 | 00 | 0 | 固定为0 |
4:传送纸传感器状态
位 | 0/1 | 十六进制码 | 十进制码 | 功能 |
0 | 0 | 00 | 0 | 固定为0 |
1 | 1 | 02 | 2 | 固定为1 |
2,3 | 0 | 00 | 0 | 有纸 |
1 | 0C | 12 | 纸将近 | |
4 | 1 | 10 | 16 | 固定为1 |
5,6 | 0 | 00 | 0 | 有纸 |
1 | 60 | 96 | 纸尽 | |
7 | 0 | 00 | 0 | 固定为0 |
Return value
如果状态查询成功,返回TRUE。否则,返回FALSE
Remarks
任何时候打印机收到该命令都会立刻返回。
POS_TicketSucceed
单据打印结果查询
Syntax
BOOL POS_TicketSucceed(int dwSendIndex)
Parameters
dwSendIndex
单据索引
可以从1开始依次递增,目前并无实际意义
Return value
单据打印完成,并且没有因为缺纸而中断,则返回TRUE。
否则,没有查到状态,或返回因为缺纸或其他错误导致打印中断,则返回FALSE。
Remarks
为了保证单据打印的可靠性,请每批次打印任务完成之后,调用一次该函数确认单据打印结果。
POS_FeedLine
Syntax
BOOL POS_FeedLine()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
打印机进纸一行
POS_FeedNLine
Syntax
BOOL POS_FeedNLine(int nLine)
Parameters
nLine
进纸行数
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
进纸nLine行
POS_FeedNDot
Syntax
BOOL POS_FeedNDot(int nDot)
Parameters
nDot
进纸点数
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
进纸nDot点。一般情况下,1mm有8个点。
POS_SetMotionUnit
设置水平和垂直移动单位
Syntax
BOOL POS_SetMotionUnit(int nHorizontal, int nVertical)
Parameters
nHorizontal
水平移动单位
nVertical
垂直移动单位
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
当nHorizontal和nVertical都设置为200时,1点就是0.125mm。
POS_SetLineHeight
设置行高
Syntax
BOOL POS_SetLineHeight(int nDistance)
Parameters
nDistance
行高
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_SetRightSpacing
设置字符右边空白
Syntax
BOOL POS_SetRightSpacing(int nDistance)
Parameters
nDistance
字符右边空白
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_SetAlign
设置对齐方式
Syntax
BOOL POS_SetAlign(int nAlign)
Parameters
nAlign
对齐方式
0 左对齐
1 居中对齐
2 右对齐
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_Reset
复位打印机。会清空设置。
Syntax
BOOL POS_Reset()
Parameters
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_KickOutDrawer
打开钱箱
Syntax
BOOL POS_KickOutDrawer(int nID, int nOnTimes, int nOffTimes);
Parameters
nID
钱箱编号
0 钱箱引脚2
1 钱箱引脚5
nOnTimes
钱箱脉冲高电位ms时间
nOffTimes
钱箱脉冲低电位ms时间
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_CutPaper
直接切纸
Syntax
BOOL POS_CutPaper(int nMode)
Parameters
nMode
切纸模式
0 全切
1 半切
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_FeedAndCut
打印机进纸[打印位置到切刀之间距离 + nDistance ×(纵向移动单位)]然后切纸
Syntax
BOOL POS_FeedAndCut(int nDistance)
Parameters
nDistance
额外进纸距离
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks
POS_Beep
蜂鸣器鸣叫
Syntax
BOOL POS_Beep(int nBeepCount, int nBeepMillis)
Parameters
nBeepCount
鸣叫次数
nBeepMillis
蜂鸣时间:100ms为单位
Return value
如果指令写入成功,返回TRUE。否则,返回FALSE
Remarks