截图小程序

下面是个简单的截图小程序,没有写GUI,只写了个简答的截图屏幕的代码部分。

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import java.awt.AWTException;
import java.io.IOException;


public class  ScreenShot
{	
	private String diskname="D:\\";//存储的盘符
	private String filename="screen";//文件的前缀
	private String imageFormat="png";//文件的格式
	private Dimension screensize;//获取屏幕的尺寸
	public ScreenShot(){
	shotStart();
	}


	//截图的方法
	public void shotStart(){
	//获取当前屏幕的尺寸
	screensize=Toolkit.getDefaultToolkit().getScreenSize();
	System.out.println("----开始截屏----");
	
	try{
	//创建一个存储截屏的bufferedImage的缓冲区,
	//使用robot进行截屏,rectangle设置截屏的大小和位置
	BufferedImage screen=(new Robot()).createScreenCapture(new 
		Rectangle(0,0,(int)screensize.getWidth(),(int)screensize.getHeight()));
	//截屏的后的文件存储的位置和文件的格式
	String name=diskname+filename+"."+imageFormat;
	File file=new File(name);
	//将bufferedimage中的缓冲区中的数据,写入到文件中
	/*screen 缓存图像流
	imageFormat 图片的格式
	file 文件的位置
	*/
	ImageIO.write(screen,imageFormat,file);	
	System.out.println("截图结束.....");
	}
	//如果平台配置不允使用低级输入控件,则抛出AWTException异常
	catch(AWTException e){
	e.printStackTrace();
	}
	catch(IOException e){
	e.printStackTrace();
	}
	}

	public static void main(String[] args) 
	{
	new ScreenShot();
	}
}


你可能感兴趣的:(java)