像素和毫米怎么换算

像素和毫米怎么换算


像素和毫米是不能直接转换的,只有在分辩率(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

在程序中这么写
MyControl.Height = 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

参考文献:https://www.jb51.net/article/13238.htm

【不要轻言放弃,否则对不起自己!】

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值