Como: Aplicar correção de gama a um gradiente
Você pode habilitar a correção de gama para um pincel de gradiente linear definindo a propriedade GammaCorrection do pincel como true
. Você pode desativar a correção de gama definindo a propriedade GammaCorrection como false
. A correção de gama está desativada por padrão.
Exemplo
O exemplo a seguir é um método que é chamado a partir do manipulador de eventos Paint de um controle. O exemplo cria um pincel de gradiente linear e usa esse pincel para preencher dois retângulos. O primeiro retângulo é preenchido sem correção gama, e o segundo retângulo é preenchido com correção gama.
A ilustração a seguir mostra os dois retângulos preenchidos. O retângulo superior, que não tem correção gama, aparece escuro no meio. O retângulo inferior, que tem correção gama, parece ter uma intensidade mais uniforme.
public void FillTwoRectangles(PaintEventArgs e)
{
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);
}
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)
Compilando o código
O exemplo anterior foi projetado para uso com o Windows Forms e requer PaintEventArgse
, que é um parâmetro do manipulador de eventos Paint.
Ver também
.NET Desktop feedback