抽绳自动换行或显示整个文本

Sha*_*500 11 c# winforms c#-3.0

这是我使用DrawString时得到的输出.

I = Smith,John II = Johnson,Mark III = Anderson,James IV = William,Craig V = Ford,他...

page是一个float数据类型,该值基于e.PageSettings.Margins.Left;

e.Graphics.DrawString(Text,new System.Drawing.Font("Arial",8F,FontStyle.Regular),Brushes.Black,page,30);

在上面的例子中,它是

e.Graphics.DrawString(Text, new System.Drawing.Font("Arial", 8F, FontStyle.Regular), Brushes.Black, page, 30);
Run Code Online (Sandbox Code Playgroud)

我试过用这个

StringFormat format = new StringFormat();            
format.FormatFlags = StringFormatFlags.FitBlackBox;

 e.Graphics.DrawString(Text, new System.Drawing.Font("Arial", 8F, FontStyle.Regular), Brushes.Black, page, 30, format);
Run Code Online (Sandbox Code Playgroud)

我如何扩展/自动换行,以便我可以在最后使用整个单词而不是"..."?

I = Smith,John II = Johnson,Mark III = Anderson,James IV = William,Craig V = Ford,Henry

Sor*_*ean 24

您可以使用边界矩形"自动换行"文本.

使用Graphics.DrawString方法(String,Font,Brush,RectangleF,StringFormat)

RectangleF指定绘制区域,它将自动为您"包装"文本.

  • 800像素宽?我假设你的窗口宽度至少为900像素?它也只有20像素高,我怀疑文本甚至会"包裹"那个高度. (2认同)
  • 是否有可能:使用边界圆“自动换行”文本? (2认同)