Silverlight开发历程—(绘制放射渐变图形)
放射渐变画刷(RadialGradientBrush) 用来填充一个放射渐变色到元素中,它产生的是一个圆形的渐变色,从图形的中心向周围扩张 重要属性有,倾斜原点(GradientOrigin)、中心点(Center)、半径X(RadiusX)、半径Y(RadiusY)
XAML:
<StackPanel x:Name="LayoutRoot" Background="AliceBlue" Orientation="Horizontal"> <Ellipse Height="180" Width="180" Margin="50,0,0,0"> <Ellipse.Fill> <!---倾斜原点和中心点值都为0.5--> <RadialGradientBrush GradientOrigin="0.5,0.5" Center="0.5,0.5"> <GradientStop Offset="0" Color="#FFECFFDB" /> <GradientStop Offset="1.0" Color="#FF252825" /> <GradientStop Offset="0.5" Color="#FF4D6D25" /> </RadialGradientBrush> </Ellipse.Fill> </Ellipse> <Ellipse Height="180" Width="180" Margin="50,0,0,0"> <Ellipse.Fill> <!---倾斜原点和中心点值都为0.6--> <RadialGradientBrush GradientOrigin="0.6,0.6" Center="0.6,0.6"> <GradientStop Offset="0" Color="#FFECFFDB" /> <GradientStop Offset="1.0" Color="#FF252825" /> <GradientStop Offset="0.5" Color="#FF4D6D25" /> </RadialGradientBrush> </Ellipse.Fill> </Ellipse> <Ellipse Height="180" Width="180" Margin="50,0,0,0"> <Ellipse.Fill> <!---Siliverlight还提供了半径X,半径Y 可以根据X,Y来绘制放射点--> <RadialGradientBrush RadiusX="0.5" RadiusY="0.25"> <GradientStop Offset="0" Color="#FFECFFDB" /> <GradientStop Offset="1.0" Color="#FF252825" /> <GradientStop Offset="0.5" Color="#FF4D6D25" /> </RadialGradientBrush> </Ellipse.Fill> </Ellipse> </StackPanel>
运行结果:
前两个例子可以通过调整倾斜点和中心点来调整整个渐变的位置,第三个例子则是根据渐变的X,Y半径来调整 。