|
@@ -602,7 +602,7 @@ public class UserService {
|
|
|
public String shareImg(Long userId) throws IOException, WxErrorException {
|
|
public String shareImg(Long userId) throws IOException, WxErrorException {
|
|
|
User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
|
|
User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
|
|
|
if (!(StringUtils.isNotEmpty(user.getShareImg()) && user.getShareImg().contains("/v2/"))) {
|
|
if (!(StringUtils.isNotEmpty(user.getShareImg()) && user.getShareImg().contains("/v2/"))) {
|
|
|
- String url = this.createShareImg2(userId, false, null);
|
|
|
|
|
|
|
+ String url = this.createShareImg2(userId, false, null, "share_img/v2/");
|
|
|
user.setShareImg(url);
|
|
user.setShareImg(url);
|
|
|
userRepo.save(user);
|
|
userRepo.save(user);
|
|
|
}
|
|
}
|
|
@@ -638,7 +638,7 @@ public class UserService {
|
|
|
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
|
g2.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
|
|
g2.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
|
|
|
g2.setComposite(AlphaComposite.SrcOver);
|
|
g2.setComposite(AlphaComposite.SrcOver);
|
|
|
- g2.setBackground(Color.GREEN);
|
|
|
|
|
|
|
+ g2.setBackground(Color.white);
|
|
|
g2.setClip(new Ellipse2D.Float(0, 0, 44 * 2, 44 * 2));
|
|
g2.setClip(new Ellipse2D.Float(0, 0, 44 * 2, 44 * 2));
|
|
|
g2.drawImage(subImg, 0, 0, 44 * 2, 44 * 2, null);
|
|
g2.drawImage(subImg, 0, 0, 44 * 2, 44 * 2, null);
|
|
|
|
|
|
|
@@ -650,21 +650,20 @@ public class UserService {
|
|
|
.outputQuality(.9f)
|
|
.outputQuality(.9f)
|
|
|
.outputFormat("jpg")
|
|
.outputFormat("jpg")
|
|
|
.toOutputStream(out);
|
|
.toOutputStream(out);
|
|
|
-// return out.toByteArray();
|
|
|
|
|
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
|
|
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
|
|
|
return storageService.uploadFromInputStream(in, "share_img/v2/" + userId + ".jpg");
|
|
return storageService.uploadFromInputStream(in, "share_img/v2/" + userId + ".jpg");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public String createShareImg2(Long userId, boolean home, Long packageId) throws IOException, WxErrorException {
|
|
|
|
|
|
|
+ public String createShareImg2(Long userId, boolean home, Long packageId, String path) throws IOException, WxErrorException {
|
|
|
User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
|
|
User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
|
|
|
-
|
|
|
|
|
- BufferedImage result = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB);
|
|
|
|
|
|
|
+ BufferedImage shareImg = ImageIO.read(this.getClass().getResourceAsStream("/static/img.png"));
|
|
|
|
|
+ BufferedImage result = new BufferedImage(200, 200, BufferedImage.TYPE_INT_RGB);
|
|
|
Graphics2D g = result.createGraphics();
|
|
Graphics2D g = result.createGraphics();
|
|
|
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
|
|
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
|
|
|
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
|
g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
|
|
g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
|
|
|
g.setComposite(AlphaComposite.SrcOver);
|
|
g.setComposite(AlphaComposite.SrcOver);
|
|
|
-// g.drawImage(shareImg, 0, 0, null);
|
|
|
|
|
|
|
+ g.drawImage(shareImg, 0, 0, null);
|
|
|
|
|
|
|
|
byte[] bytes = wxMaService.getQrcodeService()
|
|
byte[] bytes = wxMaService.getQrcodeService()
|
|
|
.createWxaCodeUnlimitBytes("expert=true&invitor=" + userId, "pages/home", 94 * 2, false, new WxMaCodeLineColor("0", "0", "0"), true);
|
|
.createWxaCodeUnlimitBytes("expert=true&invitor=" + userId, "pages/home", 94 * 2, false, new WxMaCodeLineColor("0", "0", "0"), true);
|
|
@@ -675,7 +674,7 @@ public class UserService {
|
|
|
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
|
|
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
|
|
|
BufferedImage codeImg = ImageIO.read(byteArrayInputStream);
|
|
BufferedImage codeImg = ImageIO.read(byteArrayInputStream);
|
|
|
|
|
|
|
|
- g.drawImage(codeImg, 251 * 2, 543 * 2, 94 * 2, 94 * 2, null);
|
|
|
|
|
|
|
+ g.drawImage(codeImg, 3 * 2, 3 * 2, 94 * 2, 94 * 2, null);
|
|
|
|
|
|
|
|
BufferedImage avatar = ImageIO
|
|
BufferedImage avatar = ImageIO
|
|
|
.read(new URL(Optional.ofNullable(user.getAvatar()).orElse(Constants.DEFAULT_AVATAR)));
|
|
.read(new URL(Optional.ofNullable(user.getAvatar()).orElse(Constants.DEFAULT_AVATAR)));
|
|
@@ -692,7 +691,7 @@ public class UserService {
|
|
|
g2.setClip(new Ellipse2D.Float(0, 0, 44 * 2, 44 * 2));
|
|
g2.setClip(new Ellipse2D.Float(0, 0, 44 * 2, 44 * 2));
|
|
|
g2.drawImage(subImg, 0, 0, 44 * 2, 44 * 2, null);
|
|
g2.drawImage(subImg, 0, 0, 44 * 2, 44 * 2, null);
|
|
|
|
|
|
|
|
- g.drawImage(avatarImg, 276 * 2, 568 * 2, 44 * 2, 44 * 2, null);
|
|
|
|
|
|
|
+ g.drawImage(avatarImg, 28 * 2, 28 * 2, 44 * 2, 44 * 2, null);
|
|
|
|
|
|
|
|
ByteArrayOutputStream out = new ByteArrayOutputStream(1024);
|
|
ByteArrayOutputStream out = new ByteArrayOutputStream(1024);
|
|
|
Thumbnails.of(result)
|
|
Thumbnails.of(result)
|
|
@@ -701,6 +700,6 @@ public class UserService {
|
|
|
.outputFormat("jpg")
|
|
.outputFormat("jpg")
|
|
|
.toOutputStream(out);
|
|
.toOutputStream(out);
|
|
|
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
|
|
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
|
|
|
- return storageService.uploadFromInputStream(in, "share_img/v2/" + userId + ".jpg");
|
|
|
|
|
|
|
+ return storageService.uploadFromInputStream(in, path + userId + ".jpg");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|