語言

Blend 類別

定義

定義物件的混合模式 LinearGradientBrush 。 此類別無法獲得繼承。

public ref class Blend sealed
public sealed class Blend
type Blend = class
Public NotInheritable Class Blend
繼承
Blend

範例

以下範例旨在用於 Windows Forms 環境。 它示範如何結合BlendLinearGradientBrush類別,將顏色混合到螢幕上,將顏色混合。 橢圓左側為藍色,中心與紅色融合,右側再融合回藍色。 這是透過myFactors設定 和 myPositions 屬性中使用FactorsPositions的陣列來實現的。 注意,所命名物件的Blend性質必須等於物件 LinearGradientBrushlgBrush2。BlendmyBlend

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.
   }
public void BlendConstExample(PaintEventArgs e)
{
             
    //Draw ellipse using Blend.
    Point startPoint2 = new Point(20, 110);
    Point endPoint2 = new Point(140, 110);
    float[] myFactors = {.2f,.4f,.8f,.8f,.4f,.2f};
    float[] myPositions = {0.0f,.2f,.4f,.6f,.8f,1.0f};
    Blend myBlend = new Blend();
    myBlend.Factors = myFactors;
    myBlend.Positions = myPositions;
    LinearGradientBrush lgBrush2 = new LinearGradientBrush(
        startPoint2,
        endPoint2,
        Color.Blue,
        Color.Red);
    lgBrush2.Blend = myBlend;
    Rectangle ellipseRect2 = new Rectangle(20, 110, 120, 80);
    e.Graphics.FillEllipse(lgBrush2, ellipseRect2);
             
    // End example.
}
Public Sub BlendConstExample(ByVal e As PaintEventArgs)

    ' Draw ellipse using Blend.
    Dim startPoint2 As New Point(20, 110)
    Dim endPoint2 As New Point(140, 110)
    Dim myFactors As Single() = {0.2F, 0.4F, 0.8F, 0.8F, 0.4F, 0.2F}
    Dim myPositions As Single() = {0.0F, 0.2F, 0.4F, 0.6F, 0.8F, 1.0F}
    Dim myBlend As New Blend
    myBlend.Factors = myFactors
    myBlend.Positions = myPositions
    Dim lgBrush2 As New LinearGradientBrush(startPoint2, endPoint2, _
    Color.Blue, Color.Red)
    lgBrush2.Blend = myBlend
    Dim ellipseRect2 As New Rectangle(20, 110, 120, 80)
    e.Graphics.FillEllipse(lgBrush2, ellipseRect2)
End Sub

備註

漸層常用來平滑地遮蔽形狀的內部。 混合模式由兩個陣列(Factors 和 Positions)定義,每個陣列包含相同數量的元素。 陣列中的 Positions 每個元素代表沿梯度線距離的比例。 陣列中的 Factors 每個元素代表漸變混合中起始與結束顏色在梯度線上對應元素 Positions 所代表的位置的比例。

例如,若與Positions陣列中Factors對應元素分別為0.2和0.3,且在一條100像素線從藍色到紅色的線性漸層中,該線沿20像素(距離的20%)的顏色由30%藍色和70%紅色組成。

建構函式

名稱 Description
Blend()

初始化 Blend 類別的新執行個體。

Blend(Int32)

初始化該類別的新實例 Blend ,包含指定數量的因子與位置。

屬性

名稱 Description
Factors

取得或設定一個梯度的混合因子陣列。

Positions

取得或設定一個漸層的混合位置陣列。

方法

名稱 Description
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetType()

取得目前實例的 Type。

(繼承來源 Object)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

適用於