private void MeasureChars(Font font, Graphics charGraphics)
{
var allChars = new char[NumChars];
for (var i = (char) 0; i < NumChars; ++i)
{
allChars[i] = (char) (StartChar + i);
}
SizeF size;
size = charGraphics.MeasureString(new String(allChars), font, new PointF(0, 0), StringFormat.GenericDefault);
_charHeight = (int) (size.Height + 0.5f);
var numRows = (int) (size.Width / _texWidth) + 1;
_texHeight = (numRows * _charHeight) + 1;
var sf = StringFormat.GenericDefault;
sf.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;
size = charGraphics.MeasureString(" ", font, 0, sf);
_spaceWidth = (int) (size.Width + 0.5f);
}