我正在寻找一种发送预先格式化的电子邮件模板(粗体和彩色字体)的方法。我不想使用 html(因为模板是自动生成的,html 看起来很糟糕)。所以我将模板生成为 rtf 并尝试通过以下方式将其嵌入到电子邮件中
Content-Type: text/rtf
Content-Disposition: inline
Content-Type: text/richtext
Content-Disposition: inline
但这会导致RTF代码显示为普通文本或附加到邮件中。
RTF MIME 类型
对于 RTF 模板,匹配的 MIME 类型是 text/rtf 或 application/rtf(而不是 image/rtf).
http://en.wikipedia.org/wiki/Rich_Text_Format
旁注:以"/rtf"和"/richtext"结尾的MIME类型适用于两种不同的不相关格式。 在上面链接的RTF文章中,维基百科提到富文本是一种称为富文本的格式的前身 - 但两者都与RTF规范无关。
值得一试...
您提到电子邮件客户端将 RTF 显示为附件或原始文本 - 这表明不支持 RTF,但如果您使用 Outlook,则可能值得将内容类型更改为文本/rtf,以查看这是否触发邮件客户端中的 RTF 显示。
Microsoft Outlook 支持 RTF,但每当将电子邮件发送给组织外部的收件人时,它都会自动将 RTF 转换为 HTML - Microsoft建议改用默认的 HTML 格式:http://office.microsoft.com/en-us/outlook-help/change-the-message-format-to-html-rich-text-or-plain-text-HP001232996.aspx
如果您的模板仅供专门使用 Outlook 的组织内部使用,则可以使用 RTF,但电子邮件通常不支持 RTF。
.HTML
虽然您并不真正想使用 HTML,但这是电子邮件客户端倾向于支持的格式,尤其是 Web 邮件客户端,因为它们通过 Web 浏览器免费获得 HTML 呈现支持。 如果您决定采用 HTML 路线,请注意电子邮件客户端不支持整个 HTML 规范 - 简单的文本格式(如粗体和彩色字体)是可以的。