C#单字体字符大小?

Bit*_*lue 5 c# fonts drawstring

这与字符串的大小无关.

我指定了绘制字符串的字体.现在我需要1个字符的精确宽度(以像素为单位).我只允许具有静态字符宽度的字体(W和i在绘制时具有相同的宽度).如果我使用大小为10的"Consolas",我的估计宽度为7.75f.我可以直接以某种方式检索此信息吗?

绘图时我不需要这些信息,但是当我想设置光标位置等时,我不知道光标下面有什么文字.

编辑: MeasureString给我11.99653作为字符宽度.不知道为什么.但我不能使用这个值.我估计7.75f而且非常精确.如果我想改变字体大小,我会遇到麻烦.

Mik*_*oud 3

使用MeasureString方法:

Graphics g = this.CreateGraphics();
g.MeasureString("A", font, 10, StringFormat.GenericTypographic);
Run Code Online (Sandbox Code Playgroud)

其中font是该类的一个实例Font