作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想得到最接近这个列表的颜色:
static List<Color> clist = new List<Color>()
{
Color.Black, Color.Brown, Color.Blue, Color.Green, Color.Red, Color.Yellow,
Color.Gray, Color.Indigo, Color.Orange, Color.Pink, Color.Turquoise, Color.White
};
我得到最接近的颜色,但我想添加:苍白/黑暗/鲜艳/明亮,具体取决于颜色的亮度和饱和度:
static string closestColor2(List<Color> colors, Color target)
{
var colorDiffs = colors.Select(n => ColorDiff(n, target)).Min(n => n);
int x = colors.FindIndex(n => ColorDiff(n, target) == colorDiffs);
return colors[x].ToString();
}
static int ColorDiff(Color c1, Color c2)
{
return (int)Math.Sqrt((c1.R - c2.R) * (c1.R - c2.R)
+ (c1.G - c2.G) * (c1.G - c2.G)
+ (c1.B - c2.B) * (c1.B - c2.B));
}
最佳答案
比较颜色时需要考虑很多事情。但这个问题已经有了答案。
在这里您可以找到解决方案:
How to compare Color object and get closest Color in an Color[]?
关于c# - 根据亮度和饱和度在颜色名称前添加 pale/vivid/light/dark,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41086851/
我想得到最接近这个列表的颜色: static List clist = new List() { Color.Black, Color.Brown, Color.Blue, C
我可以从我的 Ubuntu 服务器中删除以下软件包吗? linux-image-generic-lts-vivid linux-headers-generic-lts-vivid linux-gene
我正在使用 ubuntu vivid 和 Vagrant https://vagrantcloud.com/ubuntu/boxes/vivid64 当我做 vagrant up 时 我明白了 ==>
下面的 MWE 给出了一个奇怪的地址 sanitizer 报告: #include class A { public: A(){} ~A(){} }; class B{ public
我是一名优秀的程序员,十分优秀!