Blend 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義物件的混合模式 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) |