我有一个文本块,我动态添加字符串..即使我添加字符串宽度和更新文本块文本块没有显示适当的宽度,仍然有一些文字被剪切..
如何测量必须在文本块中显示的宽度?以及如何使其自动调整大小?
您可以使用以下解决方案获取文本的大小:
您可以使用FormattedText来测量文本的大小,这是一个示例:
String text = "Here is my text";
Typeface myTypeface = new Typeface("Helvetica");
FormattedText ft = new FormattedText(text, CultureInfo.CurrentCulture,
FlowDirection.LeftToRight, myTypeface, 16, Brushes.Red);
Size textSize = new Size(ft.Width, ft.Height);
Run Code Online (Sandbox Code Playgroud)
使用Graphics类(在这里找到):
System.Drawing.Font font = new System.Drawing.Font("Calibri", 12, FontStyle.Bold);
Bitmap bitmap = new Bitmap(1, 1);
Graphics g = Graphics.FromImage(bitmap);
SizeF measureString = g.MeasureString(text, font);
Run Code Online (Sandbox Code Playgroud)
这个给你 !