我有一个使用RichTextBox控件的WPF应用。当我打字时,我不理解它似乎生成的RTF结构。
我输入一个简单的短语(例如大约3英里),结果是:
{\ RTF1 \ ANSI \ ansicpg1252 \ UC1 \ htmautsp \ deff2 {\ fonttbl {\ F0 \ fcharset0 Times New Roman;} {\ f2 \ fcharset0 Segoe UI;}} {\ colortbl \ red0 \ green0 \ blue0; \ red255 \ green255 \ blue255;} \湖\ HICH \ DBCH \ PARD \平原\ ltrpar \ itap0 {\ lang1033 \ FS18 \ F2 \ CF0 \ cf0 \ ql {\ fs24 \ f2 {\ highlight1 \ ltrch 约 3 } {\ highlight1 \ ltrch 里程} {\ highlight1 \ ltrch} {\ highlight1 \ ltrch 少} \ li0 \ ri0 \ sa0 \ sb0 \ fi0 \ ql \ par}}}
我在这里看到的是,3个单词(大约3英里)单独出现(好吧,'关于'和' 3'一起出现,但是'英里'没有。)
但是其他时候(我不确定是不是因为我之后键入了空格),这3个单词一起出现。
你能解释一下吗?
答案 0 :(得分:2)
控件通过重复不同单词的格式化信息来创建不必要的长RTF,即使单词具有相同的格式。除非您尝试修改RTF,否则您不必担心这一点,因为任何合法的RTF阅读器都会处理它。是的,它是次优的,因为重复格式化控件是多余的,但它是有效的RTF。