日期:2014-05-17 浏览次数:20829 次
RectangleF rc = new RectangleF(0, 0, 100, 50);//在大小为100*50的矩形内写文字
string str = "矩形框内的文字,可能有很多,但是矩形很小,怎么办了呢,改变字体大小吧";
Graphics g = this.CreateGraphics();
Font font = this.Font;
while (g.MeasureString(str, font, (int)rc.Width).Height > rc.Height) //计算合适的字体大小
font = new Font(this.Font.Name, (float)(font.Size - 1));
StringFormat format = new StringFormat();
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
g.DrawString(str, font, new SolidBrush(Color.Black),rc, format); ;
g.Dispose();