From f4fa543617cbc2243835a6ec1cdc4e3cf4e3592e Mon Sep 17 00:00:00 2001 From: yangwei <867012372@qq.com> Date: Wed, 28 May 2025 10:01:44 +0800 Subject: [PATCH] =?UTF-8?q?[feat]=E5=A2=9E=E5=8A=A0=E6=97=8B=E8=BD=AC?= =?UTF-8?q?=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/business/utils/ImageRotator.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/dk-modules/business/src/main/java/org/dromara/business/utils/ImageRotator.java b/dk-modules/business/src/main/java/org/dromara/business/utils/ImageRotator.java index 6d2b843..c9fb2f2 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/utils/ImageRotator.java +++ b/dk-modules/business/src/main/java/org/dromara/business/utils/ImageRotator.java @@ -10,6 +10,7 @@ import java.io.IOException; import java.net.URL; import java.util.Base64; + public class ImageRotator { /** @@ -21,6 +22,7 @@ public class ImageRotator { */ public static String rotateAndOverlayImage(String sourceImagePath, String targetImagePath, double angle) { try { + URL resourceUrl = ImageRotator.class.getClassLoader().getResource("templates/1.png"); URL targetUrl = ImageRotator.class.getClassLoader().getResource("templates/2.png"); @@ -33,9 +35,9 @@ public class ImageRotator { // 创建新的画布,使用目标图片的尺寸 BufferedImage resultImage = new BufferedImage( - targetImage.getWidth(), - targetImage.getHeight(), - BufferedImage.TYPE_INT_ARGB + targetImage.getWidth(), + targetImage.getHeight(), + BufferedImage.TYPE_INT_ARGB ); // 创建图形上下文 @@ -99,7 +101,7 @@ public class ImageRotator { private static String convertToBase64(BufferedImage image) { try { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); - ImageIO.write(image, "jpeg", outputStream); + ImageIO.write(image, "PNG", outputStream); byte[] imageBytes = outputStream.toByteArray(); return Base64.getEncoder().encodeToString(imageBytes); } catch (IOException e) { @@ -112,7 +114,7 @@ public class ImageRotator { public static void main(String[] args) { String sourceImagePath = "C:\\Users\\Administrator\\Desktop\\1.png"; // 源图片路径 String targetImagePath = "C:\\Users\\Administrator\\Desktop\\2.png"; // 目标图片路径 - double angle = 90; // 旋转角度 + double angle = 45.0; // 旋转角度 String base64Result = rotateAndOverlayImage(sourceImagePath, targetImagePath, angle); if (base64Result != null) {