怎么取panel中已经画好的图像,我需要的是Image类型的,有没有什么成员函数啊?

来源:百度知道 编辑:UC知道 时间:2024/05/28 03:18:15
1.怎么取panel中已经画好的图像,我需要的是Image类型的,有没有什么成员函数啊?
2.怎么把panel中的图像直接保存在一个固定的目录下

1.不能保存,你可以再画一个。
BufferedImage bi = new BufferedImage(panel.getWidth(), panel.getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics g = bi.getGraphics();
g.draw... //按照你往panel上画的画一遍

你可以把这个图画到panel上。
panel.getGraphics().drawImage(bi, 0, 0, panel.getWidth(), panel.getHeight(), null);

要Image的话:
Image image = bi;

2.ImageIO.write(bi, "bmp", new File("/path/imageFile")); //必须要BufferedImage,不能是Image。要把Image转换为BufferedImage的话要按照上面的方法把Image画到BufferedImage上。

BufferedImage b= new BufferedImage(panel.getWidth(), panel.getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics g = b.getGraphics();
g=panel.getGraphics();//取panel中已经画好的图像

Image image = b; //我需要的是Image类型的

.....
1L说得够清楚的了,我都不知道补充什么好了