在 WPF 中,可以使用 BitmapEffect 对象为每一个 Visual 对象生成各种各样的效果,一个 Visual 对象可以设置一种或多种 BitmapEffect 效果,WPF 内置了几种效果:OuterGlowBitmapEffect(外发光)、DropShadowBitmapEffect(阴影)、 EmbossBitmapEffect(浮雕)、BlurBitmapEffect(模糊)、BevelBitmapEffect(斜角)。
以下是这几种效果的效果图和对象的相关属性说明:
OuterGlowBitmapEffect:
效果图:
属性说明:
GlowColor:指定发光的颜色
GlowSize:指定发光的大小
Noise:指定是否在生成的发光中产生一种杂点的效果
Opacity:此属性指定发光的透明度(0-1)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
DropShadowBitmapEffect:
效果图:
属性说明:
Color:指定阴影的颜色
Direction: 阴影的方向,水平线的右边为0度,以逆时间的方向转动
Noise:指示生成的阴影是否需要产生一种杂点的效果
ShadowDepth:指示阴影同 Visual 对象之间的距离
Softness:指示阴影的模糊度
Opacity:指定阴影的透明度
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
EmbossBitmapEffect:
效果图:
属性说明:
LightAngle:指定光的角度
Relief:指定浮雕的程度,值的范围为0-1
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BlurBitmapEffect:
效果图:
属性说明:
KernelType:指定模糊的类型,有两种类型,分别为:Box 和 Gaussian,现在没有看出来这两种类型有什么区别
Radius:指定模糊的半径
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BevelBitmapEffect:
效果图:
属性说明:
BevelWidth:指定凸凹边框的宽度
LightAngle:指定光线的角度
Relief:指定凸凹的程度
Smoothness:指定四条边连接起的地方是否使用圆滑的方式连接
EdgeProfile:指定凸凹的类型
例子:
<Canvas Name="CanArrows" Height="" Width="" Grid.Column=""
MouseLeftButtonUp="Canvas_MouseLeftButtonUp">
<Canvas.Background>
<ImageBrush ImageSource="images/Arrows.png"/> </Canvas.Background>
<Canvas.RenderTransform>
<RotateTransform CenterX="" CenterY="" Angle=""/>
</Canvas.RenderTransform>
<Canvas.Triggers>
<EventTrigger RoutedEvent="Canvas.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation To="0.3" From="1.0" Duration="0:0:1"
Storyboard.TargetProperty="(BitmapEffect).(OuterGlowBitmapEffect.Opacity)" Storyboard.TargetName="CanArrows"
RepeatBehavior="Forever"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Canvas.Triggers>
<Canvas.>
<OuterGlowBitmapEffect GlowColor="DarkBlue" GlowSize="" Noise="0.5"/>
</Canvas.>
</Canvas>
本文来自gxy88816的博客,原文地址:http://hi.baidu.com/gxy88816/blog/item/3e9bd1f6d9b357b3a50f5238.html