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; <p>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 (<a href='mailto:liluqun@263.net'>liluqun@263.net</a>)
* @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();
}
}</p>
分享到:
相关推荐
初学VC/MFC,用C++写了一段可以定时截屏、自定义截图的软件。很多代码都是从网上获取的,但是很实用。截图保存为bmp,利用了CxImage库,转换成jpg。这次传的是Release版的,虽然还没加上注释,不过初学者学习应该还行...
关于win32下一段详细屏幕截图的代码,可以用来学习和应用
ios应用开发用的一段图片处理之 截取图片
这是用于截取PC电脑屏幕的C++代码,可以直接通过vs编译之后,得到能够截取屏幕的exe执行程序,也可以自己修改里面的代码。
保存好工程文件,不能有汉字,打开arcgis的驱动页面,启动驱动液面设置好要截图图层,命名字段,截图的范围,打开arcgis的PYTHON运行页面,复制下面的代码进去,替换掉红色部分,第一个是你保存的mxd工程文件的位置...
代码段编辑器,里面有截图,大家可以选择安装其中的一种,我比较喜欢SnippyDog。
这是一段不太复杂的代码,用框选的方法从屏幕选择一块区域,并返回图像。 原理是:先截取屏幕图像,然后显示到一个无边框的全屏窗口中,看上去与桌面一模一样,然后通过鼠标事件选择区域,最后右击鼠标,在菜单中...
棋盘密码实验报告含源码与截图,C语言的,在vc++环境下运行
本资源主要是一个CRC校验的代码,用C语言编写而成,直接可以运行,文档内有运行截图,可以参考和学习。
实现用户调用摄像头的实时拍摄截图与保存的功能
NULL 博文链接:https://shuzheng5201314.iteye.com/blog/803490
作者TonyReet,源码TYSnapshotScroll,将...一句代码保存截图,仿 简书 和 iMark 将 UIScrollView UITableView UIWebView WKWebView 网页 保存 为 长图 查看 详细说明:http://ios.662p.com/thread-3540-1-1.html
1.智能车电磁组基础代码,代码思路与笔者系列博客一致,只是一个简单的寻迹代码,没有元素,距离参赛还有一段距离,需要自己去深挖。 2.IO口与逐飞STC16核心板配套。 3.代码量不大,有疑问的尽量自己解决,用的前...
Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...
计算方法上机完整结果-华中科技大学-Matlab代码及结果 ...实验内容:某类疾病发病率为 ‰和年龄段 (每五年为一段,例如0~5岁为第一段,6~10岁为第二段……)之间有形如 的经验关系,观测得到的数据表如下
改装了jave的封装,可以实现视频截图,视频剪辑,视频转换,支持编码广范,速度极快,支持windows linux平台。
哈哈,博主本身就是Android开发,现在也研究了一段时间的小程序,现在把学习中的成果和经验分享一下。 > 项目的数据是使用的在聚合数据上申请的影视资讯接口。 建议大家先了解微信的官方文档,了解一些基本的...
本文给大家分享一段关于python实现屏幕截图及函数的代码,代码简单易懂,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
此 SOA 解决方案包含提供硬件数据的 Windows 服务和具有不同模块的 WinForm 消费者应用程序(理想情况下,每个可用硬件传感器都有一个模块)。 我尝试以低耦合的方式开发项目,因此可以在对现有源代码影响最小的情况...