`
jayzotion
  • 浏览: 48529 次
  • 性别: Icon_minigender_1
  • 来自: 森林之城
社区版块
存档分类
最新评论

通过Robot截取屏幕事例

    博客分类:
  • java
阅读更多
通过Robot截取屏幕简单事例

package com.wyh.io;

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;

public class TestRobot implements Runnable {

	// 文件名
	private String fileName;
	// 文件格式
	private String imageFormat;
	//文件名序号
	private static int incrmentNum = 1;

	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public String getImageFormat() {
		return imageFormat;
	}

	public void setImageFormat(String imageFormat) {
		this.imageFormat = imageFormat;
	}

	public TestRobot() {

	}

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

	// 截取桌面图象
	public void startSnap(int i) {
		try {

			Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
			// 通Robot获当前屏幕对象
			BufferedImage screenshot = (new Robot())
					.createScreenCapture(new Rectangle(0, 0, (int) dimension
							.getWidth(), (int) dimension.getHeight()));

			String name = fileName + incrmentNum + "." + imageFormat;
			ImageIO.write(screenshot, imageFormat, new File(name));
			incrmentNum++;

			System.out.println("已经 保存线程 [" + i + "]" + "  " + name);
		} catch (Exception ex) {
			System.out.println(ex);
		}
	}

	public void run() {
		System.out.println("开始截取......");
		for (int i = 1;; i++) {
			this.startSnap(i);
			try {
				Thread.sleep(3800);
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

	// test in main
	public static void main(String[] a) {
		TestRobot testRobot = new TestRobot("D:\\javaApp\\TestApp\\test", "jpg");
		Thread thread = new Thread(testRobot);
		thread.start();
	}
}

分享到:
评论

相关推荐

    RobotUtil_JavaRobot_JavaRobot工具类_robot_

    总结来说,`RobotUtil`是`Robot`类的一个实用工具类,通过封装和简化了`Robot`的API,为开发者提供了一种更加便捷的方式来处理键盘和鼠标模拟操作,以及屏幕颜色的读取。这极大地提高了开发效率,特别是在进行自动化...

    applet截取屏幕图片

    要实现屏幕截图功能,我们需要使用Java的`java.awt.Robot`类。Robot类提供了一种生成键盘事件、鼠标事件以及捕获屏幕图像的能力。以下是一个简单的Applet类,用于截取指定区域的屏幕并保存为图片: ```java import ...

    Java实现屏幕截图源码

    这段代码首先通过`Toolkit.getDefaultToolkit().getScreenSize()`获取了屏幕的宽度和高度,然后创建了一个`Robot`实例,调用其`createScreenCapture()`方法截取整个屏幕,并将结果存储在一个`BufferedImage`对象中。...

    Java Robot对象实现服务器屏幕远程监视.doc

    在Windows操作系统下,通常这类功能由C++或Visual Basic等语言实现,但Java 1.4引入的`Robot`类使得Java程序员也能轻松地实现屏幕截取。 **1. Robot类的基本概念** `Robot`类位于`java.awt`包中,它提供了一种方式...

    Java Robot对象实现服务器屏幕远程监视

    Java Robot对象实现服务器屏幕远程监视

    java屏幕截取软件

    通过以上知识点的结合,一个完整的Java屏幕截取软件就可以被构建出来。用户只需运行程序,指定保存路径,即可轻松完成屏幕截图并保存到指定位置。这个过程不仅展示了Java的GUI编程能力,还涵盖了图像处理、文件操作...

    vscode编写RobotFramework

    vscode 编写 RobotFramework 详解 Vscode 是一个功能强大且广泛使用的代码编辑器,而 RobotFramework 是一个流行的自动化测试框架。本文将指导读者如何使用 Vscode 编写 RobotFramework 项目,包括安装 Vscode、...

    Java中Robot类详解.pdf

    创建`Robot`类的实例非常简单,只需要通过`new Robot()`即可。但需要注意的是,创建`Robot`对象可能会抛出`AWTException`,因为操作系统可能需要权限才能模拟输入。 `Robot`类提供了多种方法来实现不同类型的用户...

    WebRobot使用教程

    安装完成后,通常会在桌面生成快捷方式,通过快捷方式启动WebRobot。 启动WebRobot后,我们看到的是一个简洁的界面,主要由工作区、脚本编辑器和控制台组成。工作区用于展示网页元素,脚本编辑器是编写自动化脚本的...

    屏幕截图并保存jpg

    总之,无论是通过编程还是使用第三方工具,实现屏幕截图并保存为JPG都相当简单。选择哪种方式取决于你的具体需求,比如是否需要自动化、灵活性、跨平台性等因素。记住,在进行任何编程操作时,务必确保安全,避免对...

    java实现的屏幕截取软件

    本文将深入探讨一个使用Java编程语言实现的屏幕截取软件,该软件模仿了QQ的截图功能,包括全局快捷键以及自定义截图区域的特性。 首先,Java作为一种跨平台的编程语言,具有丰富的库和API,使其成为开发此类应用的...

    java实现屏幕截图

    首先,Java并不直接提供屏幕截图的API,但我们可以借助Java的`Robot`类和`BufferedImage`类来实现这一功能。`Robot`类能够模拟用户的键盘和鼠标操作,而`BufferedImage`则用于存储和处理图像。 1. **导入必要的库**...

    ScreenCapLibrary:Robot Framework测试库,用于捕获屏幕截图和视频记录

    ScreenCapLibrary具有以下额外功能: 拍摄PNG,JPG / JPEG,GIF和WebP格式的屏幕截图WebM格式的视频捕获,可嵌入到日志文件中调整屏幕截图的压缩/质量支持GIF 在给定的时间内拍摄多个屏幕截图支持部分屏幕截图可...

    java屏幕截图代码

    在Java编程语言中,屏幕截图是一项实用的功能,可以用于各种应用程序,例如自动化测试、故障报告或用户界面...通过了解和利用`Robot`类以及相关的图像处理API,你可以创建更复杂的屏幕截图工具或集成到其他Java项目中。

    java写的Robot

    Robot类还提供了一个非常有用的功能——捕获屏幕截图。`createScreenCapture(Rectangle rect)`方法可以获取指定矩形区域的屏幕快照。 ```java Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit()....

    一个java版的屏幕截取工具

    - **Robot类**:Java中的`java.awt.Robot`类是实现屏幕截取的关键。它提供了`createScreenCapture()`方法,可以获取指定矩形区域的屏幕图像。 - **Graphics2D**:截取的图像通常是一个BufferedImage对象,可以通过...

    基于JAVA CS远程监控系统软件的实现(源代码).zip 远程监控;Java Robot;屏幕截取;Java Socket

    笔者在开发过程中将网络技术与远程监控理论基础相结合,实现了以下功能:能连续获得被监控端机器屏幕变化;实现被监控端硬盘文件的上传、下载;实现对鼠标、键盘的模拟;实现在远程机器上执行任意DOS命令;远程关机...

    new Robot

    这个类允许程序员模拟用户与操作系统进行交互,例如移动鼠标、按下键盘按键等,这对于自动化测试、屏幕截图或者创建虚拟用户行为等场景非常有用。 Robot类在Java的java.awt包中,它提供了各种方法来模拟用户输入和...

Global site tag (gtag.js) - Google Analytics