【问题标题】:java-cursor flickering when i take many screenshot当我截取许多屏幕截图时,java-cursor 闪烁
【发布时间】:2014-09-06 23:50:22
【问题描述】:

我正在尝试使用 Robot 类在 Java 中截取许多屏幕截图以记录我的屏幕。 问题是,当我以 15 fps-30 fps 的速度拍摄时,光标会闪烁。 我该如何解决这个问题? 我正在使用 Java 7 32 位。

【问题讨论】:

  • 这个类似的问题表明这是不可能的:stackoverflow.com/questions/2962271/…stackoverflow.com/questions/21206986/…
  • 听起来您正在尝试制作视频 (15-30 fps),Robot 可能不是这里的最佳解决方案,请尝试使用Java Screen Recorder 或类似的方法。
  • 您好,Java Screen Recorder 使用Robot 类截取屏幕以记录屏幕......所以这是同样的问题......你给我的链接与我的问题不同,我想要意味着我的光标从我的屏幕上消失了,而不仅仅是在屏幕截图上。
  • 我尝试使用 Java 8 32 位,我的截图效果更好,光标也没有问题。编辑:我在英雄联盟上试过了,我的光标又闪烁了,所以这不是 java 版本的问题。
  • 使用java.awt.robot截屏时,系统会在瞬间隐藏鼠标光标,直到截屏为止。因此,如果您每秒截取 15 个屏幕截图,系统将隐藏光标 15 次,使其对用户显示闪烁,具体取决于系统性能。

标签: java screenshot awtrobot


【解决方案1】:

屏幕闪烁可能是因为你截屏太快了。

您应该使用某种计时器来控制应用程序的速度,并使其以每秒 60 帧左右的速度运行。

其次,专业的屏幕录像机通常有后台缓冲区来存储以前的屏幕截图,并且只截取屏幕实际更改的部分

假设您截取了桌面的屏幕截图。如果您不移动鼠标或不执行任何操作,则可能不会处理未来的屏幕截图,因为未检测到任何更改。如果您移动鼠标,可能只会打印屏幕发生变化的部分,其余部分应与之前的屏幕截图相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    相关资源
    最近更新 更多