最近搞了个通过串口发送指令进行POS小票打印的程序,测试的机器是STAR SP742型号POS机。
主要的原理就是先把报表转成图片,再通过发送打印图片指令进行小票打印。
1.很多报表都有转成图片的函数方法,我选择的报表是VS自带的报表(RDLC格式),因为毕竟我的程序是C#写的嘛!
2.STAR SP742型号POS机打印图片的指令如下:
ESC K n NUL d1 d2…dn
[名称]标准密度图象
[代码]ASCII ESC K n NUL d1 d2 ……dn
十六进制 1B 4B n 00 d1 d2 ……dn
十进制 27 75 n 0 d1 d2 ……dn
[参数定义范围] 1≤n≤总点数
0≤d≤255
了解完了上面几点,那么接着看程序了。
首先定义一个接口,毕竟我的打印程序还是有一点清晰度问题的,接口便于扩展嘛
接着实现上面的接口,这也是本打印程序的重点啦~
其实在MSDN里也有一个RDLC报表打印的代码,下面也贴出来吧~
好了!打印功能的程序代码就这样OK啦~下面该做个窗口程序测试测试了
上面的界面拖得不是太好看,不哦过测试嘛~别忘了在“打印”按钮的点击事件里加测试代码。
Ctrl F5 运行吧!