src/com/sxt/stat/utils/ZXingCodeEncodeUtil.java

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

package com.sxt.stat.utils;

import java.awt.BasicStroke;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.InputStream;
import java.util.EnumMap;

import javax.imageio.ImageIO;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.oned.MultiFormatOneDReader;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;

public class ZXingCodeEncodeUtil {

	// 二维码颜色
	private static final int BLACK = 0xFF000000;
	
	// 二维码背景颜色
	private static final int WHITE = 0xFFFFFFFF;
	// 二维码格式参数
	private static final EnumMap<EncodeHintType, Object> hints = new EnumMap<EncodeHintType, Object>(EncodeHintType.class);
	
	static {
		/*
		 * 二维码的纠错级别(排错率),4个级别: L (7%)、 M (15%)、 Q (25%)、 H (30%)(最高H)
		 * 纠错信息同样存储在二维码中,纠错级别越高,纠错信息占用的空间越多,那么能存储的有用讯息就越少;共有四级; 选择M,扫描速度快。
		 */
		hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
		// 二维码边界空白大小 1,2,3,4 (4为默认,最大)
		hints.put(EncodeHintType.MARGIN, 1);
		hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");//设置放入的字符的编码
	}

	
	
	
	/**
	 * 创建一个二维码保存到d盘
	 */
	public static BufferedImage createZXingCodeSaveToDpan(String content, int width, int height, String path, String imageType) {
		// 
		try {
			BitMatrix encode = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height,hints);
			
			// 得到二维码的宽度
			int code_width = encode.getWidth();
			// 得到二维码的高度
			int code_height = encode.getHeight();
			
			// 创建一张图片
			BufferedImage bufferedImage = new BufferedImage(code_width, code_height, BufferedImage.TYPE_INT_RGB);
			// 向图片中添加内容
			for(int i = 0; i < code_width; i++) {
后面还有 78 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。