Man*_*noj 5 c# wpf richtextbox flowdocument
我正在尝试获取在富文本框中键入的所有字符的字符 rect。从 MyRichTextBox.Document.ContentStart 文本指针开始,我使用以下代码推进每个字符
currentPointer = currentPointer.GetNextInsertionPosition(LogicalDirection.Forward)
Run Code Online (Sandbox Code Playgroud)
并使用以下代码检索“字符”矩形
currentPointer.GetCharacterRect(LogicalDirection.Forward)
Run Code Online (Sandbox Code Playgroud)
但看起来,对于从上面的代码段返回的任何文本指针,矩形的宽度始终为 0。现在我可以根据前一个字符 rect 和当前字符 rect 之间的区域计算字符 rect,但这会导致出现自动换行时的问题。
有什么方法可以从富文本框的 GetCharacterRect() 函数中获得非零宽度?
编辑
来自微软这里的内容显示了相同的内容。有人知道测量字符 rect 的替代方法吗?
GetCharacterRect只是返回一个代表相关字符前缘的矩形(即,零宽度,但准确的高度和位置) - 而不是“包装矩形”...尽管如果这就是您所追求的,您可以抓住前导两个连续字符的边缘并进行数学计算。
| 归档时间: |
|
| 查看次数: |
1214 次 |
| 最近记录: |