其实截图的知识也不难
额(⊙o⊙)…
下面那个代码写辣么辣么长是俺的错
(时隔一年我回来看一眼,忍不住道当年哪个傻B写的傻B玩意儿……心酸心累心惆怅)
为了表达歉意
我特定重新写了一个放在最最最后面
截图主要用到ImageIO【保存成文件】、BufferedImage【临时存储】、Robot【截取】等知识
具体怎么操作我在最最最最后面那个代码里面有注解
实例代码:

import java.awt.*;
import java.io.File;
import java.io.IOException;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;public class ScreenCapture {private String saveDir;     //存放图片的路径private String name;        //包括后缀的图片全称private String imageFormat; //图片存储格式,即后缀private String imageName;   //图片的名字,不包括后缀private Dimension screen;   //屏幕private Rectangle screenRectangle;      //矩形框public ScreenCapture() {saveDir = "D:\\image";screen = Toolkit.getDefaultToolkit().getScreenSize();screenRectangle = new Rectangle(screen);imageFormat = "png";}public void captureScreen() {SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");imageName = sdf.format(new Date());     //默认名字name = imageName + "." + imageFormat;File imageDir = new File(saveDir);if (!imageDir.exists()) {   //如果路径不存在,则创建imageDir.mkdirs();}//截屏BufferedImage image = null;try {Robot robot = new Robot();  //记得抛异常image = robot.createScreenCapture(screenRectangle);} catch (AWTException e) {e.printStackTrace();}try {ImageIO.write(image, imageFormat, new File(imageDir, name));} catch (IOException e) {e.printStackTrace();}}public void captureScreen(String imageName) {this.imageName = imageName;name = imageName + "." + imageFormat;File imageDir = new File(saveDir);if (!imageDir.exists()) {   //如果路径不存在,则创建imageDir.mkdirs();}//截屏BufferedImage image = null;try {Robot robot = new Robot();  //记得抛异常image = robot.createScreenCapture(screenRectangle);     //获取指定的图片} catch (AWTException e) {e.printStackTrace();}try {ImageIO.write(image, imageFormat, new File(imageDir, name));} catch (IOException e) {e.printStackTrace();}}public String getSaveDir() {return saveDir;}public void setSaveDir(String saveDir) {this.saveDir = saveDir;}public String getImageFormat() {return imageFormat;}public void setImageFormat(String imageFormat) {this.imageFormat = imageFormat;}public String getImageName() {return imageName;}//测试public static void main(String[] args) {ScreenCapture screen =  new ScreenCapture();screen.captureScreen();screen.setSaveDir("D:\\image");screen.setImageFormat("jpg");screen.captureScreen("我是白痴");}
}

++++++++++++++++++++++++++++++++++++++++++++++++++++
这里是2018.03.16时候推出的爱心代码
方便初学者参考[帅]

