c# - C#改变颜色透明度的方法

标签 c#

我正在使用 SSRS reportviewer 生成使用对象的报告。在我的程序中,我要求用户输入一串常见的颜色,例如 "Red"、"Blue" 等。然后我想生成三个这种颜色的阴影,并使用这种颜色来填充我报告中的面积图。我这样做是为了改变颜色的不透明度 (alpha)。

这是我将字符串转换为颜色的代码:

 newitem.ChartColor = "red";
 Color mycolor = Color.FromName(newitem.ChartColor);

但是,现在我想生成两种颜色,它们与红色具有相同的阴影但不同的 alpha(不透明度),以便它们看起来更亮,类似于 #56FF0000

我尝试将一个值传递给 Color 的 A 属性,但是它是只读的。

感谢任何帮助。

最佳答案

有一种方法可以满足您的需求Color.FromArgb(int alpha, Color baseColor) .

有效的 alpha 值是 0 到 255。其中 255 是最不透明的颜色,0 是完全透明的颜色。

使用示例

Color newColor = Color.FromArgb(newAlpha, mycolor);

关于c# - C#改变颜色透明度的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17753043/

相关文章:

c# - IIS 6.0可以像tomcat一样显示服务器状态吗

c# - Unity3D不安全代码需要指定 `unsafe'命令行选项

c# - Process.Start in C# 系统找不到指定的文件错误

c# - 什么是 C# 中的 NZEC 错误以及它在以下代码片段中的位置

c# - VS2017 和 NUnit 3.9 没有可用的测试

c# - 何时使用 TcpClient.ReceiveTimeout 与 NetworkStream.ReadTimeout?

c# - 在不复制结果条目的情况下查询或合并一对多关系

c# - 无法更改关系,因为一个或多个外键属性不可为空

c# - 在 C# 中,如何将旧对象中的 XML 反序列化为更新后的对象并忽略丢失的 xml 元素?

c# - 从 yahoo 凭据导入 yahoo 联系人