gpt4 book ai didi

android - 如何在 Android 中将具有黑色像素的位图转换为另一种颜色?

转载 作者:行者123 更新时间:2023-11-29 22:08:47 24 4
gpt4 key购买 nike

我有一个带有一些透明像素的位图,其余主要是黑色(一些黑色像素可能有一些半透明像素)。

我需要重新使用这些位图,并希望能够在运行时从这个位图中创建一个蒙版,然后尝试与另一种颜色(如红色、绿色等)的 block 混合,以便最终结果是相同的图像,但颜色为红色(那些半透明的黑色像素变成半透明的红色像素)。

我已经尝试了各种滤色器和 xfermodes,但一直无法弄清楚。请帮忙!

最佳答案

如果不需要高速,可以使用手动混合像素的简单解决方案。

final Bitmap bmp = /* there your bitmap */;

int w = bmp.getWidth();
int h = bmp.getHeight();

for (int x = 0; x < w; x++) {
for (int y = 0; y < h; y++) {
int color = bmp.getPixel(x, y);

// Shift your alpha component value to the red component's.
color = (color << 24) & 0xFF000000;

bmp.setPixel(x, y, color);
}
}

如果你需要更有效的处理,你必须(至少)使用getPixels方法,或者更可取的是本地处理。

关于android - 如何在 Android 中将具有黑色像素的位图转换为另一种颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10158173/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com