屏幕显示DPI研究实验
屏幕HDC用::GetDC(NULL)或是CreateDC("DISPLAY", NULL, NULL, NULL)得到,对以下问题没有区别。
Ⅰ、术语:
>> 分辨率(resolutioin):单位为像素(px),是逻辑参数
>> 尺寸(size):单位为毫米(mm),是物理参数
>> DPI:单位为点/英寸(inch)
>> 换算:1 inch = 25.4 mm
Ⅱ、实验方法:
1、使用GDI中的GetDeviceCaps方法获取屏幕参数、计算
2、使用直尺(不锈钢制)或一张A4打印纸进行测量、计算
Ⅲ、实验条件:
1、屏幕分辨率设为最高分辨率
(XP:“显示属性|设置|屏幕分辨率”
Win7:“屏幕分辨率|分辨率”)
2、DPI设置为正常值
(XP:“显示属性|设置|高级|常规|DPI设置”,选96DPI
Win7:“屏幕分辨率|放大或缩小文本和其它项目”,选100%)
Ⅳ、实验步骤:
1、HORZRES=水平分辨率(记为“分辨率”)
2、HORZSIZE=水平尺寸(记为“尺寸”)
3、(HORZRES / HORZSIZE) * 25.4=计算DPI
4、LOGPIXELSX=逻辑DPI
5、编写一个绘图测试程序,绘制长度为210mm(A4纸宽度)的水平直线,
调整DPI值,使屏幕显示长度与直尺刻度(或A4打印纸宽度)吻合,得出实测DPI
Ⅴ、实验记录:
分辨率(px) 尺寸(mm) 计算DPI 逻辑DPI 实测DPI
惠普15″笔记本 1280 451 72 96 107
戴尔15″笔记本 1366 482 72 96 112
戴尔17″台式机 1366 320 108 96 84.5
Ⅵ、笔记本和台式机显示器对比
1、DPI设置只影响LOGPIXELSX,反之LOGPIXELSX只受DPi设置影响,这一点两者相同
2、修改(降低)分辨率:
笔记本显示器:同时影响HORZRES和HORZSIZE,计算DPI不变(视觉效果是屏幕显示区域缩窄,但像素还是有所增大)
台式机显示器:只影响HORZRES,计算DPI变化(视觉效果是像素增大,屏幕显示区域不变)
共性:不影响LOGPIXELSX,逻辑DPI不变