首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ImageBrush发布Windows 8.1

ImageBrush发布Windows 8.1
EN

Stack Overflow用户
提问于 2015-11-18 16:40:58
回答 1查看 178关注 0票数 2

我需要在一个windows手机通用应用程序中创建一个圆形图像。

为了创建这种映像,我使用了以下代码:

代码语言:javascript
复制
<Border CornerRadius="30" Height="60" Width="60">
    <Border.Background>
            <ImageBrush ImageSource="ms-appx:///Assets/round_image.png" />
    </Border.Background>
</Border>

但是这段代码对内存有很大的影响,每个图像大约有4Mb。使用此代码来修复问题,但图像不是圆形的。

代码语言:javascript
复制
<Border CornerRadius="30" Height="60" Width="60">
        <Image Source="ms-appx:///Assets/round_image.png" Stretch="Fill" />
</Border>

我需要显示20张图片,与这两种方法的区别是大约80 is。

这个内存问题有解决办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-18 19:28:17

尝试以下几点:

代码语言:javascript
复制
<Border CornerRadius="30" Height="60" Width="60">
    <Border.Background>
            <ImageBrush>
                <ImageBrush.ImageSource>
                    <BitmapImage
                        UriSource="ms-appx:///Assets/round_image.png" 
                        DecodePixelWidth="60"
                        DecodePixelHeight="60"
                        DecodePixelType="Logical"/>
                </ImageBrush.ImageSource>
            </ImageBrush>
    </Border.Background>
</Border>

问题可能是你的图像太大了。这将解码图像到实际显示大小,这将提高渲染性能,如果原始图像太大。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33785595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档