C#四种图片处理
讲解都在对应的代码注释里 ,可直接复制过去运行
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/><RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/><ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Row="0" Grid.Column="0">
<!--TranslateTransform平移变化
包含X,Y两种属性,以原来的对象为坐标原点(0,0),然后向x轴,y轴进行平移变换-->
<!--开始,定义两张图片-->
<Image Canvas.Top="80" Canvas.Left="70" Source="images\303329.jpg"></Image>
<Image Canvas.Top="80" Canvas.Left="70" Source="images\303329.jpg">
<!--平移变化-->
<Image.RenderTransform>
<TranslateTransform X="60" Y="60"></TranslateTransform>
</Image.RenderTransform>
</Image>
</Grid>
<Grid Grid.Row="0" Grid.Column="1">
<Canvas>
<Image Width="600" Canvas.Top="80" Canvas.Left="70" Source="images\303538.jpg" Opacity="0.5"></Image>
<Image Width="600" Canvas.Top="80" Canvas.Left="70" Source="images\303538.jpg">
<Image.RenderTransform>
<ScaleTransform ScaleX =" 0.5" ScaleY="0.5"></ScaleTransform>
</Image.RenderTransform>
</Image>
<TextBlock Text="包括属性ScaleX、ScaleY、CenterX、CenterY,其中ScaleX、ScaleY属性表示对象在X、Y轴进行缩放的倍数,使用CenterX 和 CenterY属性指定一个中心点。"/>
</Canvas>
</Grid>
<Grid Grid.Row="1" Grid.Column="0">
<!--缩放、旋转、扭曲等变化效果合并起来。以上四种基本变化只是单一的变化,如果想要实现多种效果的叠加,那么就要使用到TransformGroup,否则会报错。TransformGroup的作用类似于在控件布局中的StackPanel内嵌的作用,是把多种变化元素组合成一种变化的-->
<Canvas Width="600" Height="400">
<Rectangle Canvas.Top="0" Canvas.Left="200" Width="400" Height="400" Stroke="Black" StrokeThickness="5">
<Rectangle.RenderTransform>
<TransformGroup>
<!--TransformGroup能够让某对象的位置发生平移变化。-->
<!--RotateTransform 变换,能够让某对象产生旋转变化,根据中心点进行顺时针旋转或逆时针旋转-->
<RotateTransform Angle="10"></RotateTransform>
<!--SkewTransform 变换-->
<SkewTransform AngleX="-10" AngleY="10" CenterX="20" CenterY="50"></SkewTransform> <!--SkewTransform: 能够让某对象产生扭曲变化-->
</TransformGroup>
</Rectangle.RenderTransform>
<Rectangle.Fill>
<ImageBrush ImageSource="images\303322.jpg"></ImageBrush>
</Rectangle.Fill>
</Rectangle>
</Canvas>
</Grid>
<Grid Grid.Row="1" Grid.Column="1">
<Canvas>
<Image Width="500" Canvas.Top="160" Canvas.Left="140" Source="images/303369.jpg"
Opacity="0.5"></Image>
<Image Width="500" Canvas.Top="160" Canvas.Left="140" Source="images/303369.jpg">
<Image.RenderTransform>
<SkewTransform AngleX="30" AngleY="10">
</SkewTransform>
</Image.RenderTransform>
</Image>
<Image Width="500" Canvas.Top="160" Canvas.Left="140" Source="images/303369.jpg">
<Image.RenderTransform>
<SkewTransform AngleX="-30" AngleY="-10">
</SkewTransform>
</Image.RenderTransform>
</Image>
</Canvas>
</Grid>
</Grid>
```