UWP 可写位图 DPI 信息



我们的应用程序的渲染逻辑取决于水平/垂直图像分辨率(以每英寸点数为单位)。

这曾经在 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 类中。下面是有关使用此类获取 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;                 
 }

最新更新