如何计算渲染以指定宽度包装的文本所需的高度?
我在Graphics
graphicsObj.MeasureString(text, font, width);
但它需要一个Graphics
的实例,当时我还没有图形实例。事实上,我更喜欢静态方法来找到高度。 TextRenderer.MeasureText(..)
可以是一个选项,但它缺少建议宽度的参数。
答案 0 :(得分:6)
过载&你需要的标志是:
var size = TextRenderer.MeasureText(text, font, new Size(width, height), TextFormatFlags.WordBreak);
为了准确起见,您应该尝试使用其中一个接受设备上下文的重载。
答案 1 :(得分:0)
var size = TextRenderer.MeasureText(FieldValue, InvoiceFont, new Size(105, 16), TextFormatFlags.WordBreak);
RectangleF rectF1 = new RectangleF(xProductName, CurrentY, size.Width, size.Height);
g.DrawString(FieldValue, InvoiceFont, Brushes.Black, rectF1);