【问题标题】:How to display html email with embedded images (cid)?如何显示带有嵌入图像(cid)的html电子邮件?
【发布时间】:2011-09-29 10:02:49
【问题描述】:

我将电子邮件及其附件存储在数据库中。我正在使用 WPF WebBrowser 和 NavigateToString 方法来显示电子邮件的 html 正文。它可以工作,但是当电子邮件使用带有内容 id (cid) 的嵌入式图像时,我无法显示它们。当我将电子邮件保存在数据库中时,我将所有嵌入的图像保存为附件。我可以在当前用户的临时文件中创建和存储图像,并用用户磁盘上的绝对路径替换 cid 引用,但我认为这不是最好的方法......

你有什么想法吗?

【问题讨论】:

    标签: c# wpf image browser


    【解决方案1】:

    我终于找到了一个好方法:

    我用 base64 图像数据 (RFC 2557) 替换了所有图像的 cid 引用,如下所示:

    <img src="data:image/png;base64,RAAAtuhhx4dbgYKAAA7...more data....." alt="test">
    

    您可以使用以下代码生成base64字符串:

    string base64Str = Convert.ToBase64String(File.ReadAllBytes(@"C:\Temp\test.png"));
    

    备注:不适用于 IE6

    【讨论】:

    猜你喜欢
    • 2012-07-29
    • 1970-01-01
    • 2019-02-02
    • 1970-01-01
    • 2011-04-16
    • 2012-02-06
    • 2015-02-17
    • 2012-01-25
    相关资源
    最近更新 更多