将Java组件呈现到图像文件

Mat*_*iak 4 java user-interface swing image awt

可能重复:
Java Swing:获取ImageJFrame

如何保存Java GUI组件显示到图像文件的内容?

例如,将JPanel渲染为PNG.

Jef*_*rey 5

JPanel panel = ...
...
...
File yourFileHere = ...
...
...
BufferedImage img = new BufferedImage(panel.getWidth(), panel.getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics g = img.getGraphics();
panel.paint(g);
g.dispose();

try{
    ImageIO.write(img, "png", yourFileHere);
}catch(IOException e){
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)