在html电子邮件中发送个性化图像的推荐方法是什么?

时间:2014-05-24 11:40:10

标签: html email outlook html-email webmail

我知道已经提出了类似的问题,但答案几乎总是一样的:您需要在服务器上共享图像并从电子邮件中链接到该图像。

为了我的目的,我不能那样做。

我需要为每个发送电子邮件的用户个性化图像(因此电子邮件将为每个用户动态生成,并且不会总是相同。我无法共享图像 - 因为它会改变,但也会避免泄露用户信息)。

您是否遇到过这种情况?我应该使用附件或base64编码的图像吗?想法/经验?

2 个答案:

答案 0 :(得分:2)

HTML正文必须使用内容标识(cid)引用图像:<img src="cid:xyz">,其中xyz是附件内容标识(Content-ID)MIME标头的值。

如果要以MIME格式直接创建邮件,请确保将附件添加到邮件中,并正确设置其Content-ID MIME标头。如果您是Outlook对象模型或MAPI,则必须在图像上设置PR_ATTACH_CONTENT_ID属性。

答案 1 :(得分:-1)

由于HTML5允许内联的base64编码图像,这可能是最简单的方法。请检查以下来源:http://www.bigfastblog.com/embed-base64-encoded-images-inline-in-html

您应该考虑并非所有邮件客户端都支持HTML5,因此附加图像并在代码中引用它可能是更难但更好的选择。不幸的是,我没有这方面的经验。

编辑:本教程看起来很有前景,但我还没有尝试过:http://www.phpeveryday.com/articles/PHP-Email-Using-Embedded-Images-in-HTML-Email-P113.html