在本文中,我们展示了如何在 Java 中读取和写入 ICO 图像。
ICO 是在 Microsoft Windows 上的图标中使用的图像文件格式。 ICO 文件包含一个或多个具有多种尺寸和颜色深度的小图像,因此可以适当缩放它们。 ICO 文件也经常用于网络上的收藏夹图标。
要使用 Java 读写 ICO 文件,我们使用 image4j 图片库。 可以从 image4j.sourceforge.net 下载用于 image4j 的 JAR。
将 PNG 转换为 ICO
在以下示例中,我们将 PNG 图像转换为 ICO 图像。
ConvertToIcoEx.java
我们使用ImageIO.read()方法将 PNG 文件读入BufferedImage。 BufferedImage是存储在内存中的像素矩形。 它是 Swing 中最重要的图像类型之一。
ICOEncoder.write()将 PNG 转换为 ICO 文件。
将 ICO 转换为 PNG
在第二个示例中,我们将 ICO 图像转换为 PNG 图像。
ConvertIcoToPngEx.java
我们使用ICODecoder.read()方法将 ICO 文件读入BufferedImage。 通过ImageIO.write()方法将BufferedImage写入 PNG 文件。
下载 ICO 文件
在下一个示例中,我们从网站下载 ICO 文件,将其转换为ImageIcon,并在JLabel组件中显示。
DownloadIcoEx.java
该示例从 StackOverflow 网站下载了一个图标。
我们从 URL 创建一个InputStream。
ICODecoder.read()从InputStream读取到BufferedImage
从BufferedImage创建一个ImageIcon。
将ImageIcon放入JLabel。
Figure: Favicon
在本文中,我们已使用 image4j 库读取和写入 ICO 图像。