Tag: 颜色

如何在C#WinForms中对Listbox / ListView行的部分进行着色?

有没有办法为ListBox项目的部分(不仅是整行)着色? 例如,列表框项由5个单词组成,只有一个是彩色的,或者是5个中的3个。 有没有办法对ListView做同样的事情? (我知道ListView可以按列着色,但我希望在一列中有多种颜色)。 我只对免费解决方案感兴趣,并且希望它们不会很难实现或改变当前的使用情况(引入彩色ListBox代替正常情况的努力最少)。 带着敬意, 疯狂的男孩

如何根据字体颜色选择背景颜色以获得适当的对比度

我对颜色组成了解不多,所以我想出了这个算法,它会根据试验错误的字体颜色选择背景颜色: public class BackgroundFromForegroundColorConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (!(value is Color)) return value; Color color = (Color)value; if (color.R + color.G + color.B > 550) return new SolidColorBrush(Colors.Gray); else if (color.R + color.G + color.B > 400) return new SolidColorBrush(Colors.LightGray); else return new SolidColorBrush(Colors.White); […]

C#:更改列表框项目颜色

我正在研究Windows窗体上的程序我有一个列表框,我正在validation数据我希望将正确的数据添加到列表框中,颜色为绿色,而无效数据添加了红色,我也希望从列表框中自动向下滚动添加了一个项目,谢谢 代码: try { validatedata; listBox1.Items.Add(“Successfully validated the data : “+validateddata); } catch() { listBox1.Items.Add(“Failed to validate data: ” +validateddata); }

如何创建和使用(颜色)框C#WPF的矩阵

我必须使用WPF App进行某种类型的游戏,其中包含一些颜色框矩阵(例如10×10)。 点击一些它必须消除自己和周围的盒子相同的颜色,如果有超过3,并在消除后这些框授予一些随机颜色。 我在WPF应用程序方面相当新,但我对C#编程有一些了解,我无法弄清楚应该从哪里开始。 对我来说最困难的部分是“产生”这个盒子并像矩阵一样使用它。 到目前为止,我发现了一些我认为会对我有帮助的项目 ,但并非如此。 有人可以从我可以开始的地方导航,这是最相关的方式。 谢谢。

获取两种颜色HEX参考或RGB之间的颜色

可能重复: .NET中3种颜色之间的颜色插值 我一直在尝试使用C#获取颜色的类别列表: Red: 255, 69, 0 255, 99, 71 etc.. Green: 0, 250, 154 143, 188, 139 etc… 到目前为止,我一直很不成功。 理想情况下,我想要的是提供两个HEX refs或RGB refs并在这两个引用之间获得10种颜色的列表。 这可能在C#中吗? 编辑 发现这个… http://meyerweb.com/eric/tools/color-blend/现在将js转换为c#。 完成时会发布。

如何仅将8位PNG图像作为8位PNG图像读取?

我有一个8位PNG图像(见附件)。 但是当我使用Image.FromFile方法读取它时,像素格式为32位。 由于这个原因,我无法修改调色板。 请帮我。 请参阅下面的代码,我将用于读取文件和更新调色板。 public static Image GetPreviewImage() { Bitmap updatedImage = null; try { // Reads the colors as a byte array byte[] paletteBytes = FetchColorPallette(); updatedImage = Image.FromFile(@”C:\Screen-SaverBouncing.png”); ColorPalette colorPalette = updatedImage.Palette; int j = 0; if (colorPalette.Entries.Length > 0) { for (int i = 0; i < paletteBytes.Length / 4; i++) […]

是否有用于HSV到RGB的内置C#/ .NET系统API?

.NET框架内置了一个用于将HSV转换为RGB的API吗? 我没有在System.Drawing.Color中看到这样的方法,但似乎令人惊讶的是平台中没有一个方法。

在RGB和HSB颜色值之间切换的算法

我阅读了文章算法切换RGB和HSB颜色值 Type RGBColor Red As Byte Green As Byte Blue As Byte End Type Type HSBColor Hue As Double Saturation As Double Brightness As Double End Type Function RGBToHSB(rgb As RGBColor) As HSBColor Dim minRGB, maxRGB, Delta As Double Dim h, s, b As Double h = 0 minRGB = Min(Min(rgb.Red, rgb.Green), rgb.Blue) maxRGB = […]

如何在C#中获得彩虹色渐变?

我想根据彩虹颜色(红色……黄色……绿色……蓝色……)列出颜色。 我基本上看到两种方法: 创建一个包含一些重要参考颜色的查找表,并在它们之间进行插值。 我完全不喜欢这个想法。 应用一些或多或少花哨的数学。 可能更少,但我不太明白它是如何工作的。 有任何想法吗? (哦,当我做了一些SO研究时,我发现没有好结果。如果这个问题已经发布,请指出我的位置,我会删除它。) 编辑:我更喜欢这个独立于使用的技术来显示渐变。 例如,类似GetRainbowColor(float f)的f(范围从0(红色)到1(紫色))会很有效。

将RGB转换为HSB颜色

我正在尝试将HSB颜色转换为RGB。 我这样做的方式是 System.Windows.Media.Color winColor = value; System.Drawing.Color drawColor = System.Drawing.Color.FromArgb(winColor.R, winColor.G, winColor.B); Hue = (byte)(drawColor.GetHue()*255); Saturation = (byte)(drawColor.GetSaturation()*255); Luminosity = (byte)(drawColor.GetBrightness()*255); 我发现当我有FF0000 ,它将转换为H = 0, S = 255, L = 127 ,转换为RGB FF0E0E 。 我觉得Luminosity应该是120? 或者我是否让整个HSB错了? 当我在Photoshop中查看颜色选择器时,Hue为0-360度,饱和度,亮度为0-100%。 我的HSB值介于0到255之间,我做错了吗?