mirror of
https://gitee.com/dromara/hutool.git
synced 2025-04-05 17:37:59 +08:00
新增 QRCode base64 编码形式返回
This commit is contained in:
parent
0d4da3bec4
commit
addf09488d
@ -42,31 +42,33 @@ public class QrCodeUtil {
|
||||
|
||||
/**
|
||||
* 生成代 logo 图片的 Base64 编码格式的二维码,以 String 形式表示
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
* @param imageType 图片类型(图片扩展名),见{@link ImgUtil}
|
||||
*
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
* @param imageType 图片类型(图片扩展名),见{@link ImgUtil}
|
||||
* @param logoBase64 logo 图片的 base64 编码
|
||||
* @return 图片 Base64 编码字符串
|
||||
* @return 图片 Base64 编码字符串
|
||||
*/
|
||||
public static String generateAsBase64(String content, QrConfig qrConfig,String imageType,String logoBase64){
|
||||
public static String generateAsBase64(String content, QrConfig qrConfig, String imageType, String logoBase64) {
|
||||
byte[] decode;
|
||||
try {
|
||||
decode = Base64.getDecoder().decode(logoBase64);
|
||||
}catch (Exception e){
|
||||
} catch (Exception e) {
|
||||
throw new QrCodeException(e);
|
||||
}
|
||||
return generateAsBase64(content,qrConfig,imageType,decode);
|
||||
return generateAsBase64(content, qrConfig, imageType, decode);
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成代 logo 图片的 Base64 编码格式的二维码,以 String 形式表示
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
* @param imageType 图片类型(图片扩展名),见{@link ImgUtil}
|
||||
* @param logo logo 图片的byte[]
|
||||
* @return 图片 Base64 编码字符串
|
||||
*
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
* @param imageType 图片类型(图片扩展名),见{@link ImgUtil}
|
||||
* @param logo logo 图片的byte[]
|
||||
* @return 图片 Base64 编码字符串
|
||||
*/
|
||||
public static String generateAsBase64(String content, QrConfig qrConfig,String imageType,byte [] logo){
|
||||
public static String generateAsBase64(String content, QrConfig qrConfig, String imageType, byte[] logo) {
|
||||
BufferedImage img;
|
||||
try {
|
||||
img = ImageIO.read(new ByteArrayInputStream(logo));
|
||||
@ -74,21 +76,22 @@ public class QrCodeUtil {
|
||||
throw new QrCodeException(e);
|
||||
}
|
||||
qrConfig.setImg(img);
|
||||
return generateAsBase64(content,qrConfig, imageType);
|
||||
return generateAsBase64(content, qrConfig, imageType);
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成 Base64 编码格式的二维码,以 String 形式表示
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
*
|
||||
* @param content 内容
|
||||
* @param qrConfig 二维码配置,包括长、宽、边距、颜色等
|
||||
* @param imageType 图片类型(图片扩展名),见{@link ImgUtil}
|
||||
* @return 图片 Base64 编码字符串
|
||||
*/
|
||||
public static String generateAsBase64(String content,QrConfig qrConfig,String imageType){
|
||||
public static String generateAsBase64(String content, QrConfig qrConfig, String imageType) {
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
generate(content,qrConfig,imageType,bos);
|
||||
generate(content, qrConfig, imageType, bos);
|
||||
byte[] encode = Base64.getEncoder().encode(bos.toByteArray());
|
||||
return MessageFormat.format("data:image/{0};base64,{1}",imageType,new String(encode));
|
||||
return MessageFormat.format("data:image/{0};base64,{1}", imageType, new String(encode));
|
||||
}
|
||||
/**
|
||||
* 生成PNG格式的二维码图片,以byte[]形式表示
|
||||
|
Loading…
Reference in New Issue
Block a user