0

我正在 Windows phone 7 中开发照片应用程序。

当我按矩形区域裁剪图像时,裁剪图像与图像控件的左上角对齐。我想将图像居中对齐并将其缩放/拉伸到完整的图像控件。

见数字。

作物前

作物后

第一张图像显示裁剪前,第二张图像显示裁剪后,图像左上角对齐。裁剪后的图像应居中对齐。并且请您在图2中还看到裁剪的图像没有完全出现,我的意思是播放器的引导部分也被裁剪了,但没有显示在裁剪的图像中,为什么会这样?

代码是:

    void ClipImage()
    {
        RectangleGeometry geo = new RectangleGeometry();

        r = (Rectangle)(from c in ImageLayout.Children where c.Opacity == .5 select    
      c).First();
        GeneralTransform gt = r.TransformToVisual(ImageLayout);
        Point p = gt.Transform(new Point(0, 0));
        geo.Rect = new Rect(p.X, p.Y, r.Width, r.Height);
        ImageMain.Clip = geo;
        r.Visibility = System.Windows.Visibility.Collapsed;

        TranslateTransform t = new TranslateTransform();
        t.X = -p.X;
        t.Y = -p.Y;
        ImageMain.RenderTransform = t;
    }

在代码中,我认为应该更改一些值,以使图像居中对齐。这只是一个裁剪的图像代码,里面还使用了许多其他功能,但我认为并不关心。

4

1 回答 1

0

如果要使某些 XAML 元素居中,请使用HorizontaAlignment.CenterVerticalAlignment.Center

于 2013-09-27T13:19:43.347 回答