这是我的XAML:
<Image
VerticalAlignment="Center" HorizontalAlignment="Center"
Source="{Binding Input, Converter={StaticResource ByteArrayToBitmapConverter}}">
<Image.RenderTransform>
<RotateTransform Angle="{Binding RotateAngle}" CenterX="100" CenterY="100"></RotateTransform>
</Image.RenderTransform>
</Image>
我将图像绑定到数据源并使用转换器来获取Bitmap。那部分有效。但是,我想让它旋转,我在我的VM中设置RotateAngle。问题是 - 所有图像都有不同的尺寸,我不知道如何设置CenterX和CenterY。有没有其他方法只改变方向而不计算额外的X和Y?
答案 0 :(得分:6)
没有时间自己测试,但我认为RenderTransformOrigin可能适合你。
<Image VerticalAlignment="Center" HorizontalAlignment="Center"
Source="{Binding Input, Converter={StaticResource ByteArrayToBitmapConverter}}"
RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<RotateTransform Angle="{Binding RotateAngle}" >
</RotateTransform>
</Image.RenderTransform>
</Image>
</code></pre>