java通过jnative调用TSCLIB.DLL的sendcommand方法发送打印二维码的命令给打印机,但是打印机打印出的是空白,用软件打印二维码也没问题,其他的命令都是可以打印的,只有二维码打印出来的是空白。不知道为什么打印不了,打印机是TSC TTP-234.
代码如下:
public static void main(String[] args) throws UnsupportedEncodingException {
System.setProperty("jna.encoding", "GBK");// 支持中文
// TscLibDll.INSTANCE.about();
TscLibDll.INSTANCE.openport("TSC TTP-244 Pro");
// TscLibDll.INSTANCE.downloadpcx("C:\UL.PCX", "UL.PCX");
// TscLibDll.INSTANCE.sendcommand("REM ***** This is a test by JAVA. *****");
TscLibDll.INSTANCE.setup("60", "40", "5", "15", "0", "2", "0");
TscLibDll.INSTANCE.sendcommand("SET TEAR ON");
TscLibDll.INSTANCE.clearbuffer();
String command = "QRCODE 300,70,L,6,A,0,M2,S3,\"123456\"";// 打印二维码
TscLibDll.INSTANCE.sendcommand(command);
// TscLibDll.INSTANCE.sendcommand("PUTPCX 550,10,\"UL.PCX\"");
// TscLibDll.INSTANCE.printerfont("100", "50", "TSS24.BF2", "0", "1", "1", "Technology");
TscLibDll.INSTANCE.barcode("70", "140", "128", "90", "0", "0", "2", "2", "A123456789");// 打印内容,参数是位置和字体
TscLibDll.INSTANCE.windowsfont(15, 15, 40, 0, 2, 1, "Arial", "网络科技公司");
TscLibDll.INSTANCE.windowsfont(30, 90, 32, 0, 2, 0, "Arial", "--- 研发部");
TscLibDll.INSTANCE.windowsfont(120, 240, 32, 0, 2, 0, "Arial", "A123456789");
TscLibDll.INSTANCE.printlabel("1", "1");
TscLibDll.INSTANCE.closeport();
}
}