现在的位置: 首页 > 综合 > 正文

SilverLight 学习笔记 (一) 画刷:Brush

2012年03月11日 ⁄ 综合 ⁄ 共 1819字 ⁄ 字号 评论关闭

1. 线性渐变画刷(LinearGradientBrush/GradientStop)

  线性渐变画刷 : 沿一条直线定义渐变区域,该直线称之为“渐变轴”,可以指定多个颜色对对象进行填充。根据设置的起始点和结束点的不同,可以实现水平渐变、垂直渐变和对角渐变等效果。

  主要成员 :

    a. StartPoint : 线性渐变起始点,如 (0,0.5) ,对象最左侧边框中间位置,第一个数字代表X 轴的位置,第二个数字代表Y轴的位置

    b. EndPoint : 线性渐变结束点 ,参见 StartPoint

    c. Color: 填充的颜色,可以为命名颜色(如:Red)、6 个或 8个字符的十六进制标示 (如:FFFFFF)

    d. OffSet:获取渐变停止点在渐变向量中的位置。通俗的说,就是该颜色在对象中 完全显示的位置,在完全显示的位置两侧,都为渐变
       的。如(0.75),在对象的 3/4 处 达到该颜色的饱和值。

 


<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<GradientStop Color="#FFFFFF" Offset="0.0" />
<GradientStop Color="#00FF00" Offset="0.25" />
<GradientStop Color="#FF0000" Offset="0.75" />
<GradientStop Color="#0099FF" Offset="1.0" />
</LinearGradientBrush>

 

2. 径向渐变画刷(RadialGradientBrush/GradientStop)

  径向渐变画刷: 渐变轴是一个圆,并以它的原点为放射源,以放射状从圆心向外发散的方式进行渐变。使用径向渐变绘制区域。焦点定义渐变的开始,而圆定义渐变的终点(MSDN)。

  通俗的理解为:对一个对象进行多种颜色填充渐变,填充颜色的渐变是从一点(圆心 - Center)到四周发散的,即为圆形渐变的。同时,渐变区域,即 圆,为渐变的区域。对于径向渐变,需要理解3点:

    a. 渐变区域:即为渐变圆,渐变的大小就是圆的大小。

    b. 渐变起始点(焦点-GradientStop):即在该圆的何点开始颜色渐变。

    c. 渐变位置(圆心-Center):要确定渐变的位置(圆的位置),只要确定圆心(Center),即控制圆心的。

  主要成员 :

    a. GradientStop: 获取或定义渐变开始的二维焦点的位置。及用一点来确定放射源在放射区域(圆)中的位置,如(0.5,0.5)

    b. Center: 渐变区域(渐变圆)的位置(圆心),为二维焦点,如(0.5,0.5)

    c. Color: 填充的颜色(渐变色),可以为命名颜色(如:Red)、6 个或 8个字符的十六进制标示 (如:FFFFFF)

    d. OffSet:获取渐变停止点在渐变向量中的位置。通俗的说,就是该颜色在对象中 完全显示的位置,在完全显示的位置两侧,都为渐变
        的。如(0.75),在对象的 3/4 处 达到该颜色的饱和值。

    e. RadiusX :渐变圆的X轴放射半径。从圆心到所要填充对象最近的Border,即为直径的1/2,所以,0.5 就是最大值

    f. RadiusY :渐变圆Y轴放射半径



<RadialGradientBrush GradientOrigin="0.25,0.5" Center="0.5,0.5" RadiusX="0.5" RadiusY="0.5">
<GradientStop Color="#FBFE03" Offset="0.0" />
<GradientStop Color="#41F702" Offset="0.25" />
<GradientStop Color="#FF0000" Offset="0.75" />
<GradientStop Color="#0066FF" Offset="1.0" />
</RadialGradientBrush>

 

请注意下行代码:


<GradientStop Color="#0066FF" Offset="1.0" />

   由于Color = 0066FF 的 Offset 为1.0 ,所以该颜色为渐变区域的临界色,只有在渐变区域的临界处才达到该颜色的饱和值,渐变区域以外的区域若无特殊指定,都将会为该颜色所填充。也可以裂解为该颜色不属于渐变圆。

抱歉!评论已关闭.