gpt4 book ai didi

java - 用java制作一个截屏软件

转载 作者:太空宇宙 更新时间:2023-11-04 08:07:11 25 4
gpt4 key购买 nike

这就是我计划的实现方式:
将会有一个带有开始和停止按钮的小 JFrame,用于开始和停止录制。单击“开始”将启动一个线程,该线程将创建一个 java.awt.Robot,该机器人将重复进行屏幕截图。
这就是我的问题开始的地方。机器人确实会截屏,但是
1. 不会记录光标位置
2.我不知道图像将存储在哪里。我打算将它们存储在一个文件夹中,该文件夹的名称将使用 java.util.Date 确定。
3.我对BufferedImage类一窍不通。

我已经完成了JFrame的制作并实现了线程。我有从互联网上获得的包,可以将图像转换为 avi 电影。
请帮我解决以上三个问题。

编辑:

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.io.File;

public void captureScreen(String fileName) throws Exception {

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle screenRectangle = new Rectangle(screenSize);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(screenRectangle);
ImageIO.write(image, "png", new File(fileName));

}

如果您可以的话,请解释一下上面提到的关于我的问题的代码。

最佳答案

获取屏幕截图中光标的解决方案是:找出光标的位置。

java.awt.MouseInfo.getPointerInfo().getLocation()

并将光标的渲染图像放置在屏幕截图的顶部。看看这个:http://docs.oracle.com/javase/tutorial/2d/images/index.html

关于java - 用java制作一个截屏软件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11886817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com