int _stdcall PosPrint(CString text,int FontSize,int Alignment)
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
if (text=="")
{
return 0;
}
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
char com[5];
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
DWORD d;
int iRet;
//初始化打印机
memset( com, 0, sizeof(com));
memcpy( com, "\x1B\x40", 2);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置对齐方式
memset( com, 0, sizeof(com));
switch(Alignment)
{
case 0:
memcpy( com, "------------------", 3);//指令已略
break;
case 1:
memcpy( com, "------------------", 3);//指令已略
break;
case 2:
memcpy( com, "------------------", 3);//指令已略
break;
default:
memcpy( com, "------------------", 3);//指令已略
break;
}
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置字符大小
memset( com, 0, sizeof(com));
switch(FontSize)
{
case 1:
memcpy( com, "------------------", 3);//指令已略
break;
case 2:
memcpy( com, "------------------", 3);//指令已略
break;
case 3:
memcpy( com, "------------------", 3);//指令已略
break;
case 4:
memcpy( com, "------------------", 3);//指令已略
break;
case 5:
memcpy( com, "------------------", 3);//指令已略
break;
case 6:
memcpy( com, "------------------", 3);//指令已略
break;
case 7:
memcpy( com, "------------------", 3);//指令已略
break;
case 8:
memcpy( com, "------------------", 3);//指令已略
break;
default:
memcpy( com, "------------------", 3);//指令已略
break;
}
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置行间距
memset( com, 0, sizeof(com));
memcpy( com, "----------------", 3);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//初始化黑标
// memset( com, 0, sizeof(com));
// memcpy( com, "\--------------", 2);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//开始打印列
// memset( com, 0, sizeof(com));
// memcpy( com, "-------------------", 4);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置左侧空白量
memset( com, 0, sizeof(com));
memcpy( com, "---------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置可打印区域
memset( com, 0, sizeof(com));
memcpy( com, "\-------------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//打印并换行
memset( com, 0, sizeof(com));
memcpy( com, "--------------", 1);
iRet=WriteFile(hFile,text,text.GetLength(),&d,NULL);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//打印并进纸N行
// memset( com, 0, sizeof(com));
// memcpy( com, "-----------------", 3);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//走纸并切纸
// memset( com, 0, sizeof(com));
// memcpy( com, "---------------------", 4);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 0;
}
int _stdcall CutPaper()
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
char com[5];
DWORD d;
int iRet;
//走纸并切纸
memset( com, 0, sizeof(com));
memcpy( com, "------------------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 1;
}
int _stdcall GoPaper()
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
CString str;
char com[6];
// str.Format("\\x%2x",n);
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
DWORD d;
int iRet;
//打印并进纸10行
memset( com, 0, sizeof(com));
sprintf( com, "------------------------0");
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 1;
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
if (text=="")
{
return 0;
}
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
char com[5];
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
DWORD d;
int iRet;
//初始化打印机
memset( com, 0, sizeof(com));
memcpy( com, "\x1B\x40", 2);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置对齐方式
memset( com, 0, sizeof(com));
switch(Alignment)
{
case 0:
memcpy( com, "------------------", 3);//指令已略
break;
case 1:
memcpy( com, "------------------", 3);//指令已略
break;
case 2:
memcpy( com, "------------------", 3);//指令已略
break;
default:
memcpy( com, "------------------", 3);//指令已略
break;
}
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置字符大小
memset( com, 0, sizeof(com));
switch(FontSize)
{
case 1:
memcpy( com, "------------------", 3);//指令已略
break;
case 2:
memcpy( com, "------------------", 3);//指令已略
break;
case 3:
memcpy( com, "------------------", 3);//指令已略
break;
case 4:
memcpy( com, "------------------", 3);//指令已略
break;
case 5:
memcpy( com, "------------------", 3);//指令已略
break;
case 6:
memcpy( com, "------------------", 3);//指令已略
break;
case 7:
memcpy( com, "------------------", 3);//指令已略
break;
case 8:
memcpy( com, "------------------", 3);//指令已略
break;
default:
memcpy( com, "------------------", 3);//指令已略
break;
}
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置行间距
memset( com, 0, sizeof(com));
memcpy( com, "----------------", 3);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//初始化黑标
// memset( com, 0, sizeof(com));
// memcpy( com, "\--------------", 2);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//开始打印列
// memset( com, 0, sizeof(com));
// memcpy( com, "-------------------", 4);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置左侧空白量
memset( com, 0, sizeof(com));
memcpy( com, "---------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//设置可打印区域
memset( com, 0, sizeof(com));
memcpy( com, "\-------------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//打印并换行
memset( com, 0, sizeof(com));
memcpy( com, "--------------", 1);
iRet=WriteFile(hFile,text,text.GetLength(),&d,NULL);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//打印并进纸N行
// memset( com, 0, sizeof(com));
// memcpy( com, "-----------------", 3);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
//走纸并切纸
// memset( com, 0, sizeof(com));
// memcpy( com, "---------------------", 4);
// iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 0;
}
int _stdcall CutPaper()
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
char com[5];
DWORD d;
int iRet;
//走纸并切纸
memset( com, 0, sizeof(com));
memcpy( com, "------------------------", 4);
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 1;
}
int _stdcall GoPaper()
{
char ComNo[256];
memset(ComNo,0,sizeof(ComNo));
CString m_strCurPath = GetCurModPath();
CString m_striniPath =m_strCurPath+"\\ComConfig.ini";
CString str;
char com[6];
// str.Format("\\x%2x",n);
GetPrivateProfileString("COMNO","PrintCom","",ComNo,MAX_PATH,m_striniPath);
HANDLE hFile = CreateFile(ComNo,GENERIC_READ|GENERIC_WRITE,0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_OFFLINE, NULL);
//打开串口句柄
if (INVALID_HANDLE_VALUE==hFile)
{
return -1;
}
DCB getDCB;
GetCommState(hFile,&getDCB);
getDCB.BaudRate = 38400;
getDCB.ByteSize =8;
getDCB.Parity = NOPARITY;
getDCB.StopBits = ONESTOPBIT;
getDCB.fBinary = TRUE;
getDCB.fParity = FALSE;
SetCommState(hFile,&getDCB);
DWORD d;
int iRet;
//打印并进纸10行
memset( com, 0, sizeof(com));
sprintf( com, "------------------------0");
iRet=WriteFile(hFile,com,sizeof(com),&d,NULL);
CloseHandle(hFile);
return 1;