像素和毫米转换
转换还需要知道另一个参数,dpi (每英寸多少点)
像素数/DPI=英寸数
英寸数* 25.4=毫米数
无论是打印机还是屏幕,显示设备都有共同的方法
首先使用GetDeviceCaps (设备句柄,LOGPIXELSX )
或者
获取GetDeviceCaps (设备句柄,LOGPIXELSY )设备的每英寸像素数
分别记为px和py
1英寸是25.4mm毫米
将毫米换算成像素的公式如下
水平换算: x * px /25.4
垂直换算: y * py /25.4
以像素换算为毫米x * 25.4/px
在程序上这样写
my control.height :=10 { mm } * pixelsperinch * 10 div 254;
将分子和分母乘以10,将浮点运算转换为整数运算更有效率
javascript可以获得的显示参数
绿色。
availHeight获取系统屏幕工作区的高度,排除Microsoft Windows任务栏。
availWidth获取系统屏幕工作区的宽度,并排除Windows任务栏。
bufferDepth设置或获取用于屏幕外位图缓冲区颜色的每像素位数。
colorDepth获取用于目标设置或缓冲区的颜色的每像素位数。
设置或获取deviceXDPI系统屏幕中水平每英寸点数(DPI )的数值。
设置或获取deviceYDPI系统屏幕中每垂直英寸点数(DPI )的数值。
fontSmoothingEnabled获取用户是否在“控制”面板的显示设置中启用了倒圆角屏幕字体的选项。
height获取画面的垂直分辨率。
logicalXDPI获取系统屏幕上水平每英寸点数(DPI )的一般数值。
logicalYDPI获取系统屏幕上每垂直英寸点数(DPI )的一般数值。
设置或获取updateInterval画面的更新间隔。
width获取画面的垂直分辨率。
由于常用的1024x768和800x600等标准分辨率计算的dpi为常数: 96,因此计算的毫米和像素之间的关系也与常数大致相同。
基本上1mm约等于3.78像素