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

标签 c# image xaml win-universal-app clip

我们通过矩形裁剪图像,如附图所示:

enter image description here

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

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

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

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

但是,UWP 的 XAML 仅允许 RectangleGeometry。

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

谢谢

最佳答案

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

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

关于c# - 如何通过矩形以外的形状裁剪图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37171300/

相关文章:

C# TcpClient.Connect 通过代理

c# - 如何在 PictureBox 中平移图像

c# - .NET 2.0等效于C#扩展方法

apache-flex - Flex 4 文件引用选定的图像文件尺寸(宽度和高度)

html - CSS:悬停时更改颜色

c# - StackPanel 的方向在 ItemsControl (WPF) 中不起作用

c# - 在 Reportviewer Azure 中创建 PDF 时出错

python - 如何在图像处理中减小图像尺寸(scipy/numpy/python)

.net - XAML 中的程序集别名

visual-studio - 如何在 Visual Studio 中将一个 XAML 文件编译成多个项目?