BitmapEffect位圖效果是簡單的像素處理操作。它可以呈現下面幾種特殊效果。
BevelBitmapEffect 凹凸效果
BlurBitmapEffect 模糊效果
DropShadowBitmapEffect 投影效果
EmbossBitmapEffect 浮雕效果
OuterGlowBitmapEffect 顏色光暈效果
<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。
下圖演示該屬性的效果
指示凹凸效果陰影的平滑程度的值。有效範圍在 0 和 1 之間,1 表示最平滑。默認值爲 0.2。
<Button.BitmapEffect> <BlurBitmapEffect x:Name="testBlurBitmapEffect" Radius="8" KernelType="Gaussian" /> </Button.BitmapEffect> |
BlurBitmapEffect屬性Radius
用於模糊內核的半徑。半徑越大,效果越模糊。默認值爲 5
BlurBitmapEffect屬性KernelType
模糊內核的類型 Gaussian和Box。默認值爲Gaussian
<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不同
下圖演示該屬性的效果:
<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。
<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。
以上是我學習位圖效果時整理的一些文檔,瞭解更多關於BitmapEffect的信息請查找MSDN