Struct AlphaColor
- Namespace
- Kook
- Assembly
- Kook.Net.Core.dll
表示 KOOK 中使用的带有不透明度通道的颜色。
public readonly struct AlphaColor : IEquatable<AlphaColor>
- Implements
- Inherited Members
Constructors
AlphaColor(Color, byte)
使用指定的 Color 及不透明度初始化一个 AlphaColor 结构的新实例。
public AlphaColor(Color baseColor, byte alpha)
Parameters
Examples
创建 #607D8BFF(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = new AlphaColor(new Color(0x607D8B), (byte)0xFF);
AlphaColor(byte, byte, byte, byte)
使用指定的 RGBA 通道值初始化一个 Color 结构的新实例。
public AlphaColor(byte r, byte g, byte b, byte a)
Parameters
Examples
创建 #607D8B(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = new AlphaColor((byte)0x60, (byte)0x7D, (byte)0x8B, (byte)0xFF);
AlphaColor(int, int, int, int)
使用指定的 RGBA 通道值初始化一个 Color 结构的新实例。
public AlphaColor(int r, int g, int b, int a)
Parameters
Examples
创建 #607D8B(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = new AlphaColor(96, 125, 139, 255);
AlphaColor(float, float, float, float)
使用指定的 RGBA 通道值初始化一个 Color 结构的新实例。
public AlphaColor(float r, float g, float b, float a)
Parameters
Examples
创建 #607D8B(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = new AlphaColor(0.38f, 0.49f, 0.55f, 1.00f);
AlphaColor(uint)
使用指定的 32 位无符号整型值初始化一个 AlphaColor 结构的新实例。
public AlphaColor(uint rawValue)
Parameters
rawValue
uint颜色的 32 位无符号整型原始值。
Examples
创建 #607D8BFF(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = new AlphaColor(0x607D8BFF);
Fields
Default
获取默认颜色。
public static readonly AlphaColor Default
Field Value
MaxDecimalValue
获取一个 KOOK 中带有不透明度通道的颜色的最大值的原始值。
public const uint MaxDecimalValue = 4294967295
Field Value
Properties
A
获取此颜色的不透明度通道的强度。
public byte A { get; }
Property Value
B
获取此颜色的蓝色通道的强度。
public byte B { get; }
Property Value
BaseColor
获取此颜色不带有不透明度通道的基础颜色。
public Color BaseColor { get; }
Property Value
G
获取此颜色的绿色通道的强度。
public byte G { get; }
Property Value
R
获取此颜色的红色通道的强度。
public byte R { get; }
Property Value
RawValue
获取此颜色的原始值。
public uint RawValue { get; }
Property Value
Remarks
颜色以 32 位无符号整型值 RGBA 格式进行编码,由高至低的每 8 位分别表示红色、绿色、蓝色和不透明度通道的强度。
Methods
Equals(AlphaColor)
Indicates whether the current object is equal to another object of the same type.
public bool Equals(AlphaColor other)
Parameters
other
AlphaColorAn object to compare with this object.
Returns
Equals(object?)
Indicates whether this instance and a specified object are equal.
public override bool Equals(object? obj)
Parameters
obj
objectThe object to compare with the current instance.
Returns
- bool
true if
obj
and this instance are the same type and represent the same value; otherwise, false.
GetHashCode()
Returns the hash code for this instance.
public override int GetHashCode()
Returns
- int
A 32-bit signed integer that is the hash code for this instance.
ToString()
获取此颜色带有 #
前缀的 RGBA 十六进制字符串表示形式(例如 #000CCCFF
)。
public override string ToString()
Returns
- string
此颜色带有
#
前缀的 RGBA 十六进制字符串表示形式(例如#000CCCFF
)。
Operators
operator ==(AlphaColor, AlphaColor)
判定两个 AlphaColor 是否相等。
public static bool operator ==(AlphaColor lhs, AlphaColor rhs)
Parameters
lhs
AlphaColorrhs
AlphaColor
Returns
- bool
如果两个 AlphaColor 相等,则为
true
;否则为false
。
explicit operator Color(AlphaColor)
获取此颜色不带有不透明度通道的基础颜色。
public static explicit operator Color(AlphaColor color)
Parameters
color
AlphaColor
Returns
Remarks
warning
此转换会丢失不透明度通道的信息。
explicit operator AlphaColor(Color)
将由 .NET 定义的 Color 颜色转换为由 Kook.Net 定义的 AlphaColor 颜色。
public static explicit operator AlphaColor(Color color)
Parameters
Returns
- AlphaColor
与该 .NET Color 颜色具有相同色值的 AlphaColor 颜色。
implicit operator Color(AlphaColor)
将由 Kook.Net 定义的 AlphaColor 颜色转换为由 .NET 定义的 Color 颜色。
public static implicit operator Color(AlphaColor color)
Parameters
color
AlphaColor要进行转换的 AlphaColor 颜色。
Returns
- Color
与该 AlphaColor 颜色具有相同色值的 .NET Color 颜色。
implicit operator uint(AlphaColor)
获取此颜色的原始值。
public static implicit operator uint(AlphaColor color)
Parameters
color
AlphaColor
Returns
Remarks
颜色以 32 位无符号整型值 RGBA 格式进行编码,由高至低的每 8 位分别表示红色、绿色、蓝色和不透明度通道的强度。
implicit operator AlphaColor(Color)
将由 Kook.Net 定义的 Color 颜色转换为 Kook.Net 定义的 AlphaColor 颜色。
public static implicit operator AlphaColor(Color color)
Parameters
Returns
- AlphaColor
与该 Kook.Net 定义的 Color 颜色具有相同色值的 AlphaColor 颜色。
implicit operator AlphaColor(uint)
使用指定的 32 位无符号整型值初始化一个 AlphaColor 结构的新实例。
public static implicit operator AlphaColor(uint rawValue)
Parameters
rawValue
uint颜色的 32 位无符号整型原始值。
Returns
Examples
创建 #607D8B(http://www.color-hex.com/color/607d8b)所表示的颜色,且其完全不透明:
AlphaColor darkGrey = 0x607D8BFF;
operator !=(AlphaColor, AlphaColor)
判定两个 AlphaColor 是否不相等。
public static bool operator !=(AlphaColor lhs, AlphaColor rhs)
Parameters
lhs
AlphaColorrhs
AlphaColor
Returns
- bool
如果两个 AlphaColor 不相等,则为
true
;否则为false
。