`

用java写的屏幕截图

阅读更多
昨天无意间接触到了Robot这个类,于是突发奇想写了个java的屏幕截图,但是测试的时候有时候能截到,有时候都是一大堆空白,不知怎么回事,暂且给大家分享一下。
本来想写一个透明窗口,但是java好像不能实现,唯一的方法就是在程序运行的时候把整个屏幕的图像画到全屏窗口里,然后再选定区域截图。
先写了个GetCapture类

package com.jeedroid;

import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;

public class GetCapture
{
	private static BufferedImage background;
public static BufferedImage getCapture()
{
	try
	{
		Robot robot=new Robot();
		Rectangle rect=new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
		background=robot.createScreenCapture(rect);
	} catch (AWTException e)
	{
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	return background;
}
}

然后在一个类里面编写截图程序,主要用到了鼠标的事件监听,还有全屏显示的问题
首先介绍下GraphicsEnvironment,GraphicsEnvironment 类描述了 Java(tm) 应用程序在特定平台上可用的 GraphicsDevice 对象和 Font 对象的集合,直接调用他的getLocalGraphicsEnvironment方法来返回本地 GraphicsEnvironment,GraphicsDevice 类描述可以在特定图形环境中使用的图形设备。这些设备包括屏幕和打印机设备。那么可以把我们自己的窗口设为一个全屏的窗口。
在我们自己写的窗口类中对鼠标事件监听来获取自己所选的区域,确定一个矩形,然后通过Robot robot=new Robot();BufferedImage image=robot.createScreenCapture(rect);来把我们选定的区域放到内存中,调用ImageIO函数将图像输出来即可。
下面有详细的代码
分享到:
评论

相关推荐

    JAVA写的屏幕截图程序

    JAVA写的屏幕截图程序,与你分享,共同进步

    用java写的屏幕截图源代码

    屏幕截图 有兴趣的看下屏幕截图 有兴趣的看下屏幕截图 有兴趣的看下

    JAVA写的屏幕截图小程序

    JAVA写的屏幕截图小程序,就是给大家分享一下而已

    基于Java的QQ屏幕截图工具.zip

    基于java的QQ截屏工具的设计和实现能够实现对屏幕的随机截取,复制,保存以及添加文字等操作,便于用户对数据的处理。 该软件的功能: (1)随机获取屏幕指定区域; (2)编辑(添加文字)截图; (3)存储...

    用Java写的屏幕截图小工具

    用来屏幕截图的哦 ikoopa@126.com

    自制 Java Swing 屏幕截图工具 源码

    小弟初学java,最近用swing写了这个小截图工具 迫于技术实在太差,很多效果不知道如何实现 欢迎大家“批驳”,呵呵 附上QQ:258801127 希望和各位网友一同进步 源代码可以直接导入eclipse

    Java写的截图小程序,源码

    自己写的一个屏幕截图软件,自己一直在用,放到桌面上很方便。 想做更好Java截图工具的朋友,也可以参考一下,这是一个eclipse工程,导入即可使用。

    java 屏幕截图工具

    无聊写的简易java屏幕截图工具,还差一点任意截图和保存,以后再弄,嘿嘿

    java远程屏幕监视

    用java socket写的远程屏幕监视软件。 有详细文档,新手看也很容易懂,可以实时屏幕监控,截图,调图片大小,刷新率啊。是我java课程设计的作业,传上来相互学习啊。 绝对是能用滴。报错的话,在eclipse里右键点击...

    java写的计算机远程屏幕监控和远程截屏代码

    用java写的远程屏幕监控程序,用Robot实现,截取远程桌面图片,通过socket发送到监控端!!!

    Java swing实现框选截图小工具java截图框选仿wx

    思路是这样:1屏幕截图放到背景面板,2在用一个面板盖住它,3在盖住的面板上用Graphics画出框选区域,4在框选的区域在进行图图画画,5然后再把款框选的区域再截图一次保存下来。 因为网上找不到类似的然后我就分享...

    Java屏幕截屏源代码

    用Java编写,实现类似Windows下PrintScreen的截屏功能。

    java源码包---java 源码 大量 实例

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包2

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包4

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    类似qq的屏幕截图工具

    是不是觉得QQ 截图很强大 有时候不能联网 就不能用了 我写了个 功能没那么好 见笑了 是用c# winform 写的 XP 下 要有 .net 环境才能运行的哦 希望大家多交流

    android截图的demo(手机屏幕截图)

    android开发中,用到的有关截图的demo 有详细的注释

    java源码包3

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JAVA鼠标操作类---用JAVA编写的QQ农场偷菜类

    呵呵,无聊玩QQ农场偷菜,用JAVA写的一个对鼠标操作的类。主要用鼠标定位屏幕的X坐标和Y坐标进行操作。需要传入几个参数,主要如下: * @param startX 好友栏第一个好友起始X坐标 * @param startY 好友栏第一个好友...

Global site tag (gtag.js) - Google Analytics