[問題]關於類別BufferedImage

看板java作者時間17年前 (2008/09/13 05:18), 編輯推噓4(401)
留言5則, 4人參與, 最新討論串1/1
假設以下程式 int zero = 0; /*已知為 TYPE_3BYTE_BGR */ BufferedImage pic = ImageIO.read(new File("pic.bmp")); pic.setRGB(0,0,zero); System.out.printf( "pic.getRGB(0,0)= %d" , pic.getRGB(0,0) ); 輸出結果為 pic.getRGB(0,0)= -16777216 請問得到的結果為什麼不是0呢? 把一個4byte,值為0的整數存入應該沒有超出範圍(僅管pic的類別是TYPE_3BYTE_BGR) 因為我想利用 pic.getRGB(x,y)來當判斷條件 if( pic.getRGB(x,y) = ...) 如果無法確認正確的值將會變得無法下手.. 查過API也找不到答案 所以想問看看有沒有人知道?? 感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.229.173.29

09/13 06:19, , 1F
-16777216 = FF000000, 他是黑色。
09/13 06:19, 1F

09/13 06:25, , 2F
判斷這個值:pic.getRGB(0,0) & 0xFFFFFF <- 應該會等於零
09/13 06:25, 2F

09/13 15:32, , 3F
可是用WritableRaster試看看
09/13 15:32, 3F

09/14 00:41, , 4F
剛看完JOKE板 忘了來到JAVA板 想說鄉民笑話CODE怎這麼多
09/14 00:41, 4F

09/17 16:26, , 5F
哈哈
09/17 16:26, 5F
文章代碼(AID): #18ojol73 (java)