import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;public class Main {public static void main(String[] args) throws AWTException, IOException {Dimension screen = null;    //电脑屏幕大小Rectangle screenRect = null;//截图的宽高String imageName = "我是白痴";  //图片的名称String imageFormat = "png"; //图片的格式,即后缀String saveDir = "C:/";     //图片存放的路径BufferedImage image = null; //暂存图片的缓存Robot robot = null;         //负责截屏的操作者screen = Toolkit.getDefaultToolkit().getScreenSize();screenRect = new Rectangle(screen);robot = new Robot();        //抛出AWTExceptionimage = robot.createScreenCapture(screenRect);      //将得到的屏幕信息存放在缓存里面//将缓存里面的屏幕信息以图片的格式存在制定的磁盘位置ImageIO.write(image, imageFormat, new File(saveDir, imageName + "." + imageFormat));    //抛出IOException}
}

Java实现电脑屏幕的截取并保存成图片相关推荐

  1. edge 浏览器截取全图保存成图片

    edge 浏览器截取全图保存成图片 目标 edge的版本 使用方式 1:F12打开开发者工具 2:快捷键方式Ctrl + Shift + P 3:截图输入screen 4:之后就可以看到截取成功 目标 ...

  2. java 视频抽帧_opencv3.2.0实现视频抽帧,并保存成图片

    .实现指定帧数的抽取.和全部帧数的抽取,并保存到指定目录. 在QT新建一个控制台程序,程序源码如下:(程序实现每十帧获取一次帧) #include #include #include #include ...

  3. VC++屏幕捕获并保存成图片(附源码)

    目录 1.屏幕捕获(截取桌面) 2.将内存中的位图保存成图片文件 3.完整功能的屏幕截图

  4. JAVA PPT 柱状图_Java 将 PPT 形状(表格、文本框、心形、图表等)保存成图片

    MS PowerPoint中的表格.文本框.心形.图表.图片等均可以称为形状,将这些形状保存成图片,便可分类储存,方便日后查找,再利用. 本文将介绍如何使用 Spire.Presentation fo ...

  5. 后台java 使用PhantomJS把echart保存成图片

    后台java 使用PhantomJS把echart保存成图片 项目是在浏览器展示折线,柱状图,使用echarts效果不错.希望能把echarts图形通过后台程序保存成图片或者保存到word中,供客户做 ...

  6. BitmapUtil【缩放bitmap以及将bitmap保存成图片到SD卡中】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 用于缩放bitmap以及将bitmap保存成图片到SD卡中 效果图 代码分析 bitmapZoomByHeight(Bitmap s ...

  7. html保存当前页面为图片,将html页面保存成图片,图片写入pdf的实现方法(推荐)

    需求是一个导出pdf的功能,多方奔走终于实现了,走了不少弯路,而且怀疑现在这个方法仍是弯的. 有个jsPDF 插件可以在前端直接生成pdf,很简便,但不支持IE. 前端: 首先引入  html2can ...

  8. php 文字图片怎么保存为图片,php技术实现加载字体并保存成图片

    下面通过一段代码给大家详解介绍下php技术实现加载字体并保存成图片. // Set the content-type header("Content-type: image/png" ...

  9. 生成二维码并将Bitmap保存成图片

    本来项目集成的Zxing Bitmap qrCode = EncodingHandler.createQRCode(shareUrl, DimenUtils.dp2px(105)); 虽然这个类生成的 ...

最新文章

  1. 推荐系统超级公开课报名!
  2. 删除数据为0所在的行
  3. python 进度条_六种酷炫Python运行进度条
  4. TIOBE 9 月榜单:C#上涨1.18,Java 同比下滑3.18
  5. python结果导入excel_荐Python读取、写入EXCEL,处理数据完成运算具体实例及代码,Pycharm中导入库的操作流程...
  6. 求最长单调子序列java,单调减子序列(java实现)
  7. Text Processing in Python
  8. wifi传输信息需要连接服务器,基于近场通信的WiFi传输连接方案.pdf
  9. Hadoop1——创建虚拟机
  10. JavaScript事件 以及和jQuery中事件使用对比
  11. 为什么一般都使用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?...
  12. 如何判断环境变量为空
  13. KEGG 通路信息下载及其相关处理
  14. win10下载c语言软件下载,Win tc win10
  15. Unity3D 2021版本使用MonoDevelop代码编辑器
  16. Problem G: 测量湖泊的平均水深
  17. 强烈推荐|超经典的Matlab学习书籍下载
  18. 清除网页缓存HTML方法
  19. 解决mysql 找不到 my.ini文件的问题
  20. 牛客网:字节19研发:雀魂启动

热门文章

  1. qq安全保护进程更改计算机,QQ安全中心
  2. anaconda3更新后,菜单栏中没有Anaconda Promt
  3. 20200414-AMD的Ryzen5-4500U的性能对比测试(宏碁SF314(Acer)传奇 14英寸 )
  4. 入门量化分析(金融)的一些建议
  5. 计算机科学丛书 图灵,图灵计算机科学丛书
  6. 手机支付属于什么计算机应用领域,基于j2me的手机移动支付应用研究-计算机应用技术专业论文.docx...
  7. Excel表格×××号码如何一键提取性别、年龄、出生年月
  8. 【Codeforces 538 H】Summer Dichotomy(二分图染色)
  9. 叉积 微分 恒等式_不等式(O):常见符号及恒等式
  10. php网页报告2500字,教你写作文2500字