zxing是Google提供的免费开源且操作十分方便的一个针对二维码的项目
代码也比较简单,这里我就直接把注释写上,直接根据自己的需要改动就行了.
maven依赖:
<dependencies>
<!-- https://mvnrepository.com/artifact/com.google.zxing/core -->
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>3.3.1</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
生成二维码的代码:
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import java.nio.file.Paths;
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
int width = 600;//水平像素
int height = 600;//垂直像素
String format = "png";//最后要保存的格式
String content = "hello world!";//内容
//定义二维码参数
HashMap hints = new HashMap();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");//编码
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);//防止二维码损坏导致数据丢失的级别
hints.put(EncodeHintType.MARGIN, 2);//二维码的轮廓与整个图片之间的距离
try {
BitMatrix bitMatrix = new MultiFormatWriter().encode(String.valueOf(content), BarcodeFormat.QR_CODE, width, height);
MatrixToImageWriter.writeToPath(bitMatrix, format, Paths.get("D:\\MyQR.png"));//这里改一下保存的位置就行了
} catch (Exception e) {
e.printStackTrace();
}
}
}