fix qrcode bug

This commit is contained in:
Looly 2020-09-16 16:00:31 +08:00
parent f9f73e4c02
commit 3421a8f54d
4 changed files with 17 additions and 13 deletions

View File

@ -22,6 +22,8 @@
* 【core 】 修复UrlBuilder地址参数问题issue#I1UWCA@Gitee
* 【core 】 修复StrUtil.toSymbolCase转换问题issue#1075@Github
* 【log 】 修复打印null对象显示{msg}异常问题issue#1084@Github
* 【extra 】 修复ServletUtil.getReader中未关闭的问题
* 【extra 】 修复QrCodeUtil在新版本zxing报错问题issue#1088@Github
-------------------------------------------------------------------------------------------------------------

View File

@ -1,18 +1,17 @@
package cn.hutool.extra.qrcode;
import cn.hutool.core.img.ImgUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.CharsetUtil;
import com.google.zxing.EncodeHintType;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import java.awt.Color;
import java.awt.Image;
import java.io.File;
import java.nio.charset.Charset;
import java.util.HashMap;
import com.google.zxing.EncodeHintType;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import cn.hutool.core.img.ImgUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.CharsetUtil;
/**
* 二维码设置
*
@ -34,8 +33,8 @@ public class QrConfig {
protected Integer backColor = WHITE;
/** 边距1~4 */
protected Integer margin = 2;
/** 设置二维码中的信息量,可设置0-40的整数二维码图片也会根据qrVersion而变化0表示根据传入信息自动变化 */
protected Integer qrVersion = 0;
/** 设置二维码中的信息量,可设置1-40的整数 */
protected Integer qrVersion;
/** 纠错级别 */
protected ErrorCorrectionLevel errorCorrection = ErrorCorrectionLevel.M;
/** 编码 */

View File

@ -27,6 +27,7 @@ import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
@ -91,8 +92,8 @@ public class ServletUtil {
* @since 4.0.2
*/
public static String getBody(ServletRequest request) {
try {
return IoUtil.read(request.getReader());
try(final BufferedReader reader = request.getReader()) {
return IoUtil.read(reader);
} catch (IOException e) {
throw new IORuntimeException(e);
}

View File

@ -4,10 +4,12 @@ import cn.hutool.core.codec.Base64;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.lang.Console;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import org.junit.Assert;
import org.junit.Ignore;
import org.junit.Test;
import java.awt.Color;
import java.awt.image.BufferedImage;
import java.io.File;
/**
@ -19,9 +21,9 @@ import java.io.File;
public class QrCodeUtilTest {
@Test
@Ignore
public void generateTest() {
QrCodeUtil.generate("https://hutool.cn/", 300, 300, FileUtil.file("e:/qrcode.jpg"));
final BufferedImage image = QrCodeUtil.generate("https://hutool.cn/", 300, 300);
Assert.assertNotNull(image);
}
@Test