相关疑难解决方法(0)

Swing:获取JFrame的图像

我如何获得java.awt.ImageJFrame?

我想获得一个屏幕截图JFrame(以后在我的应用程序中使用).目前,这是通过使用机器人拍摄指定所JFrame涉及的坐标和尺寸的屏幕截图来完成的.

但是,我相信有一种更好的方法:默认情况下,Swing组件在将自己绘制到屏幕上之前将它们自身渲染为双缓冲区.

有没有办法从组件中获取这些图像?

java swing screenshot image jframe

62
推荐指数
1
解决办法
4万
查看次数

将JPanel导出到图像

所以我一直在尝试将我在JPanel上绘制的图像导出到图像中.我一直在使用这种方法:

BufferedImage image = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_RGB);
Graphics2D g = image.createGraphics();
paint(g);
try { ImageIO.write(image, "png", new File([location goes here]); } catch (IOException e) {}
Run Code Online (Sandbox Code Playgroud)

我在预定的位置获得了一张图片,但我得到了我的JPanel显示的压缩版本.如果我也尝试导出BMP,也会发生同样的情况.有没有办法从JPanel导出像素完美的图像?提前致谢.

java swing png bufferedimage jpanel

5
推荐指数
1
解决办法
5732
查看次数

标签 统计

java ×2

swing ×2

bufferedimage ×1

image ×1

jframe ×1

jpanel ×1

png ×1

screenshot ×1