微信二维码的制作

 1.导入pom中的jar包

  <!-- https://mvnrepository.com/artifact/com.google.zxing/core -->
        <dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>core</artifactId>
            <version>3.3.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.google.zxing/javase -->
        <dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>javase</artifactId>
            <version>3.3.3</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>

 2.编写一个类,核心代码BitMatrix bitMatrix=new MultiFormatWriter().encode(json, BarcodeFormat.QR_CODE, width, height,hits);创建一个矩阵对象

package com.QRcode;

import java.io.IOException;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Path;
import java.text.Format;
import java.util.HashMap;
import java.util.Map;

import org.junit.Test;

import com.alibaba.fastjson.JSONObject;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;

public class QRcode {
 
	
	@Test
	public void GenerateQRcode() throws WriterException, IOException{
		
		JSONObject jsonObject=new JSONObject();
		
		jsonObject.put("company", "com.baidu.cn");
		jsonObject.put("author", "lxl");
		jsonObject.put("address", "江西省吉安市");
	
//		json对象转化为json格式的字符串
		String json=jsonObject.toString();
		
		System.out.println(json);
		
//		创建宽高
		int width=200;
		int height=200;
//		创建map集合
		Map<EncodeHintType, Object> hits=new HashMap<EncodeHintType, Object>();
		
		hits.put(EncodeHintType.CHARACTER_SET, "UTF-8");
		
//		创建一个矩阵对象
		BitMatrix bitMatrix=new MultiFormatWriter().encode(json, BarcodeFormat.QR_CODE, width, height,hits);
	
		String filename="D://";
		String filepath="QRcode.jpg";
		
		Path path=FileSystems.getDefault().getPath(filename,filepath);
		
//	   将矩阵对象生成一个图片
		MatrixToImageWriter.writeToPath(bitMatrix, "jpg", path);
	    System.out.println("生成二维码");
	}
}

 3.运行后就自动生成二维码。

猜你喜欢

转载自www.cnblogs.com/islandlxl/p/10051336.html