像素與毫米的轉(zhuǎn)換公式
更新時(shí)間:2007年12月29日 20:11:14 作者:
像素與毫米的轉(zhuǎn)換公式
像素與毫米的轉(zhuǎn)換
轉(zhuǎn)換還需要知道另一個(gè)參數(shù):DPI(每英寸多少點(diǎn))
象素?cái)?shù) / DPI = 英寸數(shù)
英寸數(shù) * 25.4 = 毫米數(shù)
對于顯示設(shè)備,不管是打印機(jī)還是屏幕,都有一種通用的方法
先用GetDeviceCaps(設(shè)備句柄,LOGPIXELSX)
或者
GetDeviceCaps(設(shè)備句柄,LOGPIXELSY)獲得設(shè)備每英寸的像素?cái)?shù)
分別記為:px 和 py
一英寸等于25.4mm
那么毫米換算成像素的公式為
水平方向的換算: x * px /25.4
垂直方向的換算: y * py /25.4
像素?fù)Q算為毫米 x * 25.4 / px
在程序中這么寫
MyControl.Height := 10{mm} * PixelsPerInch * 10 div 254;
分子和分母同乘以10,將浮點(diǎn)數(shù)運(yùn)算轉(zhuǎn)化為整數(shù)運(yùn)算,效率更高
javascript可以得到的顯示器參數(shù)
screen.
availHeight 獲取系統(tǒng)屏幕的工作區(qū)域高度,排除 Microsoft® Windows® 任務(wù)欄。
availWidth 獲取系統(tǒng)屏幕的工作區(qū)域?qū)挾?,排?nbsp;Windows 任務(wù)欄。
bufferDepth 設(shè)置或獲取用于畫面外位圖緩沖顏色的每像素位數(shù)。
colorDepth 獲取用于目標(biāo)設(shè)置或緩沖區(qū)的顏色每像素位數(shù)。
deviceXDPI 設(shè)置或獲取系統(tǒng)屏幕水平每英寸點(diǎn)數(shù)(DPI)的數(shù)值。
deviceYDPI 設(shè)置或獲取系統(tǒng)屏幕垂直每英寸點(diǎn)數(shù)(DPI)的數(shù)值。
fontSmoothingEnabled 獲取用戶是否在控制面板的顯示設(shè)置中啟用了圓整屏幕字體邊角的選項(xiàng)。
height 獲取屏幕的垂直分辨率。
logicalXDPI 獲取系統(tǒng)屏幕水平每英寸點(diǎn)數(shù)(DPI)的常規(guī)數(shù)值。
logicalYDPI 獲取系統(tǒng)屏幕垂直每英寸點(diǎn)數(shù)(DPI)的常規(guī)數(shù)值。
updateInterval 設(shè)置或獲取屏幕的更新間隔。
width 獲取屏幕的垂直分辨率。
常用的1024x768或800x600等標(biāo)準(zhǔn)的分辨率計(jì)算出來的dpi是一個(gè)常數(shù):96,因此計(jì)算出來的毫米與像素的關(guān)系也約等于一個(gè)常數(shù):
基本上 1毫米 約等于 3.78像素
轉(zhuǎn)換還需要知道另一個(gè)參數(shù):DPI(每英寸多少點(diǎn))
象素?cái)?shù) / DPI = 英寸數(shù)
英寸數(shù) * 25.4 = 毫米數(shù)
對于顯示設(shè)備,不管是打印機(jī)還是屏幕,都有一種通用的方法
先用GetDeviceCaps(設(shè)備句柄,LOGPIXELSX)
或者
GetDeviceCaps(設(shè)備句柄,LOGPIXELSY)獲得設(shè)備每英寸的像素?cái)?shù)
分別記為:px 和 py
一英寸等于25.4mm
那么毫米換算成像素的公式為
水平方向的換算: x * px /25.4
垂直方向的換算: y * py /25.4
像素?fù)Q算為毫米 x * 25.4 / px
在程序中這么寫
MyControl.Height := 10{mm} * PixelsPerInch * 10 div 254;
分子和分母同乘以10,將浮點(diǎn)數(shù)運(yùn)算轉(zhuǎn)化為整數(shù)運(yùn)算,效率更高
javascript可以得到的顯示器參數(shù)
screen.
availHeight 獲取系統(tǒng)屏幕的工作區(qū)域高度,排除 Microsoft® Windows® 任務(wù)欄。
availWidth 獲取系統(tǒng)屏幕的工作區(qū)域?qū)挾?,排?nbsp;Windows 任務(wù)欄。
bufferDepth 設(shè)置或獲取用于畫面外位圖緩沖顏色的每像素位數(shù)。
colorDepth 獲取用于目標(biāo)設(shè)置或緩沖區(qū)的顏色每像素位數(shù)。
deviceXDPI 設(shè)置或獲取系統(tǒng)屏幕水平每英寸點(diǎn)數(shù)(DPI)的數(shù)值。
deviceYDPI 設(shè)置或獲取系統(tǒng)屏幕垂直每英寸點(diǎn)數(shù)(DPI)的數(shù)值。
fontSmoothingEnabled 獲取用戶是否在控制面板的顯示設(shè)置中啟用了圓整屏幕字體邊角的選項(xiàng)。
height 獲取屏幕的垂直分辨率。
logicalXDPI 獲取系統(tǒng)屏幕水平每英寸點(diǎn)數(shù)(DPI)的常規(guī)數(shù)值。
logicalYDPI 獲取系統(tǒng)屏幕垂直每英寸點(diǎn)數(shù)(DPI)的常規(guī)數(shù)值。
updateInterval 設(shè)置或獲取屏幕的更新間隔。
width 獲取屏幕的垂直分辨率。
常用的1024x768或800x600等標(biāo)準(zhǔn)的分辨率計(jì)算出來的dpi是一個(gè)常數(shù):96,因此計(jì)算出來的毫米與像素的關(guān)系也約等于一個(gè)常數(shù):
基本上 1毫米 約等于 3.78像素
相關(guān)文章
加載flash9.ocx出現(xiàn)錯(cuò)誤的解決方法
用IE瀏覽網(wǎng)頁時(shí),經(jīng)常會遇到flash9插件加載錯(cuò)誤。如果選擇繼續(xù),則CPU被占用90%以上幾秒后,網(wǎng)頁自動關(guān)閉。如果把flash9.ocx關(guān)掉,不加載的話,flash又看不成。2008-04-04
Windows Vista手動安裝SATA硬盤驅(qū)動全過程
自從Vista的種子在網(wǎng)上剛剛出現(xiàn)的時(shí)候,我就下載了??墒且恢本桶惭b不上,每次安裝時(shí)的第一次重啟都會藍(lán)屏,原來是沒有加載SATA驅(qū)動。2008-05-05
用InstallShield9 進(jìn)行ASP軟件的打包和數(shù)據(jù)庫自動安裝
近期公司用ASP+SQL開發(fā)辦公自動化OA,需要制作安裝程序發(fā)行,此腳本是用IS9.0制作,以此共享,與各同仁交流學(xué)習(xí)2008-12-12

