3

次のような RichTextBox に rtf ドキュメントをロードしようとしています。

private void LoadTextDocument(string fileName)
{
    Rtb.Document.Blocks.Clear();
    TextRange range;
    System.IO.FileStream fStream;
    if (System.IO.File.Exists(fileName))
    {
        range = new TextRange(Rtb.Document.ContentStart, Rtb.Document.ContentEnd);
        fStream = new System.IO.FileStream(fileName, System.IO.FileMode.Open);
        range.Load(fStream, System.Windows.DataFormats.Rtf);
        fStream.Close();
    }
}

しかし、ドキュメントに含まれる数式が必要以上に高い

スクリーンショット:

4

1 に答える 1

1

問題は、.NET RTF ボックスが、OpenOffice、Word、またはその他のエディターを使用して作成された RTF ファイルとほぼ 100% 互換性がないことです。ですから、この作業はそれほど簡単ではなく、可能でもありません。RichTextBox を使用して、別の問題 (Word で作成されたより複雑な RTF のテキストを置き換える) の解決策を見つけるのに何日も費やしました。

最後に、私は正規表現ソリューションを使用し、RTB を使用せずにファイル内のテキストを直接置き換えました。

于 2013-11-19T18:15:33.427 に答える