C# wpf图像剪辑椭圆4:3
我需要一些指导。我正在尝试创建一个椭圆形状的图像。要查看图像,请使用 我当前的代码:C# wpf图像剪辑椭圆4:3,c#,wpf,image,xaml,C#,Wpf,Image,Xaml,我需要一些指导。我正在尝试创建一个椭圆形状的图像。要查看图像,请使用 我当前的代码: <Grid Width="100" Height="100"> <cachedImage:Image Width="100" Height="100" Stretch="UniformToFill" VerticalAlignment="Center" HorizontalAlignment="Center" Imag
<Grid Width="100" Height="100">
<cachedImage:Image Width="100" Height="100" Stretch="UniformToFill" VerticalAlignment="Center" HorizontalAlignment="Center"
ImageUrl="https://i.scdn.co/image/efe952d45a24a33360e98b4b42d313576e29cece" >
<Image.Clip>
<EllipseGeometry Center="50,50" RadiusX="50" RadiusY="50" />
</Image.Clip>
</cachedImage:Image>
</Grid>
如果图像的格式为4:3,则会出现问题
这是我的
我需要这个
非常感谢。设置图像控件的
宽度
和高度
,同时拉伸=UniformToFill
将不可避免地裁剪图像的一部分,除非其纵横比与宽度
和高度
的比率完全匹配
但是,您可以设置Stretch=Uniform
,并将图像控件放置在另一个更大的网格中,该网格水平居中于外网格中。您必须将剪辑
应用于外部网格
<Grid Width="100" Height="100">
<Grid Width="200" HorizontalAlignment="Center">
<Image Stretch="Uniform"
Source="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"/>
</Grid>
<Grid.Clip>
<EllipseGeometry Center="50,50" RadiusX="50" RadiusY="50" />
</Grid.Clip>
</Grid>
设置图像控件的
宽度
和高度
,同时Stretch=UniformToFill
将不可避免地裁剪部分图像,除非其纵横比与宽度
和高度
的比率完全匹配
但是,您可以设置Stretch=Uniform
,并将图像控件放置在另一个更大的网格中,该网格水平居中于外网格中。您必须将剪辑
应用于外部网格
<Grid Width="100" Height="100">
<Grid Width="200" HorizontalAlignment="Center">
<Image Stretch="Uniform"
Source="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"/>
</Grid>
<Grid.Clip>
<EllipseGeometry Center="50,50" RadiusX="50" RadiusY="50" />
</Grid.Clip>
</Grid>
来自CachedImage主页:“如果我们使用本机WPF图像控件通过HTTP协议显示图像(通过将源设置为HTTP url),则每次加载控件时都会从服务器下载图像。”这不是真的。从URI加载图像时,WPF会缓存图像。根本不需要使用此控件。请改用标准WPF图像控件。您可能希望读取指向GitHub上控件的最上浮答案。现在它已经过时了。在CachedImage主页上:“如果我们使用本机WPF图像控件通过HTTP协议显示图像(通过将源设置为HTTP url),则每次加载控件时都会从服务器下载图像。”这不是真的。从URI加载图像时,WPF会缓存图像。根本不需要使用此控件。请改用标准WPF图像控件。您可能希望读取指向GitHub上控件的最上浮答案。今天已经过时了,非常感谢。这对汉克斯很有帮助。这有帮助