hutool-captcha 图片偏红问题
如图
设置代码背景色如下
// 设置背景颜色为白色 不生效
lineCaptcha.setBackground(Color.white);
问题代码
//返回 base64
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ImageIO.write(lineCaptcha.getImage(), "JPEG", bos);
byte[] bytes = bos.toByteArray();
Base64.Encoder encoder = Base64.getEncoder();
base64String = "data:image/png;base64," + encoder.encodeToString(bytes);
改正后代码
//返回 base64
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ImageIO.write(lineCaptcha.getImage(), "PNG", bos);
byte[] bytes = bos.toByteArray();
Base64.Encoder encoder = Base64.getEncoder();
base64String = "data:image/png;base64," + encoder.encodeToString(bytes);
之前代码IO读取时JPEG格式,改成PNG格式即可,格式不对导致图片失真