HOW TO:將 Gamma 修正套用至漸層
您可以將筆刷的 GammaCorrection 屬性設定為 true,即可啟用線形漸層筆刷的 Gamma 修正。 將 GammaCorrection 屬性設定為 false,即可停用 Gamma 修正。 依照預設,Gamma 修正為停用狀態。
範例
下列範例建立線形漸層筆刷,並使用該筆刷填滿兩個矩形。 填滿第一個矩形時不使用 Gamma 修正,填滿第二個矩形時則會使用 Gamma 修正。
下圖顯示的是兩個已填滿的矩形。 上面的矩形沒有 Gamma 修正,中間顯示為暗色, 下面的矩形有 Gamma 修正,顯示的濃度較為一致。
Dim linGrBrush As New LinearGradientBrush( _
New Point(0, 10), _
New Point(200, 10), _
Color.Red, _
Color.Blue)
e.Graphics.FillRectangle(linGrBrush, 0, 0, 200, 50)
linGrBrush.GammaCorrection = True
e.Graphics.FillRectangle(linGrBrush, 0, 60, 200, 50)
LinearGradientBrush linGrBrush = new LinearGradientBrush(
new Point(0, 10),
new Point(200, 10),
Color.Red,
Color.Blue);
e.Graphics.FillRectangle(linGrBrush, 0, 0, 200, 50);
linGrBrush.GammaCorrection = true;
e.Graphics.FillRectangle(linGrBrush, 0, 60, 200, 50);
編譯程式碼
上述範例是專為與 Windows Form 搭配使用而設計的,而且它需要 PaintEventArgs e (即 Paint 事件處理常式的參數)。