我正在打印页面上输出文字,并使用抽绳在矩形中绘制文本,以便使用以下调用进行自动换行:
ev.Graphics.DrawString(textToOutput, printFont, myBrush, New RectangleF(leftMargin, yPosition, pagewidth - leftMargin - rightmargin, 400))
这很好用。我想要确定的是在绘制屏幕调用之后Y位置是什么(换句话说,文本在包裹在矩形中之后的高度是多少)。我试图从数据库中打印可变长度字符串,它们将经常超过页面宽度。我需要知道下一段的垂直开始位置。
答案 0 :(得分:3)
您可以使用Graphics.MeasureString和this overload of it。来自MSDN的部分示例:
Dim stringSize As New SizeF
stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth)
您计算的身高将存储在SizeF.Height。