我在打印页面上输出文本并使用 drawstring 将文本绘制在一个矩形中,以便使用以下调用自动换行:
ev.Graphics.DrawString(textToOutput, printFont, myBrush, New RectangleF(leftMargin, yPosition, pagewidth - leftMargin - rightmargin, 400))
这很好用。我想确定的是调用 drawscreen 后 Y 的位置(换句话说,文本被包裹在矩形中后的高度是多少)。我正在尝试从数据库打印可变长度的字符串,它们经常会超过页面宽度。我需要知道下一段的垂直开始位置。
最佳答案
您可以使用 Graphics.MeasureString也许this overload of it .来自 MSDN 的部分示例:
Dim stringSize As New SizeF
stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth)
您计算出的高度将存储在 SizeF.Height 中.
关于vb.net - 如何确定以矩形绘制的文本的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15043338/