Blend 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義 LinearGradientBrush 物件的漸變圖樣。 此類別無法獲得繼承。
public ref class Blend sealed
public sealed class Blend
type Blend = class
Public NotInheritable Class Blend
- 繼承
-
Blend
範例
下列範例旨在用於 Windows Forms 環境中。 它示範如何使用 Blend 類別搭配 LinearGradientBrush 類別,繪製橢圓形到已混合色彩的螢幕。 省略號是左側的藍色、在中央混合為紅色,並向右混合回藍色。 這可透過和屬性中使用的和 myPositions
Positions 數位中的myFactors
Factors設定來完成。 請注意,Blend名為 lgBrush2
的物件屬性LinearGradientBrush必須等於 Blend 物件 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.
}
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 漸層線條。
例如,如果和 Factors 陣列的Positions對應元素分別為0.2和0.3,針對從藍色到紅色的線性漸層沿著100像素線條,該行的色彩20像素 (20%的距離) 由30%藍色和70%紅色組成。
建構函式
Blend() |
初始化 Blend 類別的新執行個體。 |
Blend(Int32) |
使用指定數量的因數和位置,初始化 Blend 類別的新執行個體。 |
屬性
Factors |
取得或設定漸層的漸變因數陣列。 |
Positions |
取得或設定漸層的漸變位置陣列。 |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |