我有一个非常棒的主意,但无法确定 .NET Framework(任何版本,最好是 3.5 或 4.0)中是否有任何类允许您传入一个字符,并返回该字符的宽度(以像素为单位),无论使用哪种字体、字体大小或字体装饰。有人可以指出我正确的方向吗?对于这样的事情,甚至存在类/东西吗?
最佳答案
查看 Graphics.MeasureString方法。
改编自链接的代码示例:
SizeF charSize = e.Graphics.MeasureString("X", new Font("Arial", 16));
// do stuff with charSize ...
上面的示例假设您位于 Paint 事件处理程序的函数体中,并且已经为您创建了 Graphics 对象并作为事件参数传入。如果您不想或不能在 Paint 处理程序中执行此操作,您可以在方便时使用 Control.CreateGraphics 创建图形对象。 .
关于.net - 获取任何给定字符的像素宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5590083/