23 package com.realtime.crossfire.jxclient.util;
25 import java.awt.image.BufferedImage;
26 import java.io.IOException;
27 import java.nio.file.Path;
28 import javax.imageio.ImageIO;
29 import javax.swing.Icon;
30 import javax.swing.ImageIcon;
31 import org.jetbrains.annotations.NotNull;
51 public static void saveImageIcon(@NotNull
final Path outputFile, @NotNull
final Icon imageIcon) {
52 final BufferedImage bufferedImage =
new BufferedImage(imageIcon.getIconWidth(), imageIcon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
53 imageIcon.paintIcon(
null, bufferedImage.getGraphics(), 0, 0);
55 ImageIO.write(bufferedImage,
"png", outputFile.toFile());
56 }
catch (
final IOException ex) {
57 System.err.println(
"Cannot write cache file "+outputFile+
": "+ex.getMessage());