gpt4 book ai didi

c# - 如何将 LOGFONT.lfHeight 转换为像素?

转载 作者:行者123 更新时间:2023-11-30 21:25:42 26 4
gpt4 key购买 nike

我的 LOGFONT.lfHeight 值为 -11。但是,我知道字体大小实际上是 8,所以我需要将这个数字转换为不同的度量单位吗?我在 MSDN 文档中找到了这个公式:

int height = abs((pixels * DOTSY) / 72);

这会获取像素并将其变成 LOGFONT 可以使用的高度值。如果我以另一种方式工作:

int pixels = abs((height / DOTSY) * 72);

这给了我 8.24 的值。我假设这就是将字体高度转换为可用值所需要做的一切,我是否正确?

最佳答案

是的。 DOTSY 将为 96,这是 Windows 中 DPI 的默认显示器分辨率。您将需要确保此值对于您正在写入的设备是正确的 - 打印机通常具有更高的分辨率,并且可以更改显示器分辨率。 lfHeight 为负值表示字体映射器应该使用字符高度而不是单元格高度来匹配,所以这里只有绝对值很重要。

关于c# - 如何将 LOGFONT.lfHeight 转换为像素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/480320/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com