解决WPF图片模糊问题

@hanq  2020年10月15日 13:23

解决WPF图片模糊问题

WPF加载的png图片会比原图模糊,经过网络搜索,找到两条路:

路线一:DPI

图片会因为垂直分辨率/水平分辨率不同而造成在WPF界面上显示出现模糊。WPF默认是96DPI,但有些图片可能是72DPI甚至更低或更高,这样就会出现图片显示后被放大或缩小。

通过绑定图片的Source.PixelHeight与Source.PixelWidth并结合Stretch="Fill"或UseLayoutRounding="True"来限制图片大小达到最佳效果。

<Image HorizontalAlignment="Left" Source="{StaticResource vs2}" VerticalAlignment="Top" 
  Stretch="Fill"
  Width="{Binding Source.PixelWidth, Mode=OneWay, RelativeSource={RelativeSource Self}}"
  Height="{Binding Source.PixelHeight, Mode=OneWay, RelativeSource={RelativeSource Self}}" />

路线二:.ico

ico是一种含有多个分辨率大小的图片文件,window系统会各个图标大小不一样,会从ico文件里找对应分辨率大小,没有对应的就会压缩别的,导致不清晰

  • 可以用VS双击ico文件,手动增加不同分辨率的图片

以上方式,没经过实际测试,仅提供思路


添加新评论