需要帮助在谷歌应用程序脚本中插入内联图像



我目前在向MailApp.sendEmail函数添加页脚图像时遇到困难。对于上下文,此函数从谷歌表单中获取数据,将其插入到模板中,然后通过电子邮件将完成的模板发送给用户。除了内联图像外,它的所有功能都正常工作。我试着在网上看了很多教程以获得正确的实现,但我觉得我的语法仍然是错误的。我想把"sigPic"图像添加到电子邮件的末尾,但我也希望它调整大小,因为它很大。目前,电子邮件发送,但图像没有。取而代之的是一个非常小的白色正方形,上面有一个红十字。这是我当前的代码:

var sigPic = DriveApp.getFileById('1QfB9rjVPAEclwKnqzF7Ex7priN3389Ie');
var inlineImages = {};
inlineImages[sigPic.getId()] = sigPic.getBlob();
MailApp.sendEmail({
to: email,
subject: "Video Footage Request Recieved - " + caseNumber,
htmlBody: "<p>Thank you for submitting your Video Footage Request for case number " + caseNumber + ". Our team will process your request soon and get back to you if we need anything else.</p>" + 
"<br><img src='cid: sigPic.getId()' + style='width:414px; height:82px;'/>", // problem line
inlineImages: inlineImages,
attachments: [copyDoc.getAs(MimeType.PDF)]
});

"//问题行"是我认为语法错误的行。如有任何帮助,我们将不胜感激。谢谢

问题:

当你在src='cid: sigPic.getId()'中提供图像源时,你提供的不是这个图像的ID,而是字符串"sigPic.getId((",这与ID(实际的密钥图像(绝对不同。由于这与inlineImages中的任何键都不匹配,因此不会引用图像。

解决方案:

您应该提供JS代码,它应该在字符串引号之外。

按以下方式修改"问题行"。由此:

"<br><img src='cid: sigPic.getId()' + style='width:414px; height:82px;'/>",

对此:

"<br><img src='cid:" + sigPic.getId() + "' + style='width:414px; height:82px;'/>",

参考:

  • MailApp.sendEmail(消息(

最新更新