2016-03-18 46 views
2

我正在测试一个网页内的游戏以截图,我使用的代码是用java

private void takeScreenShot(String screenShotName) { 
     File path = new File("/Users/myUser"); 
     String extension = ".jpg"; 
     File screenShot = new File(path+"/"+screenShotName); 
     File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); 
     try { 
      FileUtils.copyFile(scrFile, screenShot); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

和截图出来是这样的(我一直在使用相同的代码没有许多应用问题),我使用的OS X上的代码

Wrong Screenshot

回答

1

你可以试试这个:

private void takeScreenShot(String screenShotName) throws AWTException, IOException { 

     Robot robot = new Robot(); 
     String path = "\\Users\\myUser"; 
     String extension = "jpg"; 
     String fileName = path +"\\"+ screenShotName +"."+ extension; 

     Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()); 
     BufferedImage screenFullImage = robot.createScreenCapture(screenRect); 
     ImageIO.write(screenFullImage, extension , new File(fileName));   

} 
+0

此解决方案完美工作,但您是否有任何线索发生此问题的原因? – fx86f