如何将位图的黑色背景颜色改为透明?

7
我将使用以下代码创建 Bitmap
Bitmap bm= Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

但是我想将背景颜色从黑色改为透明,因为我想在另一个Activity中使用这个对象。我搜索了很多,但是无法找到解决方案。 请帮忙。 提前致谢。

2个回答

13

当然,在ARGB_8888模式下创建的位图支持透明度,但是Alpha通道最初被填充为0xff,因此位图是不透明的。您需要清除整个位图,包括Alpha通道,像这样:

Canvas c = new Canvas(bm);
c.drawColor(0, Mode.CLEAR);

-1

2
不建议在Android上使用GIF。 - WarrenFaith
实际上我正在使用PNG格式。我想要在图像中填充颜色,所以将其转换为位图,现在我想要填充颜色的相同图像。我如何从位图中提取仅带有图像而没有背景的部分? - Umesh
1
如果您正在使用Bitmap对象,您可能想尝试以下方法:https://dev59.com/6mw05IYBdhLWcg3wcRau - Quintin Balsdon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接