在电子邮件中添加图像不是作为链接的资源,而是应该在 Outlook 中可见

本文关键字:Outlook 资源 链接 添加 电子邮件 图像 | 更新日期: 2023-09-27 17:55:37

我想将图像添加到电子邮件中。我尝试了几种方法,我拥有的最终解决方案是将图像添加为 linkedResource 但它会增加电子邮件的大小,我不希望这样,因为电子邮件已经有多个附件。我正在使用 xslt 文件从 XML 输入中获取电子邮件的 html 正文。我正在添加图像如下

<img src="http://placehold.it/350x150">

但不知何故,图像在Microsoft Office和.mht文件中的Outlook客户端中显示为红叉。电子邮件在Outlook Webmail客户端和不同的浏览器上看起来很好。

如果我在浏览器中从 Microsoft Office 中的 Outlook 客户端打开邮件后在浏览器中看到网络选项卡,则可以看到 url "http://placehold.it/350x150"的请求,但收到的字节为零,响应为空。

有没有办法在不使用链接资源的情况下将图像添加到电子邮件中?你的帮助对我来说真的很好。

在电子邮件中添加图像不是作为链接的资源,而是应该在 Outlook 中可见

使用 base64 对图像进行编码并像这样添加:

<img src="data:image/JPEG;base64,{encoded string}">

其中 {编码字符串} 部分是图像数据的 base64 编码。JPEG可以根据图像类型使用GIF或其他任何内容。

您可以使用嵌入的图像。

<img alt="My Image" src="data:image/jpeg;base64,/9j/4S/+RXhpZgAATU0AKgAAAAgACAESAAMAENkDZ5u8/61a+X...more encoding" />

更多信息在这里: https://sendgrid.com/blog/embedding-images-emails-facts/

附言。不久前,我们在不同的浏览器和电子邮件客户端中呈现电子邮件时遇到了问题。按照描述存储图像是最好的解决方案(对于图像,ofc :))。