0

我在我的代码中生成了一个图像图标,我按照以下代码将它作为图标放在标签上:

ImageIcon icon = new ImageIcon(barcode.drawBarcode());
jLabel36.setIcon(icon);

现在我的问题是如何将 ImageIcon 类型更改为 Image 并将其保存在硬盘上。当我尝试将 ImageIcon 类型转换为 Image 时,出现以下错误:

java.lang.ClassCastException:javax.swing.ImageIcon 无法转换为 java.awt.Image

谁能建议我如何在类型转换和保存图像方面完成这项任务。

4

1 回答 1

6

只需使用getImage()

// get image from imageicon
Image image = icon.getImage();

// cast it to bufferedimage
BufferedImage buffered = (BufferedImage) image;

try {
    // save to file
    File outputfile = new File("saved.png");
    ImageIO.write(buffered, "png", outputfile);
} catch (IOException e) {
    e.printStackTrace();
}
于 2012-10-12T07:49:32.840 回答