作者littleshan (我要加入剑道社!)
看板C_and_CPP
标题Re: [问题] 请问如何知道萤幕实际上的物理尺寸呢?
时间Thu Jul 16 11:37:03 2009
※ 引述《fasut ()》之铭言:
: 在网路上google不太大, 都只找到是resolution的function
: 或是是resolution搭配dpi来推算出 (但这不准)
: 所以想来这边问一下大家, 该如何知道是几寸的萤幕呢?
: 有什麽function可以用吗,
: 平台是windows下以及linux下
: 谢啦谢啦
最准的应该是看显示器的 EDID 资讯
Windows 底下似乎会放在 registry 中
在 \HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00X\Enum\DISPLAY 底下
会有许多显示器的记录
点到最里面的 Device Parameters 内有个 EDID 的 binary data
然後依照 EDID 的资料结构解开
应该就可以得到显示器的大小了
至於 Linux 可以参考 read-edid
http://www.polypux.org/projects/read-edid/
它有 source code 可以让你看到在 Linux 下怎麽读取 EDID
最後抱怨一下
Windows 不使用 EDID 来设定正确的 DPI
甚至还在设定 DPI 的地方说「如果萤幕上的项目太小,可以改变 DPI 来弥补」
真的是非常糟糕的观念
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.87.151.2
1F:推 fasut:谢了,我试试看 07/22 15:12