将数组值转换为 RGB 格式

Posted

技术标签:

【中文标题】将数组值转换为 RGB 格式【英文标题】:Convert array values to RGB format 【发布时间】:2020-07-24 03:15:38 【问题描述】:

我在表格中有一系列值,我想将它们 3 x 3 分开,以将它们用作 RGB 值。

我尝试过这样的事情:

var color = [143,204,211,25,35,59,204,219,209,128,135,124,38,139,216,84,106,105,205,87,114,165,175,88];
var cList = $('ul.color_palette');
            $.each(color, function(i)
            
                var li = $('<li/>')
                    .addClass('color'+ i)
                    .css('background-color', 'rgb(' + color[i] + ')')
                    .appendTo(cList);            
            );

我希望它看起来像这样:

<ul class="color_palette">
   <li class="color0" style="background-color: rgb(143, 204, 211);"></li>
   <li class="color1" style="background-color: rgb(25, 35, 59);"></li>
   <li class="color2" style="background-color: rgb(204, 219, 209);"></li>
   <li class="color3" style="background-color: rgb(128, 135, 124);"></li>
   <li class="color4" style="background-color: rgb(38, 139, 216);"></li>
   <li class="color5" style="background-color: rgb(84, 106, 105);"></li>
   <li class="color6" style="background-color: rgb(205, 87, 114);"></li>
   <li class="color7" style="background-color: rgb(165, 174, 88);"></li>
</ul>

你能帮帮我吗?

【问题讨论】:

【参考方案1】:

这实际上只是对颜色数组进行分块练习,以生成三个值的集群 - 然后可以在现有代码的迭代中使用。

从这个答案修改为不同问题的解决方案 (https://***.com/a/8495740/5867572 - @Blazemonger)

var color = [143,204,211,25,35,59,204,219,209,128,135,124,38,139,216,84,106,105,205,87,114,165,175,88];
var rgbValues = [];

for (i = 0; i < color.length; i += 3) 
  rgbValues.push(color.slice(i, i + 3).join(', '));

console.log(rgbValues); 
// gives [
//  "143, 204, 211",
//  "25, 35, 59",
//  "204, 219, 209",
//  "128, 135, 124",
//  "38, 139, 216",
//  "84, 106, 105",
//  "205, 87, 114",
//  "165, 175, 88"
//]

【讨论】:

完美!谢谢!

以上是关于将数组值转换为 RGB 格式的主要内容,如果未能解决你的问题,请参考以下文章

将 RGB 颜色数组转换为 px.imshow 热图

将numpy数组转换为rgb图像

将 rgb 数字数组转换为十六进制颜色字符串

C: 将数组转换为 RGB 图像

将数组十六进制颜色转换为数组 rgb 颜色 [重复]

如何在位图 int 数组 (rgb565) 之间转换 UIImage