代码之家  ›  专栏  ›  技术社区  ›  Fredou

如何将文本转换为RTF,以便发送电子邮件?

  •  2
  • Fredou  · 技术社区  · 15 年前

    因为我需要通过代码发送电子邮件,所以我目前使用的是计划文本,但是由于默认情况下,Outlook会删除多余的行分隔符,这会破坏我的格式设置,我不想这样做,所以我尝试将文本放入HTML,但现在电子邮件被标记为垃圾邮件。

    我最后的选择是将文本移动到RTF,但现在我的问题是。

    将文本移动到RTF中最简单的方法是什么?

    没有用户界面。

    电子邮件不包含复杂的内容,只包含文本和一些额外的行,这是我当前关于纯文本和默认设置的问题。

    不,我不能更改Outlook的默认设置。

    3 回复  |  直到 9 年前
        1
  •  4
  •   J. Random Coder    15 年前

    您需要添加对system.windows.forms的引用,然后使用richtextbox:

    string text = "your text here";
    string rtfText = string.Empty;
    using(RichTextBox rtf = new RichTextBox()) {
        rtf.Text = text;
        rtfText = rtf.Rtf;
    }
    
        2
  •  2
  •   Liudvikas Bukys    15 年前

    如果您不想让Outlook处理它,请使用mime类型的“application/binary”。 你再也看不到预览窗格中的代码了——这对你很重要吗?

        3
  •  0
  •   Kirk Woll    13 年前

    非常好的UR代码,用于vb.net时,我更改了一些行:

    Dim text As String = dr.Item("Descripcion")
    Dim rtfText As String = String.Empty
    Dim rtf As New RichTextBox
    rtf.Text = Text
    rtfText = rtf.Rtf
    Me.RichTextBox1.Rtf = rtfText
    

    我希望这个有用