diff --git a/designer-base/src/main/java/com/fr/design/icon/WarningIcon.java b/designer-base/src/main/java/com/fr/design/icon/WarningIcon.java index b4d7f33174..a50bb39969 100644 --- a/designer-base/src/main/java/com/fr/design/icon/WarningIcon.java +++ b/designer-base/src/main/java/com/fr/design/icon/WarningIcon.java @@ -2,7 +2,7 @@ package com.fr.design.icon; import com.fr.base.svg.SVGLoader; import com.fr.base.svg.SystemScaleUtils; -import com.fr.design.utils.SvgPaintUtils; +import com.fr.design.utils.SvgDrawUtils; import com.fr.log.FineLoggerFactory; import javax.swing.GrayFilter; @@ -45,10 +45,10 @@ public class WarningIcon extends ImageIcon { //裁剪绘制svg的位置,以免影响到图标右侧的文字 Graphics2D graphics = (Graphics2D) g.create(x, y, WARNING_IMAGE.getWidth(null), WARNING_IMAGE.getHeight(null)); if (mainImage != null) { - SvgPaintUtils.doDrawSVG(graphics, () -> SvgPaintUtils.drawImage(graphics, mainImage, x, y, null)); + SvgDrawUtils.doDrawSVG(graphics, () -> SvgDrawUtils.drawImage(graphics, mainImage, x, y, null)); } if (WARNING_IMAGE != null) { - SvgPaintUtils.doDrawSVG(graphics, () -> SvgPaintUtils.drawImage(graphics, WARNING_IMAGE, x, y, null)); + SvgDrawUtils.doDrawSVG(graphics, () -> SvgDrawUtils.drawImage(graphics, WARNING_IMAGE, x, y, null)); } graphics.dispose(); } diff --git a/designer-base/src/main/java/com/fr/design/utils/SvgPainter.java b/designer-base/src/main/java/com/fr/design/utils/SvgDraw.java similarity index 87% rename from designer-base/src/main/java/com/fr/design/utils/SvgPainter.java rename to designer-base/src/main/java/com/fr/design/utils/SvgDraw.java index 67c066b2c6..0ae7ff7af8 100644 --- a/designer-base/src/main/java/com/fr/design/utils/SvgPainter.java +++ b/designer-base/src/main/java/com/fr/design/utils/SvgDraw.java @@ -7,7 +7,7 @@ package com.fr.design.utils; * @since 11.0 * Created on 2023/3/24 */ -public interface SvgPainter { +public interface SvgDraw { /** * 绘制svg图标的具体逻辑,方法体 diff --git a/designer-base/src/main/java/com/fr/design/utils/SvgPaintUtils.java b/designer-base/src/main/java/com/fr/design/utils/SvgDrawUtils.java similarity index 72% rename from designer-base/src/main/java/com/fr/design/utils/SvgPaintUtils.java rename to designer-base/src/main/java/com/fr/design/utils/SvgDrawUtils.java index 103aaf0acb..0b141b9991 100644 --- a/designer-base/src/main/java/com/fr/design/utils/SvgPaintUtils.java +++ b/designer-base/src/main/java/com/fr/design/utils/SvgDrawUtils.java @@ -16,17 +16,23 @@ import java.awt.image.ImageObserver; * @version 11.0 * Created by hades on 2022/5/6 */ -public class SvgPaintUtils { +public class SvgDrawUtils { private static final boolean HI_DPI_ENABLED = SystemScaleUtils.isJreHiDPIEnabled(); - public static void beforePaint(Graphics2D g2) { + /** + * 绘制svg前若环境支持高清化则对缩放比例进行适配 + * */ + public static void beforeDraw(Graphics2D g2) { if (HI_DPI_ENABLED) { g2.scale(1 / SVGLoader.SYSTEM_SCALE, 1 / SVGLoader.SYSTEM_SCALE); } } - public static void afterPaint(Graphics2D g2) { + /** + * 绘制svg后还原缩放矩阵 + * */ + public static void afterDraw(Graphics2D g2) { if (HI_DPI_ENABLED) { g2.scale(SVGLoader.SYSTEM_SCALE, SVGLoader.SYSTEM_SCALE); } @@ -44,12 +50,12 @@ public class SvgPaintUtils { /** * 绘制svg图像的完整逻辑 * @param graphics 绘图 - * @param svgPainter 具体绘制逻辑 + * @param svgDraw 具体绘制逻辑 * */ - public static void doDrawSVG(@NotNull Graphics graphics, @NotNull final SvgPainter svgPainter) { - SvgPaintUtils.beforePaint((Graphics2D) graphics); - svgPainter.drawSVG(); - SvgPaintUtils.afterPaint((Graphics2D) graphics); + public static void doDrawSVG(@NotNull Graphics graphics, @NotNull final SvgDraw svgDraw) { + SvgDrawUtils.beforeDraw((Graphics2D) graphics); + svgDraw.drawSVG(); + SvgDrawUtils.afterDraw((Graphics2D) graphics); } /** @@ -62,6 +68,6 @@ public class SvgPaintUtils { * */ public static void drawImage(Graphics graphics, Image image, int x, int y, ImageObserver imageObserver) { //如果环境支持高清化,在调整缩放比例时绘制svg会影响到位置的变化,若图标无确定裁剪位置,则需要进行调整 - graphics.drawImage(image, SvgPaintUtils.calculatePosition(x), SvgPaintUtils.calculatePosition(y), imageObserver); + graphics.drawImage(image, SvgDrawUtils.calculatePosition(x), SvgDrawUtils.calculatePosition(y), imageObserver); } }