Windows Phone Silverlight 8.1图像缩放

时间:2015-08-19 18:16:48

标签: windows-phone-8.1 windows-phone

我有windows phone silverlight 8.1 app。我想缩放图像。这是我的代码片段。问题是它不会缩放执行捏合的位置。它总是放大图像的左上角。任何帮助,将不胜感激。感谢

private void Image_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
    if (e.PinchManipulation != null)
    {
        var transform = (CompositeTransform)img.RenderTransform;

        // Scale Manipulation
        transform.ScaleX = e.PinchManipulation.CumulativeScale;
        transform.ScaleY = e.PinchManipulation.CumulativeScale;

        // Translate manipulation
        var originalCenter = e.PinchManipulation.Original.Center;
        var newCenter = e.PinchManipulation.Current.Center;
        transform.TranslateX = newCenter.X - originalCenter.X;
        transform.TranslateY = newCenter.Y - originalCenter.Y;

        e.Handled = true;
    }
}

2 个答案:

答案 0 :(得分:0)

我认为最好的方法是将Image放入ScrollViewer中,System Manipulation将免费进行所有缩放。

save

如果没有回答你的问题,请告诉我,然后我会删除我的帖子。

答案 1 :(得分:0)

您需要设置transform.CenterXtransform.CenterY