如何从中心缩放图像? Windows 8.1 C#

时间:2015-01-30 01:50:28

标签: c# animation windows-8.1

如何在c#for Windows 8.1中以编程方式从中心扩展动态图像控制。此代码从左上角缩放图像:

    Image img=new Image(){Width=150,Height=150};
    img.RenderTransform = new CompositeTransform();
    Storyboard story = new Storyboard();

    DoubleAnimation xAnim = new DoubleAnimation();
    DoubleAnimation yAnim = new DoubleAnimation();

    xAnim.From = 0;
    yAnim.From = 0;
    xAnim.To = 1;
    yAnim.To = 0.5;

    xAnim.Duration = TimeSpan.FromMilliseconds(1000);
    yAnim.Duration = TimeSpan.FromMilliseconds(1500);

    story.Children.Add(xAnim);
    story.Children.Add(yAnim);

    Storyboard.SetTarget(xAnim, img);
    Storyboard.SetTarget(yAnim, img);

    Storyboard.SetTargetProperty(xAnim, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)");
    Storyboard.SetTargetProperty(yAnim, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)");

    story.Begin();

1 个答案:

答案 0 :(得分:0)

你想要

img.RenderTransformOrigin = new Point(0.5, 0.5);

这意味着您的所有变换都将相对于图像的中心。有关详细信息,请参阅RenderTransformOrigin documentation