电子邮件正文中的图像
Image in Email Body
我正在使用 StringBuilder 构建电子邮件正文。我需要在电子邮件末尾插入一张图片作为签名。
我的图像位于我的 MVC 解决方案中的一个文件夹中。图片的来源我可以浏览,而且有效。
如果我确实浏览到:
http://localhost/Content/images/CustomerSatisfaction.jpg,我得到返回的图片,只是为了得到这张图片作为邮件正文的一部分
string imgSrc = string.Format("@{0}{1}", HttpContext.Current.Request.Url.Authority,
"/Content/images/CustomerSatisfaction.jpg");
StringBuilder sb = new StringBuilder();
sb.AppendLine("<html>");
sb.AppendLine("<body>");
sb.AppendLine(string.Format("<img src='{0}' alt='xxx'>", imgSrc));
sb.AppendLine("</body>");
sb.AppendLine("</html>");
我的图片来源也试过几个版本:
string imgSrc = "~/Content/images/CustomerSatisfaction.jpg";
图像需要在外部托管在电子邮件内或嵌入。
我会推荐外部托管,因为它最容易做到并且允许轻量级电子邮件(可能提高送达率)。嵌入的图像在某些电子邮件客户端中不显示,因此这也可能导致问题。
请参阅这篇文章,了解有关外部 link 与嵌入图像的一些有用 in-depth 信息。 https://sendgrid.com/blog/embedding-images-emails-facts/
以下是文章的概要:
CID 嵌入图像(内联图像)
优点
- 已经存在很长时间了
- 使用确保 multiplart/related
的正确 mime-type
缺点
- 增加整个电子邮件的大小
- 不同电子邮件客户端的结果不同,尤其是网络邮件
- 感觉过时
- 更多努力
- 较少的技术人员更难实现
内联嵌入(Base64编码)
优点
- 更容易实现
- 做起来快得多
- 不需要深入研究 MIME 和应用程序代码
缺点
- 确实会增加电子邮件的大小,尤其是当您使用超过
一张图片
- 很可能在许多网络邮件服务中被默认阻止
- 在 Outlook 中完全被阻止
链接图片
优点
- 保持电子邮件重量轻
- 几乎不需要额外的努力
- 允许在发送后更改图像
缺点
- 在大多数情况下遇到与 base64 编码相同的阻塞问题
服务
- 需要从外部服务器下载
我正在使用 StringBuilder 构建电子邮件正文。我需要在电子邮件末尾插入一张图片作为签名。
我的图像位于我的 MVC 解决方案中的一个文件夹中。图片的来源我可以浏览,而且有效。
如果我确实浏览到: http://localhost/Content/images/CustomerSatisfaction.jpg,我得到返回的图片,只是为了得到这张图片作为邮件正文的一部分
string imgSrc = string.Format("@{0}{1}", HttpContext.Current.Request.Url.Authority,
"/Content/images/CustomerSatisfaction.jpg");
StringBuilder sb = new StringBuilder();
sb.AppendLine("<html>");
sb.AppendLine("<body>");
sb.AppendLine(string.Format("<img src='{0}' alt='xxx'>", imgSrc));
sb.AppendLine("</body>");
sb.AppendLine("</html>");
我的图片来源也试过几个版本:
string imgSrc = "~/Content/images/CustomerSatisfaction.jpg";
图像需要在外部托管在电子邮件内或嵌入。
我会推荐外部托管,因为它最容易做到并且允许轻量级电子邮件(可能提高送达率)。嵌入的图像在某些电子邮件客户端中不显示,因此这也可能导致问题。
请参阅这篇文章,了解有关外部 link 与嵌入图像的一些有用 in-depth 信息。 https://sendgrid.com/blog/embedding-images-emails-facts/
以下是文章的概要:
CID 嵌入图像(内联图像)
优点
- 已经存在很长时间了
- 使用确保 multiplart/related 的正确 mime-type
缺点
- 增加整个电子邮件的大小
- 不同电子邮件客户端的结果不同,尤其是网络邮件
- 感觉过时
- 更多努力
- 较少的技术人员更难实现
内联嵌入(Base64编码)
优点
- 更容易实现
- 做起来快得多
- 不需要深入研究 MIME 和应用程序代码
缺点
- 确实会增加电子邮件的大小,尤其是当您使用超过 一张图片
- 很可能在许多网络邮件服务中被默认阻止
- 在 Outlook 中完全被阻止
链接图片
优点
- 保持电子邮件重量轻
- 几乎不需要额外的努力
- 允许在发送后更改图像
缺点
- 在大多数情况下遇到与 base64 编码相同的阻塞问题 服务
- 需要从外部服务器下载