资讯详情

java 生成一维码并打印

TSC使用打印机java打印,一行3列。

效果图:

1.引用jar包

<dependency>  <groupId>net.java.dev.jna</groupId>  <artifactId>jna</artifactId>  <version>3.2.2</version> </dependency>

2.引用的dll,将dll将文件复制到项目根目录,即项目根目录。提取码:tscdhttp://xn--https-bl8js66z7n7i//pan.baidu.com/s/1qUlE10qKNH6HOBnyunYh3g

3.代码

/**  * Copyright (C), 2021-2022,  * FileName: TscPrintUtils  * Author:     * Date:     2022/6/17 15:19  * Description:  * History:  * <author>          <time>          <version>          <desc>  * 作者姓名           修改时间           版本号              描述  */ package com.fahon.framework.util;  import com.sun.jna.Library; import com.sun.jna.Native; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils;  import java.util.ArrayList; import java.util.List;  /**  * 〈一句话功能简述〉<br>   * 〈〉  *  *   * @create 2022/6/17  * @since 1.0.0  */ public class TscPrintUtils {      public static void main(String[] args) {         List<String> a1 = new ArrayList<>();          a1.add("ZDC2205000111");         a1.add("ZDC2205000112");         a1.add("ZDC2205000113");          a1.add("ZDC2205000114");         a1.add("ZDC2205000115");         a1.add("ZDC2205000116");          a1.add("ZDC2205000117");         a1.add("ZDC2205000118");         a1.add("ZDC2205000119");          a1.add("ZDC22050001110");         print("TSC T-300A","99","17","320","140","128",a1,380);     }  /**      *      * @param pirnterName  打印机型号      * @param width   标签宽度      * @param heigth  标签高度      * @param x       一维码x起点      * @param y       Y起点的一维码      * @param type     条码类型      * @param listData 一维码内容      * @param fontX    一行中条码的Y轴间距      */      public static void print(String pirnterName, String width, String heigth, String x,             String y, String type,List<String> listData, Integer fontX){          int init =0;         double sum=listData.size();          for (int i = 0; i < Math.ceil( sum/ 3); i  ) {             System.setProperty("jna.encoding", "GBK");// 支持中文            TscLibDll.INSTANCE.openport(pirnterName);///打印机型号            TscLibDll.INSTANCE.setup(width,heigth,"5","10","0","0","0");             TscLibDll.INSTANCE.clearbuffer();              for (int j = 0; j <3 ; j  ) {                 if (init == listData.size()) {                      continue;                 }                  TscLibDll.INSTANCE.barcode(Integer.parseInt(x) j*fontX "",y,type,"100","1","180","2","3",listData.get(init));                 init  ;             }             TscLibDll.INSTANCE.printlabel("1", "1");             TscLibDll.INSTANCE.closeport();         }        }       public interface TscLibDll extends Library {         // 默认读取项目根路径TSCLIB.dll,绝对路径也可以填写         TscPrintUtils.TscLibDll INSTANCE = (TscPrintUtils.TscLibDll) Native.loadLibrary ("TSCLIB", TscPrintUtils.TscLibDll.class);          // 以下为dll支持函数库的方法,参数说明见附件         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);     } } 

标签: 300a差压传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台