[英]Trying to save Outlook MailItem as an HTML formatted MSG but it opens as plain text
[英]Plain text to HTML conversion in Outlook email
当我将纯文本 email显示为 C 锐利的虚拟纯文本时,我面临保留纯文本格式的情况。 这是在使用 VSTO 接收 Outlook 2007 期间完成的。 下面的代码没有完成这项工作,而是将正文转换为 Times New Roman;Font Size 10 并将其显示给用户。
string Text = "<html><body><p style=\"font-family:consolas;font-size:88%;\">" + mailItem.Body+ "</p></body></html>";
mailItem.HTMLBody = Text;
mailItem.HTMLBody = Regex.Replace(mailItem.HTMLBody, "(ASA[a-z][a-z][0-9][0-9])", "<a href=\"http://stack.com/eg=$&\">$&</a>");
我该如何解决这个问题?
编辑:
输入:
ASAss87
ASAjj98
这是测试输入
Output:
ASAss87 ASAjj98 这是测试输入
编辑2:
输入:
ASAss87
ASAjj98
this is test input.
Output:
ASAss87
ASAjj98
this is test input.
*向前移动一到两个空格。 我正在使用标签。
根据您在评论中的反馈,尝试将您的第一行更改为使用Body
而不是HTMLBody
:
string Text = "<html><body><p style=\"font-family:consolas;font-size:88%;\">" + mailItem.Body+ "</p></body></html>";
编辑:由于纯文本包含换行符,也许您应该使用<pre>
标记而不是<p
> 标记,以防止它将所有内容放在一行上。
string Text = "<html><body><pre style=\"font-family:consolas;font-size:88%;\">" + mailItem.Body+ "</pre></body></html>";
Edit2:或者,您可以用<br>
标签替换所有换行符。
string Text = "<html><body><p style=\"font-family:consolas;font-size:88%;\">" + mailItem.Body.Replace(Environment.NewLine,"<BR>") + "</p></body></html>";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.