您的位置:首页 > 其它

文字输出尺寸测量方法, MeasureString不准确的问题

2016-02-18 09:57 337 查看
//如下测量方法,结果相当准确

public static Size String_CalculateSize(Control control , string text , Font font )

{

    Size textSize = Size.Empty;

    using (Graphics g = control.CreateGraphics())

    {

        StringFormat sf = StringFormat.GenericTypographic;

        sf.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;

        SizeF textSize_F = g.MeasureString(text, font, PointF.Empty, sf);

        textSize = new Size((int)Math.Ceiling(textSize_F.Width), (int)Math.Ceiling(textSize_F.Height));

    }

    return textSize;

}

//要用如下相应的方法输出喔

public static void String_Draw(Graphics g , string text,Font font,Brush brush,RectangleF rectF)

{

    StringFormat sf = StringFormat.GenericTypographic;

    sf.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;

    g.DrawString(text, font, brush, rectF, sf);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: