.net - 获取任何给定字符的像素宽度

标签 .net wpf winforms graphics fonts

我有一个非常棒的主意,但无法确定 .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/

相关文章:

java - C# 上的 OpenNLP NameFinder 培训

C#:按下 Enter 键时更改 DropDownList 值

winforms - 使用 powershell 安装时显示自定义消息

.net - 如何学习ILGenerator编程?

javascript - 加密 (cryptojs) - 解密 (.NET)

c# - 如何确保文件从我的工作目录复制到 bin/Debug rsp。垃圾桶/释放?

c# - 在wpf后面创建控件异步代码

c# - .Net 如何在 Webbrowser 中获取被点击元素的 ID

.net - 使用 ASP.NET 和 WCF 跨层传递用户身份

c# - 在列表框内添加一个动态文本框