簡體   English   中英

高質量的圖像縮放

[英]High quality image scaling

我已經閱讀了這個問題, 高質量圖像縮放庫 ,但它只適用於GDI +。

當我在我的應用程序中縮小Image時,它變得非常鋸齒狀。

我在Image類上找不到任何允許我提高縮小質量的屬性。

我怎樣才能做到這一點?

編輯:

我現在使用了這段代碼:

BitmapImage img = new BitmapImage();
img.UriSource = new Uri(Graphic, UriKind.Relative);
return img;

其中Graphic是一個包含圖像路徑的string ,但是我遇到了這個異常:

Weather.DLL中出現“System.ArgumentException”類型的異常,但未在用戶代碼中處理

附加信息:給定的System.Uri無法轉換為Windows.Foundation.Uri。 有關詳細信息,請參閱http://go.microsoft.com/fwlink/?LinkID=215849

據我所知, Windows.Foundation.Uri未在.net框架中使用。

那么為什么它會給我這個錯誤呢?

在XAML中:

    <Image Width="250" Height="250" Stretch="UniformToFill">
        <Image.Source>
           <BitmapImage UriSource="{Binding ImagePath}" DecodePixelHeight="250"/>
        </Image.Source>
    </Image>

在C#中:

    BitmapImage bitmapImage = BitmapImage("URL HERE");
    bitmapImage.DecodePixelHeight = 250;

僅設置DecodePixelHeight或DecodePixelWidth。

http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapimage.decodepixelheight.aspx

我最終創建了第二個較小的圖像,並在我需要縮小它的所有地方使用它。

您可以通過使用內置的圖像縮放支持來避免完全遇到的問題:

http://msdn.microsoft.com/en-us/library/windows/apps/hh465362.aspx

您可以以不同的分辨率(相同的文件名,但具有已知的后綴或已知文件夾)包含多個版本的圖像,系統將自動為用戶設備的DPI加載適當的版本。

暫無
暫無

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

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