gpt4 book ai didi

java - 比较两个屏幕截图无法正常工作-java

转载 作者:行者123 更新时间:2023-11-30 06:29:56 25 4
gpt4 key购买 nike

我正在尝试制作两个相差 6 秒的屏幕截图,以查看网站上是否有一些变化。

但是我的代码告诉我屏幕截图总是不同的,即使我在屏幕上没有任何变化的情况下进行测试也是如此。

我做错了什么?

Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screensize = toolkit.getScreenSize();
Rectangle rectangle = new Rectangle(0,0,screensize.width,screensize.height);

Robot robot = new Robot();
BufferedImage image1 = robot.createScreenCapture(rectangle);
System.out.println("screenshot "+i+"");
Thread.sleep(6000);
BufferedImage image2 = robot.createScreenCapture(rectangle);
System.out.println("screenshot "+(i+10)+"");

int x1 = image1.getWidth();
int x2 = image2.getWidth();
if ( x1 != x2 ) {
System.out.println( "Widths are different: " + x1 + " != " + x2 );
return;
}

int y1 = image1.getHeight();
int y2 = image2.getHeight();
if ( y1 != y2 ) {
System.out.println( "Heights are different: " + y1 + " != " + y2 );
return;
}

for ( int x = 0; x < x1; x++ ) {
for ( int y = 0; y < y1; y++ ){
int p1 = image1.getRGB( x, y );
int p2 = image2.getRGB( x, y );
if ( p1 != p2 ) {
System.out.println("Pixel is different at x/y " + x + "/" + y + ": " + p1 + " != " + p2 );
return;
}
}
}

System.out.println( "Images are identical" );

最佳答案

我尝试了您的代码,但由于 Eclipse 控制台中的光标闪烁,我的像素有所不同。

然后我遇到了动画图标的问题(任务栏中的进程资源管理器)

最后它说图像相同。

注意:鼠标不是它的一部分:

Creates an image containing pixels read from the screen. This image does not include the mouse cursor.

关于java - 比较两个屏幕截图无法正常工作-java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11012087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com