我想减小段落的字体大小以适应RichTextBox宽度,以防止在用户键入某些文本时进行文本换行。我怎么能这样做?
答案 0 :(得分:0)
一种方法是获取段落开头和结尾的起始行位置并进行比较:
TextPointer contentStart = _richTextBox.Document.ContentStart;
TextPointer contentEnd = _richTextBox.Document.ContentEnd;
while (true)
{
var tpStart = contentStart.GetLineStartPosition(0);
var tpEnd = contentEnd.GetLineStartPosition(0);
var offset = tpStart.GetOffsetToPosition(tpEnd);
if (offset != 0)
{
_richTextBox.FontSize -= 1; // at least two lines
}
else
{
break; // one line
}
}