UWP WriteableBitmap DPI 信息
UWP WriteableBitmap DPI Info
我们的应用程序具有依赖于以每英寸点数为单位的水平/垂直图像分辨率的渲染逻辑。
这曾经在 WriteableBitmap / BitmapSource 类 中作为 DpiX 和 DpiY 属性提供:
https://msdn.microsoft.com/en-us/library/system.windows.media.imaging.writeablebitmap.aspx
对于 UWP,它已经消失了:
https://msdn.microsoft.com/library/windows/apps/br243259
这些属性现在存在于其他地方还是完全消失了?
对于 UWP,属性现在存在于 BitmapDecoder class 中。这是一个关于使用此 class:
获取 DPI 信息的简单代码示例
var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/HelloWorld.png"));
using (IRandomAccessStream stream = await file.OpenReadAsync())
{
BitmapDecoder decoder = await BitmapDecoder.CreateAsync(BitmapDecoder.PngDecoderId, stream);
var DpiX = decoder.DpiX;
var DpiY = decoder.DpiY;
}
我们的应用程序具有依赖于以每英寸点数为单位的水平/垂直图像分辨率的渲染逻辑。
这曾经在 WriteableBitmap / BitmapSource 类 中作为 DpiX 和 DpiY 属性提供: https://msdn.microsoft.com/en-us/library/system.windows.media.imaging.writeablebitmap.aspx
对于 UWP,它已经消失了: https://msdn.microsoft.com/library/windows/apps/br243259
这些属性现在存在于其他地方还是完全消失了?
对于 UWP,属性现在存在于 BitmapDecoder class 中。这是一个关于使用此 class:
获取 DPI 信息的简单代码示例 var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/HelloWorld.png"));
using (IRandomAccessStream stream = await file.OpenReadAsync())
{
BitmapDecoder decoder = await BitmapDecoder.CreateAsync(BitmapDecoder.PngDecoderId, stream);
var DpiX = decoder.DpiX;
var DpiY = decoder.DpiY;
}