C# WinForm 获得文字的像素宽度

在动态绘制WinForm界面时,一般会有这种需求。我看到的一些解决方案基本都是写死值计算的。

今天为了解决一个显示的问题稍微查了一下。资料还是比较多的。本文做个简单的收录。

核心代码只有一句

//一般直接使用窗体的字体对象
Font f = new Font("SimSun", 7F, System.Drawing.FontStyle.Regular);
Size size = TextRenderer.MeasureText("Test测试文字", f);
size.Width; //得到字的宽度 已经是像素值

参考:https://www.cnblogs.com/swtool/p/5425169.html