我正在从事地铁应用程序。
而且我正在使用BitmapImage
,因为我设置了构造函数Uri
,但我一直意识到PixelWidth
并PixelHeight
返回0
(我也验证了它Uri
是正确的)。
我找不到另一个返回这些属性的类。我在想是否有办法通过字节数组或类似的方式获取这些数据。你怎么看?
我正在从事地铁应用程序。
而且我正在使用BitmapImage
,因为我设置了构造函数Uri
,但我一直意识到PixelWidth
并PixelHeight
返回0
(我也验证了它Uri
是正确的)。
我找不到另一个返回这些属性的类。我在想是否有办法通过字节数组或类似的方式获取这些数据。你怎么看?
检查 CacheOption 属性并设置为 BitmapCacheOption.None。您也可以尝试转换为 WriteableBitmap。如果我说的不是真的,对不起,因为我无法测试。Xaml(仅限 wpf)xD
BitmapImage
如果图像未加载,则返回0
。图像仅在实际使用时才加载,例如分配和显示。那是……有问题的。使用没有帮助,它只适用于 WP7。PixelWidth
PixelHeight
Image.Source
BitmapCacheOption.None
正确的解决方案是使用BitmapDecoder
:
var stream = await storageFile.OpenReadAsync();
var decoder = await BitmapDecoder.CreateAsync(stream);
var size = new BitmapSize { Width = decoder.PixelWidth, Height = decoder.PixelHeight };
在 MSDN 论坛上找到了这个解决方案。