LinearGradientBrush 类

定义

使用线性渐变封装 Brush。 无法继承此类。

public ref class LinearGradientBrush sealed : System::Drawing::Brush
public sealed class LinearGradientBrush : System.Drawing.Brush
type LinearGradientBrush = class
    inherit Brush
Public NotInheritable Class LinearGradientBrush
Inherits Brush
继承
LinearGradientBrush

示例

以下示例创建水平 LinearGradientBrush;当从 0 的水平坐标移动到 200 的水平坐标时,颜色组件会线性变化。 例如,第一个坐标介于 0 和 200 之间的点将有一个介于 0 和 255 之间的蓝色分量。 此示例旨在与 Windows 窗体一起使用。 下面的代码示例设计用于 Windows 窗体,它需要 PaintEventArgse,这是 PaintEventHandler的参数。

public void UseHorizontalLinearGradients(PaintEventArgs e)
{
    LinearGradientBrush linGrBrush = new LinearGradientBrush(
       new Point(0, 10),
       new Point(200, 10),
       Color.FromArgb(255, 255, 0, 0),   // Opaque red
       Color.FromArgb(255, 0, 0, 255));  // Opaque blue

    Pen pen = new Pen(linGrBrush);

    e.Graphics.DrawLine(pen, 0, 10, 200, 10);
    e.Graphics.FillEllipse(linGrBrush, 0, 30, 200, 100);
    e.Graphics.FillRectangle(linGrBrush, 0, 155, 500, 30);
}
Dim linGrBrush As New LinearGradientBrush( _
   New Point(0, 10), _
   New Point(200, 10), _
   Color.FromArgb(255, 255, 0, 0), _
   Color.FromArgb(255, 0, 0, 255))
Dim pen As New Pen(linGrBrush)

e.Graphics.DrawLine(pen, 0, 10, 200, 10)
e.Graphics.FillEllipse(linGrBrush, 0, 30, 200, 100)
e.Graphics.FillRectangle(linGrBrush, 0, 155, 500, 30)

注解

此类封装双色渐变和自定义多色渐变。

所有线性渐变都按照矩形的宽度或两个点指定的线条定义。

默认情况下,双色线性渐变是从起始颜色到指定线条的结束颜色的均匀水平线性混合。 使用 Blend 类、SetSigmaBellShape 方法或 SetBlendTriangularShape 方法自定义混合模式。 通过指定构造函数中的 LinearGradientMode 枚举或角度来自定义渐变的方向。

使用 InterpolationColors 属性创建多色渐变。

Transform 属性指定应用于渐变的局部几何转换。

注意

在 .NET 6 及更高版本中,System.Drawing.Common 包(包括此类型)仅在 Windows 操作系统上受支持。 在跨平台应用中使用此类型会导致编译时警告和运行时异常。 有关详细信息,请参阅仅在 Windows上支持的 system.Drawing.Common

构造函数

LinearGradientBrush(Point, Point, Color, Color)

使用指定的点和颜色初始化 LinearGradientBrush 类的新实例。

LinearGradientBrush(PointF, PointF, Color, Color)

使用指定的点和颜色初始化 LinearGradientBrush 类的新实例。

LinearGradientBrush(Rectangle, Color, Color, LinearGradientMode)

基于矩形、起始和结束颜色以及方向创建 LinearGradientBrush 类的新实例。

LinearGradientBrush(Rectangle, Color, Color, Single)

基于矩形、起始颜色和结束颜色以及方向角度创建 LinearGradientBrush 类的新实例。

LinearGradientBrush(Rectangle, Color, Color, Single, Boolean)

基于矩形、起始颜色和结束颜色以及方向角度创建 LinearGradientBrush 类的新实例。

LinearGradientBrush(RectangleF, Color, Color, LinearGradientMode)

基于矩形、起始颜色和结束颜色以及方向模式创建 LinearGradientBrush 的新实例。

LinearGradientBrush(RectangleF, Color, Color, Single)

基于矩形、起始颜色和结束颜色以及方向角度创建 LinearGradientBrush 类的新实例。

LinearGradientBrush(RectangleF, Color, Color, Single, Boolean)

基于矩形、起始颜色和结束颜色以及方向角度创建 LinearGradientBrush 类的新实例。

属性

Blend

获取或设置一个 Blend,该值指定为渐变定义自定义回落的位置和因素。

GammaCorrection

获取或设置一个值,该值指示是否为此 LinearGradientBrush启用伽马更正。

InterpolationColors

获取或设置定义多色线性渐变的 ColorBlend

LinearColors

获取或设置渐变的起始和结束颜色。

Rectangle

获取一个矩形区域,它定义渐变的起点和终点。

Transform

获取或设置一个副本 Matrix,该副本定义此 LinearGradientBrush的局部几何转换。

WrapMode

获取或设置一个 WrapMode 枚举,该枚举指示此 LinearGradientBrush的包装模式。

方法

Clone()

创建此 LinearGradientBrush的确切副本。

CreateObjRef(Type)

创建一个对象,其中包含生成用于与远程对象通信的代理所需的所有相关信息。

(继承自 MarshalByRefObject)
Dispose()

释放此 Brush 对象使用的所有资源。

(继承自 Brush)
Dispose(Boolean)

释放 Brush 使用的非托管资源,并选择性地释放托管资源。

(继承自 Brush)
Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetLifetimeService()
已过时.

检索控制此实例的生存期策略的当前生存期服务对象。

(继承自 MarshalByRefObject)
GetType()

获取当前实例的 Type

(继承自 Object)
InitializeLifetimeService()
已过时.

获取生存期服务对象来控制此实例的生存期策略。

(继承自 MarshalByRefObject)
MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。

(继承自 MarshalByRefObject)
MultiplyTransform(Matrix)

将表示此 LinearGradientBrush 的局部几何转换的 Matrix 乘以指定 Matrix 前面指定 Matrix

MultiplyTransform(Matrix, MatrixOrder)

将表示此 LinearGradientBrush 的局部几何转换的 Matrix 乘以指定顺序的指定 Matrix

ResetTransform()

Transform 属性重置为标识。

RotateTransform(Single)

按指定量旋转局部几何变换。 此方法将旋转追加到转换之前。

RotateTransform(Single, MatrixOrder)

按指定顺序按指定量旋转局部几何变换。

ScaleTransform(Single, Single)

按指定量缩放局部几何转换。 此方法将缩放矩阵追加到转换之前。

ScaleTransform(Single, Single, MatrixOrder)

按指定顺序按指定量缩放局部几何转换。

SetBlendTriangularShape(Single)

创建具有中心颜色的线性渐变,并在两端创建单个颜色的线性下降。

SetBlendTriangularShape(Single, Single)

创建具有中心颜色的线性渐变,并在两端创建单个颜色的线性下降。

SetNativeBrush(IntPtr)

在派生类中,设置对 GDI+ 画笔对象的引用。

(继承自 Brush)
SetSigmaBellShape(Single)

基于钟形曲线创建渐变下降。

SetSigmaBellShape(Single, Single)

基于钟形曲线创建渐变下降。

ToString()

返回一个表示当前对象的字符串。

(继承自 Object)
TranslateTransform(Single, Single)

按指定维度转换局部几何转换。 此方法在转换前追加转换。

TranslateTransform(Single, Single, MatrixOrder)

按指定顺序按指定维度转换局部几何转换。

适用于

另请参阅