C#用给定的宽度计算字符串的高度

Doo*_*ght 5 c# string graphics fonts measure

我试图用C#写文本,以便它跨越所需的宽度(大约).

要编写文本,您需要指定高度.所以我需要知道它会写入所需长度的高度.

Font myFont = new Font(FontFamily.GenericSansSerif, unknown);   
gc.DrawString(LabelText, myFont, gBrush, 0, 0);
Run Code Online (Sandbox Code Playgroud)

我发现了以下内容,但它需要FONT,这需要高度.哪个失败了整点?

gc.MeasureString(LabelText, new Font(FontFamily.GenericSansSerif, 12), length);
Run Code Online (Sandbox Code Playgroud)

我如何确定所需的高度,例如"我是一个字符串"拉伸50px.

Joh*_*ner 4

switchonthecode网站上有一个示例(注意 - 存档版本)。他们提供了一种方法,可以根据区域的大小确定最小和最大字体大小。它会尝试最小尺寸,然后确定字体的比例,然后确定最适合您的尺寸。