package com.ruoyi.ptxlib;

import com.ruoyi.ptxlib.domain.PTXLabelInfo;
import com.ruoyi.ptxlib.domain.PTXLabelText;
import com.ruoyi.ptxlib.service.PTXLib;
import com.ruoyi.ptxlib.service.impl.PTXService;

public class WindowsFormApp {
    private void test() {
        PTXService ptxService = new PTXService();

        String EPC = "10ac0002";

        PTXLib.INSTANCE.PTXA_DLLinit();
        //打印文字及条码
        PTXLib.INSTANCE.openport("USB"); // 使用USB口打印
        // PTXLib.INSTANCE.openethernet("10.100.33.107",9100);//使用网口打印，打印PORT默认为9100，可在打印机内修改
        // PTXLib.INSTANCE.PTXA_DownloadPCX("UL.PCX", "UL");//下载UL.PCX至打印机，此项下载需在createform之前

        // 创建一个表单，并设置打印头
        ptxService.createForm(300);

        // 使用内部字体打印时，可以选择是否加粗，单独下载的自由字体此功能无效
        ptxService.setBold(true);

        // 使用中文字体进行打印，可选配字库卡
        // ptxService.printText(new PTXLabelText(80, 10, 35,10,10,"简体中文测试test"));

        // ptxService.writeRFID(EPC);

        ptxService.printCode128(10, 65, 2, "barcodetest", true,5.14); //打印code128一维码，high高度单位为0.1英寸，包含码文是最小为4，不包含码文是最小为3，最大99
        // ptxService.printQrCode("5","120","5","QRCODETEST");//打印QRCODE二维码
        //PTXLIBDLL.INSTANCE.sendcommand("LOGO\r\n8;8;UL\r\nSTOP\r\n")将UL.PCX图片打印出来
        ptxService.printForm();//打印此表单

        PTXLib.INSTANCE.closeport();
    }

    public static void main(String[] args) {
        PTXLabelInfo ptxLabelInfo = new PTXLabelInfo();
        ptxLabelInfo.setPid(300);
        ptxLabelInfo.setConnectType(0);
        ptxLabelInfo.setPrinterName("USB");

        PTXService ptxService = new PTXService();
        for (int i = 0; i < 3; i++) {
            String epc = "10AC012";
            ptxLabelInfo.setEpc(epc + i);
            ptxService.printLabel(ptxLabelInfo);
        }
    }
}
