我需要根据指定的字体创建字符位图。当他们指定字体时,他们正在指定:
- 字体(例如 Microsoft Sans Serif)
- 字体样式(例如粗体)
- 大小(例如 14)
- 效果(例如剔除)
- 脚本(例如西方)
知道了这一点,如果我知道字符和上面的所有信息,是否可以准确地确定字符的大小?我必须将它们绘制到与角色大小相同且不更大的位图上。
谢谢!我在 VB.net 中做这一切,所以所有 .net 示例都是可以接受的。
我需要根据指定的字体创建字符位图。当他们指定字体时,他们正在指定:
知道了这一点,如果我知道字符和上面的所有信息,是否可以准确地确定字符的大小?我必须将它们绘制到与角色大小相同且不更大的位图上。
谢谢!我在 VB.net 中做这一切,所以所有 .net 示例都是可以接受的。
您需要使用Graphics.MeasureString()方法。为表单(或其他图形输出对象)和字体创建图形对象,并使用它们来测量文本。
Public Sub Form1_Shown(sender As Object, e As EventArgs) Handles Me.Shown
Using _
graphics As Graphics = Me.CreateGraphics, _
font As New Font("Microsoft Sans Serif", 14, FontStyle.Bold Or FontStyle.Strikeout)
Dim text As String = "How big am I?"
Dim size As SizeF = graphics.MeasureString(text, font)
MessageBox.Show(size.ToString)
End Using
End Sub