jar包:
JBarcode-Recognition_Source-0.2.jar
jbarcode-0.2.8.jar
commons-lang-2.6.jar
package com.cpp.core.common.utils;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.util.Date;
import org.jbarcode.JBarcode;
import org.jbarcode.encode.Code128Encoder;
import org.jbarcode.paint.BaseLineTextPainter;
import org.jbarcode.paint.WideRatioCodedPainter;
import org.jbarcode.paint.WidthCodedPainter;
import org.jbarcode.util.ImageUtil;
/**
* 条形码工具类
*
* @author
* @createDate
*
*/
public class BarcodeUtil {
static void saveToJPEG(BufferedImage paramBufferedImage, String paramString) {
saveToFile(paramBufferedImage, paramString, "jpeg");
}
static void saveToPNG(BufferedImage paramBufferedImage, String paramString) {
saveToFile(paramBufferedImage, paramString, "png");
}
static void saveToGIF(BufferedImage paramBufferedImage, String paramString) {
saveToFile(paramBufferedImage, paramString, "gif");
}
static void saveToFile(BufferedImage paramBufferedImage, String paramString1,
String paramString2) {
try {
FileOutputStream localFileOutputStream = new FileOutputStream(paramString1);
ImageUtil.encodeAndWrite(paramBufferedImage, paramString2, localFileOutputStream, 96,
96);
localFileOutputStream.close();
} catch (Exception localException) {
localException.printStackTrace();
}
}
public static String getBarCode(String str, String str2, String str3) {
String path = "";
try {
JBarcode localJBarcode = new JBarcode(Code128Encoder.getInstance(),
WideRatioCodedPainter.getInstance(), BaseLineTextPainter.getInstance());
/*localJBarcode.setEncoder(Code128Encoder.getInstance());
localJBarcode.setPainter(WideRatioCodedPainter.getInstance());
localJBarcode.setTextPainter(BaseLineTextPainter.getInstance());
localJBarcode.setShowCheckDigit(false);*/
localJBarcode.setEncoder(Code128Encoder.getInstance());
localJBarcode.setPainter(WidthCodedPainter.getInstance());
localJBarcode.setTextPainter(BaseLineTextPainter.getInstance());
localJBarcode.setCheckDigit(false);
localJBarcode.setShowCheckDigit(false);
BufferedImage localBufferedImage = localJBarcode.createBarcode(str);
localBufferedImage = localJBarcode.createBarcode(str);
//创建文件夹
Date date = new Date();
String years = DateUtils.getYear(date) + ""; //年
String mouth = DateUtils.getMonth(date); //月
String datas = DateUtils.getDay(date) + "";//日
//存放地址
path = years + "/" + mouth + "/" + datas + "/" + str3 + "/";
File targetFile = new File(str2 + path);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
saveToPNG(localBufferedImage, str2 + path + "/" + str + ".png");
return path + str + ".png";
} catch (Exception localException) {
localException.printStackTrace();
return null;
}
}
public static void main(String[] paramArrayOfString) {
try {
String str = "788515004012788514";
String str1 = "C:\\Users\\Administrator\\Desktop\\条形码";
getBarCode(str, str1, "");
} catch (Exception localException) {
localException.printStackTrace();
}
}
}