# beautify-qrcode
**Repository Path**: getjava/beautify-qrcode
## Basic Information
- **Project Name**: beautify-qrcode
- **Description**: 创意二维码,自定义模板,生成不同的创意二维码
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2022-06-05
- **Last Updated**: 2022-06-05
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 创意二维码
## 项目简介
1. 创意二维码生成工具。
2. 项目目前已经有了3个图元模板可以使用。【甜模板,西瓜模板,龙猫模板】生成的图片示例见下方。
3. 可以自定义图元模板,需要UI切图。
## 项目用法:
1. 将程序打包成Jar包,在项目中进行引用。代码示例见下方。
2. 默认已经有了3个模板,可以直接使用。模板名称【watermelon,sweet,chinchilla】
3. 返回的BufferedImage可以进一步操作,可以添加背景图,logo
如需要自定义图元模板
> 1. 在resources/template目录下,创建模板目录,放入图元。模板目录名称就是模板名称。
> 2. 参考已有图元模板或者StructEnum枚举类,制作图元。
> 3. 模板目录下rule.json是图元排序规则。图元越大sort应该越小。否则生成的二维码太碎。
## 生成二维码示例
test_Watermelon.png - > 原图:test_Watermelon_original_picture.jpg

test_Sweet.png - > 原图:test_Sweet_original_picture.gif

test_Chinchilla.png - > 原图:test_Chinchilla_original_picture.jpg

## 代码示例
~~~
// 待生成图片地址
String pic = "D:\\test.png";
// 待生成二维码字符串
String qrContent = "https://www.baidu.com/";
// 使用哪种模板生成二维码
//String templateName = TemplateEnum.sweet.name();
//String templateName = TemplateEnum.chinchilla.name();
String templateName = TemplateEnum.watermelon.name();
// 细胞像素
int cellBit = 10;
// 二维码容错率
ErrorCorrectEnum errorCorrect = ErrorCorrectEnum.M;
// 拼装参数
QrCodeParam qrCodeParam = QrCodeParam
.builder()
.cellBit(cellBit)
.errorCorrect(errorCorrect)
.content(qrContent)
.templateType(templateName)
.build();
// 生产美化二维码
qrCodeParam = ImageQrCodeUtil.create(qrCodeParam);
try {
// 二维码保存
File imgFile = new File(pic);
ImageIO.write(qrCodeParam.getBeautifyImage(), QrCodeConstant.DEFAULT_IMAGE_TYPE, imgFile);
} catch (IOException e) {
e.printStackTrace();
}
~~~