WPF颜色线性渐变相关

此为原创,转载请注明出处。

参考:http://msdn.microsoft.com/zh-cn/library/vstudio/system.windows.media.lineargradientbrush(v=vs.100).aspx

先看一段代码

<Border BorderThickness="10,0,0,0" HorizontalAlignment="Left" Height="225" Margin="85,45,0,0" VerticalAlignment="Top" Width="325">
<Border.BorderBrush>
<LinearGradientBrush EndPoint="0,0.5" MappingMode="RelativeToBoundingBox" StartPoint="1,0.5">
<GradientStop Color="#737a8b" Offset="0"/>
<GradientStop Color="#8c939b" Offset="1"/>
</LinearGradientBrush>
</Border.BorderBrush>
</Border>

从msdn上可知:

LinearGradientBrush 使用线性渐变绘制区域。 线性渐变沿直线定义渐变。 该直线的终点由线性渐变的 StartPoint 和 EndPoint 属性定义。LinearGradientBrush 画笔沿此直线绘制其 GradientStops

默认的线性渐变是沿对角方向进行的。 默认情况下,线性渐变的 StartPoint 是被绘制区域的左上角 (0,0),其 EndPoint 是被绘制区域的右下角 (1,1)。 所得渐变的颜色是沿着对角方向路径插入的。

下图演示对角渐变。 其中添加了一条线,用于突出显示渐变从起点到终点的内插路径。

对角方向的线性渐变


对角线方向线性渐变的渐变轴

下一幅插图显示的是同一线性渐变,但它具有突出显示的渐变停止点。

因此StartPoint和EndPoint就能指定渐变的方向。


  

原文地址:https://www.cnblogs.com/MarcLiu/p/3753381.html