1

我想在画布中显示图片。画布比图片小,我希望图片像下面的示例一样缩放和居中。

我不能使用Stretch=UniformToFill,因为它裁剪了不在框架中的图片部分(例如绿色部分),我需要能够移动图片。(通过移动图片,用户可以选择他想要保留的图片部分)。这也是为什么,我不能使用renderTransform。

我尝试以编程方式缩放和翻译我的图片。我已经根据这篇文章实现了捏缩放,现在我想使用 CompositeTransform 项目来进行我的转换。

规模有效,但翻译无效。无论比例因子设置是什么,都不会改变。

我有什么Stretch=none

我有的

我想以编程方式获得什么:

我需要的

这是我的代码:

double scaleFactor = (CanvasCropPola.ActualHeight) / Math.Min(ImageCropPola.ActualHeight, ImageCropPola.ActualWidth);
double transX = 500; // regardless of this value, the translation don't work

myCompositeTransfrom.ScaleX = scaleFactor; // work
myCompositeTransfrom.ScaleY = scaleFactor; // work
myCompositeTransfrom.TranslateX = transX; // don't work :'(
4

0 回答 0