WEB开发网
开发学院图形图像Flash 学Silverlight 2系列(28):图片处理 阅读

学Silverlight 2系列(28):图片处理

 2008-10-03 11:38:29 来源:WEB开发网   
核心提示: 裁剪图片有时候我们只需要显示出图片的一部分,可以使用Clip属性对图片进行裁剪,学Silverlight 2系列(28):图片处理(3),在Clip属性中我们可以设置任意的几何图形,注意是Geometry而非前面讲过的Shape,如下面的例子,我们对图片做一些渐变的效果:<Canv

学Silverlight 2系列(28):图片处理

裁剪图片

有时候我们只需要显示出图片的一部分,可以使用Clip属性对图片进行裁剪,在Clip属性中我们可以设置任意的几何图形,注意是Geometry而非前面讲过的Shape,关于Geometry后面会专门讲到。如下面的例子,裁剪出一个椭圆的区域:

<Canvas Background="#CDFCAE">
  <Image Source="a1.png" Canvas.Left="40" Canvas.Top="80"></Image>
  <Image Source="a1.png" Canvas.Left="320" Canvas.Top="80">
    <Image.Clip>
      <EllipseGeometry Center="120,68" RadiusX="100" RadiusY="60">
      </EllipseGeometry>
    </Image.Clip>
  </Image>
</Canvas>

运行后效果如下所示:

学Silverlight 2系列(28):图片处理

半透明遮罩

使用图片的OpacityMask属性,可以解释为通过用OpacityMask属性指定的画刷的alpha通道值来遮掩图片的alpha通道值,可以使用的画刷有LinearGradientBrush, RadialGradientBrush和ImageBrush,而对于SolidColorBrush则可以直接通过Opacity属性实现。如下面的例子,我们对图片做一些渐变的效果:

<Canvas Background="#CDFCAE">
  <Image Source="a1.png" Canvas.Left="160" Canvas.Top="80" Opacity="0.7">
    <Image.OpacityMask>
      <LinearGradientBrush StartPoint="0,0" EndPoint="1,0">
        <GradientStop Offset="0.0" Color="#00000000" />
        <GradientStop Offset="1.0" Color="#FF000000" />
      </LinearGradientBrush>
    </Image.OpacityMask>
  </Image>
</Canvas>

运行后效果如下:

学Silverlight 2系列(28):图片处理 

结束语

本文介绍了Silverlight中对于图片的处理,在后面我们还将利用这些知识做一个综合实例——实现图片的倒影效果。

上一页  1 2 3 

Tags:Silverlight 系列 图片

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接