HarmonyOS 鸿蒙Next是否支持Palette(调色板)抽取Bitmap主色调的方法

HarmonyOS 鸿蒙Next是否支持Palette(调色板)抽取Bitmap主色调的方法 触发场景

Palette顾名思义调色板,Palette的作用是可以从图像中提取图片的颜色。我们可以把提取的颜色融入到App UI中,可以使UI风格更加美观融洽。有些时候Palette显得非常好用,比如我们可以提取到的突出的色值设置为Toolbar,标题,状态栏的颜色等,可以使我们的整个界面色调统一,效果非常好看。

Android实现方式

Android-Support库中的Palette,可以从一幅图中抽取特征颜色。

在工程下的build.gradle里添加依赖使用Palette

compile 'com.android.support:palette-v7:27.1.1'

获取Swatch对象

通过Swatch提供的方法获取颜色的相关信息,返回从调色板中占主导地位的样本的颜色

Palette.Swatch mSwatch = Palette.from(bitmap).generate().getDominantSwatch();

抽取图片色调

bitmap = ((BitmapDrawable)((ImageView)view).getDrawable()).getBitmap();
Palette.Swatch mSwatch = Palette.from(bitmap).generate().getDominantSwatch();
if (null != mSwatch) {
    rgb = mSwatch.getRgb();
} else {
    rgb = Color.parseColor("#8D8D8D");
}
shadowPaint.setShadowLayer(radius, 0, shadowDimen, getDarkerColor(rgb));

鸿蒙SDK版本和IDE版本

SDK: 2.1.1.20
IDE: 2.1-Beta4 2.1.0.303

遇到同样问题的兄弟们,请帮顶,期待2021年5月20日前回复。谢谢


更多关于HarmonyOS 鸿蒙Next是否支持Palette(调色板)抽取Bitmap主色调的方法的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

暂时没有对应的方法,请关注官网更新

更多关于HarmonyOS 鸿蒙Next是否支持Palette(调色板)抽取Bitmap主色调的方法的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


开发者您好,这个问题我们已经反馈给研发分析,请您耐心等待。

欢迎开发小伙伴们进来帮帮楼主

是的,HarmonyOS 鸿蒙Next支持通过Palette(调色板)抽取Bitmap主色调的方法。开发者可以使用ohos.media.image.Palette类来从Bitmap中提取主色调。通过Palette.from(bitmap).generate()方法,可以生成一个Palette对象,然后调用getDominantColor()等方法获取主色调。这一功能在应用开发中常用于动态调整UI颜色,以匹配图片主题。

回到顶部