【问题标题】:Making a screencast software in java用java制作截屏软件
【发布时间】:2012-08-09 23:38:59
【问题描述】:

这就是我的计划:
将有一个带有开始和停止按钮的小 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));

}  

如果你能解释一下上面提到的关于我的问题的代码。

【问题讨论】:

  • 问题是?您希望我们设计和实现您的应用程序吗?
  • 帮助图像部分。我已经完成了目录创建、JFrame 和 rest。除了图像问题。

标签: java awtrobot


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2012-12-27
    • 2016-07-05
    • 1970-01-01
    • 2011-08-14
    • 1970-01-01
    • 2023-03-25
    • 2011-05-28
    • 2013-09-18
    • 1970-01-01
    相关资源
    最近更新 更多