首页 Java 如何使用java捕获其他应用程序的选定屏幕?

如何使用java捕获其他应用程序的选定屏幕?

我们正在尝试开发一个屏幕捕获实用工具. 我们如何使用Java捕获另一个应用程序的选定屏幕?我们如何在捕获的屏幕上添加标注? 基于 Prajakta’s description of the project,我相信有一些操纵屏幕截图的解释是有序的(我认为约翰做了很好的解释 how to capture

我们正在尝试开发一个屏幕捕获实用工具.

我们如何使用Java捕获另一个应用程序的选定屏幕?我们如何在捕获的屏幕上添加标注?

解决方法

基于
Prajakta’s description of the project,我相信有一些操纵屏幕截图的解释是有序的(我认为约翰做了很好的解释
how to capture the screen shot using the java.awt.Robot class).记住,作为
Steve McLeod said,Java可能无法自动找到要在屏幕上捕获的窗口的位置.这很重要,因为Robot类需要从您自动或手动地了解此位置.

当您调用屏幕截图的BufferedImage的createGraphics()方法时,可以通过您收到的Graphics2D对象将标注,文本,图像等添加到屏幕截图中.我强烈建议您查看the Graphics2D’s API以更好地了解该功能.我还建议找一些教程,也许从the 2D Graphics Tutorial from Sun开始.“Filthy Rich Clients”这本书也可能有用.

当您最终要保存此修改后的屏幕截图时,可以使用ImageIO类的“写入”方法之一.

这是一个非常简单的,从头到尾的例子.您可以填写必要的细节.

我希望这个帮助一点!

Robot robot = new Robot();

// The hard part is knowing WHERE to capture the screen shot from
BufferedImage screenShot = robot.createScreenCapture(x,y,width,height);
Graphics2D graphics = screenShot.createGraphics();

// Add a label to the screen shot
Color textColor = Color.RED;
graphics.setColor(textColor);
graphics.drawString("Some text",textX,textY);

// Save your screen shot with its label
ImageIO.save(screenShot,"png",new File("myScreenShot.png"));

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/kaifa/java/20200723/7147.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部