POS打印机设立字体大小
POS打印机设置字体大小
1.EPON指令改变打印机字体大小
在用Socket直接向POS打印机写入数据进行打印时,有时候需要设置字体的大小。默认情况下打印机的字体是比较小的,那么,我们可以通过EPSON指令改变打印机字体的大小.
String content = "数据测据测试一下字体的大小\n"; Socket client = new Socket(ip, port); OutputStream os = client.getOutputStream(); //字体横向放大一倍 os.write(0x1c); os.write(0x21); os.write(4); os.write(content.getBytes("gbk")); //字体纵向放大一倍 os.write(0x1c); os.write(0x21); os.write(8); os.write(content.getBytes("gbk")); //字体横向纵向均放大一倍 os.write(0x1c); os.write(0x21); os.write(4); os.write(content.getBytes("gbk")); os.flush();
2.兼容多种类型POS打印机
由于POS打印机的类型不同,可能支持的EPSON指令也不同。就拿放大字体来说,pos58 打印机和 pos80 打印机指令就不尽相同,那么如何兼容多种打印机呢。
比如说,有的打印机并不是使用 0x1c 作为放大指令,而是使用 0x1b 作为放大指令,怎么办?容易。
/* 横向放大一倍 */ os.write(0x1c); os.write(0x21); os.write(4); os.write(0x1b); os.write(0x21); os.write(4); /* 纵向放大一倍 */ os.write(0x1c); os.write(0x21); os.write(8); os.write(0x1b); os.write(0x21); os.write(8); /* 横向纵向都放大一倍 */ os.write(0x1c); os.write(0x21); os.write(12); os.write(0x1b); os.write(0x21); os.write(12);
3.打印符形码
os.write(0x1d); os.write(0x68); os.write(120); os.write(0x1d); os.write(0x48); os.write(0x01); os.write(0x1d); os.write(0x6B); os.write(0x02); os.write("091955826335".getBytes()); //条形码数字 os.write(0x00); os.write("\n".getBytes());
文章参考:Java 实现 POS 打印机无驱打印
1 楼
ysjooouss
2012-07-27
请教 为什么英文跟数字无法变大呢 而中文字可以变大