<div fc05="" fc11="" nbw-blog="" ztag="" js-fs2"="">
WPF中对图片进行旋转是应用RotateTransform类,而进行缩放和翻转则是应用ScaleTransform类。
旋转:
RotateTransform rotateTransform = new RotateTransform(90);//90度
imgCtl.RenderTransform = rotateTransform;//图片控件旋转
可以通过CenterX和CenterY指定旋转中心,默认旋转中心是原点。
缩放、翻转:
ScaleTransform scaleTransform = new ScaleTransform();
scaleTransform.ScaleX = -1;
imgCtl.RenderTransform = scaleTransform;
这是实现图片左右翻转,通过属性ScaleX改变,当其值为正时实现水平方向的缩放,其值为负时实现翻转和缩放,ScaleY同理。
若要同时实现旋转、缩放、翻转,则要利用到TransformGroup类,它能将这些变换整合到一起,如下:
TransformGroup transformGroup = new TransformGroup();
ScaleTransform scaleTransform = new ScaleTransform();
scaleTransform.ScaleX = -1;
transformGroup.Children.Add(scaleTransform);
RotateTransform rotateTransform = new RotateTransform(angle * 180 / 3.142);
transformGroup.Children.Add(rotateTransform);
imgCtl.RenderTransform = transformGroup;
这样能实现物体运动时根据方向旋转和翻转。