Захватить координаты x, y для данного пикселя RGB? - PullRequest
1 голос
/ 03 ноября 2011

У меня есть метод скриншота в моем коде и экземпляр BufferedImage.Мне интересно, можно ли выполнить поиск данных изображения для определенного RGB, а затем вернуть координаты X, Y для пикселя.

Что я могу использовать для этого?Возможно ли это вообще?

Ответы [ 2 ]

2 голосов
/ 03 ноября 2011
public int[] searchForColor(BufferedImage bi, int searchColor)
{
    for (int x = 0; x < bi.getWidth(); ++x)
    for (int y = 0; y < bi.getHeight(); ++y)
    {
        if ((bi.getRGB(x, y) & 0x00FFFFFF) == searchColor)
            return new int[]{x, y};
    }
}

Использование:

BufferedImage bi = takeScreenShot();
int searchColor = 0x2D5E83; // A random color
int[] coordinate = searchForColor(bi, searchColor);
int x = coordinate[0];
int y = coordinate[1];
1 голос
/ 03 ноября 2011

http://www.roseindia.net/java/java-get-example/get-color-of-pixel.shtml и цикл по данным изображения

...