1
我試圖創建一個16位的PNG,但不能讓它保持只寫黑色。另外我怎麼能轉換一個8位顏色定義爲255,255,255/r,g,b到16位顏色?我如何創建一個16位的灰度圖像與java
BufferedImage bi = new BufferedImage(256, 256,
BufferedImage.TYPE_USHORT_GRAY);
// 65536
for (int i = 0; i < 256; i++)
for (int j = 0; j < 256; j++) {
int mask = 0xf0
int value = 255 & mask; // zero other bits
value >>= 16;
bi.setRGB(i, j, value);
// bi.setRGB(i, j, 65536);
}
File f = new File("gray.png");
try {
ImageIO.write(bi, "png", f);
} catch (IOException e) {
e.printStackTrace();
}
對不起,我不是由我的電腦,但你能告訴我,是否創建一個8位或16位PNG?謝謝! – user1088777
@ user1088777我不知道。 [Here](http://stackoverflow.com/q/4116858/862441)是一個相關的SO問題,可能有所幫助。 – srkavin