我这个在几年前玩过周围 - 基本上我在,我是标志着长达强调某些词的数据库中的文本。我在存储过程中标记了它,然后在客户端将其翻译为RTF。
我试着研究RTF规范,但仅仅阅读规范并知道该怎么做有些困难。
我建议弹出打开写字板(开始 - >运行... - >写字板),并与不同的字体样式等。然后将其保存为某个RTF文档。在您选择的纯文本编辑器中打开该文档(我使用Notepad++),这将帮助您更轻松地找出RTF。
这里是我创建了一个简单的RTF文档的例子:
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}}
{\colortbl ;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\f0\fs20 Hello World.\par
\b This text is bold.\b0\par
\i This text is italicized.\i0\par
\cf1 This text is blue.\cf0\par
}
一些这些标签都只是额外的标记,你也许可以做到没有。玩弄它,看看。
最终,你应该能够沿着线做一些事情:
string rtf = GetMarkupTextFromServer();
rtf = rtf.Replace("[b]", @"\b");
rtf = rtf.Replace("[/b]", @"\b0");
rtf = rtf.Replace("[i]", @"\i");
rtf = rtf.Replace("[/i]", @"\i0");
...
mRichTextBox.Rtf = rtf;
不是我所要求的。问题是关于从PHP中保存RTF,并在WinForms中将其显示为RTF。尽管这是一个非常古老的问题。我现在只需保存HTML并将其显示在WebBrowser控件中。 – 2014-10-21 22:31:20