学Silverlight 2系列(28):图片处理
2008-10-03 11:38:29 来源:WEB开发网图片拉伸
当我们创建了一个图片的时候,如果不指定它的宽度和高度,它将会使用默认的规格来显示;如果指定了高和宽,图片将显示在指定高和宽的矩形区域内。可以通过苏醒Stretch来指定图片如何填充在该区域内,即图片拉伸。Stretch属性具有四个可选值:
None:不对图片进行拉伸以便填充规定的尺寸。
Uniform:按比例进行拉伸,直到有一边满足规定的尺寸区域为止,其余部分不会被填充,按最小尺寸填充。
UniformToFill:按比例进行拉伸,直到完全填充规定的尺寸区域为止,超出该区域的将会被裁剪,按最大尺寸填充。
Fill:不按比例拉伸,完全填充规定的尺寸区域,将会破坏图像的比例。
Stretch默认的属性是Uniform,为了更直观的看到这个四个值的区别,下面看一个例子,我们使用一个规格尺寸为160*90图片,中间带一个小的正方形:
在页面上放置四个Border控件,大小为220*220,并在其中各放置一个Image,图片的大小也定义为220*220,设置四个Image的Stretch属性分别为None、Uniform、UniformToFill、Fill,如下所示:
<Canvas Background="#CDFCAE">
<Border BorderBrush="Black" BorderThickness="3"
Width="220" Height="220" Canvas.Left="40" Canvas.Top="50">
<Image Source="a2.png" Stretch="None" Width="220" Height="220"></Image>
</Border>
<Border BorderBrush="Black" BorderThickness="3"
Width="220" Height="220" Canvas.Left="330" Canvas.Top="50">
<Image Source="a2.png" Stretch="Uniform" Width="220" Height="220"></Image>
</Border>
<Border BorderBrush="Black" BorderThickness="3"
Width="220" Height="220" Canvas.Left="330" Canvas.Top="330">
<Image Source="a2.png" Stretch="UniformToFill" Width="220" Height="220"></Image>
</Border>
<Border BorderBrush="Black" BorderThickness="3"
Width="220" Height="220" Canvas.Left="40" Canvas.Top="330">
<Image Source="a2.png" Stretch="Fill" Width="220" Height="220"></Image>
</Border>
</Canvas>
运行后可以很明显的看到这个四个值的区别,如下图所示:
Tags:Silverlight 系列 图片
编辑录入:爽爽 [复制链接] [打 印]- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››图片处理 放大 或是旋转
- ››图片延迟加载并等比缩放,一个简单的JQuery插件
- ››Silverlight for Windows Phone 7开发系列(1):...
- ››Silverlight for Windows Phone 7开发系列(2):...
- ››Silverlight for Windows Phone 7开发系列(3):...
- ››Silverlight for Windows Phone 7开发系列(4):...
- ››图片格式无阻碍 美图看看无忧看图
- ››Silverlight for Symbian
- ››图片处理问题之去除照片日期水印
- ››图片浏览高手美图看看使用技巧放送
更多精彩
赞助商链接