[英]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/windows/apps/hh465362.aspx
您可以以不同的分辨率(相同的文件名,但具有已知的后綴或已知文件夾)包含多個版本的圖像,系統將自動為用戶設備的DPI加載適當的版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.