我正在制作某种图像滤镜,我需要对特定颜色进行去饱和(去除饱和度)。例如红色。我希望我的图像用灰色替换所有红色。
更改此图像
任何想法?
据说有http://developer.android.com/reference/android/graphics/ColorMatrixColorFilter.html ColorMatrixColorFilter 可以用来改变像素的饱和度。但是你必须玩数学和ColorMatrix
那是你在研究的吗?
编辑:Android 标准库中没有这样的东西。过滤器是在 NDK 中针对性能问题编写的,因此您需要对自定义过滤器执行相同的操作。
另一个不考虑性能的想法是:循环遍历所有像素并在“红色”时去饱和
我认为您可以使用 OR login 为您的颜色 RGB 或 ARGB 添加“过滤器”
int filter = 0x00CC0000 | color;
myView.setBackgroundColor(filter);