Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# wpf图像剪辑椭圆4:3_C#_Wpf_Image_Xaml - Fatal编程技术网

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上控件的最上浮答案。今天已经过时了,非常感谢。这对汉克斯很有帮助。这有帮助