Другой способ сделать это - с помощью TextRenderer
и вызвать его MeasureString
метод, передав строку и тип шрифта.
MSDN Пример:
private void MeasureText1(PaintEventArgs e)
{
String text1 = "Measure this text";
Font arialBold = new Font("Arial", 12.0F);
Size textSize = TextRenderer.MeasureText(text1, arialBold);
TextRenderer.DrawText(e.Graphics, text1, arialBold,
new Rectangle(new Point(10, 10), textSize), Color.Red);
}
ПРИМЕЧАНИЕ: Это просто альтернативное решение (в равной степени действительное), уже опубликованное @Neil Barnwell
(если в вашем проекте уже есть ссылка на System.Windows.Forms, это может быть более удобно).