Palette(调色板)

2024-02-20 04:58
文章标签 palette 调色板

本文主要是介绍Palette(调色板),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

利用Palette库来取得图片中的主要色彩

使用这个Android的开源库android-support-v7-palette。

  • 流程:
    得到一个bitmap,通过方法进行分析,取出LightVibrantSwatch,DarkVibrantSwatch,LightMutedSwatch,DarkMutedSwatch这些样本,然后得到rgb。

  • Palette这个类中提取以下突出的颜色:
    Vibrant (有活力)
    Vibrant dark(有活力 暗色)
    Vibrant light(有活力 亮色)
    Muted (柔和)
    Muted dark(柔和 暗色)
    Muted light(柔和 亮色)

  • 创建方法
        //目标bitmapBitmap bm =BitmapFactory.decodeResource(getResources(),R.drawable.kale);//方法1Palette.Builder builder = Palette.from(bm);Palette palette=builder.generate();//方法2   使用异步builder.generate(bitmap, new Palette.PaletteAsyncListener() {  @Override  public void onGenerated(Palette palette) {     // Here's your generated palette}    

Palette palette=Palette.generate() 等方法直接废弃掉了

  • 使用样本(swatch)

    • 创建完一个实例之后,我们还需要得到一种采集的样本(swatch),有6中样本(swatch):
      Palette.getVibrantSwatch()
      Palette.getDarkVibrantSwatch()
      Palette.getLightVibrantSwatch()
      Palette.getMutedSwatch()
      Palette.getDarkMutedSwatch()
      Palette.getLightMutedSwatch()
      List

getPopulation(): the amount of pixels which this swatch represents.
getRgb(): the RGB value of this color.
getHsl(): the HSL value of this color.
getBodyTextColor(): the RGB value of a text color which can be displayed on top of this color.
getTitleTextColor(): the RGB value of a text color which can be displayed on top of this color.

比如如果你的TextView 有个背景图片,要想让字体颜色能够和背景图片匹配,则使用getBodyTextColor()比较合适,getTitleTextColor()其实应该和getBodyTextColor()差不多

  • Size问题
    在上面的代码中,你可能注意到了可以设置palette的size。size越大,花费的时间越长,而越小,可以选择的色彩也越小。最佳的选择是根据image的用途:
    • 头像之类的,size最好在24-32之间;
    • 风景大图之类的 size差不多在8-16;
    • 默认是16.
  • 使用代码
Bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.kale);Palette palette = Palette.generate(bm);if (palette.getLightVibrantSwatch() != null) {//需要注意的是`getVibrantSwatch()可能会返回一个null值,所以检查一下是必须的。//得到不同的样本,设置给imageview进行显示iv.setBackgroundColor(palette.getLightVibrantSwatch().getRgb());iv1.setBackgroundColor(palette.getDarkVibrantSwatch().getRgb());iv2.setBackgroundColor(palette.getLightMutedSwatch().getRgb());iv3.setBackgroundColor(palette.getDarkMutedSwatch().getRgb());}

这篇关于Palette(调色板)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/727116

相关文章

猫猫学iOS之ipad开发Popover的调色板应用_popover显示后其他控件仍然能进行交互

猫猫分享,必须精品 原创文章,欢迎转载。转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:效果 后面的是xcode的控制台 二:代码 ViewController #import "ViewController.h"#import "ColorsViewController.h"@interface ViewController

【Opencv-Python 官方教程】5.Trackbar调色板

本节目标: 学会在opencv的显示窗口中绑定trackbar将会学到以下几个函数:cv2.getTrackbarPos(), cv2.createTrackbar() 原文地址:Trackbar as the Color Palette Demo 我们将会建立一个简单的应用,显示我们指定的颜色。将会建立一个窗口,显示三个trackbar指定RGB三个颜色通道值。可以滑动trackba

【QPalette】调色板简介

描述 QPalette类包含每个小部件状态的颜色组。 调色板由三个颜色组组成:活动的、禁用的和非活动的。Qt中的所有小部件都包含一个调色板,并使用它们的调色板来绘制自己。这使得用户界面易于配置和保持一致。如果您创建一个新的小部件,我们强烈建议您使用调色板中的颜色,而不是硬编码特定的颜色。 颜色组: 1.活动组用于具有键盘焦点的窗口。 2.非活动组用于其他窗口。 3.禁用组用于由于某种原因禁用的

cv2函数实践-图像处理(中心外扩的最佳RoI/根据两个坐标点求缩放+偏移后的RoI/滑窗切片/VOC的颜色+调色板)

目录💨💨💨 中心外扩的最佳RoI(裁图)根据两个坐标点求缩放+偏移后的RoI自定义RGB2BGR颜色解析小函数滑窗切片(sliding window crops)VOC的颜色+调色板 中心外扩的最佳RoI(裁图) 指定中心点和裁图宽高,获得裁图位置xyxy坐标(最佳),便于在图像裁剪。 def get_best_crop_position_of_center(cente

jsp页面引入调色板、颜色表

jsp页面: <form> <input id="fontColor"/> <div id="colorpanel" style="position:absolute;display:none; width:253px;height:177px;"></div>  </form> javascript脚本: $(document).ready(function() {

Android中使用Palette让你的页面UI优雅起来

文章目录 1. 什么是Palette2. 引入Palette3. 使用 Palette3.1 同步方式3.2 异步方式3.3 获取色调值 4. 举例4.1 布局文件 activity_palette_list.xml ⬇️4.2 Activity:PaletteListActivity⬇️4.3 列表Adapter:PaletteListAdapter ⬇️4.4 列表item布局:list

使用调色板绘制系统界面

相关代码可视频可在网易云课堂下载: Linux kernel Hacker, 从零构建自己的内核 上一节,我们已经可以使用C语言实现图像绘制,但操作系统的用户界面不可能是那种扎眼的条纹图案,这一节,我们要改进图形绘制的方法,做一个像某像样的系统界面。 上一节,我们实现图像绘制的办法是,给每一个像素设定指定的数值,这个数值只能位于0-256这个范畴,以现在绚丽多彩的UI效果来说,256种颜色显

一文玩转Seaborn热力图中调色板设置

1.引言 在前文中我们介绍了如何利用Seaborn绘制热力图,并详细介绍了各种热力图中的控制条件。本文重点介绍如何控制绘制热力图中的调色板。 闲话少说,我们直接开始吧! 2.举个栗子 我们首先来看个上一节的栗子,代码如下: import numpy as npimport seaborn as sbimport matplotlib.pyplot as plt​data = np

【Qt 学习笔记】QWidget的styleSheet属性 | RGB | 在线调色板

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ QWidget的styleSheet属性 文章编号:Qt 学习笔记 / 20 文章目录 QWidget的styleSheet属性一、styleSheet属性1. 简介2. API3. 代码示例示例1:样式表设置文本样式示例2:代

数字图像处理编成入门笔记——第一章Windows位图和调色板

1.1 位图和调色板的概念 1. 真彩色图: 它的颜色数高达256×256×256种,也就是说包含我们上述提到的R、G、B颜色表示方法中所有的颜色。真彩色图是说它具有显示所有颜色的能力,即最多可以包含所有的颜色。   1.2 bmp文件格式 (WORD为无符号16位整数,DWORD为无符号32位整数,LONG为32长整型) 1.      bmp文件大体上分成四个部分: 1)位图文件头