我没有接触过GDI,麻烦大家给我看看.下面是我从另外一帖得到的代码,用途是获取字体的宽度.我把它用在asp.net网页上时得到的宽度总是大于我用脚本scrollWidth取得的宽度,尤其是汉字特别明显.比scrollWidth取得宽度多10%左右private SizeF MeasureStringSizeF(Graphics grOff, string str,Font font)
  {
  if (String.IsNullOrEmpty(str))
  return new SizeF(0, 0);
  if (str == " ")
  str = "1";
  SizeF sizeF = grOff.MeasureString(str, font);
  RectangleF layoutRect = new RectangleF(0, 0, sizeF.Width, sizeF.Height);
  StringFormat stringFormat = new StringFormat();
  CharacterRange[] characterRanges = { new CharacterRange(0, str.Length) };
  stringFormat.SetMeasurableCharacterRanges(characterRanges);
  Region[] stringRegions = grOff.MeasureCharacterRanges(str, font, layoutRect, stringFormat);
  RectangleF measureRect = stringRegions[0].GetBounds(grOff);
  return new SizeF(measureRect.Width, measureRect.Height);
  }