我需要使用用户可以选择的数字来增强RGB通道/颜色。 我有以下代码,但我不确定它是否正确。 有人可以告诉我我可以改变什么或者能做得更好。
int value = int.Parse(textBoxConstante.Text);
for (int y = 0; y < myPic.Height; y++)
{
for (int x = 0; x < myPic.Width; x++)
{
Color c = myPic.GetPixel(x, y);
myPic.SetPixel(x, y, Color.FromArgb(c.R * value /10, c.G * value/10, c.B * value/10));
}
}
答案 0 :(得分:1)
我没有运行你的代码,但我怀疑你遇到了c#缺少隐式双重转换的问题...尝试用这种方式重写:
.FromArgb((int)(c.R * ((double)value /10)), [the rest wrapped the same way]