119 lines
4.1 KiB
Java
119 lines
4.1 KiB
Java
import com.fuint.common.util.TscLibDll;
|
||
import com.fuint.fuintApplication;
|
||
import com.sun.jna.Library;
|
||
import com.sun.jna.Native;
|
||
import javafx.print.Printer;
|
||
import org.junit.Test;
|
||
import org.junit.runner.RunWith;
|
||
import org.springframework.boot.test.context.SpringBootTest;
|
||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||
import org.springframework.transaction.annotation.Transactional;
|
||
|
||
import java.nio.charset.StandardCharsets;
|
||
|
||
@RunWith(SpringJUnit4ClassRunner.class)
|
||
//@RunWith(SpringRunner.class)
|
||
@SpringBootTest(classes = fuintApplication.class)
|
||
@Transactional
|
||
public class dyj {
|
||
|
||
private static final String LOAD_LIBRARY = "TSCLIB";
|
||
|
||
public interface TscLibDll extends Library {
|
||
TscLibDll INSTANCE = (TscLibDll) Native.loadLibrary("TSCLIB", TscLibDll.class);
|
||
|
||
// 以下为dll函数库支持的方法,方法的作用与参数说明见附件【dll函数库api文档】
|
||
int about ();
|
||
int openport (String pirnterName);
|
||
int closeport ();
|
||
int sendcommand (String printerCommand);
|
||
int setup (String width,String height,String speed,String density,String sensor,String vertical,String offset);
|
||
int downloadpcx (String filename,String image_name);
|
||
int barcode (String x,String y,String type,String height,String readable,String rotation,String narrow,String wide,String code);
|
||
int printerfont (String x,String y,String fonttype,String rotation,String xmul,String ymul,String text);
|
||
int clearbuffer ();
|
||
int printlabel (String set, String copy);
|
||
int formfeed ();
|
||
int nobackfeed ();
|
||
int windowsfont (int x, int y, int fontheight, int rotation, int fontstyle, int fontunderline, String szFaceName, String content);
|
||
|
||
|
||
}
|
||
|
||
@Test
|
||
public void tt() {
|
||
// TscLibDll.INSTANCE.openport("GP-58MB Series");
|
||
|
||
// System.loadLibrary(LOAD_LIBRARY);
|
||
System.setProperty("jna.encoding", "GBK");
|
||
// TscLibDll.INSTANCE.about();
|
||
// TscLibDll.INSTANCE.openport("TSC TTP-2410M");
|
||
TscLibDll.INSTANCE.openport("GP-58MB Series");
|
||
TscLibDll.INSTANCE.sendcommand("------------交班统计------------");
|
||
|
||
// // 2.设置打印机纸张规格
|
||
// TscLibDll.INSTANCE.setup("100", "100", "5", "8", "0", "0", "0");
|
||
// // 3.清除上次打印后的缓存
|
||
// TscLibDll.INSTANCE.clearbuffer();
|
||
// // 4.将字体写入暂存区准备打印
|
||
// TscLibDll.INSTANCE.printerfont ("100", "10", "3", "0", "1", "1", "(JAVA) DLL Test!!");
|
||
// // 5.调用打印机打印
|
||
// TscLibDll.INSTANCE.printlabel("1", "1");
|
||
// 6.断开和打印机的连接
|
||
TscLibDll.INSTANCE.closeport();
|
||
|
||
|
||
|
||
// TscLibDll.INSTANCE.sendcommand("REM ***** This is a test by JAVA. *****");
|
||
|
||
// TscLibDll.INSTANCE.sendcommand("PUTPCX 550,10,\"UL.PCX\"");
|
||
|
||
// TscLibDll.INSTANCE.barcode("100", "40", "128", "50", "1", "0", "2", "2", "123456789");
|
||
// TscLibDll.INSTANCE.windowsfont(400, 200, 48, 0, 3, 1, "arial", "DEG 0");
|
||
// TscLibDll.INSTANCE.windowsfont(400, 200, 48, 90, 3, 1, "arial", "DEG 90");
|
||
}
|
||
|
||
/**
|
||
* 蜂鸣
|
||
*/
|
||
public static void buzzing(Printer printer) {
|
||
|
||
// System.loadLibrary(LOAD_LIBRARY);
|
||
//
|
||
//// TscLibDll.INSTANCE.openport(printer.getName());
|
||
// TscLibDll.INSTANCE.openport("GP-58MB Series");
|
||
//
|
||
//// TscLibDll.INSTANCE.sendBinaryData(Command.BUZZING.getCommandBytes(), Command.BUZZING.getCommandBytes().length);
|
||
// TscLibDll.INSTANCE.closeport();
|
||
}
|
||
|
||
}
|
||
enum Command {
|
||
|
||
/** 切纸 */
|
||
CUT_PAPER(new byte[]{0x1D, 0x56, 1}),
|
||
/** 蜂鸣 */
|
||
BUZZING(new byte[]{0x1B,0x42,2,6 }),
|
||
/** 水平居中 */
|
||
ALINE_CENTER(new byte[]{0x1B,0x61,1 }),
|
||
/** 左对齐 */
|
||
ALINE_LEFT(new byte[]{0x1B,0x61,0 }),
|
||
/** 右对齐 */
|
||
ALINE_RIGHT(new byte[]{0x1B,0x61,2 }),
|
||
/** 行间距 */
|
||
LINE_HEIGHT_DEFAULT(new byte[]{0x1B,0x32}),
|
||
/** 横向跳格 */
|
||
SKIP_SPACE(new byte[]{0x1B,0x44,16,20,24,28 });
|
||
|
||
Command(byte[] commandBytes) {
|
||
this.commandBytes = commandBytes;
|
||
}
|
||
|
||
private byte[] commandBytes;
|
||
|
||
public byte[] getCommandBytes() {
|
||
return commandBytes;
|
||
}
|
||
|
||
}
|