GetDeviceCaps函数计算结果不对

zzzzzzzzz04 2011-09-02 12:58:42
GetDeviceCaps(GetDC(0), HORZSIZE)取得电脑屏幕宽度是32cm,
而我的笔记本是14寸,16:9的,46.6*0.8=37.28cm
这中间的5.28cm跑哪里去了,求解~~
...全文
190 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzzzzzzzz04 2011-09-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ljmanage 的回复:]

算出来是对的,14英寸=14×2.54=35.56cm
sqrt(16*16+9*9)=18.36
(35.56/18.36)*16=30.99
水平的30.99cm相差1cm那是对角线不是标准的14英寸,少一点点
[/Quote]

谢谢你的回答,是我把英寸尺寸搞错了,不过还有个疑问。

已知:
1mm=2.835磅,Excel的高度是以磅来计算的,我电脑高度的分辨率是768px,笔记本高度用GetDeviceCaps算出来时179mm
我拖了一个单元格。如图:

高度是186磅,186/2.835*(768/179)=281px ,跟图里面的248px相差这么打,是什么原因???
李_军 2011-09-02
  • 打赏
  • 举报
回复
算出来是对的,14英寸=14×2.54=35.56cm
sqrt(16*16+9*9)=18.36
(35.56/18.36)*16=30.99
水平的30.99cm相差1cm那是对角线不是标准的14英寸,少一点点

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