2013-09-27 67 views
0

对准我开发一个照片应用程序在Windows电话7裁剪图像不是中心

当我由一个矩形区域,排列图像控件的左上角裁剪后的图像裁剪图像。我想将图像对齐到中心,并将其缩放/拉伸至完整的图像控件。

查看数字。

Before Crop

After Crop

第一图象显示之前裁剪和第2图像显示作物后,图像对准左上角。裁剪后的图像应居中对齐。并且plz也看到裁剪后的图像没有完全进入figure-2,我的意思是Player的Boot部分也裁剪过了,但是在裁剪后的图像中没有显示,为什么呢?

代码是:

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; 
    } 

在这里,在代码中,我觉得有些值应该改变,以中心对齐图像。这只是一个裁剪后的图像代码,其他许多功能也在里面使用,但我并不担心。

回答

0

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

+0

不,这不是通过Xaml对齐,这是由硬代码完成的,所以呢? –