由 Google 脚本创建并作为电子邮件附件发送的 PDF 不可读

PDF created by Google Scripts and sent as an email attachment is unreadable

我正在尝试复制驱动器中的文档,将其另存为 PDF,然后将 PDF 作为附件通过电子邮件发送。然而,即使 PDF 始终作为附件正确复制和发送,并且在查看电子邮件链时可以从 gmail "preview" 正确读取,但下载后却不可读(文件类型只是 "file")。从我的驱动器查看原始文档和 PDF(当文档另存为 PDF 并从驱动器下载时)都是可读的。

对我来说,这表明我将文档转换为 PDF 的方式或附加方式有问题。

以下是我将其转换为 PDF 的方法:

var newFile = DriveApp.createFile(copyFile.getAs('application/pdf'));

这是我附加它的方式:

MailApp.sendEmail(email, subject, message, {
    name : "senderEmail",
    attachments : [invoicePdf]
});

我知道使用 Document Google 脚本 class 可以使用 application/pdf 关键字将文档作为 pdf 格式。

一段时间以来,我一直以这种方式向几个人发送附有 PDF 的电子邮件;我发现不太可能,但有可能 none 直到最近才引起我的注意。当我转到我的 gmail 中的这些对话并下载附件的 PDF 时,最近的电子邮件(来自向我确认附件不可读的人)和旧电子邮件的附件对我来说是不可读的。

请更改您的此行

var newFile = DriveApp.createFile(copyFile.getAs('application/pdf'));

如下

var newFile = DriveApp.createFile(copyFile.getAs('application/pdf')).setNa‌​me("fileName.pdf");

使驱动器以.pdf扩展名命名,以便可以正常打开。