将 PDF v1.7 附加到 Outlook 中的电子邮件时,它将发送为:
Content-Type: application/pdf;
Content-Transfer-Encoding: quoted-printable
在 Linux (Thunderbird) 下收到此类电子邮件时,PDF 内容会被解析为纯文本并进行转换。这会导致文件损坏,丢失所有字节 0x0d (CR),这些字节在 EOL 转换过程中被删除。
相比之下,当将旧版 PDF(如 v1.3)附加到 Outlook 中的电子邮件时,它会被正确发送,如下所示:
Content-Type: application/pdf;
Content-Transfer-Encoding: base64
已被正确接收并解码。
这肯定是 Outlook 的问题(截至本文撰写时,所有版本均为 2013 版)。
我不是这些附件的创建者,也不是发送者!我们公司每天都会收到外部人员发送的数百个 PDF 文件,因此也遇到了这个问题。我们无法强迫所有发送者将 PDF 文件放入档案库或自行修复。
我想问一下是否有人遇到过这种情况,以及是否有办法在 Content-Type 为“application/pdf”时强制 Thunderbird 绕过纯文本 EOL 转换,或者类似的东西来解决这个问题接收者边。