文档详情

java生成读取条形码和二维码图片.doc

发布:2018-06-14约7.59千字共10页下载文档
文本预览下载声明
Java生成读取条形码和二维码图片 生成条形码,二维码图片,解析条形码,二维码图片的工具类,需要用到的jar包:core.jar,zxing-javase.jar import com.google.zxing.WriterException; import com.google.zxing.client.j2se.BufferedImageLuminanceSource; import com.google.zxing.client.j2se.MatrixToImageWriter; import mon.BitMatrix; import mon.HybridBinarizer; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; import java.awt.Color; import java.awt.Graphics2D; import java.awt.Image; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Hashtable; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; import javax.imageio.ImageIO; * @author wiki public class ZxingTool { private static final int IMAGE_WIDTH = 80; private static final int IMAGE_HEIGHT = 80; private static final int IMAGE_HALF_WIDTH = IMAGE_WIDTH / 2; private static final int FRAME_WIDTH = 2; * 生成条形码 * @param contents 条形码内容 * @param width 条形码宽度 * @param height 条形码高度 * @return public static BufferedImage encodeBarcode(String contents, int width, int height){ int codeWidth = 3 + // start guard (7 * 6) + // left bars 5 + // middle guard (7 * 6) + // right bars 3; // end guard codeWidth = Math.max(codeWidth, width); BufferedImage barcode = null; try { BitMatrix bitMatrix = new MultiFormatWriter().encode(contents,BarcodeFormat.EAN_13, codeWidth, height, null); barcode= MatrixToImageWriter.toBufferedImage(bitMatrix); } catch (Exception e) { e.printStackTrace(); return barcode; * 解析读取条形码 * @param barcodePath 条形码文件路径 * @return public static String decodeBarcode(String barcodePath){ BufferedImage image; Result result = null; try { image = ImageIO.read(new File(barcodePath)); if (image != null) { LuminanceSource source = new BufferedImageLuminanceSource(image); BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source)); result = new M
显示全部
相似文档