如何确定给定字体的最大高度(以像素为单位)?

Joh*_*zen 4 c# gdi+ winforms

我需要测量或以某种方式确定给定字体的最大高度.

我还需要确定字体的基线在哪里.

Graphics.MeasureString函数似乎只确定特定字符串的边界框(这很有用,但不是我现在需要的).

具体来说,我只寻找字体的垂直大小(以像素为单位).但是,它需要垂直容纳所有可能的字符串.

这是否可以以编程方式确定?

kol*_*kol 7

您正在寻找字体的高度属性,即"此字体的行间距(以像素为单位)".基线的位置(在下一行文本的顶部上方)由字体系列的GetCellDescent方法给出,但它是"设计单位",必须转换为像素(这里是如何).MSDN上有一篇关于获取字体指标的有趣文章.