为了账号安全,请及时绑定邮箱和手机立即绑定

将像素转换为点

将像素转换为点

慕哥6287543 2019-10-25 10:24:10
我需要将像素转换为C#中的点。我已经看到了有关该主题的一些复杂解释,但似乎找不到简单的公式。让我们假设一个标准的96dpi,如何计算此转换?
查看完整描述

3 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

如果您的代码采用以下形式,请尝试以下操作:


Graphics g = this.CreateGraphics();

points = pixels * 72 / g.DpiX;

g.Dispose();


查看完整回答
反对 回复 2019-10-25
?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

从给定的开始:


一英寸有72个点(即一个点是1/72英寸)

在设置为150dpi的系统上,每英寸有150个像素。

1 in = 72pt = 150px(用于150dpi设置)

如果要基于像素(px)查找点(pt):


 72 pt    x pt

------ = -----                  (1) for 150dpi system

150 px    y px

重新排列:


x = (y/150) * 72                (2) for 150dpi system

所以:


points = (pixels / 150) * 72    (3) for 150dpi system


查看完整回答
反对 回复 2019-10-25
  • 3 回答
  • 0 关注
  • 763 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信