在Java中查找PNG图像中坐标处的颜色

时间:2012-02-22 03:38:22

标签: java png

使用PNG图像的URL(或该网址上的数据,以String形式),如何使用Java在一组坐标处查找RGB(或类似)值?

提前致谢!

1 个答案:

答案 0 :(得分:1)

此示例应该包含您所需的一切:

引用该主题的相关部分:

File inputFile = new File("image.png");
BufferedImage bufferedImage = ImageIO.read(inputFile);
int w = bufferedImage.getWidth();
int h = bufferedImage.getHeight(null);

//Get Pixels
int [] rgbs = new int[w*h];
bufferedImage.getRGB(0, 0, w, h, rgbs, 0, w); //Get all pixels

然后获取特定像素,请参阅文档:

即:

int pixel = rgbs[offset + (y-startY)*scansize + (x-startX)];

如果您只想要一个像素,可以使用getRGB(x, y)

即:

int pixel = bufferedImage.getRGB(x, y);