Xamarin.MacでディスプレイのDPIを取得する
2019年12月25日 (水) 08:03時点におけるAdministrator (トーク | 投稿記録)による版 (ページの作成:「 Xamarin.MacでディスプレイのDPIを取得する Xamarin.MacでディスプレイのDPIを取得する。 <source lang="csharp"> var val = (NSValue)NSS…」)
Xamarin.MacでディスプレイのDPIを取得する
Xamarin.MacでディスプレイのDPIを取得する。
var val = (NSValue)NSScreen.MainScreen.DeviceDescription["NSDeviceResolution"];
var dpi = val.SizeFValue;
Console.WriteLine(dpi);
WindowクラスにもDeviceDescription["NSDeviceResolution"]があり、こちらで取得を試みるとウインドウが表示されているディスプレイの値が取れる模様。
using System;
using AppKit;
using Foundation;
public partial class ViewController : NSViewController
{
// 〜〜〜抜粋〜〜〜
public override void MouseDown(NSEvent theEvent)
{
var val = (NSValue)this.View.Window.DeviceDescription["NSDeviceResolution"];
var dpi = val.SizeFValue;
Console.WriteLine(dpi);
base.MouseDown(theEvent);
}
}