一个比较好的2d条形码解析条码的工具库
从ZXING 中剥离出来的
测试了一下,还可以,基本上清晰图片都可以识别
- importjava.awt.Frame;
- importjava.awt.Graphics2D;
- importjava.awt.Image;
- importjava.awt.MediaTracker;
- importjava.awt.image.BufferedImage;
- importcom.google.zxing.MonochromeBitmapSource;
- importcom.google.zxing.MultiFormatReader;
- importcom.google.zxing.Reader;
- importcom.google.zxing.ReaderException;
- importcom.google.zxing.Result;
- importcom.google.zxing.client.j2se.BufferedImageMonochromeBitmapSource;
- publicclassCodeReader{
- /**
- *@paramargs
- *@throwsReaderException
- *@throwsInterruptedException
- */
- publicstaticvoidmain(String[]args)throwsReaderException,InterruptedException{
- Readerreader=newMultiFormatReader();
- StringimgPath=
- "test.jpg";
- Imageimage=java.awt.Toolkit.getDefaultToolkit().getImage(imgPath);
- BufferedImagemyImage=CodeReader.imageToBufImage(image);
- MonochromeBitmapSourcesource=newBufferedImageMonochromeBitmapSource(myImage);
- Resultresult=reader.decode(source);
- System.out.println(result.getText());
- }
- publicstaticBufferedImageimageToBufImage(Imageimage)throwsInterruptedException{
- MediaTrackermt=newMediaTracker(newFrame());
- mt.addImage(image,0);
- mt.waitForID(0);
- BufferedImagebufImage=newBufferedImage(image.getWidth(null),image.getHeight(null),BufferedImage.TYPE_INT_BGR);
- Graphics2Dg2d=bufImage.createGraphics();
- g2d.drawImage(image,0,0,null);
- returnbufImage;
- }
- }