【发布时间】:2018-04-22 18:25:00
【问题描述】:
我正在尝试在运行测试执行时截取屏幕截图。 我使用 sikuli java 使用以下代码:
Screen screen = new Screen();
ImageIO.write(screen.capture().getImage(), "png", new File(file-location+"1.png"));
我使用的另一种方法是 java awt:
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screenSize = toolkit.getScreenSize();
Rectangle screenRect = new Rectangle(screenSize);
Robot robot = new Robot();
BufferedImage image5 = robot.createScreenCapture(screenRect);
ImageIO.write((RenderedImage) image5, "png", new File(AppConstant.IMAGE_DIR+"1.png"));
但问题是,它正在使用 Ubuntu 菜单栏截取我的整个屏幕。我想要的是只截取我的 eclipse 窗口的屏幕截图,一个特定的区域。
【问题讨论】:
-
您需要找到 Eclipse 窗口的大小和位置,或者您要截屏的任何内容,然后使用这些尺寸对 Robot 类进行截屏。
-
类似:BufferedImage img = robot.createScreenCapture(new Rectangle(x, y, width, height));?????
-
或者我只能通过哪种方式获得我的eclipse窗口大小的屏幕尺寸?
标签: java automation sikuli