Window上一般默认是96 dpi 作为100% 的缩放比率
/// <summary>
/// 根据屏幕缩放情况,将尺寸转换成适合屏幕缩放的合适大小
/// 可以解决win7系统 125%缩放情况下显示不全的问题
/// </summary>
/// <param name="value">原始尺寸</param>
/// <returns>转换后的尺寸</returns>
public static int GetDpiSize(int value)
{
using (Bitmap bmp = new Bitmap(1, 1))
{
using (Graphics g = Graphics.FromImage(bmp))
{
try
{
float dpi = g.DpiY;
return (int)(value * (dpi / 96.0));
}
catch
{
return value;
}
}
}
}