WPF-BitmapEffect学习

本文介绍了WPF中BitmapEffect的各种效果及其属性设置,包括BevelBitmapEffect、BlurBitmapEffect、DropShadowBitmapEffect、EmbossBitmapEffect及OuterGlowBitmapEffect等,并提供了具体的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BitmapEffect学习

Bitmap Effect位于System.Windows.Media.Effects 命名空间下,可以方便的实现大量的特殊效果,

下面介几种BitmapEffect

  • BevelBitmapEffect        元素表面出现倾斜的阴影效果
  • BlurBitmapEffect         元素表面出现模糊的效果
  • DropShadowBitmapEffect  元素外部添加阴影
  • EmbossBitmapEffect       元素表面添加浮雕效果
  • OuterGlowBitmapEffect   元素的外围添加光晕效果



下面是BitMapEffect的各种属性的解释

BevelBitmapEffect

在元素表面添加倾斜的阴影效果

属性

描述

类型

有效取值

BevelWidth

倾斜阴影的宽度

Double

 

EdgeProfile

弯曲方式

EdgeProfile枚举

   EdgeProfile.BulgedUp

    EdgeProfile.CurvedIn

     EdgeProfile.CurvedOut

   EdgeProfile.Linear

LightAngle

照射在浮雕上的灯光的方位。0为右手方向.按照逆时针方向角度不断增大

Double

0°~360°

Relief

倾斜阴影的表现程度.0为最弱,1为最强

Double

0~1

  <BevelBitmapEffect BevelWidth="15" EdgeProfile="CurvedIn" LightAngle="320" Relief="0.4" 
         Smoothness="0.4" />
 

 

<!--[if !vml]--><!--[endif]-->


 

BlurBitmapEffect

元素表面产生模糊的效果

属性

描述

类型

有效取值

Radius

元素表面模糊区域半径,

Double

0300

KernelType

Box kernelGaussian kernel模糊效果更明显

KernelType枚举

GaussianBox

    <Button  Width="200" Name="b" Height="20">

      You Can't Read This!

      <Button.BitmapEffect>

        <BlurBitmapEffect Radius="10" KernelType="Box" x:Name="blurbitmap" />

      </Button.BitmapEffect>

    </Button>

<!--[if !vml]--><!--[endif]-->


 

DropShadowBitmapEffect

为元素添加阴影

属性

描述

类型

有效取值

Color

阴影颜色

Color

 

ShadowDepth

阴影与元素的距离

Dobule

 

Noise

阴影中颗粒物体的程度,0为最小,1最大

Double

0~1

Opacity

透明度,0为完全透明,1为不透明

Double

0~1

Direction

阴影位于物体的方位。0度位于物体正右方,按照逆时针方向旋转角度不断增大

Double

0°~360°

Softness

柔软程度,从效果上看Softness决定了阴影的雾化程度。0为雾化效果最小,1为最大

Double

0~1

     <Button Margin="50" Width="200">

          DropShadow Under this Button

          <Button.BitmapEffect>

            <DropShadowBitmapEffect Color="Red" Direction="270" ShadowDepth="25" Softness="0"  x:Name="dsb"

             Opacity="0.5"/>

          </Button.BitmapEffect>

        </Button>

<!--[if !vml]--><!--[endif]-->


 

EmbossBitmapEffect

为元素表面添加浮雕效果

属性

描述

类型

有效取值

LightAngle

照射到浮雕上

的灯光的角度。0°为右手方向,按照逆时针旋转角度随之增大

Double

0°~360°

Relief

效果的呈现程度0为最强,1最弱

Dobule

0~1

    <Image Width="360" Source="C:/Documents and Settings/All Users/Documents/My Pictures/示例图片/Sunset.jpg" Margin="10" >

      <Image.BitmapEffect>

        <EmbossBitmapEffect Relief="0.8" LightAngle="320" x:Name="emboss" />

      </Image.BitmapEffect>

    </Image>

<!--[if !vml]--><!--[endif]-->


 

OuterGlowBitmapEffect

在元素的外围添加光晕效果

属性

描述

类型

有效取值

GlowColor

光晕颜色

Color

 

GlowSize

光晕大小

Double

 

Noise

光晕中出现颗粒物体的程度,0为最小,1最大

Double

0~1

Opacity

透明度。0为完全透明,1为不透明

Double

0~1

    <TextBox Width="200">

      <TextBox.BitmapEffect>

        <OuterGlowBitmapEffect GlowColor="Blue" GlowSize="30" Noise="0.5"  x:Name="outer"

         Opacity="0.5" />

      </TextBox.BitmapEffect>

    </TextBox>

<!--[if !vml]--><!--[endif]-->


示例程序下载:BitmapEffectTest.rar
相关资源 ms-help://MS.MSSDK.1033/MS.WinFXSDK.1033/wpf_conceptual/html/be180b56-ca6e-4da3-a839-f6b0bf482f7d.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值