私は数年前にこれをいじってみました-基本的に私は特定の単語を強調するためにマークアップしていたデータベースにテキストを持っていました。ストアドプロシージャでマークアップし、クライアント側で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;