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="png";
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:\\Hello", "png");//
cam.snapShot();
}
}
分享到:
相关推荐
Java截图程序是一种基于Java编程语言实现的图形用户界面(GUI)工具,用于捕获和保存计算机屏幕上的图像。本程序的特色在于它提供了与QQ截图类似的功能,这意味着它可能包括了区域选择、实时预览、编辑工具以及快速...
《JAVA截图小工具详解》 JAVA截图小工具是一款基于Java编程语言开发的实用应用程序,它为用户提供了方便快捷的屏幕截图功能。通过这款工具,用户能够轻松捕获屏幕上的任何区域,并将其保存到本地,同时自动复制到...
Java截图小工具是一种基于Java编程语言实现的程序,它能够帮助用户捕获并保存计算机屏幕上的图像。在本文中,我们将深入探讨如何使用Java来创建一个简单的截图工具,包括涉及的关键类、方法以及实现过程。 首先,...
Java截图工具源码是开发者们常用的实用工具之一,它能够帮助程序员在开发过程中快速获取屏幕快照,便于问题排查、功能演示或者用户交互设计。这个“很牛的Java截图工具源码”提供了一种高效、易用的方法来实现这一...
一个很是用的java截屏小类,适合初学者,有注释,希望对大家的学习有帮助。
Java截图小工具是一款基于Java语言开发的实用程序,它允许用户快速、方便地截取屏幕图像。本项目附带了完整的源代码,为开发者提供了一个学习和参考的实例,可以帮助初学者更好地理解Java图形用户界面(GUI)编程...
java截屏小程序 附源码,不能登QQ的时候可以讲究下,jar格式的,运行鼠标框选截屏内容,右键点击保存或退出。java新手,望多指教
综上所述,这个Java截屏小助手是一个实用的工具,不仅提供了截图服务,还是一份优秀的学习材料。它展示了如何利用Java的图形库来实现屏幕捕获,以及如何构建一个简单的GUI应用程序。对于想要提升Java GUI编程技能...
超好用的java截图工具,源代码。 功能:1、左键按下选中所需截图区域,会有边框显示该区域 2、左键释放,会弹出菜单选择保存还是添加到系统粘贴板中 3、移动鼠标,随时显示图上对应点的ARGB值
1. **Java截屏**: 要实现截屏功能,我们通常需要获取屏幕的大小,然后创建一个BufferedImage对象来存储截图。以下是一个简单的截屏示例: ```java import java.awt.*; import java.awt.image.BufferedImage; ...
根据给定的文件信息,我们将深入探讨如何在Java中实现屏幕截图的功能,特别是通过解析提供的代码片段来理解其工作原理。 ### Java截图代码详解 #### 1. 引入必要的库 ```java import java.awt.AWTException; ...
【Java截图工具详解】 在Java编程环境中,开发一款强大的截图工具是相当实用的,尤其对于开发者来说,可以方便地进行程序界面的展示和问题定位。本篇将详细讲解这款名为"很牛的Java截图工具"的功能特性、核心实现...
### JAVA截图技术详解 在日常开发工作中,截图功能是一个实用且常见的需求,尤其是在即时通讯、远程协作等场景中。本文将详细介绍如何利用Java语言来实现类似QQ截图的功能,并深入探讨其实现原理和技术细节。 ####...
本项目提供了一个已调通的Java截屏软件,它允许用户在单机环境下捕获屏幕快照并将其保存为PNG或JPEG格式。下面我们将深入探讨这个Java截屏软件的工作原理以及相关的Java技术知识点。 1. **Java AWT和Swing库**: ...
Java截屏保存系统剪切板是一项实用的技术,它允许用户通过编程方式截取屏幕快照,并将该图像存储到系统剪贴板中,以便于后续的复制和粘贴操作。这项技术主要基于Java的标准版(Java SE)环境,利用了Java的AWT和...
Java截屏小程序是一种实用工具,它允许用户在Java环境中实现屏幕捕获功能。这个程序能够创建PNG、JPG和GIF三种格式的图像文件,满足了不同场景下的需求。源码的提供使得开发者可以直接查看和学习其内部实现,进一步...
需要注意的是,由于跨平台的特性,Java截屏可能会受到不同操作系统和显示设置的影响。例如,在多显示器环境下,可能需要处理多个屏幕的截取问题。因此,在实际开发中,要确保在各种环境下测试代码的正确性。 总的来...
在"Swing学习之两个java截屏程序的实现"这个主题中,我们将探讨如何利用Swing和Java的一些基本功能来开发屏幕截图应用程序。这里有两个关键的Java类文件:CaptureScreen.java和RobotToolMain.java,它们分别代表了两...
java截图嵌入工具,给java嵌入截图
首先,Java截屏的基本思路是利用`java.awt.Robot`类,它提供了模拟键盘和鼠标操作的能力,同时也包括了获取屏幕像素的能力。`Robot.createScreenCapture()`方法是关键,它可以用来创建一个代表屏幕某个区域的`...