使用RichEditDocumentServer将rtf更改为文本

时间:2017-02-06 19:09:38

标签: c#

我正在尝试将RTF转换为c#程序中的纯文本。我想出了怎么做,但它不是很干净。它使用RichTextBox,我不是它的忠实粉丝:

using (System.Windows.Forms.RichTextBox rtfBox = new System.Windows.Forms.RichTextBox())
{
     rtfBox.Rtf = cTrans.NoteDescription;
     tItem.ProcedureShortDescription = rtfBox.Text;
}

我想知道是否有更好的方法来实现这一目标。也许使用RichEditDocumentServer?虽然我找不到大量的信息,但我想知道我能不能得到一些帮助。我的想法是:

var documentServer = new RichEditDocumentServer();
documentServer.Document.RtfText = cTrans.NoteDescription;
tItem.ProcedureShortDescription = documentServer.Document.Text;

我做了更多的挖掘,这很有效。我想我只是发布这个,因为我无法在网站的任何地方看到它的回答。我不确定这是否是正确的协议。

1 个答案:

答案 0 :(得分:0)

我最终把它放在一个帮助器类中,因此可以再次调用它来调用它:

namespace ABELSoft.Dental.Interface.Helper
{
    public class RtfToText
    {
        public static string convert(string rtfText)
        {
            string _text;
            var documentServer = new RichEditDocumentServer();
            documentServer.Document.RtfText = rtfText;
            _text = documentServer.Document.Text;
            return _text;
        }
    }
}

这就是我所说的:

tItem.ProcedureShortDescription = RtfToText.convert(cTrans.NoteDescription);