如何捕获 Java 程序显示的 GUI 的一部分。我的程序会根据用户输入生成某些需要捕获的图形。我需要在 GUI 上提供一个按钮来将图形保存为图像文件。
问问题
106 次
4 回答
3
查看屏幕图像以创建任何组件的图像。
于 2013-07-20T23:17:39.523 回答
2
您可以使用 BufferedImage 类来捕获它。只需使用paint方法将图形组件的内容写入Bufferedmage对象即可。然后使用 ImageIO.write() 方法将图像写入文件。这是其教程的链接。
http://sleepingthreads.blogspot.in/2013/07/capture-screenshotpart-of-java-gui.html
于 2013-07-20T23:20:27.677 回答
0
如果您使用的是 JFrame,则可能需要查看 createImage 方法。该方法也与 JPanel 兼容。
于 2013-07-21T01:50:23.023 回答
-1
Robot robot = new Robot();
BufferedImage screenShot = robot.createScreenCapture( guiObject.getBounds() );
ImageIO.write(screenShot, "JPG", new File("myScreenShot.jpg"));
其中 guiObject 是您想要的组件,而 getBounds() 返回一个 Rectangle。
编辑:
getBounds() 必须返回屏幕坐标。或者你做一些数学来做到这一点。
于 2013-07-21T02:08:42.703 回答