private static float DEFAULT_DPI_X = 0; private static float DEFAULT_DPI_Y = 0; /// <summary>获取分辨率DPI</summary> /// <param name="dpiX"></param> /// <param name="dpiY"></param> public static void GetDPI(out float dpiX, out float dpiY) { if (LibSysUtils.DEFAULT_DPI_X == 0 || LibSysUtils.DEFAULT_DPI_Y == 0) { using (Bitmap map = new Bitmap(100, 100)) { using (Graphics g = Graphics.FromImage(map)) { LibSysUtils.DEFAULT_DPI_X = g.DpiX; LibSysUtils.DEFAULT_DPI_Y = g.DpiY; } } } dpiX = LibSysUtils.DEFAULT_DPI_X; dpiY = LibSysUtils.DEFAULT_DPI_Y; } /// <summary> /// 毫米转为像素(注:dpi分水平和垂直,获取方法为得到 Graphics 的实例化对象 g,调用g.DpiX、g.DpiY) /// </summary> /// <param name="mm">毫米</param> /// <param name="fDPI">分辨率(水平/垂直)</param> /// <returns></returns> public static float MillimetersToPixel(float mm, float fDPI) { //毫米转像素:mm * dpi / 25.4 return (float)Math.Round((mm * fDPI / 25.4f), 2); } /// <summary> /// 像素转为毫米(注:dpi分水平和垂直,获取方法为得到 Graphics 的实例化对象 g,调用g.DpiX、g.DpiY) /// </summary> /// <param name="px">像素</param> /// <param name="fDPI">分辨率(水平/垂直)</param> /// <returns></returns> public static float PixelToMillimeters(float px, float fDPI) { //像素转毫米:px * 25.4 / dpi return (float)Math.Round(((px * 25.4f) / fDPI), 2); ; } /// <summary> /// 英寸到像素 /// </summary> /// <param name="inches"></param> /// <returns></returns> public static float InchesToPixels(float inches, float fDPI) { return (float)Math.Round(inches * fDPI, 2); } /// <summary> /// 像素到英寸 /// </summary> /// <param name="px"></param> /// <returns></returns> public static float PixelsToInches(float px, float fDPI) { return (float)Math.Round(px / fDPI, 2); } /// <summary> /// 毫米到英寸 /// </summary> /// <param name="mm"></param> /// <returns></returns> public static float MillimetersToInches(float mm) { return (float)Math.Round(mm / 25.4f, 2); } /// <summary> /// 英寸到毫米 /// </summary> /// <param name="mm"></param> /// <returns></returns> public static float InchesToMillimeters(float Inches) { return (float)Math.Round(Inches * 25.4f, 2); }
【代码片段】获取分辨率DPI和像素、毫米、英寸互相转换
猜你喜欢
转载自blog.csdn.net/michelsn/article/details/80287160
今日推荐
周排行