Blend Class
Defines a blend pattern for a LinearGradientBrush object. This class cannot be inherited.
Assembly: System.Drawing (in System.Drawing.dll)
| Name | Description | |
|---|---|---|
![]() | Blend() | Initializes a new instance of the Blend class. |
![]() | Blend(Int32) | Initializes a new instance of the Blend class with the specified number of factors and positions. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
Gradients are commonly used to smoothly shade the interiors of shapes. A blend pattern is defined by two arrays (Factors and Positions) that each contain the same number of elements. Each element of the Positions array represents a proportion of the distance along the gradient line. Each element of the Factors array represents the proportion of the starting and ending colors in the gradient blend at the position along the gradient line represented by the corresponding element in the Positions array.
For example, if corresponding elements of the Positions and Factors arrays are 0.2 and 0.3, respectively, for a linear gradient from blue to red along a 100-pixel line, the color 20 pixels along that line (20 percent of the distance) consists of 30 percent blue and 70 percent red.
The following example is intended to be used in a Windows Forms environment. It demonstrates how to use the Blend class in conjunction with the LinearGradientBrush class to draw an ellipse to screen that has its colors blended. The ellipse is blue on the left, blends to red in the center, and blends back to blue on the right. This is accomplished through the settings in the myFactors and myPositions arrays used in the Factors and Positions properties. Note that the Blend property of the LinearGradientBrush object named lgBrush2 must be made equal to the Blend object myBlend.
public: void BlendConstExample( PaintEventArgs^ e ) { //Draw ellipse using Blend. Point startPoint2 = Point(20,110); Point endPoint2 = Point(140,110); array<Single>^myFactors = {.2f,.4f,.8f,.8f,.4f,.2f}; array<Single>^myPositions = {0.0f,.2f,.4f,.6f,.8f,1.0f}; Blend^ myBlend = gcnew Blend; myBlend->Factors = myFactors; myBlend->Positions = myPositions; LinearGradientBrush^ lgBrush2 = gcnew LinearGradientBrush( startPoint2,endPoint2,Color::Blue,Color::Red ); lgBrush2->Blend = myBlend; Rectangle ellipseRect2 = Rectangle(20,110,120,80); e->Graphics->FillEllipse( lgBrush2, ellipseRect2 ); // End example. }
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

