像素仅仅只是分辨率的尺寸单位,而不是画质。从定义上来看,像素是指基本原色素及其灰度的基本编码。 像素是构成数码影像的基本单元,通常以像素每英寸PPI(pixels per inch)为单位来表示影像分辨率的大小。
毫米,又称公厘(或公釐),是长度单位和降雨量单位,英文缩写mm。10毫米相当于1厘米,100毫米相当于1分米,1000毫米相当于1米(此即为毫的字义)。
厘米是一个长度计量单位,等于一米的百分之一。长度单位,英语符号即缩写为:cm.,1厘米=1/100米。1cm(厘米)=10mm(毫米)=0.1dm(分米)=0.01m(米)
1毫米大约是3.77像素 ;1英寸大约是2.54厘米 ;1英寸大约是96像素
像素与毫米的转换
转换还需要知道另一个参数:dpi(每英寸多少点)
象素数
/
dpi
=
英寸数
英寸数
*
25.4
=
毫米数
对于显示设备,不管是打印机还是屏幕,都有一种通用的方法
先用getdevicecaps(设备句柄,logpixelsx)
或者
getdevicecaps(设备句柄,logpixelsy)获得设备每英寸的像素数
分别记为:px
和
py
一英寸等于25.4mm
那么毫米换算成像素的公式为
水平方向的换算:
x
*
px
/25.4
垂直方向的换算:
y
*
py
/25.4
像素换算为毫米
x
*
25.4
/
px
在程序中这么写
mycontrol.height
:=
10{mm}
*
pixelsperinch
*
10
div
254;
分子和分母同乘以10,将浮点数运算转化为整数运算,效率更高
1 像素 = 1/96 英寸
1 英寸 = 25.4毫米
你自己再进一步换算吧!
一、分辨率影响换算结果
1、认识分辨率
屏幕分辨率是指的每英寸长度内所包含的像素数,比如分辨率大小是1024*800,也就是说,在水平方向上每英寸包含有1024个像素,在垂直方向上每英寸包含800个像素。
2、认识英寸
英寸是和我们熟悉的厘米、毫米相同的长度单位。并且1英寸=2.54cm=25.4mm。
3、毫米与像素的关系
对分辨率的认识可知,不同分辨率的设备,1英寸所包含的像素数是不同的。在确定分辨率的设备上,1英寸所包含的像素数也是不同的,并且分为水平方向上和垂直方向上。
故而可知,不同的分辨率情况下,毫米与像素之间的换算结果一定是不同的。
二、举例换算
假设屏幕分辨率为800*600,则:
(1)在水平方向上,每英寸包含有800个像素,即1英寸=800px。
(2)在垂直方向上,每英寸包含有600个像素,即1英寸=600px。
进而可知:
(1)在水平方向上,此等式成立:25.4mm=1英寸=800px
(2)在垂直方向上,此等式成立:25.4mm=1英寸=600px
进而可知:
(1)在水平方向上,25.4mm=800px
(2)在垂直方向上,25.4mm=600px
最终可得:
(1)在水平方向上:
1mm=31.49606299px
1px=0.03175mm
(2)在垂直方向上:
1mm=23.62204724px
1px=0.042333333mm