我有一个客户从网站接收邮件,邮件有四种语言:意大利语、英语、德语和俄语。一切都很好,除了俄语,他正在使用 Windows Live Mail。
是否有任何 ISO 字符集可以替代 UTF-8 并支持这些语言?
在 Windows Live Mail 2011 中通过收件箱抓取任意电子邮件,显示正常:
...
Date: Fri, 6 Jul 2012 10:31:46 -0700
Subject: =?UTF-8?B?KEludml0YXRpb24pIENhc2FibGFuY2EgKEV2ZW50SUQ2MzgzKQ==?=
Content-Type: multipart/alternative;
boundary="--boundary_251791_d10ae85f-6531-47e3-9bd7-dc701f50b1c6"
----boundary_251791_d10ae85f-6531-47e3-9bd7-dc701f50b1c6
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9u
...etc
ZnQgQ29ycG9yYXRpb24KT25lIE1pY3Jvc29mdCBXYXkKUmVkbW9uZCwgV0EgOTgwNTI=
----boundary_251791_d10ae85f-6531-47e3-9bd7-dc701f50b1c6--
请注意在主题和邮件正文中大量使用 utf-8 以及 base64 编码,以避免邮件被电子邮件网关破坏。
不支持 UTF-8 的 MUA?我不得不回应deceze的评论“你不可能是认真的”。
但如果这是真的,那么您可以做的是将电子邮件分解为多部分/混合 MIME 消息,多部分的每个部分都包含不同语言的文本,并使用适合该语言的不同传统国家字符编码。如果所有部分的类型均为 text/something(text/plain 或 text/html)并且具有Content-Disposition: inline
,则第二部分和后续部分不应显示为附件。
关闭 Windows Live Mail 后,在开始搜索框中键入 regedit,然后按 Enter。如果要求,请授予 UAC 权限。
在左侧窗格中,导航到 HKEY_CURRENT_USER\Software\Microsoft\Windows Live Mail\Compose\Preferences\PostEditor\Autoreplace 并单击 Autoreplace。
在右侧窗格中,双击 SmartQuotes。在数值数据框中键入 0(数字零),然后单击确定。
按 F5,然后关闭注册表编辑器窗口。
启动 Windows Live Mail 并进行测试。
有关Windows 技术支持的更多详细信息,请访问http://www.spotageek.com