/**
* @包名 OneBarcodeUtil
* @文件名 BarcodeUtil.java
* @作者 YanFeng.Wang
* @创建日期 2015年6月10日
* @版本 V 1.0
*/
package OneBarcodeUtil;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.jbarcode.JBarcode;
import org.jbarcode.encode.Code39Encoder;
import org.jbarcode.encode.EAN13Encoder;
import org.jbarcode.encode.EAN8Encoder;
import org.jbarcode.paint.BaseLineTextPainter;
import org.jbarcode.paint.EAN13TextPainter;
import org.jbarcode.paint.EAN8TextPainter;
import org.jbarcode.paint.WideRatioCodedPainter;
import org.jbarcode.paint.WidthCodedPainter;
import org.jbarcode.util.ImageUtil;
/**
* @类名: BarcodeUtil
* @描述: TODO()
* @作者 YanFeng.Wang
* @日期 2015年6月10日 下午2:28:39
*
*/
public class BarcodeUtil {
public static void main(String[] paramArrayOfString)
{
try
{
JBarcode localJBarcode = new JBarcode(EAN13Encoder.getInstance(), WidthCodedPainter.getInstance(), EAN13TextPainter.getInstance());
//生成. 欧洲商品条码(=European Article Number)
//这里我们用作图书条码
String str = "201505141921";
BufferedImage localBufferedImage = localJBarcode.createBarcode(str);
saveToGIF(localBufferedImage, "EAN13.gif");
localJBarcode.setEncoder(Code39Encoder.getInstance());
localJBarcode.setPainter(WideRatioCodedPainter.getInstance());
localJBarcode.setTextPainter(BaseLineTextPainter.getInstance());
localJBarcode.setShowCheckDigit(false);
//xx
str = "JBARCODE-39";
localBufferedImage = localJBarcode.createBarcode(str);
saveToPNG(localBufferedImage, "Code39.png");
}
catch (Exception localException)
{
localException.printStackTrace();
}
}
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("d:/" + paramString1);
ImageUtil.encodeAndWrite(paramBufferedImage, paramString2, localFileOutputStream, 96, 96);
localFileOutputStream.close();
}
catch (Exception localException)
{
localException.printStackTrace();
}
}
/*
public static void main(String[] paramArrayOfString) {
try {
JBarcode localJBarcode = new JBarcode(EAN8Encoder.getInstance(),WidthCodedPainter.getInstance(),EAN8TextPainter.getInstance());
String str = "2219644";
BufferedImage localBufferedImage = localJBarcode.createBarcode(str);
saveToGIF(localBufferedImage, "EAN8.jpg");
}
catch (Exception localException) {
localException.printStackTrace();
}
}
static void saveToJPEG(BufferedImage paramBufferedImage, String paramString) {
saveToFile(paramBufferedImage, paramString, "jpeg");
}
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("d:/" + paramString1);
ImageUtil.encodeAndWrite(paramBufferedImage, paramString2, localFileOutputStream, 96, 96);
localFileOutputStream.close();
}
catch (Exception localException) {
localException.printStackTrace();
}
} */
/**
* 等比例放大图象
*
* @param imgUrl 图像路径
* @param resultImgUrl 放大后的存放路径
* @param scale 放大倍数
* @throws IOException
*/
static void scale(String imgUrl, String resultImgUrl, int scale)
throws IOException {
BufferedImage src = ImageIO.read(new File(imgUrl));
int width = src.getWidth();
int height = src.getHeight();
width = width * scale;
height = height * scale;
Image image = src.getScaledInstance(width, height, Image.SCALE_DEFAULT);
BufferedImage tag = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = tag.getGraphics();
g.drawImage(image, 0, 0, null);
g.dispose();
ImageIO.write(tag, "JPEG", new File(resultImgUrl));
}
}