在Google Apps脚本中格式化PDF附件(MailApp.sendEmail)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Google Apps脚本中格式化PDF附件(MailApp.sendEmail)相关的知识,希望对你有一定的参考价值。
我设置了一个脚本,将Google表格中的办公室联系人列表转换为PDF,并每月将其作为附件通过电子邮件发送到列表中。我正在试图弄清楚如何将PDF格式化为横向并删除网格线并且没有成功。我对脚本比较陌生,所以我肯定我错过了什么。这是我的代码。我很感激任何建议。谢谢!
function EmailSpreadsheetAsPDF() {
var file = DriveApp.getFileById('xxxxx_spreadsheet_key_xxxxx');
var formattedDate = Utilities.formatDate(new Date(), "GMT-7", "MMMM yyyy");
Logger.log(formattedDate);
var email = "xxxxx@xxxxx.xxx";
var subject = "Contact List - " + formattedDate;
var body = "Attached is the current contact list for " + formattedDate + "." + "
Please email xxxxx@xxxxx.xxx with any corrections or updates.";
MailApp.sendEmail(email, subject, body, {
name: 'xxxxx',
attachments: [file.getAs(MimeType.PDF)]
});
}
答案
对的,这是可能的。但是,您必须为此目的使用UrlFetchApp。如图所示here(阅读文章#89),您可以使用以下命令将网格线可见性设置为false,同时将文件导出为PDF:
var pdfBlob = UrlFetchApp.fetch("https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key="
+docKey
+"&exportFormat=pdf&gid="
+printSheetIndex
+"&gridlines=false&printtitle=false&size=A4&sheetnames=false&fzr=true&portrait="
+portraitInd
+"&fitw=true"
, requestData).getBlob().setName(docName);
阅读提供的链接以获取更多详细信息。
以上是关于在Google Apps脚本中格式化PDF附件(MailApp.sendEmail)的主要内容,如果未能解决你的问题,请参考以下文章
使用 Google Apps 脚本删除 Gmail 电子邮件的附件