像素和毫米怎麼換算:
像素和毫米是不能直接轉換的,只有在分辯率(dpi)下才能進行轉換。因此,像素與毫米的轉換,需要知道參數:DPI(每英寸多少點)。
象素數/ DPI = 英寸數
英寸數 * 25.4 = 毫米數
對於顯示設備,不管是打印機還是屏幕,都有一種通用的方法:
先用GetDeviceCaps(設備句柄,LOGPIXELSX)或者GetDeviceCaps(設備句柄,LOGPIXELSY)獲得設備每英寸的像素數分別記爲:px 和 py。
一英寸等於25.4mm。
那麼毫米換算成像素的公式爲:
水平方向的換算:x * px /25.4
垂直方向的換算:y * py /25.4
像素換算爲毫米:x * 25.4 / px
在程序中這麼寫
ht = xlength{mm} * PixelsPerInch * 10 / 254
分子和分母同乘以10,將浮點數運算轉化爲整數運算,效率更高。
常用的1024x768或800x600等標準的分辨率計算出來的dpi是一個常數:96,因此計算出來的毫米與像素的關係也約等於一個常數:基本上 1毫米 約等於 3.78像素。
假設屏幕分辨率爲800*600,則:
在水平方向上,每英寸包含有800個像素,即1英寸=800px。在垂直方向上,每英寸包含有600個像素,即1英寸=600px。
可得:
(1)在水平方向上:
1mm=31.49606299px
1px=0.03175mm
(2)在垂直方向上:
1mm=23.62204724px
1px=0.042333333mm