Base64图像到gmail

Ste*_*man 50 html email gmail base64 ipad

我正在为从iPad发送的电子邮件生成一些内嵌图像.在所有桌面电子邮件客户端看起来都很棒,但gmail似乎不喜欢base64图像,它显示为文本.

任何人都有运气嵌入图像与base64和gmail?或者知道一个更好的解决方案,用于发送带有iPad图像的HTML电子邮件?

cus*_*man 25

来自Moin Zaman的链接显示了过时的测试结果(从2008年开始).从我今天的全面测试开始,Gmail确实支持为这两种方法显示嵌入式图像.

使用内嵌的base64编码图像 <img src="...">

<html><body><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA9QAAADmCAIAAAC77FroAAAAAXNSR0IArs4c6QAAAAlwSFlzAAAO..."></body></html>
Run Code Online (Sandbox Code Playgroud)

使用base64编码的图像作为附件

Message-ID: <BE0243A40B89D84DB342702BC5FD6D313EA3BE1B@BYMAIL.example.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-originating-ip: [xxx.xxx.xxx.xxx]

Content-Type: multipart/related;
    boundary="_038_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_";
    type="multipart/alternative"
MIME-Version: 1.0
Return-Path: email@example.com
X-OriginatorOrg: example.com

--_038_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_
Content-Type: multipart/alternative;
    boundary="_000_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_"

...skipping Content-Type: text/plain which would be here for this example...

--_000_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html><body><img border=3D"0" width=3D"980" height=3D"230" id=3D"Picture_x0020_1" src==3D"cid:image001.png@01CDA268.204677C0"></body></html>

--_000_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_--

--_038_BE0243A40B89D84DB342702BC5FD6D313EA3BE1BBYMAIL_
Content-Type: image/png; name="image001.png"
Content-Description: image001.png
Content-Disposition: inline; filename="image001.png"; size=32756;
    creation-date="Mon, 08 Oct 2012 15:27:07 GMT";
    modification-date="Mon, 08 Oct 2012 15:27:07 GMT";
Content-ID: <image001.png@01CDA268.204677C0>
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAA9QAAADmCAIAAAC77FroAAAAAXNSR0IArs4c6QAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAf5lJREFUeF7tvQlgVdW18L+ZR20mpsSLCYlBQKwgwRCMr9TAqzg0CAl98Y9a
ikBfHxL1A/r0tUr77Feg1mDav4LUijxTk8hLRIstQ2mJhEiAWAEpNCGRa8KUSQXCzLf2cOZz7j33
5s5Zx6j3nruHtX97n33WWWfttbtdv36d4IEEkAASQAJIAAkgASSABJCA/wl0938VWAMSQAJIAAkg
ASSABJAAEkAClAAq3zgOkAASQAJIAAkgASSABJBAgAig8h0g0FgNEkACSAAJIAEkgASQABJA5RvH
...
Run Code Online (Sandbox Code Playgroud)

要进行自己的测试,您可以使用以下技术之一发送带有嵌入式嵌入式图像的电子邮件

使用上述某个方式向您的Gmail帐户发送电子邮件,然后在Gmail Web客户端(任何可用的浏览器)中打开电子邮件,并使用"回复"按钮旁边的向下箭头选择"显示原始"选项.这将告诉你如何收到它.

我认为最佳实践是使用嵌入式图像作为附件方法.

在我使用Gmail网络客户端进行的测试中,如果我在一封不同尺寸的电子邮件中发送了30张图片,则有一些图片无法成功显示图片容器而非图片.如果发生这种情况,请尝试重新加载页面.

在我的测试中(Windows 7)...

  • Chrome(最新版)需要几次重新加载才能成功加载/显示所有30张图片
  • 无论重新加载次数多少,Opera(最新)都无法成功显示所有30张图像
  • Firefox(最新)始终显示所有30张图片没有问题
  • Internet Explorer 9(最新版)始终显示所有30张图片没有问题
  • Safari(最新)始终显示所有30张图片没有问题

  • 今天进行测试,Gmail使用`data:`URL*不支持图像.它只是使用`alt`文本. (33认同)
  • 进一步测试,内联数据:仍未显示.2017年1月 (15认同)
  • 我今天(2016年7月11日)对此进行了测试,Gmail不显示数据:网址. (10认同)
  • 似乎不再支持它(Gmail)..它只是删除了src属性并添加了alt一个.. (9认同)
  • gmail不支持base64图片15/02/2017 (7认同)
  • 2021-05-20 Gmail(网络/移动)不支持内联 Base 64 图像 (4认同)
  • 我测试了大量图像,但我认为如果使用大尺寸图像,也可能导致它们无法及时加载/显示.Gmail Web客户端对加载/显示这些嵌入式图像所需的时间有点敏感,这在某种程度上也取决于浏览器.您的机器/网络速度也可能是影响因素.但就基本支持而言,Gmail确实支持嵌入式图像.谷歌针对许多/大型嵌入式图像提供的一些有意识的加载保护措施可能会损害用户体验. (3认同)
  • 测试日期:2020 年 5 月 4 日。Gmail 仍然不支持 inlne data:image/png;img 标签中的 base64 编码图像。 (3认同)
  • 请更新此答案,它具有误导性,因为 Gmail 显然不再支持此功能。我选择要求你修复它而不是否决你。我猜投反对票是因为这个答案不再相关。这是不准确的。 (3认同)
  • 今天(2018 年 6 月 23 日)Gmail 确实支持 base64 编码图像:我确实收到了`&lt;img src="data:image/png;base64,12345abcde..."&gt;`。由于答案在 2015 年被接受,并且据说在 2017 年停止工作,我们最好在 Google 再次改变主意之前抓紧时间:o)!不过,由于 Gmail 的风格混乱,仍然是一个相当大的挑战 (2认同)
  • 2019年1月12日。(再次)不支持Gmail。 (2认同)
  • 2019-05-03:Gmail不支持baste64图片。 (2认同)

Moi*_*man 8

似乎没有任何官方文档,但Gmail绝对不支持此内联或作为base64中的附件.

以下是广告系列监控器尝试的一些测试:
在电子邮件中
嵌入图像重新访问嵌入的图像