FirefoxDriver делает скриншоты разных размеров
Я сделал java-приложение, которое сравнивает скриншоты, сделанные в нашей рабочей среде, с производственными. Приложение не работает из-за разных размеров скриншота.
Как я могу определить размер скриншота? Я использую следующий код для создания скриншота.
final WebDriver driver = new FirefoxDriver();
try {
driver.manage().window().setSize(new Dimension(1024, 768));
driver.get(link);
File outputFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
....
1 ответ
Решение
Как упоминалось в комментариях @Würgspaß, вы можете сделать это с помощью OutputType.BYTE. Вот пример:
byte[] bytes = driver.getScreenshotAs(OutputType.BYTES);
BufferedImage full = ImageIO.read(new ByteArrayInputStream(bytes));
full.getSubimage(0, 0, 1200, 800);