我正在使用SSRS reportviewer生成使用对象的报告.在我的程序中,我要求用户输入一串众所周知的颜色,例如"Red"" Blue",等等.然后我想生成这种颜色的三种色调,并使用此颜色填充我的报告中的区域图表.我做所以我改变了颜色的不透明度(alpha).
这是我将代码转换为颜色的代码:
newitem.ChartColor = "red";
Color mycolor = Color.FromName(newitem.ChartColor);
Run Code Online (Sandbox Code Playgroud)
但是,现在我想生成两种颜色与红色相同但不同的alpha(不透明度)的颜色,以便它们看起来更亮,类似于 #56FF0000
我尝试将值传递给AColor 的属性,但它是只读的.
任何帮助赞赏.
Ma3*_*a3x 20
有一种方法可以完全满足您的需要Color.FromArgb(int alpha,Color baseColor).
有效alpha值为0到255.其中255是最不透明的颜色,0是完全透明的颜色.
使用示例
Color newColor = Color.FromArgb(newAlpha, mycolor);
Run Code Online (Sandbox Code Playgroud)
我认为这些答案中需要包括的是 alpha 值表示颜色的透明度,0 表示最透明,255 表示最不透明。这是一个总结:
A L P H A V A L U E
0 [<--- most transparent] ... ... ... [most opaque --->] 255
Run Code Online (Sandbox Code Playgroud)
您可以使用此功能进行设置
static Color SetTransparency(int A, Color color)
{
return Color.FromArgb(A, color.R, color.G, color.B);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18367 次 |
| 最近记录: |