在 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:指定凸凹的类型
例子:
1 <Canvas Name="CanArrows" Height="30" Width="20" Grid.Column="0" 2 MouseLeftButtonUp="Canvas_MouseLeftButtonUp"> 3 <Canvas.Background> 4 <ImageBrush ImageSource="images/Arrows.png"/> 5 6 </Canvas.Background> 7 <Canvas.RenderTransform> 8 <RotateTransform CenterX="10" CenterY="15" Angle="180"/> 9 </Canvas.RenderTransform> 10 <Canvas.Triggers> 11 <EventTrigger RoutedEvent="Canvas.Loaded"> 12 <BeginStoryboard> 13 <Storyboard> 14 <DoubleAnimation To="0.3" From="1.0" Duration="0:0:1" 15 Storyboard.TargetProperty="(BitmapEffect).(OuterGlowBitmapEffect.Opacity)" Storyboard.TargetName="CanArrows" 16 RepeatBehavior="Forever"/> 17 </Storyboard> 18 </BeginStoryboard> 19 </EventTrigger> 20 </Canvas.Triggers> 21 <Canvas.> 22 <OuterGlowBitmapEffect GlowColor="DarkBlue" GlowSize="6" Noise="0.5"/> 23 </Canvas.> 24 </Canvas>
本文来自gxy88816的博客,原文地址:http://hi.baidu.com/gxy88816/blog/item/3e9bd1f6d9b357b3a50f5238.html