如何通过矩形以外的形状裁剪图像?

How to clip an image by a shape other than a rectangle?

我们正在用矩形裁剪图像,如附图所示:

里面的图像,形状像太阳,被裁剪成紫色房子形多边形内的一个矩形。但是我想把太阳剪到整个房子形状的多边形上。

我使用的 XAML 代码是这样的:

<Image x:Name="Sun"
       Source="Assets/Sun.png"
       HorizontalAlignment="Right">
    <Image.Clip>
        <RectangleGeometry>

        </RectangleGeometry>
    </Image.Clip>
</Image>

但是 XAML 对于 UWP 只允许 RectangleGeometry。

还有其他方法可以实现裁剪吗?

感谢

添加任何你想要的形状,然后用 ImageBrush 填充它。这会将图像剪裁成您的形状。这个例子是一个圆圈:

<Ellipse>
    <Ellipse.Fill>
        <ImageBrush
            Stretch="UniformToFill"
            ImageSource="Assets/Sun.png" />
    </Ellipse.Fill>
</Ellipse>