text: public static FontDetails Create(String fontName, Properties fontMetricsProps){String heightStr = fontMetricsProps[BuildFontHeightProperty(fontName)];String widthsStr = fontMetricsProps[BuildFontWidthsProperty(fontName)];String CharsStr = fontMetricsProps[BuildFontCharsProperty(fontName)];if (heightStr == null || widthsStr == null || CharsStr == null){throw new ArgumentException("The supplied FontMetrics doesn't know about the font '" + fontName + "', so we can't use it. Please Add it to your font metrics file (see StaticFontMetrics.GetFontDetails");}int height = int.Parse(heightStr, CultureInfo.InvariantCulture);FontDetails d = new FontDetails(fontName, height);String[] CharsStrArray = Split(CharsStr, ",", -1);String[] widthsStrArray = Split(widthsStr, ",", -1);if (CharsStrArray.Length != widthsStrArray.Length)throw new Exception("Number of Chars does not number of widths for font " + fontName);for (int i = 0; i < widthsStrArray.Length; i++){if (CharsStrArray[i].Trim().Length != 0)d.AddChar(CharsStrArray[i].Trim()[0], int.Parse(widthsStrArray[i], CultureInfo.InvariantCulture));}return d;}