众所周知,从RichTextBox / FlowDocument创建RTF非常简单:
[...]
someTextRange.Save(stream, DataFormats.Rtf);
[...]
但是,在超链接目标中使用特殊字符时,这些字符会被一些(xml编码的?)字符替换,这些字符会在以后使用rtf时导致链接断开。 甚至无法转换回rtf(通过TextRange.Load使用众所周知的方法),因为URI创建失败。
奇怪的是,如果在普通文本或超链接显示文本中使用这些特殊字符,则不会替换它们。只替换URI本身中的字符。
示例:
链接目标
www.test.com/this&that(< / p>
转换为(不含空格)
www.test.com/this& amp;那
有什么想法吗?
提前致谢,
的Henning