有没有一种简单的方法可以比较BufferedImage实例?

有没有一种简单的方法可以比较BufferedImage实例?,第1张

有没有一种简单的方法可以比较BufferedImage实例?

这是最好的方法。无需保留变量来判断图像是否仍然相等。如果条件为假,只需立即返回假。短路评估可帮助节省比较失败后在像素上循环的时间,就像trumpetlick的回答中那样。

public static boolean compareImages(BufferedImage imgA, BufferedImage imgB) {  // The images must be the same size.  if (imgA.getWidth() != imgB.getWidth() || imgA.getHeight() != imgB.getHeight()) {    return false;  }  int width  = imgA.getWidth();  int height = imgA.getHeight();  // Loop over every pixel.  for (int y = 0; y < height; y++) {    for (int x = 0; x < width; x++) {      // Compare the pixels for equality.      if (imgA.getRGB(x, y) != imgB.getRGB(x, y)) {        return false;      }    }  }  return true;}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5131127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存