1
我需要從像素的RGB顏色(讀取PNG文件的BufferedImage對象,BufferedImage顏色空間爲BufferedImage.TYPE_4BYTE_ABGR)中創建Color對象。但是在某些顏色上有問題,請參閱下面的代碼和輸出。我想這是某種顏色空間問題,但我不知道如何解決它):謝謝任何提示!用RGB創建顏色給出比原始RGB更多的顏色
// imagine some great loop for x,y around the following code
int color = myImage.getRGB(x, y);
Color c = new Color(myImage.getRGB(x, y));
if(c.getRGB() != color)
System.out.println("fail " + color + " vs " + c.getRGB());
輸出:
fail -116782582 vs -16119286
fail 0 vs -16777216
fail 117440511 vs -1
fail -1090519040 vs -16777216
fail 1488435127 vs -4737097
fail -1090453247 vs -16711423
和更多一些。如果有幫助:例如透明度變黑。我猜新的Color對象使用的是另一個不是BufferedImage的顏色空間,但我不知道如何爲一個新的Color對象設置顏色空間?或者是RGB信息不足以重新創建顏色?
這是完美的,非常感謝你! –