为什么大小为8的.NET中的字体显示为8.25?

时间:2009-02-13 17:30:54

标签: .net fonts font-size

例如,当您在Microsoft Sans Serif的字体对话框中选择大小为8时,它会返回.NET显示为大小为8.25的字体?

这究竟是为什么?

2 个答案:

答案 0 :(得分:32)

一个点是1/72英寸,所以字体应该是8/72(0.111111)英寸高。 Windows假定标准显示为96 DPI,除非您不小心配置它。这意味着它试图创建一个高10.66667像素的字体;它舍入到11像素。当你将它转换回点((11/96)* 72)时,它变为8.25。

答案 1 :(得分:2)

这很可能是由于Windows字体映射器计算字体大小的方式。字体单元的像素高度与正常的“点”@ 1/72英寸之间存在细微差别。

此处有更多信息:http://msdn.microsoft.com/en-us/library/ms969909.aspx