Método LinearGradientBrush::SetBlendBellShape (gdiplusbrush.h)
O método LinearGradientBrush::SetBlendBellShape define a forma de mesclagem desse pincel de gradiente linear para criar uma mistura personalizada com base em uma curva em forma de sino.
Sintaxe
Status SetBlendBellShape(
[in] REAL focus,
[in] REAL scale
);
Parâmetros
[in] focus
Tipo: REAL
Número real que especifica a posição da cor final. Esse número é um percentual da distância entre as linhas de limite e deve estar no intervalo de 0,0 a 1,0.
[in] scale
Tipo: REAL
Opcional. Número real que especifica a porcentagem da cor final do gradiente que é combinada, na posição de foco, com a cor inicial do gradiente. Esse número deve estar no intervalo de 0,0 a 1,0. O valor padrão é 1,0, que especifica que a cor final está em intensidade total.
Valor retornado
Tipo: Status
Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .
Se o método falhar, ele retornará um dos outros elementos da enumeração Status .
Comentários
Por padrão, a cor muda gradualmente da cor inicial (cor no limite inicial do pincel de gradiente linear) para a cor final (cor no limite final do pincel de gradiente linear) à medida que você passa do limite inicial para o limite final. Você pode personalizar o posicionamento e a mesclagem das cores inicial e final usando o método LinearGradientBrush::SetBlendBellShape .
O método LinearGradientBrush::SetBlendBellShape personaliza a mistura para que ela siga uma curva em forma de sino com os extremos da base do sino nos limites do gradiente. A cor inicial, que, em uma combinação padrão, está no limite inicial de um pincel de gradiente linear, aparece nos limites inicial e final do pincel de gradiente linear quando uma mistura em forma de sino é aplicada. A posição da cor final, que, em uma combinação padrão, está no limite final, está em algum lugar entre os limites e é determinada pelo valor do foco. Em outras palavras, o foco especifica a posição do pico do sino. Por exemplo, um valor de foco de 0,7 coloca o pico em 70% da distância entre os limites inicial e final. A cor final aparece neste pico.
A cor final em uma mistura em forma de sino é uma porcentagem da gama entre a cor inicial de combinação padrão do gradiente e a cor final de combinação padrão. Por exemplo, suponha que um pincel de gradiente linear seja construído com vermelho como a cor inicial e azul como a cor final. Se LinearGradientBrush::SetBlendBellShape for chamado com um valor de escala de 0,8, a cor final na mistura em forma de sino será uma tonalidade de 80% entre vermelho e azul (20% vermelho, 80% azul). Um valor de escala de 1,0 produz uma cor final 100% azul.
Exemplos
O exemplo a seguir cria um pincel de gradiente linear, define uma mistura em forma de sino e usa o pincel para preencher um retângulo. Mais duas vezes, o código define uma combinação em forma de sino com valores diferentes e, cada vez, usa o pincel para preencher um retângulo.
VOID Example_SetBlendBell(HDC hdc)
{
Graphics myGraphics(hdc);
LinearGradientBrush linGrBrush(
Point(0, 0),
Point(500, 0),
Color(255, 255, 0, 0), // red
Color(255, 0, 0, 255)); // blue
linGrBrush.SetBlendBellShape(0.5f, 0.6f);
myGraphics.FillRectangle(&linGrBrush, 0, 0, 500, 50);
linGrBrush.SetBlendBellShape(0.5f, 0.8f);
myGraphics.FillRectangle(&linGrBrush, 0, 75, 500, 50);
linGrBrush.SetBlendBellShape(0.5f, 1.0f);
myGraphics.FillRectangle(&linGrBrush, 0, 150, 500, 50);
}
Requisitos
Cliente mínimo com suporte | Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | gdiplusbrush.h (inclua Gdiplus.h) |
Biblioteca | Gdiplus.lib |
DLL | Gdiplus.dll |
Confira também
Preenchendo uma forma com um gradiente de cor