C# 测量线高度

C# 测量线高度,c#,graphics,printing,system.drawing,C#,Graphics,Printing,System.drawing,我的程序使用PrintPage事件将多行文本绘制到PrintDocument中的框中。宽度已设置,但高度应根据文本的大小而增加 int BoxHeight = (int)e.Graphics.MeasureString(StringToDraw, FontToUse, BoxWidth).Height; 它返回的高度几乎是我大部分时间寻找的高度的两倍,但并不总是如此。e对象是传递给PrintDocument.PrintPage-event的System.Drawing.Printing.Pri

我的程序使用PrintPage事件将多行文本绘制到PrintDocument中的框中。宽度已设置,但高度应根据文本的大小而增加

int BoxHeight = (int)e.Graphics.MeasureString(StringToDraw, FontToUse, BoxWidth).Height;
它返回的高度几乎是我大部分时间寻找的高度的两倍,但并不总是如此。e对象是传递给PrintDocument.PrintPage-event的System.Drawing.Printing.PrintPageEventArgs。我希望这个盒子能紧紧地贴合文本,不会浪费枯树来打印空白


我一直在寻找解决方案,但可能有一些我不明白的地方,因为我无法让它们为我工作。

找到了问题所在。我把盒子的宽度设为它应该的一半。现在效果很好。

oops!我的错。只是注意到我提供了预期箱宽的一半。该代码现在似乎工作得完美无缺。很抱歉。你可以回答自己的问题并将其标记为答案。