WPF-WPF BitmapEffect (按鈕凹凸效果)
BitmapEffect位圖效果是簡單的像素處理操作。它可以呈現下面幾種特殊效果。?
????????? ? BevelBitmapEffect ???????凹凸效果
????????????BlurBitmapEffect ????????模糊效果
????????????DropShadowBitmapEffect投影效果
????????????EmbossBitmapEffect ????浮雕效果
????????????OuterGlowBitmapEffect ??顏色光暈效果
BevelBitmapEffect
<Button.BitmapEffect> ??????????? <BevelBitmapEffect x:Name="testBevelBitmap" ??????????? ?? BevelWidth="20" ??????????? ?? EdgeProfile="CurvedIn" ??????????? ?? LightAngle="330" ??????????? ?? Relief="0.4" ??????????? ?? Smoothness="0.5" /> ???????? </Button.BitmapEffect> |
BevelBitmapEffect屬性BevelWidth
設置凹凸效果的寬度。默認值為 5
BevelBitmapEffect屬性EdgeProfile
設置凹凸效果的曲線。默認值為 Linear
?
BevelBitmapEffect屬性LightAngle
虛擬光源的方向。有效範圍是 0-360(度),0 表示物體的右側,後續值表示圍繞物體逆時針運動。凹凸效果陰影在光投射位置的相反一側。默認值為 135。
下圖顯示對於此屬性的給定值,光源的方向。凹凸效果陰影投射在光線角度的相反一側。
下圖演示該屬性的效果:
?
BevelBitmapEffect屬性Relief
凹凸效果起伏的高度。有效範圍在 0 和 1 之間,1 表示最大的起伏(最暗的陰影)。默認值為 0.3。
下圖演示該屬性的效果
BevelBitmapEffect屬性Smoothness
指示凹凸效果陰影的平滑程度的值。有效範圍在 0 和 1 之間,1 表示最平滑。默認值為 0.2。
?BlurBitmapEffect
<Button.BitmapEffect> ?? <BlurBitmapEffect x:Name="testBlurBitmapEffect" ?????? ?Radius="8" ??????? KernelType="Gaussian" /> </Button.BitmapEffect> |
?BlurBitmapEffect屬性Radius
? 用於模糊內核的半徑。半徑越大,效果越模糊。默認值為 5
BlurBitmapEffect屬性KernelType
? 模糊內核的類型 Gaussian和Box。默認值為Gaussian
?
DropShadowBitmapEffect
<Button.BitmapEffect> ?? <DropShadowBitmapEffect?x:Name="testDropShadowBitmapEffect"? ?????????? Color="Blue" ???????? ?? ShadowDepth="20" ???????? ?? Noise="0.5" ???????? ?? Opacity="0.5" ???????? ?? Direction="330"/> </Button.BitmapEffect> |
DropShadowBitmapEffect屬性之Color
陰影的顏色。默認值為黑色
DropShadowBitmapEffect屬性之ShadowDepth
投影對象的平面與陰影平面之間的距離,值的有效範圍從 0 到 300。默認值為 5。
下圖演示該屬性的效果
?
DropShadowBitmapEffect屬性之Noise
陰影的噪音級別。值的有效範圍從 0 到 1。如果值為 0,則表示無噪音;如果值為 1,則表示最大噪音。如果值為 0.5,則表示 50% 噪音;如果值為 0.75,則表示 75% 噪音,依此類推。默認值為 0。
下圖演示該屬性的效果:
?
DropShadowBitmapEffect屬性之Opacity
不透明度。值的有效範圍從 0 到 1。如果值為 0,則表示陰影完全透明;如果值為 1,則表示陰影完全不透明。如果值為 0.5,則表示陰影不透明度為 50%;如果值為 0.725,則表示陰影不透明度為 72.5%,依此類推。小於 0 的值將被視為 0;大於 1 的值將被視為 1。默認值為 1。
下圖演示該屬性的效果:
?
DropShadowBitmapEffect屬性之Direction
投影角度。值的有效範圍從 0 到 360。如果值為 0,則方向緊貼對象的右側。後續值將繞對象沿逆時針方向移動方向。例如,如果值為 90,則表示陰影直接投射到對象的上方;如果值為 180,則陰影直接投射到對象的左側,依此類推。默認值為 315。
下圖顯示針對該屬性的給定值,陰影投射到的方向。註意:與LightAngle不同
下圖演示該屬性的效果:
?
?EmbossBitmapEffect
<Image.BitmapEffect> ???????? <EmbossBitmapEffect x:Name="testEmbossBitmapEffect" ???????? ?? LightAngle="120" ???????? ?? Relief="0.1" /> </Image.BitmapEffect> |
EmbossBitmapEffect屬性之LightAngle
投射在浮雕效果對象上的人工光線的方向。有效範圍是 0-360(度),0 表示物體的右側,後續值表示圍繞物體逆時針運動。默認值為 45。
EmbossBitmapEffect屬性之Relief
浮雕的起伏大小。有效值範圍為 0-1,其中 0 起伏最小,1 起伏最大。默認值為 0.44。
??OuterGlowBitmapEffect
<TextBox.BitmapEffect> ????? <OuterGlowBitmapEffect x:Name="testOuterGlowBitmapEffect" ???????? ?? GlowColor="Red" ???????? ?? GlowSize="30" ???????? ?? Noise="0.5"? ???????? ? ???????? ?? Opacity="0.5" /> </TextBox.BitmapEffect> |
OuterGlowBitmapEffect屬性之GlowColor
光環發光的顏色。默認值為白色
OuterGlowBitmapEffect屬性之GlowSize
光環發光的厚度,值的有效範圍從 1 到 199。默認值為 20。
OuterGlowBitmapEffect屬性之Noise
光環發光的粒度(噪音級別)。值的有效範圍從 0.0 到 1.0。如果值為 0.0,則表示無噪音;如果值為 1.0,則表示最大噪音。如果值為 0.5,則表示 50% 噪音;如果值為 0.75,則表示 75% 噪音,依此類推。默認值為 0.0。
OuterGlowBitmapEffect屬性之Opacity
發光的不透明度級別。如果值為 0,則表示光環發光完全透明;如果值為 1,則表示發光完全不透明。如果值為 0.5,則表示發光透明度為 50%;如果值為 0.725,則表示發光透明度為 72.5%,依此類推。小於 0 的值將被視為 0;大於 1 的值將被視為 1。默認值為 1。
WPF-WPF BitmapEffect (按鈕凹凸效果)