实现一个简单的二维码生成器,对网址和信息转换成二维码,使用zxing库实现入图:
代码如下:
0.加依赖
<!-- hutool工具包 --><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.11</version></dependency> <!--zxing生成二维码 --><dependency><groupId&le.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><!-- zxing生成二维码 --><dependency><groupId&le.zxing</groupId><artifactId>javase</artifactId><version>3.5.1</version></dependency>
1.写配置
@Configuration
public class QrCodeConfiguration {@Beanpublic QrConfig qrConfig() {QrConfig config = new QrConfig();// 设置二维码前景色config.setForeColor(Color.BLACK);// 设置二维码的背景色config.setBackColor(Color.WHITE);//config.setImg() 设置图片//config.setHeight();设置高度// config.setWidth(); 设置宽度//config.setCharset(); //这个方法用于设置二维码的编码,默认UTF-4//config.setMargin();//这个方法用于设置二维码的边缘空白区域(或称为边距),边界区域是二维码图像周围的空白区域,用于防止图像被裁剪或覆盖//config.setQrVersion()//这个方法用于设置二维码的版本,二维码版本表示二维码的大小和容纳数据的能力。较高的版本意味着更大的二维码,并且可以容纳更多的数据//config.setShapeHint()//这个方法用于设置二维码的形状提示,形状提示是指帮助识别二维码的提示信息,通常用于在扫描二维码时指导扫描设备正确方向//config.setRatio()//这个方法用于设置二维码和内部图像的宽高比例return config;}
}
2.写接口
@RestController
@RequestMapping("qr")
@Api(tags = "二维码生成")
public class QrCodeServlet{//注入对应的bean@ResourceQRService qrService;/*** 生成图像** @param content 内容* @param response 响应* @throws IOException ioexception*/@GetMapping("/stream")@ApiOperation("输入信息导出二维码")@ApiImplicitParam(name = "content",value = "文本信息")public void generateImage(String content, HttpServletResponse response) throws IOException {response.setHeader("content-type", "image/png");ateToStream(content, response);}/*** 生成图像base64** @param content 内容* @return {@link R}<{@link String}>*/@GetMapping("base64")@ApiOperation("输入信息导出二维码(base64格式)")@ApiImplicitParam(name = "content",value = "文本信息")public R generateImageToBase64(String content) {String base64 = ateBase64(content);return R.ok(base64);}}
这样一个简单的springboot网页二维码生成器就实现好了
本文发布于:2024-01-30 01:17:39,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170654866318203.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |