如何减少java中截图图像的大小

时间:2014-04-11 10:37:01

标签: java swing awtrobot

我在Java中创建一个应用程序,使用以下代码以一定的时间间隔捕获屏幕截图:

Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage capture = new Robot().createScreenCapture(screenRect);
ImageIO.write(capture, "bmp",new File("img/screenshot.png"));

我得到了输出,但问题是图像的大小接近3MB。如何在捕获图像时减小图像的大小?

1 个答案:

答案 0 :(得分:1)

将bmp更改为png或jpg

ImageIO.write(capture, "png",new File("img/screenshot.png"));

来自http://docs.oracle.com/javase/tutorial/2d/images/saveimage.html

的文档
  

ImageIO.write方法调用实现PNG编写“PNG编写器插件”的代码。 >使用术语插件,因为Image I / O是可扩展的,并且可以支持多种格式。

     

但是以下标准图像格式插件:JPEG,PNG,GIF,BMP和WBMP始终存在。