注意设置好 setModuleWidth();里面的数值
public static void Genertebarcode4j(String barcode) {
EAN128Bean ean128Bean = new EAN128Bean();
final int dpi = 150;
//只调整这个数值和上面的数值来看条码大小是否符合自己预期,自己乱写数值会导致条形码无法
//识别,条形码密度
ean128Bean.setModuleWidth(UnitConv.in2mm(2.0f / dpi));
System.out.println("UnitConv.in2mm(1.0f / dpi) = " + UnitConv.in2mm(1.0f / dpi));
ean128Bean.doQuietZone(false);
//打开输出文件
File outputFile = new File("D:\\ss\\" + barcode+ ".png");
OutputStream out = null;
try {
out = new FileOutputStream(outputFile);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
BitmapCanvasProvider canvas = new BitmapCanvasProvider(out, "image/x-png", dpi, BufferedImage.TYPE_BYTE_BINARY, false, 0);
//生成条形码
ean128Bean.generateBarcode(canvas, barcode);
//生成结束
canvas.finish();
out.close();
} catch (IOException ex) {
System.out.println("ex = " + ex);
}
}