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

标签 c# string graphics fonts measure

我正在尝试用 C# 编写文本,以使其跨越所需的宽度(大约)。

要写入文本,您需要指定高度。所以我需要知道什么高度可以让它写入所需的长度。

Font myFont = new Font(FontFamily.GenericSansSerif, unknown);   
gc.DrawString(LabelText, myFont, gBrush, 0, 0);

我找到了以下内容,但它需要 FONT,这需要高度。哪个打败了整点?

gc.MeasureString(LabelText, new Font(FontFamily.GenericSansSerif, 12), length);

我如何确定所需的高度,例如“我是一个字符串”拉伸(stretch) 50 像素。

最佳答案

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

关于C#计算给定宽度的字符串的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10382602/

相关文章:

c# - 使用 Moq 的单元测试未通过,对象为空,我错过了什么吗?

javascript - oop 行为类似于构造函数参数类型的类

c++ - make 文件抛出以下两个错误

c++ - 从也包含字符串的 .txt 文件中读取整数和 double

c - 通过视频播放进行图形编程

java - 我在哪里放置java程序输入的图像?

c# - 自定义 membershiprovider 验证成功但无法获取 User()

c# - SQL 2005 MD5 哈希和 C# MD5 哈希

c# - 我应该如何在不重复测试的情况下测试将其大部分行为委托(delegate)给同一类中的另一个方法的方法?

javascript - WebGL 中的索引缓冲区?