2013-01-23 189 views
18

我在WPF應用程序中使用了一些與圖像控件一起使用的256x256圖像。儘管它們都是256x256,但是我將某些控件更改爲64x64等。當我調整它的大小(使用填充作爲我的伸展屬性)時,邊緣變得非常粗糙。即使在這樣簡單的三角形,這是痛苦的明顯:在WPF中平滑圖像邊緣

enter image description here

是否有一個良好的修復這一點,或者我需要把它們放入應用程序前調整在Photoshop中的圖像?

回答

41

您需要設置圖像的渲染選項。

嘗試圖像的樣式設置爲:

<Window.Resources> 
    <Style TargetType="Image"> 
     <Setter Property="Height" Value="64" /> 
     <Setter Property="Width" Value="64" /> 
     <Setter Property="RenderOptions.BitmapScalingMode" Value="HighQuality" /> 
    </Style> 
</Window.Resources> 

要使用的圖像,只需像以前一樣叫:

<Image Source="/Images/MyImage.png" /> 

或者,單個圖像上使用的RenderOptions

<Image RenderOptions.BitmapScalingMode="HighQuality" 
     Source="/Images/MyImage.png" 
     Width="64" 
     Height="64" /> 

欲瞭解更多信息,請參閱:

http://msdn.microsoft.com/en-us/library/system.windows.media.renderoptions.aspx