gpt4 book ai didi

android - 我如何将颜色转换为位图?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:56:30 30 4
gpt4 key购买 nike

我有一个整数形式的颜色,我希望该颜色为位图形式。
有什么办法吗?

我试过了

Drawable d = new ColorDrawable(Color.parseColor("#ffffff"));
Bitmap b = ((BitmapDrawable)d).getbitmap();

但是上面的代码报错Cannot cast ColorDrawable to BitmapDrawable

还有其他办法吗?

实际代码是

Palette.generateAsync(BitmapFactory.decodeFile(songArt),
new Palette.PaletteAsyncListener() {
@Override
public void onGenerated(final Palette palette) {
if (Build.VERSION.SDK_INT >= 16) {
Drawable colorDrawable = new ColorDrawable(palette.getDarkVibrantColor(
getResources().getColor(R.color.noti_background)));
notificationCompat.bigContentView.setImageViewResource(R.id.noti_color_bg,
((BitmapDrawable) colorDrawable).getBitmap());
notificationManager.notify(NOTIFICATION_ID, notificationCompat);
}
}
}
);

最佳答案

是的。你可以这样做:

Bitmap bmp = Bitmap.createBitmap(width, height, Config.ARGB_8888);
Canvas canvas = new Canvas(bmp);
canvas.drawColor(colorInt)

drawColor() 中,您还可以使用 Color 类的方法设置颜色,例如 Color.argb(...)Color.rgb(...)

这样你就会得到一个尺寸为 width/height 并填充指定颜色的位图。

进一步说明:您创建一个具有指定尺寸的Bitmap 对象。然后创建一个 Canvas 对象并将 Bitmap 对象附加到它。这样,使用 Canvas 对象方法绘制的所有内容都会绘制在 Bitmap 对象上。

最后,您有一个包含您的绘图的 Bitmap 对象。

关于android - 我如何将颜色转换为位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31232713/

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