package com.heming.test;
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;
/*******************************************************************************
* 该JavaBean可以直接在其他Java应用程序中调用,实现屏幕的"拍照" This JavaBean is used to snapshot the
* GUI in a Java application! You can embeded it in to your java application
* source code, and us it to snapshot the right GUI of the application
*
* @see javax.ImageIO
* @author liluqun ([email]liluqun@263.net[/email])
* @version 1.0
*
******************************************************************************/
public class GuiCamera {
private String fileName; // 文件的前缀
private String defaultName = "GuiCamera";
static int serialNum = 0;
private String imageFormat; // 图像文件的格式
private String defaultImageFormat = "jpg";
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
/***************************************************************************
* 默认的文件前缀为GuiCamera,文件格式为PNG格式 The default construct will use the default
* Image file surname "GuiCamera", and default image format "png"
**************************************************************************/
public GuiCamera() {
fileName = defaultName;
imageFormat = defaultImageFormat;
}
/***************************************************************************
* @param s
* the surname of the snapshot file
* @param format
* the format of the image file, it can be "jpg" or "png"
* 本构造支持JPG和PNG文件的存储
**************************************************************************/
public GuiCamera(String s, String format) {
fileName = s;
imageFormat = format;
}
/***************************************************************************
* 对屏幕进行拍照 snapShot the Gui once
**************************************************************************/
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.print("Save File " + name);
// 将screenshot对象写入图像文件
ImageIO.write(screenshot, imageFormat, f);
System.out.print("..Finished!\n");
} catch (Exception ex) {
System.out.println(ex);
}
}
public static void main(String[] args) {
GuiCamera cam = new GuiCamera("d:\\qq", "bmp");//
cam.snapShot();
}
}
分享到:
相关推荐
本项目名为"JAVA实现截屏功能 有界面 附源码",提供了这样的解决方案。下面将详细阐述实现这个功能所需的关键知识点。 首先,我们需要了解Java中的AWT和Swing库。这两个库是Java GUI编程的基础,提供了丰富的组件和...
### Java实现截屏的核心知识点详解 #### 一、Java截屏功能实现原理 在Java中,实现屏幕截图主要依赖于`java.awt.Robot`类,它提供了与底层操作系统交互的能力,能够模拟键盘和鼠标事件,同时也支持屏幕图像的捕获...
java实现截图功能,类似qq的截图功能,欢迎下载
java实现截图功能,类似QQ截图,直接导入就可以使用,
【标题】"Java实现截图预览并保存"的知识点涵盖了两个主要方面:前端的截图预览功能和后端的Java截图保存技术。首先,我们来深入理解这两个关键领域。 前端截图预览通常涉及到HTML5的一些高级特性,尤其是Canvas...
以上就是Java实现截图程序所涉及的主要技术点。通过学习和掌握这些知识,开发者可以创建一个功能完善的截图工具,不仅可以截取屏幕,还可以自定义保存路径、设置截图格式等。同时,这个过程也可以帮助开发者深入理解...
接下来,我们将详细探讨如何使用Java实现截屏功能。 1. **导入必要的库** 首先,我们需要导入Java AWT库,包含Robot类和其他辅助类: ```java import java.awt.*; import java.awt.image.BufferedImage; ``` 2. *...
Java 实现截屏效果主要涉及Java AWT和Swing库中的图形用户界面(GUI)组件以及图像处理。在这个示例中,`CaptureScreen` 类是一个实现了屏幕截图功能的简单应用程序。下面将详细介绍其中的关键知识点: 1. **Java ...
### Java实现网页截图技术:深度解析与代码示例 在当今的互联网时代,网页截图技术在许多场景下都有着广泛的应用,如自动化测试、数据分析、页面快照保存等。本文将深入探讨如何使用Java来实现网页截图,从原理到...
未使用第三方jar包实现屏幕快照
在Java编程环境中,实现屏幕截图是一项实用的技术,广泛应用于各种应用场景,如屏幕录像、远程控制、游戏辅助等。本文将详细讲解如何使用Java来完成这一功能,并基于提供的`screenChort.java`源代码进行解析。 首先...
鼠标选取矩形区域,获取区域坐标,完成截图。支持选取存储地址或存储到默认地址。挺好的 有兴趣的小伙伴可以研究一下
在Java编程环境中,实现截图功能是一项实用且常见的需求,尤其在开发桌面应用或者Web应用时。本篇文章将详细探讨如何利用Java技术栈实现这一功能,主要聚焦于`Jcrop`库在Spring MVC框架中的应用。 首先,`Jcrop`是...
在本项目中,"纯Java实现整个网页截图项目源代码" 是一个利用Java编程语言来实现的实用程序,它能够捕获整个网页的图像并将其保存为图片文件。这个项目的核心在于利用DJNativeSwing组件,这是一个开源的Java库,它...
java实现截图的效果java实现截图的效果java实现截图的效果java实现截图的效果
让我们详细了解一下Java实现截图工具的相关知识点。 1. **Java AWT 和 Swing 库**: Java AWT(Abstract Window Toolkit)和Swing库是用于构建图形用户界面(GUI)的基础。在这个截图工具中,很可能使用了`java....
说明:程序由Java语言实现,功能包括全屏截图、自定义截图,在自定义状态下:在选区中 右键 -> 取消选区 在选区中 双击 -> 保存选区 在选区外 右键 -> 清除图像 程序中窗口截图部分暂时没有实现。 本程序是学习之...
java的robot类实现屏幕截图,java的robot类实现屏幕截图。
在Java编程环境中,实现网页截图技术是一项常见的需求,特别是在自动化测试、数据分析或者生成网页快照等场景中。本文将深入探讨如何使用Java来捕获网页的屏幕快照,并结合提供的标签"源码"和"工具",给出具体的实现...
在这个特定的案例中,我们讨论的是一个Java实现的屏幕截取程序,允许用户进行区域内的截屏操作。这通常涉及到图形用户界面(GUI)的创建、事件监听以及图像处理等多个技术领域。 首先,我们需要理解如何在Java中...