如何确定给定字体的最大像素高度?

4
我需要测量或以某种方式确定给定字体的最大高度。
我还需要确定字体的基线位置。 Graphics.MeasureString函数似乎只能确定特定字符串的边界框(这很有用,但现在不是我所需的)。
具体来说,我只需要字体的垂直大小(以像素为单位)。 但是,它需要垂直容纳所有可能的字符串。
这是否可以通过编程确定?

Font.Height 这样的吗?虽然我不确定这是否是您想要的。如果需要,您可以尝试测量由所有ASCII字符组成的字符串... - Ry-
请不要在标题前加上"C#/GDI+:",这就是标签的作用。 - John Saunders
1个回答

7
您正在寻找字体的 Height 属性,它是“此字体的行间距(以像素为单位)”。基线位置(在下一行文本顶部之上)由字体系列的 GetCellDescent 方法给出,但它以“设计单位”为单位,必须将其转换为像素(这里有如何做到)。MSDN 上有一篇有趣的文章介绍了如何获取字体度量。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接