我想從一個透明的而不是白色背景的Java顯示圖像創建一個PNG。嘗試將新顏色(0,0,0,0)中的alpha設置爲0 - 背景顯示爲白色仍然是?透明背景PNG - Java的 - BufferedImage
我使用的BufferedImage
WritableRaster raster = onscreenImage.getRaster(); WritableRaster newRaster; newRaster = raster.createWritableChild(0, 0, width, height, 0, 0, new int[] {0, 1, 2}); DirectColorModel cm = (DirectColorModel) onscreenImage.getColorModel(); DirectColorModel newCM = new DirectColorModel(cm.getPixelSize(), cm.getRedMask(), cm.getGreenMask(), cm.getBlueMask()); BufferedImage rgbBuffer = new BufferedImage(newCM, newRaster, false, null); try { ImageIO.write(rgbBuffer, suffix, file); } catch (IOException e) { e.printStackTrace(); }
顯示更多的代碼。 – 2013-03-27 18:19:49
您是否覆蓋兩個或更多圖像?如果背景是白色的,即使在透明之後,它也會顯示爲白色。 – akshay202 2013-03-27 18:21:36
你使用'BufferedImage'嗎? – 2013-03-27 18:21:44