当前位置: 首页 > 面试题库 >

有没有办法使用Java截屏并将其保存到某种图像?

公良信然
2023-03-14
问题内容

如标题所述,很简单:您可以仅使用Java命令来截取屏幕截图并保存吗?或者,我是否需要使用特定于操作系统的程序来截取屏幕截图,然后将其从剪贴板中拿出来?


问题答案:

你实际上可以java.awt.Robot用来“创建一个包含从屏幕读取的像素的图像”。然后,你可以将该映像写入磁盘上的文件。

我只是尝试了一下,整个过程最终像这样:

Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage capture = new Robot().createScreenCapture(screenRect);
ImageIO.write(capture, "bmp", new File(args[0]));


 类似资料:
  • 我正在尝试使用SeleniumWebDriver拍摄一个网站的截图,并将其保存在所需的位置。 下面的代码运行良好,但Selenium没有为我保存任何屏幕截图? 有人知道我如何让Selenium截图并保存到我的电脑吗?

  • 我希望我的Xamarin表单应用程序禁用屏幕截图。有办法这样做吗?注意:我在纯Android和iOS版本中找到了解决方案,但我需要Xamarin解决方案。如果有一种方法可以以某种方式嵌入纯Android和iOS解决方案,我也接受这一点。谢谢:)

  • 我有一个CSV文件,我正在尝试导入MongoDB数据库中的CSV文件。不幸的是,这种体验并没有像我希望的那样工作。CSV文件的内容不相关,因为当我使用MongoDB Compass手动导入它时,没有问题,它按我想要的方式出现。因此,如果可能的话,我试图使用Java和Spring Boot将其从本地文件夹保存到MongoDB,但我找不到任何关于如何这样做的好建议或解释。 我用的是Spring Boo

  • 我正在建立一个学生时间表生成器,我需要一种方法来产生一个以上的解决方案。有什么方法可以节省可行的分数或xhard/ysoft的分数吗? 我需要能够输出多个潜在的时间表,这样学生将有一个时间表的选择,而不是另一个,如果出于任何原因,他们不想要“最好的”时间表(也许他们不喜欢其中一个教授,也许他们不想要上午8点的课,无论什么) 我最初的想法是使用bestSolutionChanged事件侦听器省去所有

  • 同样,我对编程非常陌生,所以请耐心等待。我希望我的机器人保存你说的话,并在以后的消息中使用它。我遇到的问题是,机器人正在保存消息,该消息应该提示它保存下一条消息。 我已经尝试将不同的部分划分为不同的on_消息命令,但是由于我使用全局布尔值来帮助bot识别它应该在对话中的位置,因此,分离命令意味着bot不依赖于前面on_消息命令的真/假赋值。我还打算尝试将消息内容分配给不同的变量,这样机器人就可以知

  • 前端有没有办法实现页面截图?不是html-to-canvas那种实现,而是类似于windows上各种截图工具那样,直接截取屏幕上图像 目前搜到的全是html-to-canvas的方案