簡體   English   中英

ImageBrush 問題 Windows Phone 8.1

[英]ImageBrush issue Windows Phone 8.1

我需要在 Windows Phone 通用應用程序中創建一個圓形圖像。

為了創建這種圖像,我使用了以下代碼:

<Border CornerRadius="30" Height="60" Width="60">
    <Border.Background>
            <ImageBrush ImageSource="ms-appx:///Assets/round_image.png" />
    </Border.Background>
</Border>

但是這段代碼有巨大的內存影響,每個圖像大約 4Mb。 使用此代碼可以解決問題,但圖像不是圓形的。

<Border CornerRadius="30" Height="60" Width="60">
        <Image Source="ms-appx:///Assets/round_image.png" Stretch="Fill" />
</Border>

我需要顯示 20 張圖像,這兩種方法的差異約為 80mb。

這個內存問題有解決方案嗎?

請嘗試以下操作:

<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>

問題可能是您的圖像太大。 這會將圖像解碼為實際顯示尺寸,如果原始圖像太大,這將提高渲染性能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM