From cd2cfd37366002f790a2ed1435962d4eff7d5cec Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Tue, 01 Jun 2021 09:39:30 +0800
Subject: [PATCH] 版本合并

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/animalheat/util/ImageUtil.java |   63 +++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 17 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/animalheat/util/ImageUtil.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/animalheat/util/ImageUtil.java
index 15c444e..87df662 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/animalheat/util/ImageUtil.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/animalheat/util/ImageUtil.java
@@ -13,40 +13,69 @@
 import java.io.*;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
 
 import static java.time.LocalDate.now;
 
 /**
- * 二进制原始数据转换为图片工具类
+ * base64原始数据转换为图片工具类
  */
 public class ImageUtil {
 	static BASE64Encoder encoder = new sun.misc.BASE64Encoder();
 	static BASE64Decoder decoder = new sun.misc.BASE64Decoder();
 
-	@Value("${picture.addUrl}")
-	private String picAddUrl;
+	private static String PRE_URL = "software/minio/data/jfpt/animalHeat";
 
-	@Value("${picture.pre}")
-	private static String picPre;
+	private static String PRF_MINIO_URL = "minio/jfpt/animalHeat";
 
 	/**
-	 * 二进制原始数据转换为图片
+	 * base64原始数据转换为图片
 	 * @param base64String
 	 */
 	public static String base64StringToImage(String base64String){
 		try {
-			byte[] bytes1 = decoder.decodeBuffer(base64String);
-
-			ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);
-			BufferedImage bi1 = ImageIO.read(bais);
-			String yyyyMMddHHmmss = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
-			File w2 = new File("D://"+picPre+StringPool.SLASH+ DateUtil.today()+StringPool.SLASH+ StringUtil.randomUUID()
-				+".jpg");//可以是jpg,png,gif格式
-
-			ImageIO.write(bi1, "jpg", w2);//不管输出什么格式图片,此处不需改动
+			byte[] bytes = decoder.decodeBuffer(base64String);
+			ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
+			BufferedImage bi = ImageIO.read(bais);
+			String UUID = DateUtil.today()+StringPool.SLASH+ StringUtil.randomUUID();
+			//可以是jpg,png,gif格式
+			File w2 = new File("D://"+PRE_URL+StringPool.SLASH+ UUID+".jpg");
+			//判断父文件夹存在与否
+			File parentFile = w2.getParentFile();
+			if (!parentFile.exists()){
+				//如果不存在,则创建
+				parentFile.mkdirs();
+			}
+			//不管输出什么格式图片,此处不需改动
+			ImageIO.write(bi, "jpg", w2);
 			//返回图片路径
-			return picPre+ StringPool.SLASH+ DateUtil.today()+StringPool.SLASH+ StringUtil.randomUUID()
-				+StringPool.DOT+ "jpg";
+			return PRF_MINIO_URL+ StringPool.SLASH+ UUID +StringPool.DOT+ "jpg";
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+
+	/**
+	 * 获取base64原始数据图片的长宽
+	 * @param base64String
+	 */
+	public static Map<String,Object> getBase64ImageWidthAndHeight(String base64String){
+		Map<String, Object> map = new HashMap<>();
+		try {
+			//将base64字符串转换成二进制字节数组
+			byte[] bytes = decoder.decodeBuffer(base64String);
+			//二进制输入流
+			ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
+			//io读取图片输入流
+			BufferedImage bi = ImageIO.read(bais);
+			//封装数据
+			map.put("imgWidth",bi.getWidth());
+			map.put("imgHeight",bi.getHeight());
+			//返回
+			return map;
 		} catch (IOException e) {
 			e.printStackTrace();
 		}

--
Gitblit v1.9.3