【问题标题】:Formatting Text in Resource file格式化资源文件中的文本
【发布时间】:2015-11-18 23:31:33
【问题描述】:

我有一个发送各种不同电子邮件的网站。这些存储在 resx 文件中。 (电子邮件是作为文本而不是 html 发送的,否则我怀疑我的要求会容易得多)

我现在被要求将其中一封电子邮件中的一些文本加粗。这样,例如我可以拥有

我们现在可以接受您的决定...而不是我们现在可以接受您的决定...

我尝试在 word 中创建我的格式化文本,然后将其剪切/粘贴到资源文件中,但这会去除所有编码。 有什么方法可以在文件中存储格式,还是我需要重新考虑我的方法? (在这种情况下,我想我要么将电子邮件拆分为片段,然后在组装最终字符串时,将字体样式应用于相关片段,要么将格式化的电子邮件存储在文件和文件夹中,并根据需要加载它们.)

【问题讨论】:

    标签: asp.net email c#-4.0


    【解决方案1】:

    你应该在你的文本中插入 HTML ,"<b> We can ac...</b>" 将导致接收者端的粗体文本。

    【讨论】:

    • 问题是文本是通过纯文本发送的,所以如果我这样做,我最终会打印出 html 代码。
    • 如果您以纯文本形式发送,则无法格式化邮件正文
    • 那时企业将不得不坚持纯文本,或者接受 html 邮件,因为我无法让它以富文本形式发送任何内容。谢谢
    【解决方案2】:

    如果您不想使用 HTML 格式,您应该以 RTF 格式创建您的电子邮件。如果您只发送一封普通的电子邮件,则无法将您的文本加粗。如何发送取决于您用于发送电子邮件的库。

    我从 MS Outlook 2013 发送了一封 RTF 格式的电子邮件(带有普通和粗体文本),源代码看起来像这样(类似于 HTML) :

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
    <HTML>
    <HEAD>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
    <META NAME="Generator" CONTENT="MS Exchange Server version rmj.rmm.rup.rpr">
    <TITLE>Test</TITLE>
    </HEAD>
    <BODY>
    <!-- Converted from text/rtf format -->
    
    <P DIR=LTR><SPAN LANG="pl"></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">We can accept your decision now...</FONT></SPAN><SPAN LANG="pl"></SPAN><SPAN LANG="en-us"></SPAN></P>
    
    <P DIR=LTR><SPAN LANG="pl"><B></B></SPAN><B><SPAN LANG="en-us"><FONT FACE="Calibri">We can accept your decision now...</FONT></SPAN></B><SPAN LANG="pl"><B></B></SPAN><B><SPAN LANG="en-us"></SPAN></B></P>
    
    </BODY>
    </HTML>
    

    【讨论】:

    • 我正在使用内置的 .net SMTP 和 MailMessage 类,然后将消息传递给 hMail 服务器。
    • 使用标准 .NET 库可能是不可能的。看看这个:stackoverflow.com/questions/2109563/… 所以通常,你应该使用纯文本或 HTML。
    猜你喜欢
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    • 1970-01-01
    • 1970-01-01
    • 2021-06-23
    • 2012-06-10
    相关资源
    最近更新 更多