Java实现截图的两种方式

本文介绍了Java中实现截图的两种方法,包括全屏截图和根据鼠标移动选择截图区域。通过`Robot`类创建BufferedImage对象来捕获屏幕,然后将截图保存为指定格式的文件。此外,还提供了一个带有操作工具栏的自定义截图窗口,允许用户自由选择截图范围并保存。
摘要由CSDN通过智能技术生成

第一种:截取全屏

public class GuiCamera {
private String fileName;//文件的前缀
private String defaultName = "GuiCamera";
static int serialNum = 0;
private String imageFormat;//图像文件的格式
private String defaultImageFormat = "png";
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
/**
* 默认的文件前缀为“GuiCamera”,文件的格式为png
* Dimension:Java的一个类,封装了一个构件的高度和宽度
*/

public GuiCamera() {
fileName = defaultName;
imageFormat = defaultImageFormat;
}

public GuiCamera(String s,String format) {
fileName = s;
imageFormat = format;
}

/**
* 对屏幕进行拍照

*/
public void snapShot() {

try {
//拷贝屏幕到一个BufferedImage对象screenshot
BufferedImage screenshot = (new Robot()).createScreenCapture(new
Rectangle(0,0,(int)d.getWidth(),(int)d.getHeight()));
serialNum ++ ;
//根据文件前缀变量和文件格式变量,自动生成文件名
String name = fileName + String.valueOf(serialNum) +"."+imageFormat;
File f = new File(name);
System.out.println("Save File "+name);
//将screenshot对象写入图像文件
ImageIO.write(screenshot, imageFormat, f);
System.out.println("..Finished!\n"

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值