我的问题是,从应用程序资源中加载图像似乎不正确。这是代码:
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.UriSource = new Uri(@"pack://application:,,,/WpfApplication3;component/Resources/Images/16x16_incorrect.png", UriKind.Absolute);
bi.EndInit();
ImageSource s = bi;
图像文件 16x16_incorrect.png
是一张 16x16 的32位PNG文件,但在执行上述代码后,s.Width = s.Height = 21,59729
。我还有另一张文件 - 16x16_correct.png
,加载时,ImageSource的 Width
和 Height
都等于16.002。
其他图片都加载不正确,看起来模糊或平滑,因为系统将它们从16x16拉伸到21x21。
是什么导致了这种情况?如果问题在源图像文件中,我该如何更改 ImageSource.Width
以达到所需尺寸并使用这些文件呢?