0

加载图片后,我需要在我的 WPF 应用程序中裁剪和调整图像大小。因此,我的基本图像具有 VGA 尺寸 (640x480),我需要裁剪边缘(顶部 18 像素,底部 36 像素,左侧 48 像素,右侧 24 像素)。新图像(568 x 426 像素)需要重新调整为原始尺寸(640 x 480 像素)——基本上就像我们在摄影中使用的数码变焦镜头。

我已经找到了一些示例代码(在 C# 中从图像中裁剪空白) - 但是这有点太复杂了,因为我不需要检测图像上的空白。是否有任何简单的算法仅通过使用 XAML 来执行此操作?

提前致谢。

4

1 回答 1

1

我认为您应该能够通过使用ViewboxClass来做到这一点。从链接页面:定义一个内容装饰器,可以拉伸和缩放单个子元素以填充可用空间。您从字面上添加一个Window并将您设置Image为内容,然后您可以设置属性来控制它显示的图像的哪一部分:

<ViewBox Width="500" Height="500" Stretch="Uniform">
    <Image Source="Images/SomeImage.jpg" Width="300" Height="300" 
        Margin="-48,-18,-36,-24" />
</ViewBox>

尝试不同的StretchDirection值并将其设置Margin为负值以进行裁剪。链接页面中有示例,但如果您需要更多帮助,请告诉我。

于 2014-01-23T16:18:06.213 回答