在应用程序的开发过程中,为了让界面按照期望的效果显示,有时会对界面元素应用变形特效,例如图片的缩放、旋转、移动等。与3D特效不同,在界面元素实现变形特效之后,其平行关系不会发生改变,只不过是位置、大小或方向发生了改变。

变形特效由界面元素的RenderTransform属性提供支持,此属性是Transform类型的属性, TranslateTransformRotateTransformScaleTransform等都继承自Transform类,通过将它们赋值给RenderTransform,可以实现界面元素的平移、旋转以及缩放等变形特效,下面列举了RenderTransform所包含的Transform类型成员。

q  TranslateTransform,能够使元素的位置发生平移变化,两个比较重要的属性是XY,分别代表相对于元素的起始点偏移量。

q  RotateTransform,能够使元素产生旋转变化,根据中心点进行顺时针或逆时针旋转。

q  ScaleTransform,能够使元素产生缩放变化。它两个重要属性ScaleXScaleY。对于ScaleX而言,如果值介于0 1之间,就会减小缩放对象的宽度;如果值大于1增大缩放对象的宽度;如果值为1,表示对象不在 X轴方向进行缩放;如果为负值,沿水平方向翻转缩放对象; 如果值介于0-1之间,代表翻转缩放对象并减小其宽度;如果值小于-1翻转对象并增大其宽度;如果值为-1,则翻转缩放对象,但不更改其宽度大小。

q  SkewTransform能够使元素产生扭曲变化,它的四个属性中,AngleXAngleY决定扭曲对象的倾斜度,CenterXCenterY决定扭曲的中心点。

q  TransformGroup能够使元素的缩放、旋转、扭曲等变形特效综合起来使用。

q  MatrixTransform,能够使元素通过矩阵算法实现更为复杂的变形。

变形元素包括平移变形、缩放变形、旋转变形、扭曲变形、组合变形以及矩阵变形元素,变形特效常用于在不改变元素本身构成的情况下,使其产生变形效果。下面将逐一介绍上述的几种变形效果。

posted on 2015-01-12 16:39  冯瑞涛  阅读(274)  评论(0编辑  收藏  举报