java如何将BuffereImage转换为特定颜色?
特别地,我的图片都是纯黑色的,透明的。我想在绘制图像时为其指定一种辅助颜色,以便将黑色区域更改为新颜色
我尝试使用RGBImageFilter,它只返回我想要的颜色,但出现了一些问题,根本没有绘制任何内容。(ColorFilter扩展了RGBImageFilter,并仅在其filterRGB()方法中返回设置的颜色。)
BufferedImage tileImage = _tiles.get( tileID );
ColourFilter cFilt = new ColourFilter();
cFilt.setColour( colour );
FilteredImageSource filteredSrc = new FilteredImageSource( tileImage.getSource(), cFilt );
Image finalImage = Toolkit.getDefaultToolkit().createImage(filteredSrc);
bufferGraphics2D.drawImage(finalImage.....
# 1 楼答案
看看AlphaComposites,尤其是DST_:
# 2 楼答案
我不是100%确定你想做什么,但是图像过滤器应该能够做你想做的事情。例如